Skip to main content

How to build a Private phone network on VOIP using Asterisk PBX with Raspberry Pi and Mobile client














  • There was a need for an Organisation to build a phone network for use by their employees. Unlike the yester-years where telephony was analog and it required switching exchanges to route calls. The Govt or large corporations would set up Private Branch Exchanges (PBX) for this function. Now a days calls can be made digitally on the internet itself given that a server can appropriately route them to their chosen destinations. Voice over IP is used to digitally transmit packets over IP on the network to enable calling. There is a need for a VOIP server and clients that can talk to each other just like the old phone network. This can be easily achieved using robust opensource tools.
  • Asterisk is an opensource PBX that has been around for a long period of time. Asterisk is an open source framework for building communications applications. Asterisk turns an ordinary computer into a communications server. Asterisk powers IP PBX systems, VoIP gateways, conference servers and other custom solutions. It is used by small businesses, large businesses, call centers, carriers and government agencies, worldwide. Asterisk is free and open source. https://www.asterisk.org/
  • For the VOIP Client Linphone is a good choice. There was need for a command line interface to auto dial a call, etc.https://www.linphone.org/
  • The above video demonstrates a few capabilites of the  system. As can be seen a netbook was used to run the Asterisk Server and configure  various VOIP clients to be given numbers that they can be reached at. A couple of spare Raspberry Pis were used to run linphone as VOIP call originators/receivers. 
    • The first part of the video shows how to dial an RPI receiver using a phone as a VOIP originator. Linphone on the RPI is configured to auto answer the calls and play the message for the intended recepient.
    • In the second part, Asterisk can be used to broadcast audio to various configured end clients. As can be seen any call on a configured public number is broadcast to all the clients and played out in public. One use of such a system is in Airports, etc. This system can also be extended for say conditional broadcast for eg. informing the public of an illegally parked car determined so by using computer vision, etc.

Comments

Popular posts from this blog

Game for the blind

Have been thinking about writing a game for the blind since a long time Got an opportunity when a couple of High School Kids came up with the requirement Many options were experimented on: Scratch, Unity, etc It was decided to Keep it Simple and modding an existing game What other better than to implement in python and use python games Used an example from here  PyGame Pythonprogramming.net example   This is a car game where one has to avoid blocks in its path or falling on it To make it suitable for blind playing, visual representation of a block falling on the car or not and the speed of it falling were alerted to the user by means of different sounds; one tone for block not being in line with the car, one tone for slow rate of drop on the car and one tone for rapid rate of drop on the car. So hearing these sound clues, one can use the cursor keys to escape the falling blocks. This can be seen in the video. One can also play comfortably with their eyes closed. It can be impr...

Leg Brake for a Bicycle

Leg Brake on a Bicycle  Growing up, there was a need to learn how to drive a geared motor cycle and also get a driver's license. There are two categories of two wheeler licenses: one for geared vehicles usually with leg brakes and one for auto/non-geared vehicles where the braking happens by hand and are simpler to operate. Driving license had already been acquired for the non-geared vehicle but due to lack of availability of a geared vehicle for practice, the acquiring of this license was taking quite some time. The main problem was adapting to braking a vehicle using the leg where one to respond differently and the conditioning takes some time. Unfortunately could not manage to get anybody/s vehicle for learning after many attempts. And at that time (1995 or so) bicycles were rather common and used for transport. So an idea was: why not add such a feature to a bicycle. A Hercules Town and Trek was also available. After some visits to the local bicycle shop and a used vehicle part...

RGB Dot Matrix Display as Multi-Function Panel Display

PxMatrix on ESP8266 connected to an 32x16 RGB DOT MATRIX 1/8 SCAN Panel It was always wonderful to see the numerous colour displays that display messages and animations on Dot Matrix Displays (DMD) in the commercial places. One useful thing would be to take an Off-the-Shelf Display and run fully controllable custom software rather than rely on some external products to do. Luckily found a display vendor who offered to give me some DMD as samples for experimentation. I was given a P10 32x16 pixel color DMD panel. I have experimented with Monochrome DMDs (maybe blog about this later) but the RGB display is another world all together. The Monochrome world does not have lot of open source software, the RGB world has PxMatrix, RGBMatrix and SmartMatrix. As I wanted the controlling entity to be super cheap which meant use of an 8266 I had to start with PxMatrix. Though there are better options than PxMatrix, the others use a more expensive controller. Its better to start with the lowest cost...