Family/Soho PBX - introduction

Short product description: it is an hybrid PSTN/VoIP PBX platform with light IVR menu, initially built for MNVO operator in Sweden.

Purpose of the Soho/Family PBX is to ensure processing of a voice call (especially inbound call)


  • Voice announcements (IVR menu);
  • Calls to cellular phones (remote extensions) and ring groups;
  • Conferences;
  • Voicemail;
  • Event notifications (i.e. missed call, voicemail etc.)

System process time-based calls routing with various interactions based on actual call time.

It is designed to be simple and has limited amount of functions, however – IVR and in-call interactions are based on polymorphic associations (pointers, references if you like) and using this approach it’s possible to define complex scenarios.

PBX administrators (group of Soho PBX members, listed in separate DB table) who call in to the system through PSTN number with IVR menu, will hear additional voice prompts dedicated for administrators.

Each customer owns single Soho PBX and PBX has only one public phone number.

System processes inbound calls in following order:

  1. Checks business time and if system should be operational:
  2. Plays company or family welcome announcement;
  3. Executes switchboard, which prompts for options; waiting for caller action; switchboard loop three times;
  4. If switchboard finished (caller did not select any option), system executes default switchboard action, usually one of three:
  *   voice announcement and call hangup;
  *   voicemail;
  *   or redirects call to some ring group / another extension or external number;

System administrators could create and control PBX only by using CLI application and (if necessary) accessing MySQL database directly. GUI application could be designed separately and does not need to work with PBX core directly, only through database.