Difference between revisions of "PBX"

From Sky Networks Wiki
Jump to navigation Jump to search
 
(17 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Click Here to return to the main Screen: '''[[Sky Dance Web User Interface |Back]]'''
+
Click Here to return to the main Screen: '''[[Main Page |Back]]'''
  
Sky PBX is a Sky DANCE application based off of the FusionPBX project which is designed to allow you to setup multi-tenant PBX services, IVRs and Call centers for use within Sky DANCE. The following documentation will provide you with information on how to set this up.  If you have questions, feel free to call Sky Dance technical support.
+
Sky PBX is a Sky DANCE application which is designed to allow you to setup residential VOIP and multi-tenant PBX services, IVRs and Call centers for use within Sky DANCE.   The following documentation will provide you with information on how to set this up.  If you have questions, feel free to call Sky Dance technical support. Here is a link to the current feature set [[Sky PBX Features]]
  
 
==Quick Overview of the Setup==
 
==Quick Overview of the Setup==
Line 14: Line 14:
  
 
==Menu: Advanced->[[Domains]] (for Multi Tenant setup)==
 
==Menu: Advanced->[[Domains]] (for Multi Tenant setup)==
Every Sky PBX instance will have its own domain.  This will be the IP address or the name which is used when an extension will register to the PBX.
+
Every Sky PBX instance will have its own domain.  This will be the IP address or the name which is used when an extension will register to the PBX. [[Multi-Tenant]]
 
Note: The first PBX should already be mostly configured after installation by Sky Networks technicians.  This can be used as an example when setting up new ones.
 
Note: The first PBX should already be mostly configured after installation by Sky Networks technicians.  This can be used as an example when setting up new ones.
  
Line 43: Line 43:
 
==Setup an Inbound Route from Sky DANCE==
 
==Setup an Inbound Route from Sky DANCE==
 
There are 2 steps to create an inbound route from Sky DANCE for Sky PBX. (This assumes you already have an inbound route setup in Sky DANCE that can accept traffic)
 
There are 2 steps to create an inbound route from Sky DANCE for Sky PBX. (This assumes you already have an inbound route setup in Sky DANCE that can accept traffic)
  1.  For inbound DIDs, create a "Called Pre Translation" entry in Sky DANCE which routes a call to the PBX using a <9999> prefix
+
   
  
Example:  30550022*  9999665001 - would route to PBX1 with the default setup.
+
1.  Add a DID entry to route a call to Sky PBX from the Sky DANCE Called Pretranslation table like this:
 +
 
 +
Example: Route a all DIDs beginning with 30550022 to extension 1000 in for company domain sky-networks.com
 +
Pretranslation entry
 +
CLD              TRANSLATION
 +
30550022*  1000@sky-networks.com
 +
 
 +
<Legacy Instructions>
 +
1.  For inbound DIDs, create a "Called Pre Translation" entry in Sky DANCE which routes a call to the PBX using a <9999> prefix
 +
 
 +
Example:  30550022*  9999665001 - would route to PBX1 with the default setup.  
  
 
If you have more than 1 PBX planned, you will need to plan on adding 2 prefixes in the Called Pre Translation table with the following format:  <Sky PBX application prefix - 9999><4 digit PBX ID><Number within the Dialplan Manager for that PBX>
 
If you have more than 1 PBX planned, you will need to plan on adding 2 prefixes in the Called Pre Translation table with the following format:  <Sky PBX application prefix - 9999><4 digit PBX ID><Number within the Dialplan Manager for that PBX>
  
  2.  Edit the Send_to_SkyPBX entry in the Dialplan Manager to change the condition to be more specific - ie. if the prefix from Sky DANCE was 99990001 - you could just match on the 0001.  To add other PBX entries you can just duplicate the Send_toSkyPBX entry to make a Send_toSkyPBX2,3 4 etc.and edit the domain name to match the new domain for the new PBX and also to  change the transfer action to route to the new context.
+
  2.  Edit the Send_to_SkyPBX entry in the Dialplan Manager to change the condition to be more specific - ie.  
 +
  if the prefix from Sky DANCE was 99990001 - you could just match on the 0001.
 +
  To add other PBX entries you can just duplicate the
 +
  Send_toSkyPBX entry to make a Send_toSkyPBX2,3 4 etc.
 +
  and edit the domain name to match the new domain for the new PBX and also to   
 +
  change the transfer action to route to the new context.
 +
 
  
 
==Setup an Outbound Route to Sky DANCE==
 
==Setup an Outbound Route to Sky DANCE==
  
1. Edit the Send_to_SkyDance entry to modify the sip_h_X-Rg-In=3000,1000;1;1000 entries to match your setup.  They should match the inbound resource group and partition used for routing the call to this PBX.
+
 
 +
1. Most times you will want to setup one domain for outbound dialing and all the special features common to your customer base.  In this shared domain, you will setup an outbound dialplan like thisFrom your company or residential domain you can just setup a transfer to this shared domain for anything that is not an extension or a domain specific feature.
 +
 
 +
 
 +
[[File:  Outbound_Dialplan.png|1000px ]]
  
 
==Voicemail to email==
 
==Voicemail to email==
Line 59: Line 79:
  
 
==Getting started (a topical approach to the wiki)==
 
==Getting started (a topical approach to the wiki)==
This wiki is ordered around topics & menu screens.  If you are here for the first time the best place to start is the topical section below.  If you already have fusionpbx and want to know more about a particular function you can look up the menu screen section for more information.
+
This wiki is ordered around topics & menu screens.  If you are here for the first time the best place to start is the topical section below.  If you already have sky pbx and want to know more about a particular function you can look up the menu screen section for more information.
  
  
Line 90: Line 110:
  
 
'''Dialplan''' - clicking directly on dialplan without selecting a sub-menu will take you to the [[Dialplan Manager]] page
 
'''Dialplan''' - clicking directly on dialplan without selecting a sub-menu will take you to the [[Dialplan Manager]] page
* [[Dialplan Manager]] - used to update the dialplan controlling what happens when a number is dialed (note that this also includes the dialplan entries used for [[Outbound Routes]])
+
* [[Dialplan Manager]] - used to update the dialplan controlling what happens when a number is dialed (note that this also includes the dialplan entries used for [[Outbound Routes]]). [[Feature Codes]] are used to implement special functions not available on the phones keypad directly through a button push.
 +
 
 
* [[Inbound Routes]] -  (advanced) used to define what to do with calls coming from outside of your SkyPBX/Sky DANCE server
 
* [[Inbound Routes]] -  (advanced) used to define what to do with calls coming from outside of your SkyPBX/Sky DANCE server
 
* [[Outbound Routes]] - (advanced) used to define dialplan entries that affect calls that leave your SkyPBX/Sky DANCE server to go to the outside world
 
* [[Outbound Routes]] - (advanced) used to define dialplan entries that affect calls that leave your SkyPBX/Sky DANCE server to go to the outside world
Line 142: Line 163:
 
* [[SIP Profiles]] - allows you to customize the SIP profiles
 
* [[SIP Profiles]] - allows you to customize the SIP profiles
 
* [[XML Editor]] - allows you to edit Sky DANCE XML files in the '''conf'''/ directory
 
* [[XML Editor]] - allows you to edit Sky DANCE XML files in the '''conf'''/ directory
 +
 +
 +
Note: SkyPBX is loosely based on the FusionPBX project.

Latest revision as of 10:07, 10 January 2023

Click Here to return to the main Screen: Back

Sky PBX is a Sky DANCE application which is designed to allow you to setup residential VOIP and multi-tenant PBX services, IVRs and Call centers for use within Sky DANCE. The following documentation will provide you with information on how to set this up. If you have questions, feel free to call Sky Dance technical support. Here is a link to the current feature set Sky PBX Features

Quick Overview of the Setup

  • Create a domain to match the domain used for registering phones
  • Create an extension under Accounts -> Extensions
  • Register the phone to the extension. The extension number is the username for the end point.
  • Test the phone by dialing the music on hold number *9664
  • Setup an inbound route from Sky DANCE to the PBX.
  • Validate the settings on the outbound route from Sky DANCE.
  • Test

Menu: Advanced->Domains (for Multi Tenant setup)

Every Sky PBX instance will have its own domain. This will be the IP address or the name which is used when an extension will register to the PBX. Multi-Tenant Note: The first PBX should already be mostly configured after installation by Sky Networks technicians. This can be used as an example when setting up new ones.

Menu: Accounts->Extensions

The first time the Extensions page is viewed, there will be no extensions listed. Click on the + next to the list in order to add an extension.

"Effective Caller ID" information is shown within your organization, "Outbound Caller ID" information will be seen by those receiving outside calls.

Fill in Extension in order to get a basic phone up and running. It is suggested that a system administrator complete the following: Extension (according to the numbering scheme used in the implementation) User list (assign a user to each extension – this allows the end-user to log into the SkyPBX web GUI and check voicemails, faxes and so on via the web. This does not have to be done immediately.) Voicemail options (e.g. have voicemail sent to a designated email address.) (editors: Toll allow is a new option – where is this used? I don’t have this set on my system yet my calls all still work)

  • The range entry allows more than one extension to be created at a time. This would probably be most useful when doing automated telephone provisioning (note to editors – you’ll need to flesh this out as we now have a provisioning section on this page and I have no idea how to use it).

Save each configured extension (the save button is at the bottom of the GUI). When the save is complete, the screen is returned to the list of extensions. Click on the extension just created. Click on the password field to reveal the current password directly below the field. Note the password is displayed because it will be needed to configure a telephone to negotiate with SkyPBX. At this point, it might be prudent to test a telephone negotiating with successfully SkyPBX so that further testing can be performed, ensuring that the following are also properly configured: IP address of SkyPBX (the phone might know this as the SIP server) Extension (the extension number is the username for the phone) Password for the extension

Read the manual for your IP phone or soft phone for more information. 

Once the phone is connected you can test it by dialing *9664 which is a code for music on hold. To use a phone to call somewhere other than music on hold or another extension, configuration of the Sky_Dance entry in the Dialplan Manager is required. (See more information about call provisioning and routing under DialPlan)

Setup an Inbound Route from Sky DANCE

There are 2 steps to create an inbound route from Sky DANCE for Sky PBX. (This assumes you already have an inbound route setup in Sky DANCE that can accept traffic)


1. Add a DID entry to route a call to Sky PBX from the Sky DANCE Called Pretranslation table like this:

Example: Route a all DIDs beginning with 30550022 to extension 1000 in for company domain sky-networks.com

Pretranslation entry
CLD              TRANSLATION
30550022*  1000@sky-networks.com

<Legacy Instructions> 1. For inbound DIDs, create a "Called Pre Translation" entry in Sky DANCE which routes a call to the PBX using a <9999> prefix

Example: 30550022* 9999665001 - would route to PBX1 with the default setup.

If you have more than 1 PBX planned, you will need to plan on adding 2 prefixes in the Called Pre Translation table with the following format: <Sky PBX application prefix - 9999><4 digit PBX ID><Number within the Dialplan Manager for that PBX>

2.  Edit the Send_to_SkyPBX entry in the Dialplan Manager to change the condition to be more specific - ie. 
 if the prefix from Sky DANCE was 99990001 - you could just match on the 0001.  
To add other PBX entries you can just duplicate the
 Send_toSkyPBX entry to make a Send_toSkyPBX2,3 4 etc.
 and edit the domain name to match the new domain for the new PBX and also to  
 change the transfer action to route to the new context.


Setup an Outbound Route to Sky DANCE

1. Most times you will want to setup one domain for outbound dialing and all the special features common to your customer base. In this shared domain, you will setup an outbound dialplan like this. From your company or residential domain you can just setup a transfer to this shared domain for anything that is not an extension or a domain specific feature.


Outbound Dialplan.png

Voicemail to email

For voicemail to email configure SMTP server settings in Advanced ->Default Settings. Configure the destination email account in the settings for each extension. SkyPBX does not use an MTA (Message Transfer Agent eg. sendmail or postfix). Instead SkyPBX uses a PHP script that acts as an SMTP client and connects to the SMTP server using the account and password specified by the system and/or extension administrator. As a result, there are no queues or logs where message sent or failed can be viewed. However, if the php script was executed (whether the voicemail was successfully sent or not) there will be a file in /tmp called voicemailtoemail.txt. If voicemailtoemail.txt was created and the voicemail was not received as an email, there could have been two possible results from the action. One possible result was that the script may have executed but it did not successfully negotiate with the SMTP server. Alternately, the script successfully sent the voicemail; however, the destination email account was incorrectly assigned in the settings. If the file is not present in /tmp then it is likely that the voicemail file and directory permissions to /var/www/Skypbx/secure are incorrect. The voicemail script is v_mailto.php. If it is inaccessible to Sky DANCE then the function will not run and the file in /tmp will not be created.

Getting started (a topical approach to the wiki)

This wiki is ordered around topics & menu screens. If you are here for the first time the best place to start is the topical section below. If you already have sky pbx and want to know more about a particular function you can look up the menu screen section for more information.


  • Multi-Tenant - Domain based multi-tenant.
  • Extensions - ie. your phones
  • IVR Menu - ie. if you want to setup an auto attendant or have automated prompts for a caller this is where you set this up
  • Conferences - allows you to define reservationless conference rooms
  • Call Groups - settings that allow you to group phones together
  • Music On Hold - ie. if you place someone on hold what will they hear?
  • Ring Groups - call one or more extensions

Documentation for SkyPBX GUI screens

Please note that the documentation in this section is in progress. Many of the menu items shown here are available only to the "super admin" or are reserved for advanced use. Further information can be found by clicking on the associated menu item.

The GUI is accessible using a web browser by going to the PBX entry in the Sky DANCE GUI.

System - the default page that is displayed when you log in to SkyPBX is the System page. You can access it later by clicking on System directly without selecting a sub-menu

  • Account Settings - the account settings for the currently logged on user
  • Logout - use this to log out of the SkyPBX administration web site
  • Menu Manager - This is used to control which menu items are available to the various user levels.
  • Modules - for enabling and disabling Sky DANCE modules
  • Settings - (advanced) SkyPBX settings
  • Variables - (advanced) Manage Sky DANCE internal variables

Accounts - clicking directly on Accounts without selecting a sub-menu will take you to the Extensions page

  • Devices - for seeing and modifying all provisioned phones. See Extensions for more information
  • Extensions - where you configure the extensions for the phones attached to your system
  • Gateways - (advanced - should only be used by super admin) These are the gateways that can be used to terminate traffic.
  • User Manager - Allows a superadmin/admin to manage USERs and GROUPs. Can create/delete users, edit their Account Settings.
  • XMPP Manager - Configure XMPP to work with Google talk or other jabber servers. (Advanced)

Dialplan - clicking directly on dialplan without selecting a sub-menu will take you to the Dialplan Manager page

  • Dialplan Manager - used to update the dialplan controlling what happens when a number is dialed (note that this also includes the dialplan entries used for Outbound Routes). Feature Codes are used to implement special functions not available on the phones keypad directly through a button push.
  • Inbound Routes - (advanced) used to define what to do with calls coming from outside of your SkyPBX/Sky DANCE server
  • Outbound Routes - (advanced) used to define dialplan entries that affect calls that leave your SkyPBX/Sky DANCE server to go to the outside world

Apps - clicking directly on apps without selecting a sub-menu will take you to the Call Detail Records page

  • Call block - Block inbound callers, optional module must be installed from Dev/Apps
  • Call Broadcast - (option)
  • Call Center – Setup a SkyPBX call center
  • Call Detail Records - Call history reports and detailed information on the calls.
  • Conferences - to define permanently reserved conference numbers for individuals/groups to use
  • Contact Manager - Manage your contact list and create vcards if needed
  • Fax Server - (option) to setup inbound and outbound faxing from SkyPBX (without needing a physical fax machine)
  • Follow Me - Configure call forwarding, follow me, or do not disturb.
  • Hot Desking (option)
  • IVR Menu - To define Auto attendants, Interactive Voice Response menus (ie. press 1 for billing, press 2 for technical support, etc.)
  • Music On Hold - to set up music for callers who are placed on hold or who are in a queue.
  • Recordings - for making, modifying and reviewing recorded messages used within your phone system
  • Ring Groups - allow you to ring one or more registered endpoints.
  • Time Conditions - to define time conditions to affect how calls are handled at different times and on different days
  • Queues - to define call queues to enable people to wait on hold until it is their turn to be answered
  • Voicemail - shows all voicemails that belongs to the current logged in user

Status - clicking directly on status without selecting a sub-menu will take you to the Active Extensions page

  • Active Call Center - display queue status, agent status, tier status for call centers
  • Active Calls - lists and allows you to interact with active calls being handled by your server
  • Active Conferences - lists conferences that are active on your server (showing the number of participants)
  • Active Extensions - lists and allows you to interact with calls being handled by phone extensions on your server
  • Active Queues - displays queues that have one or more callers waiting
  • Registrations - By default in this page you can see all the registered endpoints in profile internal.
  • Agent Status - Show/Edit the status of the agents at a call center.
  • Services - allows interaction with the processes running on your server
  • SIP Status - shows the status of your internal and external sip connections, various server statistics and a static view of the Sky DANCE log file
  • System Status - shows the status of the physical server you are running SkyPBX on
  • Log Viewer - displays Sky DANCE log file.
  • Traffic Graph - Shows the live traffic on the network interface

Advanced - clicking directly on Advanced without selecting a sub-menu will take you to the Command page

  • NOTE: This menu should only be available to the super administrator
  • Adminer - A database manager utility
  • App Manager - advanced
  • Command - allows you to interactively submit shell, PHP and Sky DANCE commands to your server
  • Domains - used to setup new domains or edit existing ones.
  • Group Manager - Used to manage SkyPBX groups
  • PHP Editor - allows you to edit php files used in SkyPBX
  • Provision Editor - allows you to edit phone/device provisioning files used in SkyPBX
  • PHP Service - Manages multiple dynamic and customizable PHP services.
  • Script Editor - allows you to edit javascript, lua and perl script used on your server
  • SIP Profiles - allows you to customize the SIP profiles
  • XML Editor - allows you to edit Sky DANCE XML files in the conf/ directory


Note: SkyPBX is loosely based on the FusionPBX project.