Home
XiVO-doc Documentation Release 15.13 Avencall
Contents
1. i Support Main xiVO Secondary BRUM ne a ae tae parents Jose te EE ek e Limits Provisioning General Save ine u rszs r ers Template device Fig 1 89 Configuration Provisioning Template Line Edit default Warning Especially not change these values when the HA is configured this could cause problems These values will be reset to blank when the HA is disabled Important For the telephony devices to take the new proxy registrar settings into account you must resynchro nize the devices or restart them manually Disable node Default status of HIGH AVAILABILITY HA is disabled Note You can reset at any time by choosing a server mode disabled Configuration Management Users Entities Directories Web Services Access Certificates High Availability Network Type of this node Disabled Fig 1 90 HA Dashboard Disabled default state Important You have to restart services xivo service restart once the master node is disabled Master node In choosing the method Master you must enter the IP address of the slave node Gonfiguiaiion
2. Fig 1 8 Users settings Fig 1 9 Adding a new line 10 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 We now have the form that will allow us to create a new user The three most important fields are First name Last name and Language Fill in the fields and click on Save at the bottom For our example we will create a used called Alice Wonderland V Sears 3 General tines No answer Services Voicemail Groups Func Keys SIP Protocol p IAX Protocol Voicemails Phonebook Advanced ser prete Browse Devices Mobile phone number Lines Create a schedules Users ar Groups Ringing time 30 seconds Voicemails Simultaneous calls 5 Conference rooms Call management its On Hold Music defi Incoming calis Outgoing calls 2 Call permissions Timezone Call fitters 4 Call pickups Caller ID Alice Wonderland Schedules Outgoing Caller ID Default zj Calis Logs 00 Preprocess subroutine SIP Protocol User field IAX Protocol NE NI lies E P reese NN E EROR Rm Customized 1 IPBX services m Enabl
3. Field Val Description ues id inte Read only ger name string Voicemail name number string Voicemail number context string Voicemail s context password string Numeric password used to access the mailbox email string Email address where messages with an audio attachement will be sent Description pager string Email address where a short notification will be sent language string Language used for the voicemail menu prompt See Voicemail languages for a list of available languages timezone string Timezone used for announcing at what time a message was recorded See Voicemail timezones for a list of timezones max messagdsinte Maximum number of messages to store ger at boolean Attach an audio file of the recorded message when sending an email tach audio delete messagdsoolear Delete messages once they have been listened to ask password boolean Ask for password when accessing the voicemail menu Example 1 name John Doe number 1000 context default password 1234 email john doe example com pager Jjohn mobile example com language en_US timezone eu fr max_messages 10 attach_audio false delete_messages false ask_password true links rel voicemails href https xivoserver 1 1 voicemails 1 Voicemail list Query 1 11 and SDK 321 XiVO
4. Empty lines and lines starting with are ignored AP netdevice name without postfix i e wlanO0 uses wlanO0ap for management frames athO for madwifi terface wlan0 In case of madwifi atheros and n180211 driver interfaces an additional configuration parameter bridge may be used to notify hostapd if the interface is included in a bridge This parameter is not used with Host AP driver If the bridge parameter is not set the drivers will automatically figure out the bridge interface assuming sysfs is enabled and mounted to sys and this parameter may not be needed For n180211 this parameter can be used to request the AP interface to be added to the bridge automatically brctl may refuse to do this before hostapd has been started to change the interface mode If needed the bridg interface is also created ridge br0 Driver interface type hostap wired madwifi test none n180211 bsd default hostap n180211 is used with all Linux mac80211 drivers Use driver none if building hostapd as a standalone RADIUS server that does not control any wireless wired driver driver hostap hostapd event logger configuration Two output method syslog and stdout only usable if not forking to background Module bitfield ORed bitfield of modules that will be logged 1 all modules bit 0 1 IEEE 802 11 b
5. Configuring the sheet Qt interface field is the path to the UI file created by the Qt Designer The path can either be a local file on your XiVO starting with 1 HTTP URL You must add a field with type orm and display value qtui for the form to be displayed Create a custom sheet with Qt Designer The Qt Designer is part of the Qt development kit and is also available in the Qt Creator They are available on the Ot project website Here is an example of a small form created with Qt Designer The Qt Designer screenshot Warning In Qt Designer one must set vertical layout on the top widget right click on the top widget gt Lay out Vertical layout You can download the file generated by this example from Qt Designer example form ui 130 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 leu BS Oy Gara e298 Boite de widget Filtre List View 583 Tree View E Table view column view sans nom XIVOFORM lastname 2 CC e i List widget SQ Tree widget E Table widget Group Box scroll Area Bii Tool Box IE Tab Widget stacked widget Frame Widget MdiArea Dock Widget Combo Box Font Combo Box Line Edit Text Edit Plain Text Edit 1 8 Administration 131 XiVO doc Documentation Relea
6. For best results activate DHCP Integration on your XiVO 67311 6735i 67371 67391 6755i 6757 General Functions Online call recording N N N N N N Phone status Y Y Y Y Y Y Sound recording Y Y Y Y Y Y Call recording Y Y Y Y Y Y Incoming call filtering Y Y MN Y Y Y Do not disturb Y Y Y Y Y Y Group interception Y Y Y Y Y Y Listen to online calls Y Y Y Y Y Y Directory access Y Y Y Y Y Y Filtering Boss Secretary Y Y Y Y Y Y Transfers Functions Blind transfer HK Y Y HK Y Y Indirect transfer HK Y Y HK Y Y Forwards Functions Disable all forwarding Y Y Y Y Y Y Enable Disable forwarding on no answer Y Y Y Y Y Y Enable Disable forwarding on busy Y Y Y Y Y Y Enable Disable forwarding unconditional Y Y Y Y Y Y Voicemail Functions Enable voicemail with supervision function Y Y Y Y Y Y Reach the voicemail Y Y Y HK Y Y Delete messages from voicemail Y Y Y Y Y Y Agent Functions Connect Disconnect a static agent Y Y Y Y Y Y Connect a static agent Y Y Y Y Y Y Disconnect a static agent Y Y Y Y Y Y Parking Functions Parking Y Y Y Y Y Y Parking position Y Y Y Y Y Y Paging Functions Paging Y Y Y Y Y Y 6700i series Supported expansion modules e Aastra M670i for Aastra 351 371 391 531 551 571 e Aastra M675i for Aastra 351 371 391 551 571 RFP35 RFP36 Provisioning N N DECT Infrastructure H A N N Directory XIVO N N Funckeys 0 0 Cisco SPA122 SPA3102 SPA8000 Provisioning Y Y
7. Field Val Description ues id int Read only firstname string User s first name lastname string User s last name timezone string User s timezone language string User s language description string Additional information about the user caller_id string Name that appears on the phone when calling D er outgo string Caller id to use when calling through a trunk escription ing_caller_id mo string Phone number for the user s mobile device bile_phone_number username string username for connecting to the CTI password string password for connecting to the CTI music_on_hold string Name of the MOH category to use for music on hold prepro string Name of the subroutine to execute in asterisk before receiving a call cess_subroutine userfield string A custom field which purpose is left to the client If the user has no userfield then this field is an empty string Example midt d firstname John lastname Doe timezone America Montreal language fr_FR description The most common name in America caller_id Johnny outgoing_caller_id default mobile phone number 5554151234 username john password supersecretpassword music on hold waiting preprocess subroutine ivr userfield List Users The users are listed in ascending order on lastname then firstname Query GET 1 1 users
8. see Sse es i uoc Socket timeout 10 Login timeout 5 Parting options are used to isolate XiVO users from each other These options should be used when using the same XiVO for different enterprises Context separation is based on the user s line context A user with no line is not the member of any context and will not be able to do anything with the CTI client Note The CTI Server must be restarted to take into account this parameter 126 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Contexts Separation Presence Option In the Status menu under Presences you can edit presences group The default presence group is xivo When editing a group you will see a list of presences and there descriptions gt available Disponible gt away Sorti 2G gt berightback Bient t de retour C gt disconnected D connect gt donotdisturb Ne pas d ranger gt outtolunch Parti Manger Available configuration Presence name is the name of the presence Display name is the human readable representation of this presence Color status is the color associated to this presence Other reachable statuses is the list of presence that can be switched from this presence state Actions are post selection actions that are triggered
9. Field Values Description id int Read only Description string context string commented boolean If True the extension is disabled links list The link to the resource Example gis 1 context default exten 1234 commented false Laqs c f rel extensions href https xivoserver 1 1 extensions 1 292 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Extension list Query GET 1 1 extensions Parameters order Sort the list using a column e g Columns allowed exten context direction asc or desc Sort list in ascending asc or descending desc order limit maximum number of items to return in the list Must be a positive integer skip number of extensions to skip over before starting the list Must be a positive integer search Search term Only extensions with a field containing the search term will be listed type Only show extensions of a certain type Types allowed internal incall Example requests List all available extensions GET 1 1 extensions HTTP 1 1 Host xivoserver Accept application json List extensions sorted by exten in descending order GET 1 1 extensions order exten amp direction desc HTTP 1 1 Host xivoserver Accept application json List only the first 10 extensions having the number 17 in the exten GET 1 1 extensi
10. Field ttle Field type Default value Display format gt Status db name Number number office zi db number Number number mobile d db moble Ei Location D i db location Description Save Display filter A new display filter must be created for the directory xlet The following fields must be configured with the correct value for the Field type column in order for entries to be displayed in the xlet 1 status is the column that will be used to display the status icon the title can be empty name is displayed in the Name column of the xlet number_office is displayed in the Number column with a phone icon in the xlet number_mobile is displayed in the Number column with a mobile icon in the xlet amp N number any other field starting with number_ will be displayed in the Number column of the xlet with a generic directory icon 6 Any other field will be displayed in their own column of the directory xlet The values in the Display format column must contain values that were created in the Directory definition The title used for the Number column is the title of the first field whose type starts with number Note The field title of the first number column will be used for the header title in the xlet Warning Make sure that the fields entered in the display format are also available in the directory definitio
11. ie P Pre E A T Rd EIE A I I TP I E DI I tas A A I I AE ESI Y E T DU I T CIT LIT ELEC E Save sss ae eS Fig 1 67 Creating a schedule A schedule is composed of a name a timezone one or more opening hours or days that you may setup using a calendar widget a destination to be used when the schedule state is closed With the calendar widget you may select months days of month days of week and opening time You may also optionaly select closed hours and destination to be applied when period is inside the main schedule For example your main schedule is opened between 08h00 18h00 but you are closed between 12h00 and 14h00 Using Schedule on Users When you have a schedule associated to a user if this user is called during a closed period the caller will first hear a prompt saying the call is being transferred before being actually redirected to the closed action of the schedule If you don t want this prompt to be played you can change the behaviour by 208 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Fig 1 68 Schedule calendar widget Months Hours Jie e Days of month Days of week Jen mm ew Fig 1 69 Schedule closed ho
12. 438 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Friendly Name required for UPnP Short description for end use Should be less than 64 characters friendly_name WPS Access Point Manufacturer URL optional for UPnP manufacturer_url http www example com Model Description recommended for UPnP Long description for end user Should be less than 128 characters model_description Wireless Access Point Model URL optional for UPnP model url http www example com model Universal Product Code optional for UPnP 12 digit all numeric code that identifies the consumer package upc 123456789012 f Wi Fi Direct P2P Enable P2P Device management manage p2p 1 Allow cross connection allow cross connection 1 TDLS IEEE 802 11z 2010 Prohibit use of TDLS in this BSS tdls_prohibit 1 Prohibit use of TDLS Channel Switching in this BSS tdls_prohibit_chan_switch 1 IEEE 802 11v 2011 Time advertisement 0 disabled default 2 UTC time at which the TSF timer is 0 time_
13. xivo jylebleu CLI gt queue show skills groups PRESS TAB agent 2 agent 3 agent 4 agent 48 agent 7 agent 1 xivo jylebleu CLI queue show skills groups agent 1 Skill group agent 1 bank 50 english 100 You may monitor your skills rules with the command queue show skills rules rule name xivo jylebleu CLI queue show skills rules PRESS TAB english french select lang xivo jylebleu CLI queue show skills rules english Skill rules english gt english gt 90 1 9 6 Statistics Overview The statistics page is used to monitor the efficiency of queues and agents Statistics are automatically generated every six hours They can also be generated manually Note The contact center statistics do not apply to switchboard queues See Switchboard for more details Note The oldest statistics are periodically removed See Purge Logs for more details Configuration In order to display call center statistics you must create at least one configuration profile The configuration profile is used to generate reports from the cache The cache is generated independently from the configuration so adding a new configuration does not require a new cache generation 1 9 Contact Center 247 W 0 Cail XiVO doc Documentation Release 15 13 o gt configuration_profile ee Queue Performance Period details Fig 1 86 St
14. Passphrase for private key private key passwd secret passphrase Enable CRL verification Note hostapd does not yet support CRL downloading based on CDP Thus a 430 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 valid CRL signed by the CA is required to be included in the ca_cert fil This can be done by using PEM format for CA certificate and CRL and concatenating these into one file Whenever CRL changes hostapd needs to be restarted to take the new CRL into use 0 do not verify CRLs default 1 check the CRL of the user certificate 2 check all CRLs in the certificate path check crl 1 dh file File path to DH DSA parameters file in PEM format This is an optional configuration file for setting parameters for an ephemeral DH key exchange In most cases the default RSA authentication does not use this configuration However it is possible setup RSA to use ephemeral DH key exchange In addition ciphers with DSA keys always use ephemeral DH keys This can be used to achieve forward secrecy If the file is in DSA parameters format it will be automatically converted into DH params This parameter is required if anonymous EAP FAST is used You can generate DH parameters file with OpenSSL e g openssl dhparam out etc hostapd dh pem 1024 dh file etc hostapd dh pem Fragment size for EAP methods fragment size 1400 Configuration data for
15. gt HTTP Server XiVO IP address gt HTTP Path Aastra HTTP Port 8667 Polycom On the phone go to Menu Settings Advanced Admin Settings Network configuration Server Menu and enter the following settings Server type HTTP e Server address http XiVO address gt 8667 000000000000 cfg Then save and reboot the phone Snom On the web interface of your phone go to Setup Advanced Update and enter the following settings 196 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Network Behavior Audio SIP RTP QoS Security Update Update Update Policy Update automatically 2 Setting URL http XiVO IP address gt 8667 Settings refresh timer PnP Config Oon Reset Reboot Yealink On the web interface of your phone go to Settings Auto Provision and enter the following settings e Server URL http lt XiVoO IP address gt 8667 Yealink Status Account Network DSSKey Features Preference Auto Provision PNP Active Oot Time amp Date DHCP Active Gon Oot Upgrade pg Custom Option 128 254 o Auto Provision DHCP Option Value yealink Configuration Server URL lt address gt 8667 o Save the changes by clicking on the Confirm button and then click on the Autoprovision Now button Autoprovisioning a Device Once you have installed the proper pr
16. rel Lines href https xivoserver 1 1 lines 34 rel extensions href https xivoserver 1 1 extensions 13 Get the Line associated to an Extension Query GET extensions lt extension_id gt line Error code Error message Description 404 Extension with id lt extension_id gt does not exist Errors Example Request GET extensions 48 line Host xivoserver Accept application json Example Response HTTP 1 1 200 OK Content Type application json line_id 34 306 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 extension_id 48 rel lines href https xivoserver 1 1 lines 34 rel extensions href https xivoserver 1 1 extensions 48 Associate an Extension to a Line Note extension with a context of type internal Because of technical limitations a line can only have a single internal extension associated i e an Query POST lines line id extensions Field Required Values Description Input DEDE TIE extension id yes int Must be an existing id Error Error message Description code 404 Line with id line id does not exist Errors 400 Invalid parameters line with id line id already has Only one extension with a context of
17. List SIP Lines Query GET 1 1 lines_sip Example request GET 1 1 lines_sip HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json total 2 items Mets Ty context default username abcdef secret secret_password provisioning_extension 123456 device_slot 1 callerid John Doe lt 1002 gt links rel lines_sip href https xivoserver 1 1 lines_sip 1 2 context default username stuvwx secret super_secret_password provisioning_extension 987456 device_slot 1 callerid Mary Lin lt 1003 gt links rel lines_sip href https xivoserver 1 1 lines_sip 2 302 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Get SIP Line Query GET 1 1 lines_sip lt id gt Example request GET 1 1 lines sip 1 HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json rg 21 Context default username abcdef secret secret password provisioning extension 123456 device slot 1 callerid John Doe lt 1002 gt links rel lines_sip href https xivoserver 1 1 lines_sip 1 Create SIP Line Quer
18. 1 8 Administration 159 XiVO doc Documentation Release 15 13 Next step Now that you have configured your PRI card 1 you must check if you need to follow one of the Specific configuration sections below 2 then if you have another type of card to configure you can go back to the configure your card section 3 if you have configured all your card you have to configure the DAHDI interconnections in the web interface Specific configuration FXS modules If you use FXS modules you should create the file etc modprobe d xivo tdm and insert the line options DAHDI MODULE NAME fastringer 1 boostringer 1 Where DAHDI MODULE NAME is DAHDI module name of your card e g wctdm for a TDM400P FXO modules If you use FXO modules you should create file etc modprobe d xivo tdm options DAHDI MODULE NAME opermode FRANCE Where DAHDI MODULE NAME is DAHDI module name of your card e g wctdm for a TDM400P Voice Compression Card configuration Verifications Verify that the wct c4xxp module is uncommented in et c dahdi modules If it wasn t do again the step Load the correct DAHDI modules Configure To configure the card you have to 1 Install the card firmware xivo fetchfw install digium tc400m 2 Comment out the following line in etc asterisk modules conf noload codec dahdi so 3 Restart asterisk etc init d asterisk restart Next st
19. XiVO doc Documentation Release 15 13 Query POST lt uri gt Example request Example request for the installation service of the plugin manager POST provd pg_mgr install uninstall HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json id xivo polycom 4 0 4 Example response HTTP 1 1 204 No Content Content Type application vnd proformatique provd json Upgrade a Package Query POST uri Example request Example request for the installation service of the plugin manager POST provd pg mgr install upgrade HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json id xivo polycom 4 0 4 Example response HTTP 1 1 201 Created Location provd pg mgr install upgrade 1 Content Type application vnd proformatique provd json The URI returned in the Locat ion header points to an operation in progress resource Update the List of Installable Packages Query POST uri Example request Example request for the installation service of the plugin manager POST provd pg_mgr install update HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json 1 11 and SDK 349 XiVO doc Documentation Release 15 13 Example response HTTP 1 1 201 Created Location provd pg mgr install update 1 Content Ty
20. commandid lt commandid gt elass i Login id class defined what class of command use commandid a unique integer number LoginID Client gt Server elas login id commandid 1092130023 company default ident X11 LE 24079 lastlogout datetime 2013 02 19T11 13 36 lastlogout stopper disconnect userlogin lt userlogin gt version S999 xivoverston s 122 Server gt Client elass login id sessionid 21UaGDfst7 timenow 1361268824 64 xivoversion 1 2 Note sessionid is used to calculate the hashed password in next step Login password Client gt Server hashedpassword e5229ef45824333e0f8bbeed20dccfa2ddcb1c80 class Login pass commandid lt commandid gt Note hashed_password shal self sessionid password hexdigest Server Client 2 1 class login pass replyid 1646064863 timenow 1361268824 68 If no CTI profile is defined on XiVO for this user the following message will be sent error_string capaid_undefined cLass i Login pass replyid 1646064863 392 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 timenow 1361268824 68 Note the first element of the capalist is used in the next ste
21. icon and enter 192 168 1 0 24 then save Once this is done on your phone just click on the remote directory function key and you ll be able to do a search in the XiVO directory from it 202 Chapter 1 Table of Contents aastra 3 3 aastra 3 3 XiVO doc Documentation Release 15 13 Jitsi Jitsi http jitsi org is an opensource softphone previously SIP Communicator XiVO now support Jitsi sofphones provisioning Here are the steps to follow Requirements This how to needs 1 Jitsi installed 2 SIP line created Add Jitsi plugin on XiVO Open XiVO Web interface and go to Configuration tab Then chose Provisioning Plugins menu Install the Jitsi plugin you want to use e g xivo jitsi 1 You can now launch your Jitsi softphone Configuring Jitsi 1 Launch Jitsi 2 If you don t have any accounts configured Jitsi will launch a windows and you can click 3 Use online provisioning Otherwise go to Tools gt Options gt Advanced gt Provisioing Click on Enable provisioning 4 Select Manually specify a provisioning URI 5 Enter the folowing URI where provd gt is the VoIP interface IP address of your XiVO and provd port is the provd port default 8667 http lt provd_ip gt lt provd_port gt jitsi uuid uuid 6 When done quit Jitsi 7 Launch Jitsi again You should now be connected with in autoprov mode You could see a
22. List only the first 10 voicemails containing the word john G H A ET 1 1 voicemails search john amp limit 10 ost xivoserver ccept application json Example response H C TTP 1 1 200 OK ontent Type application json 2 items nide wp name John Doe number 1000 context default password null email john doe example com pager Jjohn mobile example com language en_US 3 22 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 timezone eu fr max_messages null attach_audio false delete_messages false ask_password false rel voicemails href https xivoserver 1 EZ name Roger Smith number 1001 context default password null email null pager null language en_US timezone eu fr max_messages 20 attach_audio false delete_messages false ask_password false links rel voicemails href https xivoserver 1 l voicemails 1 l voicemails 2 Get Voicemail Query GET 1 1 voicemails id Example request GET 1 1 voicemails 1 HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json vidm wq name John Doe number 1000 context
23. Make sure that IP forwarding is enabled sysctl w net ipv4 ip forward 1 Put all the phones in the phones VLAN on your switch Activate the NAT and Monitoring options on the Services IPBX General settings SIP Protocol page of your XiVO Contributors 421 roperly XiVO doc Documentation Release 15 13 Note that the iptables rules and the IP forwarding setting are not persistent If you don t make them persistent not documented here don t forget to reactivate them each time you want to recreate a NAT environment 1 12 15 SCCP Introduction SCCP or skinny is a stimulus protocol used to fully interact with Cisco phones What is xivo libsccp It s a SCCP channel driver written for Asterisk by Avencall based on the channel skinny Installation The following packages are required to compile xivo libsccp on a XiVO build essential asterisk dev apt get update amp amp apt get install build essential asterisk dev git clone https github com xivo pbx xivo libsccp git cd xivo libsccp xivo libsccp make make install Configuration See sccp conf sample for a configuration file example FAQ Q When is this feature will be available A The order in which we implement features is based on our client needs Write us an email that clearly explain your setup and what you would like to do and we will see what we can do We don t provide any timeli
24. Note that you must not download the firmware for these phones unless you agree to the fact it comes from a non official source For the plugin to work fully you need these additional packages apt get install p7zip python pexpect telnet Avaya 1200 series IP Deskphones previously known as Nortel IP Phones Model Tested Fkeys XiVO HA 1220IP Yes 0 No 1230IP No 0 No Tested means the device has been tested by the XiVO development team and that the developers have access to this device 5Fkeys is the number of programmable function keys that you can configure from the XiVO web interface It is not necessarily the same as the number of physical function keys the device has for example a 6757i has 12 physical keys but you can configure 30 function keys because of the page system XiVO HA means the device is confirmed to work with XiVO HA 1 7 Ecosystem 107 XiVO doc Documentation Release 15 13 Cisco Cisco Small Business SPA300 series Model Tested Fkeys XiVO HA SPA301 No 1 No SPA303 No 3 No Note Function keys are shared with line keys for all SPA phones Cisco Small Business 5 500 series Model Tested Fkeys XiVO HA 501 8 No SPA502G No 1 No SPA504G Yes 4 No 5 508 Yes 8 No SPA509G No 12 No SPA512G No 1 No SPA514G No 4 No SPA525G Yes 5 No SPA525G
25. Parameters Warning parameter q is now DEPRECATED use search instead q List only users matching this filter The filter is done on the firstname lastname and firstname lastname and is case insensitive search Search term Only users with a field containing the search term will be listed order Sort the list using a column e g firstname Columns allowed firstname lastname caller id descrip tion userfield direction asc or desc Sort list in ascending asc or descending desc order limit maximum number of users to return in the list Must be a positive integer 312 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 skip number of users to skip over before starting the list Must be a positive integer or zero Example requests Listing all available users GET 1 1 users HTTP 1 1 Host xivoserver Accept application json Searching for a user called john GET 1 1 users search john HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json tetsite 2 items Ty firstname John lastname Doe timezone language en_US description Caller id John Doe outgoing_caller_id default mobile phone number username password music default preprocess subroutine
26. XiVO doc Documentation Release 15 13 1 12 2 Debugging Asterisk Precondition To debug asterisk crashes or freezes you need the following debug packages on your XiVO General rule XiVO 14 18 XiVO gt 14 18 Example version 14 12 14 18 Commands 1 apt get insta xivo fai l amp it8 dist xivo 14 18 apt get update apt get update apt get install gdb apt get install gdb apt get install t xivo lA4ap B gsternskadlg kixovoib ct8 adbge So There is a Problem with Asterisk Now What 1 Find out the time of the incident from the people most likely to know 2 Determine if there was a segfault a The command grep segfault var log syslog should return a line such as the following Oct 16 16 12 43 xivo 1 kernel 10295061 047120 asterisk 1255 segfault at b Note the exact time of the incident from the segfault line c Follow the Debugging Asterisk Crash procedure 3 If you observe some of the following common symptoms follow the Debugging Asterisk Freeze procedure The output of command service asterisk status says Asterisk PBX is running No more calls are distributed and phones go to No Service Command core show channels returns only headers no data right before returning 4 Fetch Asterisk logs for the day of the crash make sure file was not already logrotated cp a var log asterisk full var local date Y m d hostname a
27. Add Email 54 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 e 3 QUO gt Control Panel Programs Default Programs Set Associations 4 Search Contrat Panel Associate a file type or protocol with a specific program Click on an extension to view the program that currently opens it by default To change the default program click Change program xivoclient exe Change program a ra vpdxsini00 Choose the program you want to use to open this protocol vwdxsini00 17 vwdxsingO 17 vwdxsin90 gt Google Chrome Skype BJ Google Inc Skype Technologies S A Protocol TEL Protocols 8 Soap mato 6 lt B3 Ms EXCEL BE MS POWERPOI 17 always use the selected program to handle this protocol 3 MS PUBLISHER BEME WOD 3 news e NNTP Chrome HTML Document Google Chrome N ONENOTE URL Protocole OneNote Microsoft OneNote 2010 INJONENOTEDESKTOP URL OneNote Protocol Microsoft OneNote 2010 OUTLOOKFEED URL Ajouter flux RSS Outlook Microsoft Outlook G oUTLOOKFEEDS URL Ajouter flux RSS Outlook Microsoft Outlook G SEARCH Windows Search protocol Windows Explorer URL Skype Protocol Skype 27 US XiVO Click2Call Protocol xivoclient exe Internet Explorer Do you want to allow this webs
28. Groups Voicemails Conference rooms Pall LLL Fig 1 66 Add a line to a user Congratulations Your SCCP phone is now ready to be called Direct Media SCCP Phones support directmedia direct RTP In order for SCCP phones to use directmedia one must enable the directn Services IPBX IPBX settings SCCP general settings 206 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Features Features Supported Receive call Yes Initiate call Yes Hangup call Yes Transfer call Yes Congestion Signal Yes Autoanswer custom dialplan Yes Call forward Yes Multi instance per line Yes Message waiting indication Yes Music on hold Yes Context per line Yes Paging Yes Direct RTP Yes Redial Yes Speed dial Yes BLF Supervision Yes Resync device configuration Yes Do not disturb DND Yes Group listen Yes Caller ID Yes Connected line ID Yes Group pickup Yes Auto provisioning Not yet Multi line Not yet Codec selection Yes NAT traversal Not yet Type of Service TOS Manual Telephone Device type Supported Firmware version Timezone aware 7905 Should work 7906 Yes 5 11 9 0 35 Yes 7911 Yes 5 11 9 0 35 Yes 7912 Yes 8 0 4 080108A No 7920 Yes 3 0 2 No 7921 Yes 1 4 5 3 Yes 7940 Yes 8 1 2 0 No 7941 Yes SCCP41 9 0 3S Yes 7941GE Yes SC
29. Note Currently user and network locale 9 0 2 should be used for plugins xivo sccp legacy and xivo cisco sccp 3 Digium D40 D50 D70 Provisioning Y NYT Y H A Y NYT Y Directory XIVO N NYT N Funckeys 2 14 106 Supported programmable keys User with supervision function N NYT N Group Y NYT Y Queue Y NYT Y Conference Room with supervision function Y NYT Y General Functions Online call recording N NYT N Phone status Y NYT Y Sound recording Y NYT Y Call recording Y NYT Y Incoming call filtering Y NYT Y Do not disturb HK NYT HK Group interception Y NYT Y Listen to online calls N NYT N Directory access N NYT N Filtering Boss Secretary Y NYT Y Transfers Functions Blind transfer HK NYT HK Indirect transfer HK NYT HK Forwards Functions Disable all forwarding Y NYT Y Enable Disable forwarding on no answer Y NYT Y Enable Disable forwarding on busy Y NYT Y Enable Disable forwarding unconditional Y NYT Y Voicemail Functions Enable voicemail with supervision function Y NYT Y Reach the voicemail HK NYT HK Delete messages from voicemail Y NYT Y Agent Functions Connect Disconnect a static agent Y NYT Y Connect a static agent Y NYT Y Disconnect a static agent Y NYT Y Parking Functions Parking N NYT N Parking position N NYT N
30. XiVO ISDN Interconnection PBX Phones Connection 4 Beroxfos A B 0000 0000 0000 H ni fo AE 2 T2 XiVO PBX 4 The following describes how to configure your XiVO and your Berofos 1 Follow the Berofos general configuration firmware IP login password described in the the Berofos Instal lation and Configuration page 2 When done apply these specific parameters to the berofos 458 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 bnfos set scenario 1 h 10 105 2 26 u admin berofos bnfos set mode 1 h 10 105 2 26 u admin berofos bnfos set modedef 1 h 10 105 2 26 u admin berofos bnfos set wdog 1 h 10 105 2 26 u admin berofos bnfos set wdogdef 1 h 10 105 2 26 u admin berofos bnfos set wdogitime 60 h 10 105 2 26 u admin berofos 3 Add the following script usr local sbin berofos workaround bin bash Script workaround for berofos integration with a XiVO in front of PABX res S etc init d asterisk status does_ast_run if Sdoes_ast_run eq 0 J then usr bin logger 50 Asterisk is running If asterisk is running we re enable wdog and re set the mod usr bin bnfos set mode 1 f fosl s usr bin bnfos set modedef 1 f fosl s usr bin bnfos set wdog 1 f fosl s Now kick be
31. cti proxy ctispy xivo new You can pretty print the messages if you want by using the pretty print option cti proxy ctispy xivo new pretty print By default each message is displayed separately even though more than one message can be in a single TCP packet You can also use the raw option if you want to see the raw traffic between the client and the server 1 12 Contributors 383 XiVO doc Documentation Release 15 13 cti proxy ctispy xivo new raw Note that when using the option some other option doesn t work because the messages not de coded analyzed If you want to remove some fields from the messages you can use the st rip option cti proxy ctispy xivo new strip timenow strip commandid strip replyid If you want to see only messages matching a certain key and value use the include option cti proxy ctispy xivo new include class getlist Finally you can ignore all the messages from the client or the server by using the no client or no server option respectively By default ctispy will exit after the connection with the client is closed You can bypass this behavior with the option that will make the CTI proxy continue whether the client is connected or not ctisave ctisave save the messages from the client and the server in two separate files This is useful to do more careful post analysis The simplest
32. After this command you can visit Transifex and check that the xivo client is 100 translated for your language Once all the translations have been checked run the 3 following commands make pulltr git commit git push Warning Under Arch Linux you must have qt5 installed and prepend PATH usr bin before make pull push tr Add a new XiVO Client locale Localizing the XiVO Client goes through four steps Creating the new translation in Transifex Generatint the translation files Embedding the translation in the binaries Displaying the new locale to be chosen Creating the new translation in Transifex Log into Transifex and click the Create language option Generate translation files The translation files will be automatically generated from the source code For the command to create files for your locale you need to ensure it is listed in the project file There are a few project files you should edit each one will translate a module of the XiVO Client baselib baselib pro xivoclient xivoclient pro xivoclient xletlib pro e xivoclient src xlets x x pro In these files you should add a line like this one TRANSLATIONS ROOT DIR il8n xivoclient fr ts This line adds a translation file for french Please replace fr by the code of your locale S ROOT DIR variable references either xivoclient or baselib You use a command like the follo
33. GET 1 1 users lt id gt Example request GET 1 1 users 1 1 1 Host xivoserver Accept application json 314 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example response HTTP 1 1 200 OK Content Type application json id I firstname John lastname Doe timezone language en_US description Caller id John Doe outgoing_caller_id default mobile phone number username password music on hold default preprocess subroutine userfield Create a User Query POST 1 1 users Field Required Values firstname yes string lastname no string timezone no string Must be a valid timezone language no string Must be a valid language description no string caller id no string Input outgoing caller id no string default anonymous or custom mobile phone number no string of digits username no string password no string Minimum of 4 characters music on hold no string Must be a valid category preprocess subroutine no string userfield no string Error code Error message Description Errors z 400 error while creating User explanation See error message for more details Example request POST 1 1 users HTTP 1 1 Host xivoserver Accept applica
34. Provisioning General page by setting the URL field to one of the following value http provd xivo io plugins 1 stable officially supported devices stable repository default http provd xivo io plugins 1 testing officially supported devices testing reposi tory http provd xivo io plugins 1 archive officially supported devices archive reposi tory e http provd xivo io plugins 1 addons stable community supported devices sta ble repository 1 8 Administration 195 XiVO doc Documentation Release 15 13 e http provd xivo io plugins 1 addons testing community supported devices test ing repository The difference between the stable and testing repositories is that the latter might contain plugins that are not working properly or are still in developement The archive repository contains plugins that were once in the stable repository After setting a new URL you must refresh the list of installable plugins by clicking the update icon of the Config uration Provisioning Plugin page How to manually tell the phones to get their configuration If you have set up a DHCP server on XiVO and the phones can access it you can skip this section The according provisioning plugins must be installed Aastra the web interface of your phone go to Advanced settings Configuration server and enter the following settings Download Protocol
35. Synchronize the phone 5 Once this is completed you can uninstall the xivo aastra switchboard plugin An unofficial script that automates this procedure is also available on github cd tmp wget no check certificate https raw githubusercontent com xivo pbx xivo tools ma python migrate_switchboard_1407 py ster scripts 14 06 Consult the 14 06 Roadmap The XiVO client now uses Qt 5 instead of Qt 4 There is nothing to be aware of unless you are building your own version of it 14 05 Consult the 14 05 Roadmap The CTI Protocol has been updated The specification of the answered rate queue statistic has changed to exclude calls on a closed queue The switchboard can now choose which incoming call to answer The package versions do not necessarily contain the current XiVO version it may contain older versions Only the package xivo is guaranteed to have the current XiVO version Please consult the following detailed updated notes for more information DAHDI 2 9 0 Upgrade Notes These notes only apply to Digium TE133 or TE134 cards that are in firmware version 770017 or earlier Afterthe upgrade First you need to install the latest firmware for your TE133 or TE134 cards xivo fetchfw install digium tel133 xivo fetchfw install digium tel134 Then stop all the services and reload the DAHDI modules Reloading the DAHDI module might take up to 30 seconds 1 4 Upgrading 27
36. WSGI socket file var run xivo confd xivo confd sock Config file etc xivo confd config yml Log file var log xivo confd log Static data files usr share xivo confd Storage data files var lib xivo confd Component specific information 1 12 10 CTI Server This section describes the informations and tools for CTI Server CTI Proxy Here s how to run the various CTI client server development debugging tools These tools can be found on GitHub in the XiVO project You can get the scripts by using Git git clone https github com xivo pbx xivo tools git General Information Both the ctispy ctisave and ctistat tools work in a similar way They both are proxies that need to be inserted between the CTI client and the CTI server message flow To do this you first start the given tool on your development machine giving it the CTI server hostname as the first argument You then configure your CTI client to connect to the tool on port 50030 notice the trailing 0 The tool should then accept the connection from the client and once this is done will make a connection to the server thereby being able to process all the information sent between the client and the server In the following examples we suppose that the CTI server is located on the host named xivo new Tools ctispy ctispy can be used to see the message flow between the client and the server in real time The simplest invocation is
37. exten 1234 context default commented false Example request Example request 1 line id SW Example request Fig 1 96 Download source source 1 11 and SDK 279 XiVO doc Documentation Release 15 13 agent_id 18 queue id 3 penalty 5 Associate an Agent to a Queue Position in queue is set to max position 1 or 0 if it is the first member of the queue Query POST 1 1 queues queue id members agents Field Required Values Description Input agent id yes int Must be an existing id penalty yes int 20 Error code Error message Description 404 Resource Not Found Queue was not found queue id queue id Errors 3 400 Input Error field agent_id Agent was not found 400 Resource Error Agent is associated with a Queue Example request POST 1 1 queues 3 members agents Host xivoserver Content Type application json agent_id 32 penalty 12 Example response HTTP 1 1 201 Location 1 1 queues 3 members agents 32 agent_id 32 queue id 3 penalty 12 Remove Agent from a Queue Query DELETE 1 1 queues queue id members agents agent id Error Error message Descrip code tion Errors 404 Resource Not Found QueueMember was not found agent_id lt agent_id
38. exten dnd 25 exten fwd busy 23 exten fwd disable all exten fwd no answer wu exten fwd unconditional exten park null exten pickup call exten pickup group exten voicemail 98 funckeys iu 4 label line type value 8 mm 1 1005 protocol sip dtmf mode sip lines wy auth_username display name number 1001 password T2S7 proxy ip 10 3 registrar ip username application vnd proformatique provd json defaultconfigdevice 38e5e08ffe804b468f5aa53b9536bb25 x20 422 qm null speeddial UVSIPSINFO je5qtq ElNu00e8s Or co 2 21 E je5qtq Create a Config Query POST provd cfg mgr configs Example request POST provd cfg mgr configs HTTP 1 1 Host xivoserver 1 11 and SDK 337 XiVO doc Documentation Release 15 13 Content Type application vnd proformatique provd json config parent ids base 1 raw config lines 1 auth username 100 display name Foo password 100 username 100 Example response HTTP 1 1 201 Created Content Type application vnd proformatique provd json Location provd cfg mgr configs 77839d0 05c84662864b0ae5c27033e4 id 77839d0 0
39. 1 8 Administration 143 XiVO doc Documentation Release 15 13 This applies even if you want the action to be different from sending an email like putting it on a FTP server You ll still need to enter an email address in these cases even though it won t be used Note that as usual when adding incoming call definitions you must first define the incoming call range in the used context EE General settings General Fax detection Call permissions __SIP Protocol _ Protocol DID 5551234567 SCCP Protocol ist Voicemaiis Incals from extern x Desinaton Appian Advanced Call Center Application FaxToMail z Agents E mail foo example org Skills CallerID mode z Skill Rules IPBX z Preprocess subroutine Users Description Groups Voicemails _ Conference rooms Call management Incoming calls Outgoing calls Call permissions filters Save Schedules Voice menus Changing the email body You can change the body of the email sent upon fax reception by editing etc xivo mail txt The following variable can be included in the mail body dstnum s the DID that received the fax If you want to include a regular percent character i e you must write itas in mail txt or an error will occur when trying to do the variables
40. 127 0 0 1 Port 5038 The section named Listening Ports allows the administrator to specify listening addresses and ports for the CTI server s interfaces Fast AGI is the CTI server s entry point for the Asterisk dialplan This address and port have nothing to do with the listening port and address of xivo agid CTI and CTIs are for the client s connection and secure connection respectively Web Interface is for the port used to receive events from the XiVO web interface Info server a debugging console to do some introspection on the state of the CTI server Announce is used to notify the CTI server when a dialplan reload is requested z Listening ports Activate address Port Fast AGI 127 0 0 1 502 z 0900 5003 CTIS 0 0 0 0 Certificate 5013 Private Key 7 2 Web Interface 127 0 0 1 5004 Info server 127 0 0 1 5005 Announce server 127 0 0 1 5006 l r a E UT SEE SEDE E E EE 3 The timeout section allow the administrator to configure multiple timeouts Socket timeout is the default timeout used for network connections Login timeout is the timeout before a CTI connection is dropped if the authentication is not completed po IN DEEA T
41. Aastra 9480i 3 3 1 2235 sip lines 9 description Plugin for Aastra 6730i 6731i 6735i 6737i 6739i 6753i 6755i 67 dsize 9397 shalsum 68dbed6afa87cf624a89166bdc6bdf7413cb84df yersion 1 1 List Installed Packages Query GET uri Example request Example request for the installation service of the plugin manager GET provd pg mgr install installed HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json pkgs Xivo aastra 3 3 1 SP2 capabilities Aastra 6730i 3 3 1 5089 sip lines 6 Aastra 67311 3 3 1 2235 sip lines 6 switchboard true Aastra 6735i 3 3 1 5089 sip lines 9 Aastra 67371 3 3 1 5089 1 sip lines 9 Aastra 67391 3 3 1 2235 sip lines 9 Aastra 675314 3 3 1 2235 sip lines 9 1 11 and SDK 351 XiVO doc Documentation Release 15 13 hy Aastra 67551 3 3 1 2235 4 sip lines 9 switchboard true Aastra 67571 3 3 1 2235 sip lines 9 switchboard true Aastra 91431 3 3 1 2235 sip lines 9 jy Aastra 9480i 3 3 1 2235 sip lines 9 description Plugin for Aastra 67301 67311 67351 67371 67391 67531 67551 67 version 1 1
42. Firstname Bb Lastname Number Password CS Cortex Dau faut Languaoe Group fat Save Associate the user to the agent in the Users tab Abraham Maharba Alice Wonderland Charlie Chaplin Voice Mail Assign the Agent to the Switchboard Queue and ONLY to the Switchboard queue uu switchboard Send Incoming Calls to the Switchboard Queue Incoming calls must be sent to the Switchboard queue to be distributed to the operators To do this we have to change the destination of our incoming call for the switchboard queue 1 8 Administration 215 XiVO doc Documentation Release 15 13 In this example we associate our incoming call DID 444 to our Switchboard queue General Call permissions Schedules DID Context Destination Preprocess subroutine 7 Incalls from extern Queue X 1 SSS Redirect to switchboard 9 default Ring tine 7 7 mode 77777744 Description Set Answer Destinations the Switchboard Queue When there are no operators available to answer a call No Answer destinations should be used to redirect calls towards another destination You also need to set the timeout of the Switchboard queue to know when calls will be redirected General Announces Members Application No answer Advanced Schedules
43. Minimum time of the round trip RTT messages 100 milliseconds 16 T1 timer 500 milliseconds 169 Configuration timer 32000 milliseconds 1 Relax g Compensating for RFC 2833 from another PBX Compact headers RTP timeout Disabled 71 RTP hold timeout Disabled 8 RTP keepalive Disabled J Enable RTP Direct 1 MIME type notification application simple message summary DNS request Conform to standards Maximum expiry 5 minutes 9 Je iho J Minimum expiry 3 minutes Default expiry time 4 minutes MWI expiry Fig 1 88 Services IPBX General Settings SIP Protocol The provisioning server configuration will be automatically updated in order to allow phones to switch from XiVO power failure 262 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Configuration edi U nen Unique name default sers Entities Display name local Directories NS IL IPC NR dees a E E E Web Services Access H Certificates High Availabilty Network Secondary Be eter e ne tem ceese cic cceecnesscsencnessseseccadesdsbosssessstecesecccsesnesaaceesaes Resolver Mail p
44. Note for IEEE 802 11b mode cWmin 5 cWmax 10 Normal priority AC_BE best effort wmm_ac_be_aifs 3 wmm_ac_be_cwmin 4 wmm_ac_be_cwmax 10 wmm_ac_be_txop_limit 0 wmm_ac_be_acm 0 Note for IEEE 802 11b mode cWmin 5 cWmax 7 High priority video wmm_ac_vi_aifs 2 wmm_ac_vi_cwmin 3 wmm_ac_vi_cwmax 4 wmm_ac_vi_txop_limit 94 wmm_ac_vi_acm 0 Note for IEEE 802 11b mode cWmin 4 cWmax 5 txop_limit 188 d 1 12 Contributors 427 XiVO doc Documentation Release 15 13 Highest priority AC_VO voice wmm_ac_vo_aifs 2 wmm_ac_vo_cwmin 2 wmm_ac_vo_cwmax 3 wmm_ac_vo_txop_limit 47 wmm_ac_vo_acm 0 Note for IEEE 802 11b mode cWmin 3 cWmax 4 burst 102 Static W ral tu key configuration The key number to use when transmitting t must be between 0 and 3 and the corresponding key must be set default not set default 0 he keys to use A key may be a quoted string or unquoted hexadecimal digits The key length should be 5 13 or 16 characters or 10 26 or 32 digits depending on whether 40 bit 64 bit 104 bit 128 bit or 128 bit 152 bit WEP is used Only the default key must be supplied the others are optional default not set wep key0 123456789a keyl 2 vwxyz wep_key2 0102030405060708090a0b0c0d wep_key3 2 4 6 8 0 23 H Station inactivity limit
45. example com n Agent s relation agen le com nul example com XiVO doc Documentation Release 15 13 endpoint_id null source_entry_id efgh 34 source personal Create personal contacts Client gt Server class people create personal contact commandid lt commandid gt Server Client class people personal contact created commandid lt commandid gt Delete personal contacts Client gt Server class people delete personal contact sourco personal source entry id abcd 1234 commandid lt commandid gt Server Client class people personal contact deleted data source personal source entry id abcd 1234 commandid lt commandid gt Service class featuresput Call Filtering function incallfilter value true false activate deactivate filtering Client gt Server class featuresput commandid 1326845972 function incallfilter value true Server Client class getlist config incallfilter true 1 12 Contributors 399 XiVO doc Documentation Release 15 13 function updateconfig listname users tid Limenow 1361456398 52 tipbxid xivo DND function enablednd value true false activate deactiv
46. menu of the web interface was not replicated between the master and slave This is now replicated except for HA settings All the network configuration i e everything under the Configuration Network section All the support configuration i e everything under the Configuration Support section The call center statistics have also been excluded from the replication The way the replication is done has also been updated which makes it faster 1 4 Upgrading 25 XiVO doc Documentation Release 15 13 Optional Upgrade Procedure When upgrading to XiVO 14 08 the database schema will be altered This will result in a longer upgrade time if you have a lots of rows in the queue_log table You can see the number of rows in your queue_log table with sudo u postgres psql c SELECT count FROM queue log asterisk On ordinary hardware you can expect that it will take 10 minutes for every 2 5 million of rows So if you have 5 million of rows in your queue_log table you can expect that the upgrade will take an extra 20 minutes It is possible to reduce the amount of additional time the upgrade will take by either removing rows from the table or altering the table before the upgrade Both these commands can be run while the XiVO services are up For example if you want to remove all the rows before march 2014 you can use sudo u postgres psql c DELETE FROM queue log WHERE
47. 1361447017 29 tid is the the object identification Example of phone messages received when a phone is ringing ss Vstatus channels SIP x2gjtw 0000000b Y tid 3 status channels SIP x2gjtw 0000000b queues hintstatus OT groups tese sbtabus q BIntsLatus S iig 3 channel status update class getlist function updatestatus listname channels status state Down Ring Unknown commstatus ready calling ringing class getlurst function updatestatus listname channels ddpbxsd e zivot Ltimenow 1361447017 29 Example of phone messages received when a phone is ringing status timestamp 1361447017 22 holded false commstatus ready parked false status timestamp 1361447017 29 holded false commstatus ready parked false status timestamp 1361447017 29 holded false state Ring parked false comms status timestamp 1361447017 29 holded false state Down parked false comms Update notification Register agent status update The register agent status update command is used to register to the status up dates of a list of agent Once registered to a agent s status the client will receive all Agent status update events for the registered agents This command should be sent when an agent is displayed in the
48. 2 n Goto S IVR DESTINATION 8833 1 CHOICE 3 exten exten 3 1 NoOp pressed digit is 3 redirect to the submenu dp ivr submenu 3 n Goto dp ivr submenu s 1 CHOICE 4 4 Sxcen exten 4 1 NoOp pressed digit is 4 redirect to start label in this context 4 n Goto s start EHEHE TIMEOUT dH t l NoOp no digit pressed for 5s process it like an error exten exten t n Goto i 1 INVALID CHOICE exten exten exten exten exten i 1 NoOp if counter variable is 3 or more then goto label error i n Gotolf S counter gt 3 error res rontext rontext i n NoOp pressed digit is invalid and less than 3 errors the guide ivr exem i n Playback GV DIRECTORY SOUNDS ivr example invalid choice i n Goto s start 91 1 8 Administration 181 invalid c XiVO doc Documentation Release 15 13 Playback ivr example invalid choice Playback ivr example error Playback ivr example invalid choice Counter lt Playback ivr example error al NI 2 9 3 Playback ivr example welcome sound Background ivr example choices Invalid extension waitexten during 5s or timeout Valid choice 1 Callto 8000 2 Callto 8833 4 Repeatthe menu Background ivr example submenu choice Invalid extension or timeout waitexten duri
49. Aastra 67551 gt 14 07 gt xivo aastra 3 3 1 SP2 v1 0 Aastra 67571 gt 14 07 gt xivo aastra 3 3 1 SP2 v1 0 Aastra 67351 gt 14 07 gt xivo aastra 3 3 1 SP2 v1 2 Aastra 67371 gt 14 07 gt xivo aastra 3 3 1 SP2 v1 2 Polycom VVX 400 gt 15 11 gt xivo polycom 5 3 0 v1 3 Polycom 410 gt 15 11 gt xivo polycom 5 3 0 v1 3 Snom 720 gt 14 14 gt xivo snom 8 7 3 25 5 v1 0 Snom D725 gt 14 14 gt xivo snom 8 7 5 17 v1 4 Yealink T46G gt 15 01 gt xivo yealink 72 0 v1 22 1 Create a Queue for Your Switchboard All calls to the switchboard will first be distributed to a switchboard queue To create this queue go to Services Call center Queues and click the add button General Announces Members Application No answer Advanced Schedules Diversions Name Display name Number Ring strategy Context On Hold Music Switchboard 9 Ring all 71 7 pom dev pcm dev Fiy Add an announce Customize the name of the caller Preprocess subroutine zm subr switchbc Save The following configuration is mandatory The General Name field has to be switchboard 1 8 Administration 211 XiVO doc Documentation Release 15 13 The General Ring strategy field has to be Ring all The General Preprocess subroutine field has to be xivo_subr_switchboard The Application Allow caller to hang up call
50. P X il Type of this node Master Entities os PRD ETE LL LE PO D E 4 Directories i Web Services Access Remote address 192 168 1 2 Certificates MN High Availability Network Interfaces Save Ss Mail Fig 1 91 HA Dashboard Master 1 10 High Availability HA 263 XiVO doc Documentation Release 15 13 Important You have to restart all services xivo service restart once the master node is configured Slave node In choosing the method Slave you must enter the IP address of master node Configuration o Higa magement Type of this node Slave E Entities Mc LE 1 Directories CERED i Web Services Access Remote address 192 168 1 1 Certificates T EE A AA A sadicace Mein afia High Availability N Network Interfaces EE Save R me Fig 1 92 HA Dashboard Slave Configuration Replication Once master slave configuration is completed XiVO configuration is replicated from the master node to the slave every hour 00 Replication can be started manually by running the replication scripts on the master xivo master slave db replication slave ip xivo sync The replication does not copy the full XiVO configuration of the master Notably thes
51. To assign a function to an interceptor go to Services Users edit an interceptor and go to the Func Keys tab Add a new function key of type Group Interception and save General Lines No answer Services Voicemail Groups Func Keys Key Type Destination Label Supervision 1 gt Filtering Boss Secretary zj fernando Fernando L Ig ane Lin Enabled 2 zj Group Interception e Save 1 8 18 Server Hardware This section describes how to configure the telephony hardware on a XiVO server Note Currently XiVO supports only Digium Telephony Interface cards The configuration process is the following Load the correct DAHDI modules For your Digium card to work properly you must load the appropriate DAHDI kernel module This is done via the file etc dahdi modules and this page will guide you through its configuration Know which card is in your server You can see which cards are detected by issuing the dahdi_hardware command dahdi_hardware pci 0000 05 0d 0 4 d161 b410 Digium Wildcard 410 pci 0000 05 0e 0 wet 4xxp d161 0205 Wildcard TE205P 4th Gen This command gives the card name detected and more importantly the DAHDI kernel module needed for this card In the above example you can see that two cards are detected in the system a Digium B410P which needs the wcb4xxp module and a Digium TE205P which needs the wct 4xxp module Create th
52. t delete that voicema arning Note that disassociating a voicemail from its user don Deleting voicemail Delete voicemail is done on Services gt IBX IPBX settings Voicemails Warning Deleting a voicemail is irreversible It deletes all messages associated with that voicemail f concerned user still have messages waiting for him you have to manually reboot the phone 226 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Disable password checking This option allows to skip password checking for the voicemail when it is consulted from the inside More precisely password checking will be skipped when calling the voicemail with 98 when calling the voicemail with 99 lt voicemail number But it will not be skipped when the voicemail is consulted through an incoming call For instance let s consider the following incoming call General Call permissions Schedules DID 53123 Context Incalls from extern Destination Application Application Voicemail consulting CallerID mode M Preproesssubrouine Description With such a configuration when calling this incoming call from the outside we will be asked for the voicemail number we want to consult the voicemail password even if the Disable password checking option is activated And then we will be granted access to the voicemail Take note th
53. 1 60 SCCP general settings 204 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 At this point you should have a fully functional DHCP server that provides IP address to your phones Depending on what type of CISCO phone you have you need to install the plugin sccp legacy sccp 9 0 3 or both Note Please refer to the Provisioning page for more information on how to install CISCO firmwares Once your plugin is installed you ll be able to edit which firmwares and locales you need If you are unsure you can choose all without any problem EN 7 PERO EET EP II A sers i Entities Plugin for Cisco 7912G 7940G and 7960G in version 8 1 2 of the SCCP software General Please see the documentation if you want to install Cisco firmwares Directories a a aa Web Services Access Certificates Name Description Size Version Action High Availability 7912 fw Firmware for Cisco 7912G 331 06 kb 8 0 4 lod LDAP Servers userlocale es ES es ES user locale 4 11 mb 9 0 2 9 Interfaces userlocale de DE de DE user locale 3 4 mb 9 0 2 Resolver 7940 7960 fw Firmware for Cisco 7940G and 7960G 684 95 kb 8 1 2 9 DHCP networklocale Network locale 8 92 mb 9 0 2 9 userlocale fr FR fr FR user locale 4 19 mb 9 0 2 9 A
54. 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 37 38 39 40 4l 42 43 44 45 46 47 48 49 50 54 55 56 57 58 60 61 62 63 XiVO doc Documentation Release 15 13 debug False foreground False log filename var log xivo dird log log level info pid filename var run xivo dird xivo dird pid Source config dir etc xivo dird sources d user www data rest api wsgi socket var run xivo dird xivo dird sock enabled plugins backends csv ldap phonebook services lookup views aastra xml default json views displays switchboard display title Firstname default Unknown field firstname type name title Lastname default Unknown field lastname type name default display title Firstname field fn type name title Location default Canada field country title Number field number type number profile to display default default display switchboard switchboard display services lookup default sources my csv ldap quebec timeout 0 5 switchboard sources my csv xivo phonebook 82 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 ldap quebec timeout 1 sources my source name my source type ldap ldap optionl value ldap option2 value Root section debug Enable log debug mes
55. 30 simultcalls 5 simultcalls 5 voicemailid null voicemailid null 152 lines 152 lines enablexfer false enablexfer false entityid 1 entityid 1 firstname User firstname User fullname User Bl fullname User Bl incallfilter false jncallfilter false lastname Bl lastname Bl loginclient userbl mobilephonenumber profileclient client ringseconds 30 loginclient userbl mobilephonenumber profileclient client ringseconds 30 simultcalls 5 cti server 1 cti server 2 827L 18998C loginclient userbl mobilephonenumber profileclient client ringseconds 30 simultcalls 5 384 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 ctistat ctistat display various statistic about a CTI session when it ends The simplest invocation is cti proxy ctistat xivo new CTI Protocol Protocol Changelog Warning The CTI server protocol is subject to change without any prior warning If you are using this protocol in your own tools please be sure to check that the protocol did not change before upgrading XiVO 15 13 e for channel status update message the value of commstatus have been c
56. 5551234 is performed then the following HTTP request GET ws phonebook phonesearch 5551234 HTTP 1 1 is emitted Note that the CSV returned by the Web service is not further processed Reverse lookup To enable reverse lookup you need to add an entry in Mapped fields Fieldname reverse Value the header of your data source that you want to see as the caller ID on your phone on incoming calls Configure the display of the data Edit the default display filter or create your own in Services CTI Server Directories Display filters Each line in the display filter will result in a header in your XiVO Client Field title will be the text displayed in the header Display format is a format string for example db firstname db lastname where db x will be replaced with the value from the data source is the identifier of the field con figured in the directory definition not the header of your data source Make your directory available Go in Services CTI Server Directories Reverse Direct directories select your display filter if needed and add the directory you just created You may have to restart the CTI Server or the AGI daemon to apply the change Service xivo ctid restart Service xivo agid restart 1 8 12 Directed Pickup Directed pickup allows a user to intercept calls made to another user For example if a user with number 1001 is ringing you
57. 60 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Interface Method Static Address EJ Nemas Default gateway Description Interface ei 1 6 System 61 XiVO doc Documentation Release 15 13 Web Services Access dletuwork Template line Template device Apply network configuration Apply system configuration Fig 1 20 Apply after modify interface Adding a VLAN interface First we see there s already a configured network interface on our system gt etho 08 00 27 6a 49 e5 Data Static 192 168 32 51 192 168 32 254 gt eti 08 00 27 e9 fa t4 VolP Static 10 57 52 Legend Listing the network interfaces To add and configure a new VLAN interface we click on the small plus button in the top right corner and we get to this page In our case since we want to configure this interface with static information Click on Save list the network interfaces The new virtual interface has been successfully created Note Do not forget after you finish the configuration of the network to apply it with the button Apply network configuration After applying the network configuration 62 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Fig 1 21 Adding button m dn l8 53695 Physical Interface of VLAN ethO IDof VLAN Type Method Address
58. Client function listid listname queuemembers tipbxid xivo list Agent 2501 blue Agent 2500 yellow Agent 2002 yellow Agent 2003 Agent 2003 blue Agent 108 blue Agent 2002 blue timenow 1382717016 23 class getlist Fax Send fax Client gt Server class faxsend hide 0 filename contract pdf destination 41400 Fax status Server gt Client pages number of pages sent NULL if FAILED status FAILED Failed to send fax PRESENDFAX Fax number exist and converting pdf gt tiff has been done SUCCESS Fax sent with success elass fax progress status SUCCESS pages 2 IPBX Commands Dial destination can be any number destination can be a pseudo URL of the form type ibpx id Client gt Server class ipbxcommand command dial commandid lt commandid gt destination exten xivo extension For example class ipbxcommand c mmand dial commandid 1683305913 destination exten xivo 1202 The server will answer with either an error or a success 390 Chapter 1 Table of Contents members t Switchboar XiVO doc Documentation Release 15 13 class exten error string ipbxcommand dial success T2029 unreachable_extension 1202 Originate Sa
59. Continued on next page 102 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Table 1 3 continued from previous page D40 D50 D70 Paging Functions Paging Y NYT Y Note Some function keys are shared with line keys Particularities For best results activate DHCP Integration on your XiVO Impossible to do directed pickup using a BLF function key Only supports DTMF in RFC2833 mode Does not work reliably with Cisco ESW520 PoE switch When connected to such a switch the D40 tends to reboot randomly and the D70 does not boot at all It s important to not edit the phone configuration via the phones web interface when using these phones with XiVO Paging doesn t work Polycom SoundPoint IP SoundStation IP SPIP331 SPIP335 SPIP450 5 550 SPIP560 SPIP650 5 5000 Provisioning NT Y Y Y NT NT NT H A N Y N Y N N N Directory XIVO N N N FK N N N Funckeys N 0 2 3 3 47 0 Supported programmable keys User with supervision function NYT N NYT Y NYT NYT NYT Group NYT N NYT Y NYT NYT NYT Queue NYT N NYT Y NYT NYT NYT Conference Room with supervision function NYT N NYT Y NYT NYT NYT General Functions Online call recording NYT N NYT N NYT NYT NYT Phone status NYT N NYT Y NYT NYT NYT Sound recording NYT N NYT Y NYT NYT NYT Call recording NYT N NYT Y N
60. Database backups are created as db t gz files in the var backups xivo directory These tarballs contains a dump of the database used in XiVO In this example we ll restore the database from a backup file named db tgz placed in the home directory of root First extract the content of the db tgz file into the var tmp directory and go inside the newly created direc tory tar xvf db tgz C var tmp cd var tmp pg backup Drop the asterisk database and restore it with the one from the backup sudo u postgres dropdb asterisk sudo u postgres pg restor C d postgres asterisk x dump Restoring and Keeping System Configuration System configuration like network interfaces is stored in the database It is possible to keep this configuration and only restore xivo data Rename the asterisk database to asterisk previous sudo u postgres psql c ALTER DATABASE asterisk RENAME TO asterisk previous Restore the asterisk database from the backup sudo u postgres pg restor C d postgres asterisk x dump Restore the system configuration tables from the asterisk previous database sudo u postgres pg dump c t dhcp t netifac t resolvconf asterisk previous su Drop the asterisk previous database sudo u postgres dropdb asterisk previous Warning Restoring the data tgz file also restores system files such as host hostname network inter
61. Importing Users You may import your users using a csv comma separated file Users and lines are automatically created How to import users Once you have saved your file you can import your users via the Services IPBX IPBX settings Users page by clicking on the plus button Supported fields Field Values Description section user To add a user 1 8 Administration 221 XiVO doc Documentation Release 15 13 Table 1 7 continued from previous page Field Values Description entityid int entity id configuration menu Must be a val firstname string User firstname lastname string User lastname language enum en_US ES fr_FR fr CA Locale Must be set if you add a voi enableclient bool 0 1 If set to 1 username and password fields have to t username string XiVO Client username password string XiVO Client password profileclient string XiVO Client profile defined in menu Services gt outcallerid string Customize outgoing caller id for this user agentnumber string Associated agent number mobilephonenumber string Mobile phone number bosssecretary enum no boss secretary Filter Boss Secretary enablehint bool 0 1 Enable Disable supervision enablexfer bool 0 1 Enable Disable call transfers section line To add a line to an user phonenumber st
62. Queue List General information The queue list is a dashboard displaying queue statistics and real time counters for each queue configured on the XiVO Real time Columns The data of following columns display real time information Queues queue name and number if configured to be displayed Waiting calls The number of calls currently waiting for an agent in this queue The background color can change depending of the configured thresholds EWT Estimated waiting time Longest wait The longest waiting time for currently waiting calls The background color can change depending of the configured thresholds Talking The number of agents currently in conversation in the queue This column is set to 0 when the queue has just been created and no members have been added Logged The number of logged agents in the queue This column is set to N A when the queue has just been created and no members have been added Available The number of available agents ready to take a call in the queue This column is set to N A when the queue has just been created and no members have been added Last Period Columns The data of following columns are based on statistics fetched from a fixed width window of time e g the last 60 minutes or the last 10 minutes See below to configure the width of the window for each queue Received The number of calls received in this queue during the configured statistical window Answered The number of calls answered in this
63. Ring Waveform ua rw gt Sinusoid lt Ring_Waveform gt options Sinusoid Trapezoid gt Ring Frequency ua 2 rw 550 Ring Frequency Ring Voltage ua 2 rw 585 Ring Voltage lt 5 Port Impedance ua na 600 42 16uF FXS Port Impedance Caller ID Method ua na Bellcore N Amer China Caller ID Method Caller ID FSK Standard ua na gt bell 202 Caller ID FSK Standard lt CUSTOM TPL for faxes END gt 3 Reconfigure the devices with xivo provd cli c devices using plugin xivo cisco spa3102 5 1 10 reconfigure 4 Then reboot the devices xivo provd cli c devices using plugin xivo cisco spa3102 5 1 10 synchronize Most of this template can be copy pasted for a SPA2102 or SPA8000 1 8 Administration 147 XiVO doc Documentation Release 15 13 Using a SIP Trunk Fax transmission to be successful MUST use G 711 codec Fax streams cannot be encoded with lossy compres sion codecs like G 729a That said you may want to establish a SIP trunk using G 729a for all other communications to save bandwith Here s a way to be able to receive a fax in this configuration Note There are some prerequisites your SIP Trunk must offer both G 729a and G 711 codecs your fax users must have a customized outgoing calleridnum for the codec change is based on this variable 1 We assume that outgoing call rules and fax users wi
64. The Export Contacts button allow the user to save a copy of his local contacts in a file in CSV format The Import Contacts button allow the user to import a CSV file containing new contacts into his local directory The Search button allow the user to find an occurence of a string in his local directory Clicking the button multiple times in the search dialog will find the next occurence of the searched string The Remove all contacts button deletes all contacts from the user s local directory File format Imported files should have the following structure firstname lastname phonenumber emailaddress company faxnumber mobilenumber Robert Toto 5555555555 my email xivo 1234 5551231234 Remote Directory Xlet Overview The remote directory xlet allows the user to search through the configured directories of the CTI server Contacts Sheets Fax History Remote Directory Services Personal Directory Confere lt E Remote Directory _ Nom Num ro Entreprise E mail Source 1 Marty McFly 1981 McFly Inc marty mcfly com R pertoire XivO Externe 2 Francis Lalannix 1900 Inconnue R pertoire XiVO Interne Usage Type the search term in the search box and click on the search button If the search box is empty all phonebook entries will be displayed Results can be sorted by clicking on one of the column headers By default results are sorted using the first column Your sorting preference will be s
65. To implement new message in the protocol you have to create a new class that inherits the CTI Command class Your new class should have a static member caller required fields which is a list of required fields for this class Your class should also have a conditions static member which is a list of tupples of conditions to detect that an incoming message matches this class The init of your class is responsible for the initialization of it s fields and should call super lt ClassName gt self init msg Your class should register itself to the CTICommandFactory from xivo cti cti cti command import CTICommand from xivo cti cti cti command factory import CTICommandFactory class InviteConfroom CTICommand required fields class invitee conditions class invite confroom def init self super InviteConfroom self init msg Self invitee msg invitee CTICommandFactory register class InviteConfroom Each CTI commands has a callback list that you can register to from anywhere Each callback function will be called when this message is received with the command as parameter Refer to MeetmeList init fora callback registration example and to MeetmeList invite for the implementation of a callback from xivo cti cti commands invite confroom import InviteConfroom class MySuperClass object def init self InviteConfroom register callback self invite confroom handler def invite
66. XiVO doc Documentation Release 15 13 context default name SCCP 1234 protocol sccp provisioning_extension 382731 device_slot 1 device id 3s631t620gfb717835ce8a4e6efba85g ig rel lines_sccp href https xivoserver 1 1 lines_sccp 3 Get Line Query G ET 1 1 lines lt line_id gt Example request G ET 1 1 lines 42 HTTP 1 1 Host Accept xivoserver application json Example response HTTP 1 1 200 OK Content Type application json Context default name protocol sip provisioning extension 342395 device slot 1 device id 2b63136208fb117335ce874e65eba2a3 links 42 alb2c4 rel lines_sip href https xivoserver 1 1 lines_sip 42 SIP Lines SIP Line Representation Description 1 11 and SDK 301 XiVO doc Documentation Release 15 13 Field Value Description id int Read only callerid string Caller id that appears on a phone when calling Formatted as Firstname Lastname number context string Context used to emit a call device slot int Line s position on the device provision string Numeric code used to provision a phone ing extension secret string SIP account password username string SIP account username links list The link to the resource
67. etc apt sources list d xivo upgrade list amp amp apt get update 1 4 3 Upgrading from XiVO 13 03 and before When upgrading from XiVO 13 03 or earlier you must do the following before the normal upgrade wget http mirror xivo io xivo current key O apt key add 1 4 4 Upgrading from XiVO 12 13 and before When upgrading from XiVO 12 13 or earlier you must do the following before the normal upgrade apt get update apt get install debian archive keyring 1 4 5 Upgrading from XiVO 1 2 1 and before Upgrading from 1 2 0 or 1 2 1 requires a special procedure before executing xivo upgrade apt get update apt get install xivo upgrade usr bin xivo upgrade 1 4 6 Upgrading a Cluster Here are the steps for upgrading a cluster 1 On the master deactivate the database replication by commenting the cron in etc cron d xivo ha master 2 On the slave deactivate the xivo check master status script cronjob by commenting the line in etc cron d xivo ha slave 3 On the slave start the upgrade xivo slave xivo upgrade 4 When the slave has finished start the upgrade on the master xivo master xivo upgrade 5 When done launch the database replication manually xivo master xivo master slave db replication slave ip 6 Reactivate the cronjobs see steps 1 and 2 1 4 Upgrading 15 ro upgrade li XiVO doc Documen
68. function keys are shared with line keys There s the following known limitations issues with the provisioning of Snom phones in XiVO f you are using Snom phones with HA you should not assign multiple lines to the same device When using a D7 expansion module the function key label will not be shown on the first reboot or resyn chronization You ll need to reboot or resynchronize the phone a second time for the label to be shown properly After a factory reset of a phone if no language and timezone are set for the default config device in XiVO Configuration Provisioning Template device you will be forced to select a default language and timezone on the phone UI Yealink T19P T20P T21P T22P T26P T28P T32G T38G T4 Provisioning Y Y Y Y Y NT NT Y Y H A Y Y Y Y Y Y N N Y Directory XIVO N N N N N N N N N Funckeys 0 2 2 3 13 16 3 16 15 Supported programmable keys 1 7 Ecosystem 105 XiVO doc Documentation Release 15 13 Table 1 6 continued from previous page T19P T20P T21P T22P T26P T28P T32G T38G T4 User with supervision function N Y Y Y Y Y NYT Y Y Group N Y Y Y Y Y NYT Y Y Queue N Y Y Y Y Y NYT Y Y Conference Room with supervision function N Y Y Y Y Y NYT Y Y General Functions Online call recording N N N N
69. o 590 000007 10 0 EN ue Total call distributed Answered Abandoned 250 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Tuesday Wednesday Thursday 2 week Monday 28 27 0 0 0 0 1 00 00 10 96 0 Tuesday 1 0 0 0 1 Wednesday 23 19 2 0 0 0 2 82 0 Thursday 21 21 0 0 0 0 0 00 00 07 100 0 96 Friday 34 30 1 0 0 0 3 00 00 08 88 0 3 week Monday 36 35 0 0 0 0 1 00 00 11 97 0 Tuesday 40 36 4 0 0 0 00 00 07 90 0 Wednesday 35 35 0 0 0 0 0 00 00 07 100 0 Thursday 51 51 0 0 0 0 0 00 00 05 100 96 0 0 0 o 00 00 04 100 4 week Monday 24 24 0 0 0 0 0 00 00 04 100 96 0 Tuesday 1 0 0 0 00 00 08 96 Wednesday 28 24 4 0 0 0 0 00 00 26 B5 0 Thursday 40 37 0 3 0 0 0 00 00 09 100 0 Friday 2 0 0 0 00 00 06 5 week Monday 43 43 0 0 0 0 0 00 00 07 100 96 0 Tuesday 35 32 1 0 0 2 00 00 06 91 0 Wednesday 31 28 1 0 0 0 2 00 00 07 90 0 96 Thursday 27 15 1 0 0 0 11 00 00 49 55 0 Total 640 583 21 3 0 0 33 00 00 13 91 0 Total call distributed m Answered Abandoned Dissuaded or Overflowed 0 0 0 0 0 00 00 08 o 0 19 00 00 11 84 0 0 46 00 00 13 74 0 0 1 00 00 06 96 0 0 8 00 00
70. session query User get userid if not user raise Exception User not found Good Example class UserNotFoundError LookupError def init self userid message user with id s not found userid LookupError init self message def get user userid user session query User get userid if not user raise UserNotFoundError userid Never use except without specifying any exception type The reason is that it will also catch important exceptions such as KeyboardInterrupt and OutOfMemory exceptions making your program unstoppable or continuously failing instead of stopping when wanted Bad Example try get_user user_id except logger exception There was an error Good Example try get user user id except UserNotFoundError as e logger error e message raise 1 12 8 Network Configuration for daemon Network Flow table IN 380 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Daemon Service Protocol Port Listen Authentication Enabled Name ICMP ICMP 0 0 0 0 no yes postfix SMTP TCP 25 0 0 0 0 yes yes isc dhcpd DHCP UDP 67 0 0 0 0 no no isc dhcpd DHCP UDP 68 0 0 0 0 no no xivo provd TFTP UDP 69 0 0 0 0 no yes ntpd NTP UDP 123 0 0 0 0 yes yes monit HTTP TCP 2812 127 0 0 1 no ye
71. timeout 16 unique column id source to display columns exten number lookup url the URL used for directory searches Looked up columns are managed by the web service reverse lookup url the URL used for reverse searches This URL usually does an exact match search on the phone number list url optional the URL used to list all available entries This URL is used to retrieve favorites delimiter the field delimiter in the CSV result timeout optional the number of seconds before the lookup on the web service is aborted default is 10 seconds ldap Back end name ldap Purpose search directory entries from an LDAP server Configuration Example a file inside source config dir type ldap name my ldap ldap uri ldap example org ldap base dn ou people dc example dc org ldap username cn admin dc example dc org ldap_password foobar unique column objectGUID Active Directory unique column entryUUID OpenLDAP searched columns format_columns firstname givenName lastname sn number telephoneNumber Idap_uri the URI of the LDAP server Can only contains the scheme host and port part of an LDAP URL Idap_base_dn the DN of the entry at which to start the search ldap username optional the user s DN to use when performing a simple bind Default to an empty string When both ldap username and ldap password are empty an anonymous bind is performed passwor
72. value null by description 3d https proxy links href rel Jy value null description id locale links href rel 1 value null description id NAT links href rel 1 value 0 ssword8 host sword host p Get the Value of a Parameter 346 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Query GET lt uri gt Example request Example request for the NAT option of the configuration service of the provd entry point GET provd configure NAT HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json param value 0 Set the Value of a Parameter Query PUT uri Example request Example request for the NAT option of the configuration service of the provd manager PUT provd configure NAT HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json param value 1 Example response HTTP 1 1 204 No Content Content Type application vnd proformatique provd json Installation Service Get the Installation Service Query GET uri Example request Example request for the installation service of the plugin manager GET provd pg mgr install
73. 1 Protocol Voice Asterisk Voicemails Phonebook Enable voicemail _ Advanced gt Option Us 1504 M IPBX settin ptior dest 1508 lefault Devices Full name User Test Lines ERO Voicemail 1150 Groups Password Voicemails Conference rooms Call management Time zone v UR aso Disable password checking _ Call permissions Attach the audio fiie w Call fiters Call pickups Delete message after notification _ Schedules Calls Logs Save mee 2 SIP Protacal Fig 1 76 Deactivate user s voicemail Disassociating voicemail You can disassociate a voicemail from a user by selecting the None option on Voice Mail select box from user s configuration messe NRI General settings General Lines Noanswer Services Voicemail Groups Fune Keys SIP Protocol mm _ i JAX Protocol VoiceMait None Veiemals 0 Phonebook Enable voicemail v Advanced Meniti Option settings ii Devices Full name Hoes Voicemail Users Groups Password Voicemails E mail Conference rooms igi management Time zone m ae cals Disable password checking Call permissions Attach the audio file v Call fiters Call pickups Delete message after notification Schedules A Calls Logs Save EST T SIP Protocol Fig 1 77 Disassociate voicemail
74. 1 Table of Contents XiVO doc Documentation Release 15 13 enableautomon false enablebusy false enableclient true enablednd false enablehint true enablerna false enableunc false enablevoicemail false enablexfer false Nentityid I firstname User fullname User 2 agis 2y identity User 2 incallfilter false Alternatively you can pass a file path as an argument curl s https localhost service ipbx json php private ctiserver configuration gt ppcticonf cticonf agentstatus bench 0 078904151916504003 Certfile var lib xivo certificates test2 crt channelstatus contexts an didextens a Une xiyvodir default directories xrwvodir internal display Display CLTOONf 1 12 11 XiVO Daemon Skeleton Description see GitHub Project for more infos 1 12 12 Database Adding a Migration Script Strating with 14 08 the database migration is handled by alembic The XiVO migration scripts can be found in the xivo manage db repository On a XiVO they are located in the usr share xivo manage db directory 1 12 Contributors 411 XiVO doc Documentation Release 15 13 To add a new migration script from your developer machine go into the root directory of the xivo manage db repository There should be an alembic ini file in thi
75. 1 11 API and SDK 361 XiVO doc Documentation Release 15 13 Wid nm test Data sent to the REST server The XiVO REST server implements POST and PUT methods for item creation and update respectively Data is created using the POST method via a root URL and is updated using the PUT method via a root URL suffixed by lt id The server expects to receive JSON encoded data Only one item can be processed per request The data format and required data fields are illustrated in the following example Request data format jg propl ts When updating only the id and updated properties are needed omitted properties are not updated Some properties can also be optional when creating an object Errors A request to the web services may return an error An error will always be associated to an HTTP error code and eventually to one or more error messages The following errors are common to all web services Error Error Description code message 406 empty Accept header missing or contains an unsupported content type 415 empty Content Type header missing or contains an unsupported content type 500 list of errors An error occured on the server side the content of the message depends of the type of errors which occured The 400 404 and 412 errors depend on the web service you are requesting They are separately described for each of them The err
76. 1 255 option routers 10 34 1 6 option ntp servers 10 34 1 6 option domain name my domain example org option domain name servers 10 34 1 6 log concat VCI option vendor class identifier e Example content of the etc default tftpd hpa file restart t tpd hpa after modifcation FTP_USERNAME t ftp FTP_DIRECTORY srv tftp FTP_ADDRESS 0 0 0 0 69 FTP_OPTIONS secur verbose With this configuration files served via TFTP will be in the srv t ftp directory and those served via HTTP in the var www directory Testing Adding auto provisioning support for a phone is mostly a question of finding answers to the following questions 416 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 Is it worth the time adding auto provisioning support for the phone Indeed Adding quality auto provisioning support for a phone to XiVO requires a non negligible amount of work if you don t meet any real problem and are comfortable with provisioning in XiVO Not all phones are born equal Some are cheap Some are old and slow Some are made to work on proprietary system and will only work in degraded mode on anything else That said if you are uncertain testing will help you clarifying your idea 2 What is the vendor model MAC address and firmware version if available of your phone Having the vendor and model name is esse
77. 13 Important If ever you modify the folder common you must increment the version number of all the models Use Case Update Firmwares for a given plugin Let us suppose we want to update firmwares for xivo snom from 8 7 3 25 to 8 7 3 25 5 Here are the steps to follow 1 Copy folder plugins xivo snom 8 7 3 25 to plugins xivo snom 8 7 3 25 5 Update VERSION number in plugins xivo snom 8 7 3 25 5 entry py Update VERSION number in plugins xivo snom 8 7 3 25 5 plugin info Download new firmwares bin files from snom website Update VERSION number and URIs in plugins xivo snom 8 7 3 25 5 pkgs pkgs db with uris of down loaded files from snom website Cs cub ur 6 Update sizes and shalsums in plugins xivo snom 8 7 3 25 5 pkgs pkgs db using helper script xivo tools dev tools check fw 7 Update plugins xivo snom build py duplicate and update section 8 7 3 25 8 7 3 25 5 Test your changes You have three different methods to test your changes on your development machine Always increase plugin version easiest If the production version is 0 4 change the plugin version to 0 4 01 make your changes and upload to testing see below Next modification will change the plugin version to 0 4 02 etc When you are finished making changes change the version to 0 5 and upload one last time Edit directly on XiVO Edit the files in var lib xivo provd plugins To apply your changes go in xivo provd cli and run plug
78. 15 13 The uploaded file are named like XT VO_SRCNUM EPOCH pdf Using the printer backend use the printer backend you must have the cups client package installed on your XiVO apt get install cups client The printer backend uses the 1p command to print faxes A printer backend is always defined in a section beginning with the printer prefix Here s an example for a backend named printer office printer office name office convert_to_pdf 1 When a fax will be received the system command lp d office lt faxfile gt will be executed The convert to pdf option is optional and defaults to 1 If it is set to 0 the TIFF file will not be converted to PDF before being printed Warning You need a CUPS server set up somewhere on your network Using the mail backend default a mail backend named ma i1 is defined You can define more mail backends if you want Just look what the default mail backend looks like Using the log backend There s also a log backend available which can be used to write a line to a file every time a fax is received Fax detection XiVO does not currently support Fax Detection A workaround is described in the Fax detection section Using analog gateways XiVO is able to provision Cisco SPA122 and Linksys SPA2102 SPA3102 and SPA8000 analog gateways which can be used to connect fax equipments This section describes the creation of custom template for
79. 3 keys agent id an integer corresponding to the agent ID of the agent who s status changed status a string identifying the status xivo id the uuid of the xivo Example name agent status update origin uuid ca7f87e9 c2c8 5fad balb c3140ebb9be3 datate 4 agent id 42 xivo id ca7f87e9 c2c8 5fad balb c3140ebb9be3 status logged in endpoint status update The endpoint status update is sent when an end point status changes This information is based on asterisk hints routing key status endpoint event specific data a dictionary with 3 keys xivo id the uuid of the xivo endpoint id an integer corresponding to the endpoint ID status an integer corresponding to the asterisk device state Example name endpoint status update origin uuid ca7f87e9 c2c8 5fad balb c3140ebb9be3 matane A endpoint 67 id ca7f87e9 c2c8 5fad balb c3140ebb9be3 Status 0 user status update The user status update is sent when a user changes his CTI presence using the XiVO client routing key status user event specific data a dictionary with 3 keys xivo id the uuid of the xivo user id an integer corresponding to the user ID of the user who changed its status status a string identifying the status Example name user status update origin uuid ca7f87e9 c2c8 5fad balb c3140ebb9be3 datas d
80. 7f e1 42 b3 10 97 5 104 Technicolor 572030 xivo technicolor ST2030 2 74 Fig 1 40 List devices You will see a pop up to confirm synchronization Click on the lt ok gt button You must wait until the full synchronization process has completed to determine the state returned back from the device This can take several seconds It is important to wait and do nothing during this time If synchronization is successful a green information balloon notifies you of success If synchronization fails a red information balloon warns you of failure Synchronize multiple devices 136 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Confirm Synchronize Cancel OK Fig 1 41 Alert confirm synchronize Fig 1 42 Request synchronization processing ms Device successfully synchronize va Vendor gt Modele Plugin qm D eo 00 14 7f e1 37 62 10 97 5 100 Technicolor ST2030 xivo technicolor ST2030 2 74 AX Protoc O 41 05 10 97 5 102 Aastra 67391 xivo aastra 3 2 2 56 mee O 00 0e 08 da 64 2e 10 97 5 103 SPA962 xivo cisco spa legacy Advanced D 00147te14253 10 975 104 Technicolor ST2030 xivo technicolor ST2030 2 74 Devices Lines eae ee er tae a PN eo ENS Ore NM APRN EPS ROPE EET TOS TEES OE Ee Users f 8 Existent on the provisioning server Fig 1
81. CTI Server Directories Definitions page click on the add button CTI Server pate directories 000 General settings General Idap Profiles E URI Idapfiter lidapserver1 v Status Presences Phone hints Direct match n phoneNumber email E Match reverse directories Definitions 1 Reverse directories Mapped fields N Direct directories Display fiters __Fieldname Value fel Sheets lastname sn Models phone telephoneNumber Events Control mail email Restart CTI server firstname givenName 2 fullname cn Description LDAP Directory Save Fig 1 33 Adding a directory LDAP Filter to CTI Server e Direct match use to search into this field Match reverse directory use to search into this field for the reverse directory e Fieldname value match to the CTI field server field LDAP server Add a LDAP Directory to the CTI Server the Services CTI Server gt Directories Direct directories page click on the edit button for default directory To use this directory you must then add to the list of searchable directories Warning The CTI server settings resonates in contexts This means creating a context for each CTI context of membership of your users who will examine the Directories eg CTI Context default for users in c
82. Chose the ringtone for the different type of calls note that the ringtone names are brand specific myprofile aastra phonetype aastra intern lt 11 1 gt group Bellcore dr2 1 6 System 71 XiVO doc Documentation Release 15 13 4 Apply your profile in the section number to a given list of extensions e g 1001 and 1002 1001 default myprofile aastra 1002 default myprofile aastra e or to a whole context e g default default myprofile aastra 5 Restart xivo agid service Service xivo agid restart ipbx ini Path etc xivo web interface ipbx ini Purpose This file specifies various configuration options and paths related to Asterisk and used by the web interface Here is a partial glimpse of what can be configured in file ipbx ini 1 Enable Disable modification of SIP line username and password user readonly idpwd true When editing a SIP line the username and password fields cannot be modified via the web interface Set this option to false to enable the modification of both fields This option is set to true by default Warning This feature is not fully tested It should be used only when absolutely necessary and with great care 1 6 8 Consul The default consul installation in XiVO uses the configuration file in etc consul xivo json files in this directory are installed
83. DESTINATION 8001 1 CHOICE 3 exten 3 1 NoOp pressed digit is 3 redirect to the previous menu dp ivr exten 3 n Goto dp ivr example s beginning EHEHE TIMEOUT dH exten t 1 NoOp no digit pressed for 5s process it like an error exten t n Goto i 1 INVALID CHOICE xample exten i 1 NoOp if counter variable is 3 or more then goto label error exten i n Gotolf S counter gt 3 error exten i n NoOp pressed digit is invalid and less than 3 errors the guid exten i n Playback GV_DIRECTORY_SOUNDS ivr example invalid choice exten i n Goto s start exten i n error Playback GV_DIRECTORY_SOUNDS ivr example error exten i n Hangup ivr exemple invalid cl 1 8 22 Monitoring The Monitoring section gives an overview of a XiVO system s status and of all monitored processes It is divided into 6 sections System Device CPU Network 1 8 Administration 183 XiVO doc Documentation Release 15 13 e Memory Other Services System Displays generic information about the operating system network addresses uptime and load average Read only Device Displays free used space on physical storage partitions Read only CPU Monitors the CPU usage Read only Net
84. DID xivo subrgbl did XIVO PRESUBR GLOBAL OUTCALL xivo subrgbl outcall XIVO PRESUBR GLOBAL PAGING xivo subrgbl paging So if you want to add a subroutine for all of your XiVO users you can do this xivo subrgbl user exten s 1 NoOp This is an example for all my users same n Return Forward subroutine You can also use a global subroutine for call forward Preprocess subroutine for forwards XIVO PRESUBR FWD ENABLE 1 XIVO PRESUBR FWD USER xivo subrfwd user XIVO PRESUBR FWD GROUP xivo subrfwd group XIVO PRESUBR FWD QUEUE xivo subrfwd queue XIVO PRESUBR FWD MEETME xivo subrfwd meetme XIVO PRESUBR FWD VOICEMAIL xivo subrfwd voicemail XIVO PRESUBR FWD SCHEDULE xivo subrfwd schedule XIVO PRESUBR FWD VOICEMENU xivo subrfwd voicemenu XIVO PRESUBR FWD SOUND xivo subrfwd sound XIVO PRESUBR FWD CUSTOM xivo subrfwd custom XIVO PRESUBR FWD EXTENSION xivo subrfwd extension 1 11 and SDK 363 XiVO doc Documentation Release 15 13 Dialplan variables Some of the XiVO variables can be used in subroutines XIVO_CALLORIGIN intern for internal calls extern for external calls 1 12 Contributors General information 1 12 1 Contributing to the Documentation XiVO documentation is generated with Sphinx Th
85. Diversions pA uiia Timeout priority Configuration Data quality Allow callee to hang up the call Allow caller to hang up the call No retry when time has elapsed Ring instead of On Hold Music The reachability timeout must not be disabled nor be too short The time before retrying a call to a member should be as low as possible 1 second General Announces Members Application No answer Advanced Lew Schedules 21 Diversions Exit context Service level Member reachability timeout 30 seconds v 9 71 Time before retrying call to a member 1second Weight Delay before reassigning Disabled Maximum number of people allowed to wait 0 9 In this example we redirect No Answer Busy and Congestion calls to the everyone group and Fail calls to the guardian user You can also choose to redirect all the calls to another user or a voice mail 216 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 General Announces Members Application Noanswer y Advanced Schedules Diversions SNGONDENEF 2 2 2 2 02 20 2 022222022 2 0 0 220002 0 205 0 00 00 0 S 09 E EE EA Destination Group z Redirect to everyone 200 defauit Ring time Destination Group Redirect to everyon
86. If a station does not send anything in ap_max_inactivity seconds an empty data frame is sent to it in order to verify whether it is still in range If this frame is not ACKed the station will be disassociated and then deauthenticated This feature is used to clear station table of old entries when the STAs move out of the range The station can associate again with the AP if it is still in range this inactivity poll is just used as a nicer way of verifying inactivity i e client will not report broken connection because disassociation frame is not sent immediately without first polling the STA with a data frame default 300 i e 5 minutes ap_max_inactivity 300 Disassociate stations based on excessive transmission failures or other indications of connection loss This depends on the driver capabilities and may not be available with all drivers disassoc low 1 Maximum allowed Listen Interval how many Beacon periods STAs are allowed to remain asleep Default 65535 no limit apart from field size max listen interval 100 WDS 4 address frame mode with per station virtual interfaces only supported with driver n180211 This mode allows associated stations to use 4 address frames to allow layer 2 bridging to be used wds sta 1 If bridge parameter is set the WDS STA interface will be added to the same bridge by default This can be overridden with the wds bridge parameter to use a separate bridg b
87. N N NYT N N Phone status N Y Y Y Y Y NYT Y Y Sound recording N Y Y Y Y Y NYT Y Y Call recording N Y Y Y Y Y NYT Y Y Incoming call filtering N Y Y Y Y Y NYT Y Y Do not disturb N Y SK SK SK SK NYT SK SK Group interception N Y Y Y Y Y NYT Y Y Listen to online calls N Y Y Y Y Y NYT Y Y Directory access N Y Y Y Y Y NYT Y Y Filtering Boss Secretary N Y Y Y Y Y NYT Y Y Transfers Functions Blind transfer N HK HK HK HK HK NYT HK Indirect transfer N HK HK HK HK HK NYT HK Forwards Functions Disable all forwarding N Y Y Y Y Y NYT Y Enable Disable forwarding on no answer N Y Y Y Y Y NYT Y Enable Disable forwarding on busy N Y Y Y Y Y NYT Y Enable Disable forwarding unconditional N Y Y Y Y Y NYT Y Voicemail Functions Enable voicemail with supervision function N Y Y Y Y Y NYT Y Y Reach the voicemail N HK HK HK HK HK NYT HK H Delete messages from voicemail N Y Y Y Y Y NYT Y Y Agent Functions Connect Disconnect a static agent N Y Y Y Y Y NYT Y Y Connect a static agent N Y Y Y Y Y NYT Y Y Disconnect a static agent N Y Y Y Y Y NYT Y Y Parking Functions Parking N Y Y Y Y Y NYT N Parking position N Y Y Y Y Y NYT N Paging Functions Paging N Y Y Y Y Y NYT NYT Regarding the W52P DECT there is firmware for both the base station and the handset The base and the handset are probably going to work if they are not using the same firmware version although this does not seem to be officially recommended By default a base statio
88. The agent s phone is In use no matter where the call comes from Available indicator in the XiVO client XiVO 12 22 an agent is seen as Available when The agent is not in pause wrapup and his phone isn t ringing in conversation for a call coming from a queue In XiVO 12 24 The agent is not in pause wrapup and his phone is in the idle state 1 4 Upgrading 35 XiVO doc Documentation Release 15 13 Agent linked Agent unlinked Events The Agent linked event no longer exists in XiVO 12 24 xivo upgrade will automatically migrate Agent linked Agent unlinked sheets to the linked unlinked event Static Agent VS Dynamic agent in the XiVO client There is no longer a difference between a static or dynamic membership All agent memberships are now considered static Membership changes between the web interface and the XiVO client are now synchronized Updates Please note that when upgrading the following actions will take place automatically All agents will be logged off before migrating All agents with a dynamic membership will be removed from their queues Useful links server is frozen and won t come back online Another change is in effect beginning with XiVO 12 24 the field pro ileclient inthe CSV user import sees its values change Old value New value client Client agent Agent switchboard Switchboard agentsup Sup
89. XiVO doc Documentation Release 15 13 xivo service stop service dahdi stop service dahdi start Following this manipulation you should see something similar at the end of the var log messages file dahdi Telephony Interface Unloaded dahdi Version 2 9 0 dahdi Telephony Interface Registered on major 196 wctel3xp 0000 03 0 0 Firmware version 6 0017 is running but we require version 780017 wctel3xp 0000 03 0c 0 firmware agent loaded dahdi fw tel34 bin into memory wctel3xp 0000 03 0c 0 Found dahdi fw tel34 bin version 780017 Preparing for flash wctel3xp 0000 03 0c 0 Uploading dahdi fw tel34 bin This can take up to 30 seconds wctel3xp 0000 03 0c 0 Delaying reset Firmware load requires a power cycle wctel3xp 0000 03 0c 0 Running firmware version 6f0017 wctel3xp 0000 03 0c 0 Loaded firmware version 780017 Will load after next power cycle wctel3xp 0000 03 0c 0 FALC version 5 wctel3xp 0000 03 0c 0 Setting up global serial parameters for T1 wctel3xp 0000 03 0c 0 VPM450 firmware dahdi fw oct6114 032 bin not available from userspace wctel3xp 0000 03 0c 0 Found a Wildcard TE132 TE134 SN 1TE134F DF05132600690 Bl 20130702 For the firmware update to complete you must halt the machine a reboot won t be enough before restarting it SCCP Upgrade Notes Important modification have been made to the internal structure of the SCCP channel driver xivo li
90. XiVO services xivo service stop Start XiVO services xivo service start Restart XiVO services xivo service restart The commands above will only act upon XiVO services Appending an argument a11 will also act upon nginx and postgresql Example xivo service restart all UDP port 5060 will be closed while services are restarting 1 6 14 XiVO auth xivo auth is a scalable extendable and configurable authentication service It uses an HTTP interface to emit to kens to users who can then use those tokens to identify and authenticate themselves with other services compatible with xivo auth XiVO auth developer s guide Architecture xivo auth contains 4 major components an HTTP interface a celery worker authentification backends and a consul client All operations are made through the HTTP interface tokens are generated by consul as well as the persistence for some of the data attached to tokens xivo auth is only a thin layer of logic above consul The celery worker is used to schedule tasks that outlive the lifetime of the xivo auth process Backends are used to test if a supplied username password combination is valid and provide a unique identifier xivo auth is made of the following modules and packages 78 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 plugins the plugin package contains the xivo auth backends that are packaged with xivo auth h
91. Y ATAs H A N N N Directory XIVO N N N Funckeys 0 0 0 1 7 Ecosystem 99 XiVO doc Documentation Release 15 13 These devices can be used to connect faxes For better success with faxes some parameters must be changed You can read the Using analog gateways section To install the firmware for the Cisco SPA122 you need to manually download the firmware file from the Cisco website and save them in the var lib xivo provd plugins Splugin name var cache direc tory For example if you have installed the xivo cisco spal00 1 3 5 plugin and you want to install the spal00 fw package you must e Go to http www cisco com c en us support unified communications spal22 ata router model html Click on Downloads tab Download the Analog Telephone Adaptor ATA Firmware version 1 3 5 XU Copy the downloaded file on your XiVO in the var lib xivo provd plugins xivo cisco spal00 1 3 5 directory In the XiVO web interface you ll then be able to click on the install button for the firmware Note If you want to manually resynchronize the configuration from the ATA device you should use the following url http ATA IP admin resync http XIVO IP 8667 CONF FILE where ATA IP is the IP address of the ATA XIVO IP is the IP address of your XiVO CONF FILE is one of spa3102 cfg spa8000 cfg 7905G 7906G 79
92. a call enters the queue A queue can use one of the following ring strategies Linear For each call in the same order starting from the same member For agents In login order For static members In definition order Least recent call the member who least recently hung up a call Fewest calls call the member with the fewest completed calls Round robin memory call the next member after the one who answered last Random call a member at random Weight random same as random but taking the member penalty into account Ring all call all members at the same time Warning When editing a queue you can t change the ring strategy to linear This is due to an asterisk limitation Unfortunately if you want to change the ring strategy of a queue to linear you ll have to delete it first and then create a new queue with the right strategy Note When an agent is a member of many queues the order of call distribution between multiple queues is nondeterministic and cannot be configured Timers You may control how long a call will stay in a queue using different timers Member reachabillity time out Advanced tab Maximum number of seconds a call will ring on an agent s phone If a call is not answered within this time the call will be forwarded to another agent Time before retrying a call to a member Advanced tab Used once a call has reached the Member reach ability time out The call will be put on hold f
93. a dictionary containing key config the source configuration for this instance of the back end key main config the whole configuration of xivo dird unload free resources used by the plugin search term args The search method returns a list of dictionary Empty values should be None instead of empty string args is a dictionary containing key token infos data associated to the authentification token see XiVO auth list uids args The list method returns a list of dictionary from a list of uids Each uid is a string identifying a contact within the source args is a dictionary containing key token infos data associated to the authentification token see XiVO auth The typical configuration file for a given back end will look like this type back end name name lt source name gt unique column id search columns firstname 1 6 System 87 23 24 25 26 27 28 29 30 33 34 XiVO doc Documentation Release 15 13 format columns ln lastname fn firstname telephoneNumber number The following keys are mandatory xivo dird will not load the source if they are not present type the name of the back end plugin It should match the extension point in the setup py name is the name of this given configuration The name is used to associate the source to profiles The remaining keys are conventional they are not require
94. above Default lifetime of the PMK RO in minutes range 1 65535 dotllFTROKeyLifetime 1 12 Contributors 435 XiVO doc Documentation Release 15 13 rO key lifetime 10000 PMK R1 Key Holder identifier dotllFTR1KeyHolderID 6 octet identifier as a hex string rl key holder 000102030405 Reassociation deadline in time units TUs 1 024 ms range 1000 65535 dotlliFTReassociationDeadline reassociation deadline 1000 List of ROKHs in the same Mobility Domain format MAC address NAS Identifier 128 bit key as hex string This list is used to map ROKH ID NAS Identifier to a destination MAC address when requesting PMK R1 key from the ROKH that the STA used during the Initial Mobility Domain Association r0kh202 01 02 03 04 05 rOkh 1l example com 000102030405060708090 050 040 0 rOkh 202 01 02 03 04 06 rOkh 2 example com 00112233445566778899aabbccddeeff And so on One line per ROKH List of 5 in the same Mobility Domain format MAC address gt lt gt 128 bit key as hex string This list is used to map to a destination MAC address when sending PMK R1 key from the ROKH This is also the list of authorized R1KHs the MD that can request PMK R1 keys rlkh 202 01 02 03 04 05 02 11 22 33 44 55 000102030405060708090a050c0d0e0 rlkh 202 01 02 03 04 06 02 11 22 33 44 66 00112233445566778899aabbccddeeff And so on One line
95. and every hour all the configuration done on the master will be reported to the slave 1 10 3 Configuration Details First thing to do is to install 2 XiVO Important When you upgrade a node of your cluster you must also upgrade the other so that they both are 1 10 High Availability HA 261 XiVO doc Documentation Release 15 13 running the same version of XiVO Otherwise the replication might not work properly You must configure the HA in the Web interface Configuration Management High Availability page You can configure the master and slave in whatever order you want You must also run xivo sync i on the master to setup file synchronization Running xivo sync i will create a passwordless SSH key on the master stored under the root ssh directory and will add it to the root ssh authorized keys file on the slave The following directories will then be rsync ed every hour etc asterisk extensions_extra d etc xivo asterisk e var lib asterisk agi bin var lib asterisk moh var lib consul raft var lib xivo sounds acd Warning When the HA is configured some changes will be automatically made to the configuration of var lib xivo sounds playback XiVO SIP expiry value on master and slave will be automatically updated min 3 minutes max 5 minutes default 4 minutes General Network Security Signaling T38 Jitter Buffer Default Real time Internals Auth credentials
96. because the maximum expected waiting time configured was exceeded vert_waittime answered Call was answered aban Call hangup by the caller doned timeout Call stayed longer than the maximum time allowed in queue parameter stat_queue_periodic Table This table is an aggregation of the queue_log table This table contains counters on each queue for each given period The granularity at the time of this writing is an hour and is not configurable This table is then used to compute statistics for a given range of hours days week month or year Field Description id Generated id time time period all counters are aggregated for an hour answered Number of answered calls during the period abandoned Number of abandoned calls during the period total Total calls received during the period full Number of calls received when queue was full closed Number of calls received on close joinempty Number of calls received no agents available leaveempty Number of calls diverted agents not available during the wait di Number of calls diverted due to the number of agent number versus calls waiting configured vert_ca_ratio was exceeded di Number of calls diverted because the maximum expected waiting time configured was vert_waittime exceeded timeout Number of calls diverted because the maximum time allowed in queue parameter was exceeded queue_id stat_agent This table is used to ma
97. call will be distributed to Agent B and the first call will still be distributed only to Agent A The reason is that there s a difference between a call that is being distributed i e that is making agents ring and a call that is waiting for being distributed When a call is being distributed to a set of members no other rule is tried as long as there s at least 1 of these members available Scenario 2 Given Agent A is not logged Agent B is logged and not in use There is no call in the queue When a new call enters the queue then it is immediately distributed to Agent B The reason is that when there s no logged agent matching a rule the next rule is immediately tried Rules Each rule set is composed of rules and each rule has two parts separated by a comma the first part optional is the dynamic part the second part is the skill part Each part contains an expression composed of operators variables and integer constants 1 9 Contact Center 243 XiVO doc Documentation Release 15 13 Operators The following operators can be used inside rules Comparison operators e operand operand2 is not equal operand operand2 is equal e operand gt operand2 is greater than operand operand2 is lesser than Logical operators operandl amp operand2 both are true operand operand2 at least one of them are true is the operator with the higher priority and 4
98. code you have no control over Here is a template valgrind supp you can use All memory in the XiVO Client is allocated using the new operator so all calls to malloc and co must come from libraries malloc Memcheck Leak fun malloc calloc Memcheck Leak fun calloc realloc Memcheck Leak fun realloc 1 12 Contributors 453 XiVO doc Documentation Release 15 13 memalign Memcheck Leak fun memalign Figures Here s a call graph for the presence features Not complete but gives a good global view of the internal mecha nism Fig 1 99 Xivo Client presence call graph Here s a call graph describing the chaining of calls when the XiVO Client connects to the server Fig 1 100 Xivo Client login call graph Manage Translations of the XiVO Client This sections describes how to manage XiVO Client translations from a developer point of view If you want to help translate the XiVO Client see Translating XiVO You need to install these tools pip install transifex client apt get install qt4 dev tools 454 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 How to Add a New Translated String String to be translated is marked using the tr macro in the source code Example Number Updating translations on transifex the following commands from the root of the xivo client qt project make pushtr
99. confroom handler self invite confroom command 1 12 Contributors 409 XiVO doc Documentation Release 15 13 Do your stuff here if ok return invite confroom command get message Everything is fine else return invite confroom command get warning I don t know you go away True Note The client s connection is injected in the command instance before calling callbacks functions The client s connection is an interface cti CTI instance ppcticonf ppcticonf is a small utility used to pretty print the CTI server configuration The utility is installed by default with XiVO It comes with the xivo utils package In fact ppcticonf can be used to pretty print any URL or file that contains a JSON document How to The simplest invocation is ppcticonf agentstatus bench 0 077938079833984 Certfile var lib xivo certificates test2 crt channelstatus contexts n didextens detault s directories xivodir internal 1 display Display You can also pass a URL as an argument ppcticonf http 127 0 0 1 service ipbx json php private pbx settings users agentid null bsfilter ocallerid 2X UU callrecord false commented false Tesori ption i destbusy i t destrma Wm destunc z T 410 Chapter
100. connection connection def get consumers self Consumer channel return Consumer kombu Queue exchange EXCHANGE routing key ROUTING KEY callbacks self on message def on message self body message print Received body message ack def main with kombu Connection amqp guest guest8localhost 5672 as conn try C conn run except KeyboardInterrupt return main If you are new to AMQP you might want to look at the RabbitMQ tutorial Notes Things to be aware when writing a client consumer The xivo service stop command stops the AMQP broker This means that the client connections to the AMQP broker will be lost on a XiVO upgrade an asterisk crash The published messages are not persistent When the AMQP broker stops the messages that are still in queues will be lost Events Events that are sent to the bus use a JSON serialization format For example CTI call form result event looks like this name call form result origin uuid ca7f87e9 c2c8 5fad balb c3140ebb9be3 data 122 29 All events have the same basic structure namely a JSON object with three keys name A string representing the name of the event Each event type has a unique name origin_uuid The uuid to identify the message producer 1 11 and SDK 271 XiVO doc Documentation Release 15 13 data The data specific part of the event This is d
101. control interface can change the network configuration this access needs to be protec By default hostapd is configured to use gid 0 root If want to allow non root users to use the contron interface add a and change this value to match with that group Add users that s control interface access to this group cases This variable can be a group name or gid ctrl_interface_group wheel ctrl_interface_group 0 TEES I 802 11 rela ted configuration EEE HEE SSID to be used in I ssid example ssid 802 11 management frames Country code ISO IEC 3166 1 Used to set regulatory domain Set as needed to indicate country in which device is operating This can limit available channels and transmit power country_code CA Enable I 802 11d This advertises the country code and the se channels and transmit power levels based on the regulatory limit country code setting must be configured with the correct country I 802 11d functions default 0 disabled ieee80211d 1 I Operation mode a IEEE 802 11a b IEEE 802 11b g IEEE 802 Default IEEE 802 11b 7920 only supports b hw mode b Channel number IEEE 802 11 default 0 i e not set Please note that some drivers do not use this value from hostapd channel will need to be configured separat
102. coverage Run the program in foreground mode with coverage run service monit stop service xivo ctid stop coverage erase coverage run usr bin xivo ctid f The Debugging Daemons section documents how to launch the various XiVO service in foreground debug mode After the process terminates use coverage html to generate an HTML coverage report coverage html include 2 xivo ctix This will generate an ht 1mcov directory in the current directory 1 12 Contributors 373 XiVO doc Documentation Release 15 13 5 Browse the coverage report Either copy the directory onto your computer and open it with a web browser or start a web server on the XiVO cd htmlcov python m SimpleHTTPServer Then open the page from your computer i e not on the xivo firefox http xivo hostname 8000 External Links Official python documentation e PyMOTW coverage py 1 12 6 Translating XiVO French and English are maintained by Avencall Other languages are provided by the community Asterisk and XiVO Prompts Avencall is in contact with several studios for different languages and prompts The information for those lan guages are French Super Sonic productions supersonicprod wanadoo fr English Asterisk voice allison theasteriskvoice com German ATS studio Italian ATS studio Prompts transcripts are listed in Transifex prompts You
103. dahdi gO PBX side dahdi g2 In the menu Services IPBX Trunk management Customized page 170 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Name t2 operateur Interface dahdi gO Contexte to extern Name t2 operateur Interface dahdi gO Interface suffix Contex Appels sortants to extern Fig 1 53 Customized interconnection The second interconnection Name t2 pabx Interface dahdi g2 Context to pabx Name t2 pabx Interface dahdi g2 Interface suffix Vers PABX to pabx zi Description Fig 1 54 Customized interconnection Create outgoing calls You must create two rules of outgoing calls in the menu Services IPBX Call management Outgoing calls page 1 Redirect calls to the PBX Name fsc pabx Context to pabx Trunks choose the t2 pabx interconnection In the extensions tab exten XXXX 2 Rename the rule default in fsc operateur Name fsc operateur Context to extern Trunks choose the t2 operateur interconnection In the extensions tab 1 8 Administration 171 XiVO doc Documentation Release 15 13 General Exten Call permissions Schedules Name fsc pabx Context Vers PABX to pa
104. default password null email john doe example com pager null 1 11 and SDK 323 XiVO doc Documentation Release 15 13 language en_US timezone eu fr max_messages null attach_audio false delete_messages false ask_password false links rel voicemails href https xivoserver 1 1 voicemails 2 1 Create a Voicemail Query POST 1 1 voicemails Field Re Val Notes quired ues name yes string number yes string Must be a string of positive numbers context yes string pass no string Must be a string of positive numbers word email no string language no string Consult Voicemail Languages for a list of valid languages The system default Input will be used if none is specified timezone no string Consult Voicemail Timezones for a list of valid timezones The system default will be used if none is specified max messages in Valid values are te 1 10 15 20 25 50 75 100 125 150 175 200 300 400 500 600 700 800 900 1000 2000 3000 4 ger at no booleanDefault value is false tach_audia delete messages booleanDefault value is false ask_passwpinlo booleanDefault value is false 324 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Error Error message Description code 500 Error while creating Voice
105. displays the status of the phone of the user if it has a configured phone Usually green means that the phone is activated and hanged up red means that the phone is activated and in communication white means that the phone is not registered i e not functional The colors and label of these two statuses may be configured within the XiVO Web interface You can interact in several ways with a person object 1 5 XiVO Client 37 XiVO doc Documentation Release 15 13 XiVO Client 15 10 2 12 gef3f9f6 XiVO Client Help open minded telecom systems XiVO is a unified communication system that connects phones inside an organization with public and mobile telephone networks login password 8 Remember me Agent logged in wv phone CONNECT 38 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 XiVO Client 15 10 2 12 gef3f9f6 Client profile Client Help Alice Wonderland Conference ROOM LIST NAME A NUMBER PIN CODE MEMBER COUNT STARTED SINCE confroom 4001 No 2 00 00 29 confroom2 4002 No 0 Not started confroom3 4003 No 0 Not started confroom4 4004 No 0 Not started Connected 1 5 XiVO Client 39 XiVO doc Documentation Release 15 13 Client 15 10 2 12 geF3F9F6 Client profile XiVO Client Help Alice Wonderland Conference ROOM LIST CONFROOM 4001 NAME NUMBER SINCE 5 Alice Wonderland 1007 00 00 40 Dr Who 1005 00 00 39 Name or n
106. doc Documentation Release 15 13 ET 1 1 voicemails Parameters order Sort the list using a column e g number Columns allowed name number context email language timezone direction asc or desc Sort list in ascending asc or descending desc order limit total number of voicemails to show in the list Must be a positive integer skip number of voicemails to skip over before starting the list Must be a positive integer search Search voicemails Only voicemails with a field containing the search term will be listed Error Error message Description code 400 Invalid parameters limit must be a positive the limit parameter must be a number number Errors 400 Invalid parameters skip must be a positive the skip parameter must be a number number 400 Invalid parameters ordering parameter you must use one of the fields available in a lt field gt does not exist device when sorting a list 400 Invalid parameters direction parameter use either asc or desc as a direction when lt direction gt does not exist sorting a list Example requests List all available voicemails G Host A ET 1 1 voicemails HTTP 1 1 xivoserver ccept application json List voicemails sort by descending number G H A ET 1 1 voicemails order number amp direction desc xivoserver application json ost ecept
107. english gt 0 english lt 1 Then for an agent which has the skill english defined the result of this expression is always true For an agent which does not have the skill english defined the result of this expression is always false Said differently an agent without a skill X is not the same as an agent with the skill X set to the value 0 Technically this is what is happening when evaluating the rule english gt 0 for an agent without the skill english english gt 0 lt Substituing english with the agent value gt undefined gt 0 lt A comparison with undefined in at least one operand yields undefined gt undefined lt In a boolean context undefined is equal to false gt false This behaviour applies to every comparison operators Also the syntax that is currently accepted for comparison is always of the form variable cmp_op constant Where variable is a variable name cmp_op is a comparison operator and constant is an integer constant This means the following expressions are not accepted e 10 lt english but english gt 10 is accepted english lt french the second operand must be a constant e 10 lt 11 the first operand must be a variable name Apply Skill Rule Sets A skill rule set is attached to a call using a bit of dialplan This dialplan is stored in a configuration file you may edit using menu Services IPBX Configuration Files In
108. etc dhcp cd etc xivo custom templates dhcp etc dhcp cp usr share xivo config templates dhcp etc dhcp dhcpd subnet conf tail 2 Edit the custom template vim dhcpd subnet conf tail 3 And add the following line at the head of the file allow unknown clients 4 Re generate the dhcp configuration xivo update config DHCP server should have been restarted and should now serve all network equipments DHCP Relay If your telephony devices aren t located on the same site and the same broadcast domain as the XiVO DHCP server you will have to add the option DHCP Relay to the site s router This parameter will permit the DHCP requests from distant devices to be transmitted to the IP address you specify as DHCP Relay Warning Please make sure that the IP address used as DHCP Relay is one of the XiVO interface and that this interface is configured to listen to DHCP requests as decribed in previous part Also verify that routing is configured between the distant router and the choosen interface otherwise DHCP requests will never reach the XiVO server Configuring DHCP server for other subnets This section describes how to configure XiVO to serve other subnets that the VOIP subnet As you can t use the Web Interface to declare other subnets for example to address DATA subnet or a VOIP subnet that isn t on the same site that XiVO server you ll have to do the following configuration in Command Line In
109. filtering Do not disturb Group interception Listen to online calls Directory access Filtering Boss Secretary Transfers Functions Blind transfer Indirect transfer Forwards Functions Disable all forwarding Enable Disable forwarding on no answer Enable Disable forwarding on busy Enable Disable forwarding unconditional Voicemail Functions Enable voicemail with supervision function Reach the voicemail Delete messages from voicemail Agent Functions Connect Disconnect a static agent Connect a static agent Disconnect a static agent Parking Functions Parking Y Parking position Y Paging Functions Paging Y ZI Mx eR RR RR lt lt 2 x lt i l Configuring a NAT Environment This is a configuration example to simulate the case of a hosted XiVO i e an environment where the XiVO has a public IP address the phones are behind a NAT In this example we ll reproduce the following environment Where the XiVO is installed inside a virtual machine the host machine is used as a router a NAT and a DHCP server for the phones 1 12 Contributors 419 XiVO doc Documentation Release 15 13 10 34 2 101 24 10 34 1 254 24 10 34 2 254 24 xiVO 10 34 1 1 24 10 34 2 102 24 Fig 1 98 Phones behind a NAT the phones are in a separat
110. following parameters Queue thresholds waiting calls number of waiting calls in the queue Display queue s longest wait Add a column displaying the number of seconds the longest call has waited Queue thresholds longest wait number of seconds for the longest waiting call in the queue Display queue number Add a column displaying the queue s number 234 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Choose which queue should be displayed and the queues parameters for the Stats on slice Display Queue Qos X s W pdow s radio 60 3600 ventexivo 20 3600 M service 60 Configuration Connection Account GUI Settings Advanced Presence reporting C Customer Info Presence reporting Customer Info Dialer History Contacts Queues Queue Members Green Orange Queue thresholds waiting calls 2 4 m 1 Display queue s longest wait Queue thresholds longest wait 0 z 10 1 Display queue number 1 9 Contact Center 235 XiVO doc Documentation Release 15 13 Monitoring queues on high dimension screens You may want to display the queue list on one big screen visible by multiple people However the default font will not be large enough so the information will not be readable You can change the font size of this Xlet by giving a configuration file when launching the XiVO Client gt xivoclient styleshee
111. format columns All source configuration using the source to display columns must be updated A migration script will automatically modify source configuration in the etc xivo dird sources d directory Please consult the following detailed upgrade notes for more information Asterisk 11 to 13 Upgrade Notes You might be impacted by the upgrade to Asterisk 13 if you have custom dialplan custom Asterisk configuration custom application using AGI AMI or any other Asterisk interface custom application exploiting CEL or queue log custom Asterisk modules e g codec g729a so customized Asterisk in some other way DAHDI trunks using SS7 signaling If you find yourself in one of these cases you should make sure that your customizations still work with Asterisk 13 If you are upgrading from Asterisk 1 8 you should also check the Asterisk 1 8 to 11 upgrade notes Changes Between Asterisk 11 and 13 Some of the more common changes to look for SS7 support has been removed from the Asterisk package of XiVO All channel and global variable names are evaluated in a case sensitive manner In previous versions of As terisk variables created and evaluated in the dialplan were evaluated case insensitively but built in variables and variable evaluation done internally within Asterisk was done case sensitively The SetMusicOnHold dialplan application was deprecated and has been removed Users of the application should use the CHANNEL functio
112. fr max messages null attach audio false delete messages false ask password false links s rel voicemails href https xivoserver 1 1 voicemails 2 1 11 and SDK 325 XiVO doc Documentation Release 15 13 Update a Voicemail Only the fields that need to be updated must be sent during an update A voicemail can only be updated if it isn t associated to a user Query PUT 1 1 voicemails lt id gt Parameters id Voicemail s id Input Same as for creating a voicemail Please see Create a Voicemail Errors Same as creating a voicemail See Create a Voicemail with the following additions Error code Error message Description 400 Error while editing Voicemail cannot edit a voicemail associated to a user Example request PUT 1 1 voicemails 1 HTTP 1 1 Host xivoserver Content Type application json number 2000 attach audio true Example response HTTP 1 1 204 No Content Delete a Voicemail A voicemail can not be deleted if it is still attached to a user The user must be dissociated first Consult the documentation on Voicemail Association for futher details Error Error message Description code 400 error while deleting Voicemail explanation See error message for more details Errors 400 error while deleting Voicemail Cannot delete a You must unassociate a user from h
113. from one relay mode to the other will be done by the XiVO slave node once it detects the master node is down and vice versa Finally you can make sure everything works fine by running the xivo berofos command xivo berofos master The green LEDs on your berofos should be lighted on ports A and B Connection Two XiVOs Here s how to connect the ISDN lines between your berofos with two XiVOs in high availability In this configuration you can protect up two 4 ISDN lines If more than 4 ISDN lines to protect you must set up a Multiple berofos configuration Here s an example with 4 ISDN lines coming from your telephony provider ISDN lines provider Ld 1 I A B D 1121314 1121314 1121314 1121314 Ld dd Ld bg Ld bg xivo 1 xivo 2 Two XiVOs and one PBX Here s how to connect your berofos with two XiVOs in high availability one PBX In this configuration you can protect up two 2 ISDN lines If more than 2 ISDN lines to protect you must set up a Multiple berofos configuration Logical view 268 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Provider xivo 1 ISDN Interconnection PBX Phones This example shows the case where there are 2 ISDN lines coming from your telephony provider ISDN lines provider A B C D 1121314 112 314 1121314 112
114. gt queue id queue id 404 Resource Not Found Queue was not found queue id queue id 404 Resource Not Found Agent was not found agent id agent id 280 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example request DELE Host we A I 1 1 queues 3 members agents 18 xivoserver Example response HTTP 1 1 204 NO CONTENT Edit an Agent Queue association Query PUT 1 1 queues lt queue_id gt members agents lt agent_id gt Error Error message Descrip code tion 404 Resource Not Found QueueMember was not found agent_id lt agent_id gt Errors e Say queue_id lt queue_id gt 404 Resource Not Found Queue was not found queue_id lt queue_id gt 404 Resource Not Found Agent was not found agent_id lt agent_id gt Example request PUT 1 1 queues 3 members agents 18 Host xivoserver Content Type application json penalty 5 Example response HTTP 1 1 204 OK Call Logs Call Logs Representation Field Values Description Call date date YYYY MM DDTHH MM SS ee Caller string Descrip Called string Period integer Number of seconds of the call 0 if not answered user Field string Example Call Date Caller Called Period user Field 2013 01 02T00 00 00 sou
115. installation and management of provd plugins is done via the Configuration Provisioning Plugin page The page shows the list of both the installed and installable plugins You can see if a plugin is installed or not by looking at the Action column Here s the list of other things that can be done from this page update the list of installable plugins by clicking on the top right icon On a fresh XiVO installation this is the first thing to do install a new plugin upgrade an installed plugin uninstall an installed plugin edit an installed plugin i e install uninstall optional files that are specific to each plugin like firmware or language files After installing a new plugin you are automatically redirected to its edit page You can then download and install optional files specific to the plugin You are strongly advised to install firmware and language files for the phones you ll use although it s often not a strict requirement for the phones to work correctly 194 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 9 Update plugin list 1 2 Next page 22 Nae Size Action null Plugin that offers no configuration service and rejects TFTP HTTP 10 1 05 kb xivo aastra 2 6 0 2019 Greffon pour Aastra 67301 6731i 67511 6753i 67551 aon ade this pl agi 8 29 kb xivo aastra 3 2 2 1136 Greffon pour Aastra 6730i 6731i 6739i
116. is run nightly Note Please check the laws applicable to your country and modify days to keep see below in the config uration file accordingly 1 6 System 75 XiVO doc Documentation Release 15 13 Tables Purged The following features are impacted by xivo purge db Call Logs Call center statistics More technically the tables purged by xivo purge db are call logs e Cel queue log stat agent periodic stat call on queue stat queue periodic Configuration File We recommend to override the setting days to keep from etc xivo purge db config ymlina new filein etc xivo purge db conf d Warning Setting days to keep to 0 will NOT disable xivo purge db and will remove ALL logs from your system See Configuration priority and etc xivo purge db config yml for more details Manual Purge It is possible to purge logs manually To do so log on to the target XiVO server and run xivo purge db You can specify the number of days of logs to keep For example to purge entries older than 365 days xivo purge db d 365 Usage of xivo purge db usage xivo purge db h d DAYS TO KEEP optional arguments h help show this help message and exit d DAYS TO KEEP days to keep DAYS TO KEEP Number of days data will be kept in tables Maintenance After an execution of xivo purge db postgresql s Autovacu
117. ivr example conf same n NoOp Set the context containing your ivr destinations same n Set IVR_DESTINATION_CONTEXT my ivr destination context same n NoOp Set the directory containing your ivr sounds same n Set GV DIRECTORY SOUNDS var lib xivo sounds ivr sounds same n NoOp the system answers the call and waits for 1 second before continuing same n Answer 1000 176 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 same same same same same same same same same same same same same Pid exten exten n NoOp the system plays the first part of the audio file welcome to n first Playback GV DIRECTORY SOUNDS ivr example welcome sound n NoOp variable counter is set to 0 n beginning Set counter 0 n NoOp variable counter is incremented and the label start is defined n start Set counter counter 1 n NoOp counter variable is now S counter n NoOp waiting for 1 second before reading the message that indicate n Wait 1 n NoOp play the message ivr example choices that contain all choices n Background GV DIRECTORY SOUNDS ivr example choices n NoOp waiting for DTMF during 5s n Waitexten 5 CHOICE 1 all choi 1 1 NoOp pressed digit is 1 redirect to 8000 S IVR DESTINATION CONTEXT 1 n Goto S IVR DESTINATION 8000 1 CHOI
118. like format The on hold music will always play from the start mp3 play MP3 files The on hold music will play from an arbitrary position on the track it will not play from the start custom do not play sound files Instead run an external process That process must send on stdout the same binary format than WAV files Example process usr bin mpg123 s mono y 8192 r 8000 http streaming example com stream mp3 Note Processes run by custom categories are started as soon as the category is created and will only stop when the category is deleted This means that on hold music fed from online streaming will constantly be receiving network traffic even when there are no calls 1 8 24 Paging With XiVO you can define paging i e intercom extensions to page a group of users When calling a paging extension the phones of the specified users will auto answer if they support it You can manage your paging extensions via the Services IPBX Paging page When adding a new paging extension the number can be any numeric value to call it you just need to prefix the paging number with 11 1 8 Administration 185 XiVO doc Documentation Release 15 13 General Users Number 6 o P J 4 Full duplex audio Ignore attempts to forward the call Record the page into a file Quiet do not play beep to caller Timeout Do not play simultaneous announ
119. list in ascending asc or descending desc order limit total number of resources to show in the list Must be a positive integer skip number of resources to skip over before starting the list Must be a positive integer search Search resources Only resources with a field containing the search term will be listed Data representation Data retrieved from the REST server JSON is used to encode returned or sent data Therefore the following headers are needed when the request is supposed to return JSON Accept application json when the request s body contains JSON Content Type application json Note Optional properties can be added without changing the protocol version in the main list or in the object list itself Properties will not be removed type and name will not be modified Getting object lists GET 1 1 objects When returning lists the format is as follows total number of items in total in the system configuration optional items returned data as an array of object properties list Other optional properties can be added later Response data format total 2 items id nq propil test QNM propi ssq Getting An Object Format returned is a list of properties The object should always have the same attributes set the default value being the equivalent to NULL in the content type format GET 1 1 objects lt id gt Response data format
120. management Schedules In the General tab give a name 3 to your schedule and configure the open hours 4 and select the sound which is played when the company is closed In the Closed hours tab 6 configure all special closed days 7 and select the sound that indicate to the caller that the company is exceptionally closed The IVR script is now only available during workdays Assign Schedule to Incall Return editing your Incall Call management Incoming calls and assign the newly created schedule in the Schedules tab 1 8 Administration 179 XiVO doc Documentation Release 15 13 Voicemails Conference rooms Incoming calls Outgoing calls Call permissions Play file is channel is answered Do not answer channel before playing file Backup Files Configuration files Contexts SIP Protocol IAX Protocol Schedules schedule gt SCCP Protocol Voicemails Phonebook Advanced Call permissions Call filters Call pickups Schedules 180 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Use Case IVR with submenu Flowchart Configuration File and Dialplan Copy all these lines 2 contexts in a configuration file on your XiVO server dp ivr example exten s 1 NoOp dp ivr example conf same same same sam
121. maximum time to wait for a SA Query response dotllAssociationSAQueryMaximumTimeout 1 4294967295 assoc sa query max timeout 1000 Association SA Query retry timeout in TU 1 024 ms for MFP time between two subsequent SA Query requests dotllAssociationSAQueryRetryTimeout 1 4294967295 assoc sa query retry timeout 201 disable pmksa caching Disable PMKSA caching This parameter can be used to disable caching of PMKSA created through EAP authentication RSN preauthentication may still end up using PMKSA caching if it is enabled rsn_preauth 1 0 PMKSA caching enabled default 1 PMKSA caching disabled disable pmksa caching 0 okc Opportunistic Key Caching aka Proactive Key Caching Allow PMK cache to be shared opportunistically among configured interfaces and BSSes i e all configurations within a single hostapd process 0 disabled default 1 enabled 1 IEEE 802 11r configuration Mobility Domain identifier dotll1FTMobilityDomainID MDID MDID is used to indicate a group of APs within an ESS i e sharing the same SSID between which a STA can use Fast BSS Transition 2 octet identifier as a hex string mobility domain alb2 PMK RO Key Holder identifier dotllFTROKeyHolderID 1 to 48 octet identifier This is configured with nas identifier see RADIUS client section
122. menu on the lower right Contents 1 XiVO doc Documentation Release 15 13 2 Contents CHAPTER 1 Table of Contents 1 1 Introduction XiVO is a PABX application developed by the Avencall Group based on several free existant components includ ing Asterisk and our own developments XiVO provides a solution for enterprises who wish to replace or add telephone services PABX XiVO is free software Most of its distinctive components and XiVO as a whole are distributed under the GPLv3 license 1 1 1 XiVO History XiVO was created in 2005 by Proformatique XiVO 1 2 was released on February 3 2012 1 2 Installation 1 2 1 Installing the System Please refer to the section Troubleshooting if ever you have errors during the installation There are two official ways to install XiVO using the official ISO image using a minimal Debian installation and the XiVO installation script Note For other unsupported ways of install XiVO please consult the bottom of the page XiVO can be installed on both virtual QEMU KVM VirtualBox and physical machines That said since Asterisk is sensitive to timing issues you might get better results by installing XiVO on real hardware Installing from the ISO image Download the ISO image latest version all versions Boot from the ISO image select Install and follow the instructions You must select a locale with charset UTF 8 Atthe end of the inst
123. nonacd outgoing external availability since is the timestamp of the last availability change 1 12 Contributors 403 5 listname 2710430 54 XiVO doc Documentation Release 15 13 queues is the list of queue ids from which the agent receives calls Switchboard Answer This allows the switchboard operator to answer an incoming call or unhold a call on hold class answer uniqueid 12345667 89 Unsolicited Messages These messages are received whenever one of the following corresponding event occurs sheet message on incoming calls or updatestatus when a phone status changes Sheet This message is received to display customer information if configured at the server side timenow 1361444639 61 class sheet compressed true serial xml payload AAADnnicndPBTONAEAbgV1n3XgFN1AP eee gt Channel SIP e6fhff 00000007 How to decode payload gt gt gt b64content base64 b64decode lt payload content gt gt gt 4 first cars are the encoded lenght of the xml string in Big Endian format gt gt gt xmllen struck unpack gt I b64content 0 4 gt gt gt the rest is a compressed xml string gt gt gt xmlcontent zlib decompress toto 4 gt gt gt print xmlcontent lt xml version 1 0 encoding utf 8 lt profile gt lt user gt internal name ipbxid gt lt CDATA xivo gt lt internal g
124. on overlapping BSSes These changes are done automatically when hostapd is setting up the 40 MHz channel Spatial Multiplexing SM Power Save SMPS STATIC or SMPS DYNAMIC SMPS disabled if neither is set HT greenfield GF disabled if not set Short GI for 20 MHz SHORT GI 20 disabled if not set Short GI for 40 MHz SHORT GI 40 disabled if not set Tx STBC TX STBC disabled if not set Rx STBC RX STBC1 one spatial stream RX STBC12 one or two spatial streams or RX STBC123 one two or three spatial streams Rx STBC disabled if none of these set HT delayed Block Ack DELAYED BA disabled if not set aximum A MSDU length MAX AMSDU 7935 for 7935 octets 3839 octets if not set DSSS CCK Mode in 40 MHz DSSS_CCK 40 allowed not allowed if not set PSMP support PSMP disabled if not set L SIG TXOP protection support LSIG TXOP PROT disabled if not set ht capab HT40 SHORT GI 20 SHORT GI 40 Require stations to support HT PHY reject association if they do not require ht 1 IEEE 02 1 2004 related configuration Require IEEE 802 1X authorization ieee8021x 1 IEEE 802 1X EAPOL version hostapd is implemented based on IEEE Std 802 1X 2004 which defines EAPOL t T ersion 2 However there are many c
125. on the server s used to emit calls Configure incoming calls on the server s used to receive calls Establish the trunk You need the following information from your provider a username a password the name of the provider VoIP server a public phone number On your XiVO go on page Services IPBX Trunk management SIP Protocol and create a SIP IAX trunk Name provider username Username provider username Password provider password Connection type Peer IP addressing type voip provider example com Context Incalls or another incoming call context Register tab 1 8 Administration 165 XiVO doc Documentation Release 15 13 Register checked Transport udp Name provider_username Username provider_username Password provider_password Remote server voip provider example com Note For the moment Name and Username need to be the same value If your XiVO is behind a NAT device or a firewall you should set the following Monitoring 2000 milliseconds This option will make Asterisk send a signal to the VoIP provider server every 2 seconds so that NATs and firewall know the connection is still alive At that point the Asterisk command sip show registry should print a line showing that you are registered meaning your trunk is established Set the outgoing calls The outgoing calls configuration will allow XiVO to know which extensions will
126. option has to be enabled The Application Allow callee to transfer the call option has to be enabled The Advanced Member reachability timeout option has to be disabled The Advanced Time before retrying call to a member option has to be 1 second The Advanced Delay before reassigning a call option has to be disabled The Advanced Call a member already on option has to be disabled The Advanced Autopause agents option has to be No Other important fields The General Display name field is the name displayed in the XiVO client xlets and in the statistics The General Number field is the number that will be used to reach the switchboard internally typically 9 Create a Queue for Your Switchboard on Hold The switchboard uses a queue to track its calls on hold To create this queue go to Services Call center Queues and click the add button The following configuration is mandatory The General Name field has to be switchboard hold The General Number field has to be a valid number in a context reachable by the switchboard Other important fields The General Display name field is the name displayed in the XiVO client xlets and in the statistics Warning This queue MUST have NO members Create the Users that Will be Operators Each operator needs to have a user configured with a line The XiVO client profile has to be set to Switchboard The following configuration is mandatory
127. order can be modified by drag and drop in the list Usage The call filter function can be activated and deactivated by the boss or the secretary using the 37 extension The extension is defined in PBX services gt Extensions The call filter has to be activated for each secretary if more than one is defined for a given boss The extension to use is 37 lt callfilter member id In this example you would set 2 Func Keys 373 and 374 on the Boss On the secretary Jina LaPlante you would set 373 On the secretary Ptit Nouveau you would set 374 Function Keys A more convenient way to active the boss secretary filter is to assign a function key on the boss phone or the secretary s phone In the user s configuration under Func Keys A function key can be added for each secretaries of a boss If supervision is activated the key will light up when filter is activated for this secretary If a secretary also has a function key on the same boss secretary combination the function key s BLF will be in sync between each phones 1 8 Administration 119 XiVO doc Documentation Release 15 13 EU lul oS cocoons cote se secs ese acs coteseeuse scenes ee csaseee saosesetes setae teusceesctaes es esessosuseecseee ccs 2 items selected Remove all Add all 1 Jina LaPlapf John Smith 1 Ptit Nouve zn Warning With SCCP phones you must configure a custom Func Keys 1 8 3 Call Completion The call co
128. patch git checkout xivo client 1 1 23 git apply xivoclient 1 1 23 patch Edit Makefile and set the variable QMAKE to the path of your qmake make all Package macos Edit cross macos pack sh and set QT PATH cross macos pack sh 1 0 15 Dalek Build windows Download this patch Edit the patch and set the paths to Qt NSIS etc cygwin git checkout xivo client 1 0 15 cygwin make all win32 qt cmd mingw32 make win32 baselib qt cmd mingw32 make win32 xivoclient qt cmd mingw32 make win32 plugins Package windows cygwin make win32packdyn xivoclient Coding the XiVO Client Project folder map baselib The folder baselib contains all files necessary to build the baselib It contains the necessary code and data structures to communicate with the XiVO CTI server This library is designed to be reusable by other XiVO CTI clients If you want to build it without the rest of the XiVO Client go in its folder and type qmake amp amp make The library will be available in the new bin folder xivoclient The folder xivoclient contains all other source files included in the XiVO Client src contains the source code files images contains the images i 8n contains the translation files and gtaddons contains some Qt addons used by the XiVO Client 448 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 src The source files are separated in three categorie
129. per 1 Whether PMK R1 push is enabled at ROKH 0 do not push PMK R1 to all configured R1KHs default push PMK R1 to all configured R1KHs whenever a new PMK RO is derived pmk rl push 1 Neighbor table Maximum number of entries kept table either for neigbor table or for detecting Overlapping Legacy BSS Condition The oldest entry will be removed when adding a new entry that would make the list grow over this limit Note WFA certification for IEEE 802 11g requires that OLBC is enabled so this field should not be set to 0 when using IEEE 802 11g default 255 ap_table_max_size 255 Number of seconds of no frames received after which entries may be deleted from the AP table Since passive scanning is not usually performed frequently this should not be set to very small value In addition there is no guarantee that every scan cycle will receive beacon frames from the neighboring APs default 60 ap_table_expiration_time 3600 Wi Fi Protected Setup WPS WPS state 0 WPS disabled default 1 WPS enabled not configured 2 WPS enabled configured wps_state 2 AP can be configured into a locked state where
130. phonebook of XiVO with French Yohan Vitu phonebook csv export py Installing XiVO YouTube series English 14 20 VoIP Nuiz XiVO provisioning pfSense siproxd OVH French NyXD Systems SCCP provisioning unsupported phones and no DHCP French NyXD Systems Date format on SCCP 7941 French NyXD Systems Installing XiVO on Raspberry Pi Raspivo French Iris Network 1 15 Community Documentation 461 XiVO doc Documentation Release 15 13 1 15 2 Contribute We gladly accept new contributions There are two ways to contribute The preferred way open a pull request on Github and add a line to this page see Contributing to the Documentation You can also open a contribution ticket on the bug tracker Note that we only accept documents in open formats such as PDF or ODF 1 16 Documentation changelog 462 Chapter 1 Table of Contents CHAPTER 2 Changelog The Documentation changelog is available 463 XiVO doc Documentation Release 15 13 464 Chapter 2 Changelog CHAPTER 3 Indices and tables genindex search 465 XiVO doc Documentation Release 15 13 466 Chapter 3 Indices and tables Index C Contacts 37 ctiserver 125 D devices 136 Identity 45 interconnections 163 165 166 L Local directory 48 M mail 59 N network 60 5 49 U users 221 V VLAN 60 W wiz
131. queue during the configured statistical window Abandoned The number of calls abandoned in this queue during the configured statistical window Mean waiting time The mean wait time in the statistical time window in mm ss If no calls are received is displayed Max waiting time The longest wait time in the statistical time window in mm ss If no calls are received is displayed Efficiency Answered calls over received calls during the configured statistical window unanswered calls that are still waiting are not taken into account If no calls are received is displayed 1 9 Contact Center 233 XiVO doc Documentation Release 15 13 QOS Percentage of calls taken within X seconds over answered calls during the configured statistical window If no calls are received is displayed Counter availability When the XiVO client is started na is diplayed for counters that have not been initialized When the XiVO client is restarted the counters are always displayed and calculated as if the application was not restarted When the server is restarted counters are reinitialized Enabling the xlet The xlet can be added to any CTI profile from the web interface CTI Server General settings General Preferences General Profiles Status Presences Xlet Position Floating Closable Movable Scroll Numbei Phone Hints Queues detail dock Y Ye
132. rc switch to an archived version s repository here 14 18 xivo dist xivo 14 18 1 8 7 Conference Room Adding a conference room In this example we ll add a conference room with number 1010 First you need to define a conference room number range for the default context via the Services IPBX IPBX configuration Contexts page General Users Groups Queues Conference rooms Incoming calls SCCP Protocol fi Number range start Number range end Dundi Protocol 1010 Fig 1 37 Adding a conference room number range to the default context You can then create a conference room via the Services IPBX IPBX settings Conference rooms page mex O Laaa General settings General User Guess Protocol J Protocol Name 1010 5 Number 1010 Voiemais PIN code 8 Advanced Context Default default z Outbound MWis __ Don t play announce for first participant C s Recording Lines Maxpart cpants 0 _Users Preprocess subroutine Groups Voicemails Description Conference rooms Call management Incoming calls Outgoing calls Call permissions Call fitters Call pickups Schedules Save wake menm EEE SS SSS Trunk management Fig 1 38 Creating conferen
133. records campaign queuestats On reception of the specified type of event BaseEngine will call the 7PBXListener method parseCom mand QVariantMap You should then reimplement this method to make it process the event data stored in the QVariantMap parameter The parking XLet There are two concepts here Parked calls These calls have been parked by a switchboard or an operator They are waiting to be answered by a specific person unlike a queue where calls will be answered by one of the agents 450 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 of the group associated to the queue Each parked call is given a phone number so that the call can be answered by everyone Parking lots They are containers for parked calls Each parking lot has a phone number used to identify where to send the call we want to park ParkingWidget represents a parking lot and contains a table that stores all parked calls Adding new XLets When you want to add a new XLet you can use the basic XLetNull that only prints Hello World Here is a little script to accelerate the copy from XLetNull usr bin env sh newname newname Replaces xletnull NewName NewName Replaces XLetNull amp XletNull NEWNAME NEWNAME Replaces XLETNULL if d xletnull then echo Please execute this script in XIVO CLIENT plugins echo Snewname exit 1 fi cp r xletnull newn
134. should be careful on which operation you are doing as to not cause stability problem to other parts of the XiVO ecosystem Mostly this means being careful when editing or deleting devices and configs By default the REST API of xivo provd is accessible only from localhost on port 8666 No authentication is required Warning Major changes could happen to this API The description of the API has been split into these sections Provd Management Get the Provd Manager provd manager resource represents the main entry point to the xivo provd REST It links to the following resources The dev relation links to a device manager The cfg relation links to a config manager The pg relation links to a plugin manager The srv configure relation links to the provd manager configuration service Query GET provd Example request GET provd HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json 330 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json Iinks href provd dev mgr rel dev Es href provd cfg mgr rel cfg href provd pg mgr rel pg href provd configure rel srv configure Devices Management Get the Device Manager device manager links
135. steps For example the file will look like title firstname lastname displayname society mobilenumber email Emmett DMC 5555551234 emmet brown dmc example com mr Emmett Brown Brown 138 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Bas eee EAO oO E 2 Mass synchronize send to devices General settings SIP Protocol 00 14 71 e1 37 62 10 97 5 100 Technicolor ST2030 xivo technicolor ST2030 2 74 Protocol 1097 5 102 Aastra 67391 xivo aastra 3 2 2 56 60 Voicemails 7 Phonebook 000e08 dd 642e 10 97 5 103 SPA962 xivo cisco spa legacy Y TI Advanced P 7 00 14 7f e1 42 b3 10 97 5 104 Technicolor ST2030 xivo technicolor ST2030 2 74 IPBX settings EE J 02 Devices Vines LEC Fig 1 47 Mass synchronization request sent successfully Example e Directory name csv phonebook Type File URI data csv phonebook csv Web service directories The data returned by the Web service must have the same format than the file directory In the same way you will be able to choose the headers and the separator in the next step Example Directory name ws phonebook Type Webservices URI http example org 8000 ws phonebook Configure the access to the data source Go in Services CTI Server Directories Definitions and add a new directory definition URI y
136. tab Customer Info tick the option Allow the Automatic Opening of URL The field in this tab receives the URL that will be displayed in your browser You can also use variable substitution in this field 134 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 http example org foo opens the URL on the default browser e http example org xivo did opens the URL on the default browser after substituting the xivo did variable If the substitution fails the URL will remain http example org xivo did the curly brackets will still be present e http example org xivo did origin xivo origin opens the URL on the de fault browser after substituting the variables If at least one of the substitution is successful the failing substitutions will be replaced by an empty string For example if xivo origin is replaced by outcall but xivo did is not substituted the resulting URL will be http example org origin outcall e tcp x y z co r 4545 varl al amp var2 a2 connects to TCP port 4545 on x y z co fr sends the string var1 al amp var2 a2 then closes e udp x y z co r 4545 varl al amp var2 a2 connects to UDP port 4545 on x y z co fr sends the string var1 al amp var2 a2 then closes Note any string that would not be understood as an URL will be handled like and URL it is a process to launch and will be executed as it is written For tcp and udp it is a requi
137. that selecting both a user and an outgoing call for the same call permission doesn t mean the call permission applies only to that user In fact it means that the user can t call that extension and that the extension can t be called on the specific outgoing call This in redundant and you will get the same result by not selecting the user Denying an incoming call coming from a specific extension from calling you Call permissions on incoming calls are semantically different from the other scenarios since the extension that you add to the permission will match the extension of the caller i e the caller number and not the extension that the caller dialed i e the callee number Add the extension in the extensions list 1 8 Administration 123 XiVO doc Documentation Release 15 13 n the Incoming calls tab select the incoming call 1 8 5 Call Logs Call logs are pre generated from CEL entries The generation is done automatically by xivo call logd xivo call logs is also run nightly to generate call logs from CEL that were missed by xivo call logd Note The oldest call logs are periodically removed See Purge Logs for more details Search Dashboard Call logs can be accessed using the menu Services IPBX Call management Call Logs page Start date 2013 08 28 End date Search Fig 1 36 Calls Records Dashboard Call logs are presented in a CSV file The CSV specifications are detai
138. the newer xivo aastra 3 3 1 SP2 plugin Both these plugins can be installed at the same time and you can manually change the plugin used by a phone by editing it via the Services IPBX Devices page If you are using custom templates in your old plugin you should copy them to the new plugin and make sure that they are still compatible 1 8 Administration 201 XiVO doc Documentation Release 15 13 Once you take the decision to migrate all your phones to the new plugin you can use the following command xivo provd cli c helpers mass update devices plugin xivo aastra 3 2 2 1136 xiv Or if you also want to synchronize i e reboot them at the same time xivo provd cli c helpers mass update devices plugin xivo aastra 3 2 2 1136 xiv You can check that all went well by looking at the Services IPBX Devices page NAT The provisioning server has partial support for environment where the telephony devices are behind a NAT equip ment By default each time the provisioning server receives an HTTP TFTP request from a device it makes sure that only one device has the source IP address of the request This is not a desirable behaviour when the provisioning server is used in a NAT environment since in this case it s normal that more than 1 devices have the same source IP address from the point of view of the server If all your devices used on your XiVO are behin
139. the figure above 3 different languages are selected using three different subroutines Each of this different selections of subroutines can be applied to the call qualifying object In the following example language selection is applied to incoming calls Example Configuration file for simple skill selection 1 9 Contact Center 245 XiVO doc Documentation Release 15 13 File skills conf File content Fig 1 84 Use Rule Set In Dialplan Fig 1 85 Apply Rule Set to Incoming Call 246 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 simple skill english exten s 1 Set XIVO QUEUESKILLRULESET english rule set same n Return simple skill french exten s 1 Set XIVO QUEUESKILLRULESET french rule set same n Return Monitoring You may monitor your waiting calls with skills using the asterisk CLI and the command queue show queue name xivo jylebleu CLI gt queue show services services has 1 calls max unlimited in ringall strategy 0s holdtime 2s talktime Members Agent 2000 Not in use skills agent 1 has taken no calls yet Agent 2001 Unavailable skills agent 4 has taken no calls yet Virtual queue english Virtual queue french 1 SIP jyl dev assur 00000017 wait 0 05 prio 0 Callers You may monitor your skills groups with the command queue show skills groups agent name
140. this information to update its device database This feature is useful for phones which lack information in their TFTP HTTP requests For example without DHCP integration it s impossible to extract model information for phones from the Cisco 7900 series Without the model information extracted there s chance your device won t be automatically associated to the best plugin This feature can also be useful if your phones are not always getting the same IP addresses for one reason or another Again this is useful only for some phones like the Cisco 7900 it has no effect for Aastra 6700 Creating Custom Templates Custom templates comes in handy when you have some really specific configuration to make on your telephony devices Templates are handled on a per plugin basis It s not possible for a template to be shared by more than one plugin since it s a design limitation of the plugin system of provd Note When you install a new plugin templates are not migrated automatically so you must manually copy them from the old plugin directory to the new one This does not apply for a plugin upgrade 1 8 Administration 199 XiVO doc Documentation Release 15 13 Let s suppose we have installed the xivo aastra 3 3 1 SP2 plugin and want to write some custom tem plates for it First thing to do is to go into the directory where the plugin is installed cd var lib xivo provd plugins xivo aastra 3 3 1 SP2 Once you are
141. time lt 2014 03 01 asterisk If you want to alter the table before the upgrade you can use sudo u postgres psql c ALTER TABLE queue log ADD COLUMN id SERIAL PRIMARY KEY GR NT ALL ON S Note It is recommended to execute this command when there s no activity on the system More Technical Information The way the database is initially provisioned and the way it is altered during an upgrade has also been changed In XiVO 14 07 and earlier the database was provisioned executing usr share xivo manage db datastorage asterisk sqgl SQL script Starting with XiVO 14 08 the xivo init db is responsible for provisioning the database This script should not be used by an administrator in normal circumstance Starting with XiVO 14 08 database migration are done with the help of alembic instead of the asterisk XXX sql and xivo XXX sql scripts alembic migration scripts can be found inside the usr share xivo manage db directory Otherwise the xivo check db and xivo update db commands have been updated to work with both the old and the new systems and are still the official way to check the database state and update the database respectively 14 07 Consult the 14 07 Roadmap Configuration for phones used for the switchboard has changed Please consult the following detailed updated notes for more information Switchboard Phone Configuration Upgrade Not
142. time Answered Conversation Login Pause Wrapup 9h 10h 1 00 07 31 00 28 45 00 55 13 00 00 00 10h 11h 5 00 30 50 01 00 00 00 00 00 00 01 15 11h 12h 4 00 24 15 01 00 00 00 00 20 00 01 15 12h 13h 0 00 00 00 00 33 34 00 59 07 00 00 00 13h 14h 0 00 00 00 01 00 00 00 34 20 00 00 00 14h 15h 3 01 23 38 01 00 00 00 00 00 00 00 30 15h 16h 2 00 05 24 01 00 00 00 00 00 00 00 30 16h 17h 3 00 26 21 01 00 00 00 00 00 00 01 00 17h 18h 6 00 37 50 01 00 00 00 00 00 00 01 15 Total 24 03 35 49 08 02 20 02 29 01 00 05 45 Agent per week Conversation Pause Monday 1 03 35 49 08 02 20 02 29 01 00 05 45 Tuesday 2 02 17 11 07 31 53 03 36 46 00 05 30 Wednesday 3 01 40 33 07 27 13 02 34 03 00 04 45 Thursday 4 02 26 24 07 57 25 02 13 23 00 05 30 Friday 5 00 00 00 00 00 00 00 00 00 00 00 00 Total 09 59 57 30 58 51 10 53 16 00 21 30 Agent per month Agent per year Period details Display by period defined in configuration i e between 0 and 10s 10s and 30s etc the number of handled calls and the number of abandonned calls You may click on a queue name to get more information for this queue 1 9 Contact Center 253 XiVO doc Documentation Release 15 13 Monday 0 00 00 00 Tuesday 0 00 00 00 Wednesday 0 00 00 00 Thursday 0 00 00 00 Friday 0 00 00 00 24 week Monday 0 00 00
143. to the following resources The dev synchronize relation links to the device synchronization service The dev reconfigure relation links to the device reconfiguration service The dev dhcpinfo relation links to the device DHCP information service The dev devices relation links to the list of devices Query GET provd dev mgr Example request GET provd dev mgr HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json links href provd dev_mgr synchronize rel dev synchronize href provd dev mgr reconfigure rel dev reconfigure 1 11 and SDK 331 XiVO doc Documentation Release 15 13 href provd dev mgr dhcpinfo rel dev dhcpinfo Es href provd dev mgr devices rel dev devices List Devices Query GET provd dev mgr devices Field Description q A selector encoded in JSON describing which device should be returned All devices are returned not specified Example q ip 10 34 1 119 Query Parameters fields A list of fields separated by comma Example fields mac ip skip An integer specifing the number of devices to skip Example skip 10 Sort The key on which to sort the results Example sort id sort o
144. to use anymore your berofos with your XiVOs Reset the Berofos You can reset the berofos configuration 1 Power on the berofos 2 When red and green LEDs are still lit press amp hold the black button 3 Release it when the red LEDs of the D port start blinking fast 4 Reboot the beronet it should have lost its configuration External links berofos user manual 1 11 and SDK 1 11 1 Message Bus The message bus is used to receive events from XiVO It is provided by an AMQP 0 9 1 broker namely Rab bitMQ that is integrated in XiVO Usage At the moment the AMQP broker only listen on the 127 0 0 1 address This means that if you want to connect to the AMQP broker from a distant machine you must modify the RabbitMQ server configuration which is not yet an officially supported operation All events are sent to the xivo exchange Otherwise the default connection information is Virtual host User name guest User password guest Port 5672 Exchange name xivo Exchange type topic Example Here s an example of a simple client in python listening for the call form result CTI events 270 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 import kombu from kombu mixins import ConsumerMixin EXCHANGE kombu Exchange xivo type topic ROUTING_KEY call_form_result class C ConsumerMixin def init self connection self
145. type an extension with a context of type internal internal can be associated to a line 400 Invalid parameters extension is associated to a line An extension can be associated to only one line Example request POST 1 1 lines 75 extensions Host xivoserver Content Type application json extension id 46 Example response HTTP 1 1 201 Location 1 1 lines 75 extension rortal s 1 items line id 75 extension id 46 links lines 1 11 and SDK 307 XiVO doc Documentation Release 15 13 href https xivoserver 1 1 lines 75 rel extensions href https xivoserver 1 1 extensions 46 Dissociate an Extension from a Line Any devices that are attached to a line must be removed before disso ciating an extension from its line A device can be dissociated by resetting it to autoprov mode Consult the documentation on Devices for further details Query DELETE 1 1 lines line id extensions extension id Error code Error message Description Errors 404 Line with id lt line_id gt does not exist 404 Extension with id lt extension_id gt does not exist 400 Invalid parameters A device is still associated to the line Example request DELETE 1 1 lines 32 extensions 16 Host xivoserver Examp
146. userfield 2 firstname Mary lastname Sue timezone language fr_FR description Caller id Mary Sue outgoing_caller_id default mobile phone number username password music on hold default preprocess subroutine userfield List Users with a view The users are listed with specific representation 1 11 and SDK 313 XiVO doc Documentation Release 15 13 Field Values Description id int User s ID line_id int Line s ID agent_id int Agent s ID Representation firstname string User s first name lastname string User s last name exten string User s phone number mobile_phone_number string Phone number for the user s mobile device Query GET 1 1 users view directory Example requests Listing all available users with directory view Host xivoserver Accept application json GET 1 1 users view directory HTTP 1 1 Example response HTTP 1 1 200 OK Content Type application json 45 items midte lg 1 agent_id 1 firstname John lastname Doe exten 1234 14184765458 mobile phone number gus 25 line id null agent id null firstname Mary lastname Sue exten mobile phone number m Get User
147. userid returned by Users configuration message Client gt Server class getlist function updateconfig listname users tid L Ltpbzrd s commandid 5 Server gt Client Class function updateconfig listname users tipbxaid s zivo timenow 1362741166 4 388 Chapter 1 Table of Contents sara tipbxid XiVO doc Documentation Release 15 13 conti Lg 4 enablednd 0 destrna enablerna 0 enableunc 0 destunc destbusy firstname Alice lastname Bouzat fullname Alice Bouzat voicemailid null incallfilter 0 enablevoicemail 0 profilecljent null Phones configuration Client gt Server elass getlist commandid 495252308 function listid listname phones tipbxid Server Client i class getlist function listid list Lei 2 14 VIR gn listname phones timenow 1364994093 38 tipbxid xivo Individual phone configuration request class getlist commandid 704096693 function updateconfig listname phones t Server Client gectlist config allowtransfer null context default identity SIP ihvbur iduserfeatu initialized null
148. vendor no string see above model no string see above version no string see above description no string see above options no object see above template_id no string see above 288 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Error Error message Description code 400 error while creating Device lt explanation gt See explanation for more details 400 Invalid parameters ip ip address is not formatted correctly 400 Invalid parameters mac mac address is not formatted correctly 400 Invalid parameters options options is not an object Errors 400 Invalid parameters options switchboard switchboard option is not a boolean 400 device mac already exists a device using the same MAC address has already been created 400 Nonexistent parameters plugin plugin does the selected plugin does not exist or has not not exist been installed 400 Nonexistent parameters template id the selected device template does not exist template id does not exist Example request POST 1 1 devices HTTP 1 1 Host xivoserver Accept application json Content Type application json mac 00 00 5e 00 00 01 vendor Aastra model 6731i version 3 2 2 plugin xivo aastra 3 2 2 SP3 Lemplate id defaultconfigdevice Example response HTTP 1 1 201 Created Location 1 1 devices 412c212cf
149. was not found queue_id lt queue_id gt 404 Resource Not Found Agent was not found agent_id lt agent_id gt Example request GET 1 1 queues 3 members agents 18 Host xivoserver Example response HTTP 1 1 200 OK Content Type application json 278 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Create Main user POST 1 1 users firstname John Doe timezone en US Doer outgoing caller id default Example response Cet POST 1 1 users timezone en US caller i Jane Doe outgoing caller id default Example response Create line POST 1 1 lines_sip id TOGE context default username abcdef secret secret password provisioning extension 123456 xample response exten 1234 i context efault commented false xample response Associate aline to a Main user POST 1 1 users nes main line true xample response Associate aline to a second user POST 1 1 usersj lines ue main line true xample response Associate an extension to a line line id extension i xample response extension id eii firstname John lastname us erfield Example request firstname Jane lastname us erfiel Example request context default device slot 1 Example request
150. with the package and should not be modified by the administrator To use a different configuration the adminstrator can add it s own configuration file at another location and set the new configuration directory in the etc default consul file The default installation generates a master token that be retrieved in var lib consul master token This master token will not be used if a new configuration is supplied Variables The following variables can be overridden in the etc default consul file CONFIG_DIR etc consul xivo The configuration directory USER consul GROUP consul PIDDIR var run consul PIDFILE var run consul consul pid The user used to run the consul process The group used to run the consul process The directory where the pidfile will writtel The name of the pidfile PIDDIR must match 1 6 9 Log Files Every XiVO service has its own log file placed in var log 72 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 agid File location var log xivo agid log e Rotate configuration etc logrotate d xivo agid Number of archived files 15 Rotation frequence Daily asterisk The Asterisk log files are managed by logrotate It s configuration files etc logrotate d asterisk and etc asterisk logger conf The message log level is enabled by default in Logger conf and contains notices warnings and errors The full log entry is comment
151. xten not locked 1 NoOp same Log ERROR Could not obtain lock same n Wait 0 5 same n Hangup xten too many calls 1 NoOp same n Log WARNING Not calling agent 5 AGENT ID because already in use same n Wait 0 5 same Hangup This workaround only applies to queues with agent members it won t work for queues with user members Also the subroutine prevent asterisk from calling an agent twice by hanguping the second call In the agent Statistics this will be shown as a non answered call by the agent 1 15 Community Documentation This page provides links to resources on various topics around XiVO They have been generously created by people from the community 1 15 1 Tutorials Please note that these resources are provided on an as is basis They have not been reviewed by the XiVO team therefore the information presented may be innaccurate We also accept resources provided in other languages besides English Unless specified the license is CC BY SA Tutorial Lan XiVO Author guage Version How to popup an url with CTIClient French 14 17 Assonance Xivo pour les nuls French How to use openVPN on XiVO French Yohan Vitu How to backup XiVO to external FTP with French Yohan Vitu backup ftp sh How to create a XiVO Client French Yohan Vitu How to configure a C610P IP on XiVO French Yohan Vitu How to export the
152. you installed in your server If it wasn t do again the step Load the correct DAHDI modules Note Analog cards work with card module You must add the appropriate card module to your analog card Either e an FXS module for analog equipment phones an FXO module for analog line Generate DAHDI configuration Issue the command dahdi genconf Warning it will erase all existing configuration in etc dahdi system conf etc asterisk dahdi channels conf files Configure DAHDI system conf configuration First step is to check etc dahdi system conf file check the span numbering See detailed explanations of this file in the etc dahdi system conf section Below is an example for a typical FXS analog line span Span 2 WCTDM 4 Wildcard TDM400P REV I Board 5 fxoks 32 echocanceller mg2 32 Asterisk dahdi channels conf configuration Then you have to modify the etc asterisk dahdi channels conf file remove the unused lines like context default group 63 change the context and callerid lines if needed the signalling should be one of fxo ks for FXS lines yes it is the reverse fxs ks for FXO lines yes it is the reverse Below is an example for a typical french PRI line span Span 2 WCTDM 4 Wildcard TDM400P REV I Board 5 signalling fxo ks callerid Channel 32 4032 mailbox 4032 group 5 context default channel 32
153. 0 00 s EE 1 27 5 4 65 MiB eo xivo call logd Running 1 day s 02 41 32 0 00 2 82 10 33 MiB eo xivo confgend Running 1 day s 02 41 43 0 00 mmm 3 19 11 71 MiB eo xivo ctid Running 1 day s 02 41 27 0 00 1 6 07 22 24 MiB eoe xivo provd Running 1 day s 02 41 41 0 00 2 36 8 66 MiB eo xivo restapid Unmonitored 1 eoo xivo sysconfd Running 1 day s 02 41 45 0 00 M 1 61 5 89 MiB eo Lists XiVO related processes most of which are daemons with their corresponding status uptime resource usage and controls to Restart service blue button stop service red button and stop monitoring service grey button 184 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 8 23 Music on Hold The menu Services IPBX IPBX services gt On hold Music leads to the list of available on hold musics Categories Available categories are files play sound files Formats supported Format Name Filename Extension G 719 g719 G 723 723 g723sf G 726 726 40 g726 32 g726 24 g726 16 G 729 g729 GSM gsm iLBC Albc Ogg Vorbis 0gg G 711 A law alaw al alw G 711 u law ulaw ul mu ulw G 722 g722 Au au Siren7 Siren7 Sirenl4 siren14 SLN raw sln sln12 sln16 51024 51032 sIn44 sIn48 1196 sIn192 VOX VOX WAV wavl6 WAV GSM WAV wav49 See asterisk rx module show
154. 0 Roadmap Default parameters for all Cisco SPA ATA plugins have changed to be better suited for european faxes Following the POODLE attack CVE 2014 3566 SSL 3 0 has been disabled for the web interface and the xivo confd REST API If you have Aastra phones and are using the remote directory on them consult the following detailed upgrade notes Aastra Remote Directory Upgrade Notes Starting from XiVO 14 20 it is not possible anymore to use SSL 3 0 when connecting to XiVO using HTTPS This has the unfortunate consequence of breaking the remote directory on Aastra phones configured by the xivo aastra provisioning plugins in version 1 2 and earlier Upgrade procedure To be able to use the remote directory on your Aastra phones on XiVO 14 20 or later you ll need to take one of the following actions Upgrade to the Latest Plugin This is the recommended solution This can be done either before or after the upgrade You ll have to 1 Upgrade your xivo aastra plugin to version 1 3 or later 2 Restart synchronize all your phones The correction is only available for plugin xivo aastra 3 3 1 SP2 and later If you are using an older plugin xivo aastra 3 2 2 SP3 for example then you ll need to install a newer plugin and update all your phones to use the new plugin If you were already using custom templates make sure to update them so that the phones access the remote directory via HTTP instead of HTTPS This can be done using the follow
155. 00 Tuesday 0 00 00 00 Wednesday 0 00 00 00 Thursday 0 00 00 00 135 25 week 15 01 20 19 08 17 50 03 02 58 Tuesday 3 00 13 52 08 22 51 07 06 44 Wednesday si 00 20 02 08 28 03 06 12 39 Thursday 0 00 Friday 1 00 09 22 05 27 33 00 00 15 26 week Monday 10 00 36 41 08 23 33 00 02 30 Tuesday 11 01 08 46 08 30 00 00 02 45 Wednesday 3 00 07 48 08 29 34 00 00 45 Thursday 5 00 40 10 04 00 58 07 26 52 00 01 15 Friday 9 01 12 33 08 19 18 04 27 04 00 02 15 Total 70 07 13 31 150 38 3 64 37 24 00 14 50 3 Pause Wrapup January 00 00 00 00 00 00 February 00 00 00 00 00 00 March 00 00 00 00 00 00 April 00 00 00 00 00 00 00 00 00 May 97 17 07 00 00 00 00 00 05 June 159 03 1 69 17 25 00 19 35 July 34 08 47 22 39 31 00 09 45 August 00 00 00 00 00 00 00 00 00 September 00 00 00 00 00 00 October 00 00 00 00 00 00 November 00 00 00 00 00 00 December 00 00 00 00 00 00 Total 87 16 55 00 24 40 P1 0 15s P2 16 20s P3 21 30s P4 31 60s P5 61s 254 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Period details by day P1 0 15s P2 16 20s P3 21 30s P4 31 60s P5 61s am Ce 9h 10h 10h 11h mem E Total calls handled Total abandoned calls Period details by week Period details by month Period details by year 1 9 7 Reporting You may use your own reporting tools to be able to p
156. 02 12 14 58 05 178 14650 14650 INFO INFO Starting xivo call logd Running confgend twistd no python usr bin xivo confgend No debug mode in confgend Log file var log xivo confgend log 2013 10 29 11 03 50 0400 2013 10 29 11 03 55 0400 2013 10 29 11 03 55 0400 Confgen 0 127 0 0 1 Confgen 1 127 0 0 1 Starting factory lt xivo_confgen confgen ConfgendFactory serving asterisk features conf serving asterisk musiconhold conf nstance at 0 370 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 ctid xivo ctid f d d for debug f for foreground Log file var log xivo ctid log 2013 10 29 11 03 58 789 xivo ctid 25914 INFO main CTI Fully Booted in 0 660311 seconds 2013 10 29 11 03 58 789 xivo ctid 25914 INFO interface_ami Asterisk Call Manager 1 3 2013 10 29 11 03 58 827 xivo ctid 25914 INFO AMI logger Event received Privilege gt system al dxtora dxtora f f for foreground Log file var log xivo dxtora log 2014 06 18 13 20 17 322 24028 INFO xivo dxtora Pulling DHCP info from unix socket provd twistd no r epoll xivo provd s v s for logging to stderr v for verbose Log file var log xivo provd log 2014 06 18 12 04 54 299 8564 INFO provd main Binding HTTP REST API service to 0 0 0 0
157. 07 93 0 0 89 00 00 09 86 0 Total call distributed Answered A Abandoned 1 9 Contact Center 251 XiVO doc Documentation Release 15 13 Blocking Calls received when no agents were available or when there were no agents to take the call join an empty queue condition or remove callers if there are no agents condition is reached advanced queue parameter tab Average waiting time AWT The average waiting time of call on wait Answered rate HR The ratio of answered calls over received calls closed calls Quality of service QoS Percentage of calls answered in less than x seconds over the number of answered calls where x is defined in the configuration Agent performance Agent performance statistics can be viewed in Services Statistics Performance agents Statistics 220000000000 Paflaneeagenis 0 s of calls Total time Configuration Queue Answered Login Pause Wrapup Performance agents 8h 9h 11 00 00 52 16 00 00 00 00 01 50 Period details _ 9h 10h 3 00 00 25 00 01 42 00 00 00 00 00 30 10h 11h 0 00 00 00 00 00 00 00 00 00 00 00 00 22020 00 11 12 2 00 00 12 00 03 56 00 00 09 00 00 40 mm Total 16 00 02 44 00 57 55 00 00 09 00 03 00 E SSS ES EE SSS Analysis Axis Day zi Day 2012 10 24 Working days TUE WED THU FRI SAT SUN Performance Note The a
158. 1 1 204 No Content Configuration Service Get the Configuration Query GET lt uri gt Example request Example request for the configuration service of the provd manager GET provd configure HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json params description The plugins repository URL id plugin_server Iinks href provd configure plugin server rel srv configure param 1 11 and SDK 345 XiVO doc Documentation Release 15 13 http provd xivo fr plugins 1 stable The proxy for HTTP requests Format is http user pa provd configure http proxy srv configure param The proxy for FTP requests Format is http user pas provd configure ftp proxy srv configure param The proxy for 5 requests Format is host port provd configure https proxy srv configure param The current locale Example fr FR provd configure locale srv configure param Set to 1 if all the devices are behind a NAT provd configure NAT srv configure param value Fy description id http proxy links href rel Jy value null bk description ftp proxy Iinks href rel
159. 1 11 and SDK 273 XiVO doc Documentation Release 15 13 user_id 42 ivo Tstatus busy Cca7f87e9 c2c8 5fad balb c3140ebb9be3 1 11 2 Queue logs Queue logs are events logged by Asterisk in the queue log table of the asterisk database Queue logs are used to generate XiVO call center statistics Queue log sample Agent callback login time callid queuename agent event F t 2012 07 03 15 27 23 896208 1341343640 4 NONE Agent 3001 AGENTCALLBACKLOGIN 100 Agent callback logoff Agent 3001 is logged in queues 41 and q2 time callid queuename agent event 2012 07 03 15 28 07 348244 NONE q2 Agent 3001 UNPAUSE 2012 07 03 15 28 07 346320 NONE ql Agent 3001 UNPAUSE 2012 07 03 15 28 07 327425 NONE NONE Agent 3001 UNPAUSEALL 2012 07 03 15 28 06 249357 NONE NONE Agent 3001 AGENTCALLBACKLOGOFF 100 Call on a Queue with join empty conditions met time callid queuename agent event 2012 07 04 07 27 55 640421 1341401275 9 ai NONE JOINEMPTY Enter the queue and get answered by an agent time callid queuename agent event 2012 07 04 07 33 23 085718 1341401601 24 ql Agent 3001 CONNECT 2 2012 07 04 07 33 21 165823 1341401601 24 ai NONE ENTERQUE
160. 11G 7912G 7920 7921G 7940G 7941 Provisioning N Y Y Y Y Y Y Y H A N Y Y Y NT NT Y Y Directory XIVO N FK FK FK N N FK FK Funckeys N 4 4 4 0 0 1 1 Supported programmable keys User with supervision function NT N N N N N Y Y Group NT N N Y N N Y Y Queue NT N N Y N N Y Y Conference Room with supervision function NT N N N N N Y Y General Functions Online call recording NT N N N N N N N Phone status NT N N Y N N Y Y Sound recording NT N N Y N N Y Y Call recording NT N N N N N Y Y Incoming call filtering NT N N N N N Y Y Do not disturb NT N N SK N N SK SK Group interception NT N N Y N N Y Y Listen to online calls NT N N Y N N Y Y Directory access NT N N Y N N Y Y Filtering Boss Secretary NT N N N N N Y Y Transfers Functions Blind transfer NT N N N N N N N Indirect transfer NT N N SK SK SK 1 These devices are marked as Not Tested because other similar models using the same firmware have been tested instead If these devices ever present any bugs they will be troubleshooted by the XiVO support team 100 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Table 1 2 continued from previous page 7905G 7906G 7911G 7912G 7920 7921G 7940G 7941 Forwards Functions Disable all forwarding NT N N Y N N Y Y Enable Disable forwarding on no answer NT N N Y N N Y Y Enable Disable forwardi
161. 13 ym consult voicemail Agent Login agent Client gt Server agentphonenumber 1000 class ipbxcommand command agentlogin commamdid 733366 agentphonenumber is the physical phone set where the agent is going to log on Server Client Login successfull function updateconfig listname queuemembers tipbxid xivo timenow 1362664323 94 tid Agent 2002 blue config paused 0 penalty 0 membership static status I lastcall T interface Agent 2002 queue name blue callstaken O elass z getlrst function updatestatus listname agents tipbxid xivo timenow 1362664323 94 status availability since 1362664323 94 queues phonenumber 1001 on call false groups availability available channel null tig 7 olass getlist The phone number is already used by an other agent class ipbxcommand error string agent login exten in use timenow 1362664158 14 Logout agent Client gt Server class ipbxcommand command agentlogout commandid 552759274 Pause all queues Client gt Server class ipbxcommand command queuepause commandid 859140432 member agent xivo 1 Un pause agent On all queues Client gt Server class ipbxcommand comma
162. 2 No 5 The 500 expansion module is supported Cisco Small Business IP Phones previously known as Linksys IP Phones Model Tested Fkeys XiVO HA SPA901 No 1 No SPA921 No 1 No SPA922 No 1 No SPA941 No 4 No SPA942 Yes 4 No SPA962 Yes 6 No Note You must install the firmware of each SPA9xx phones you are using since they reboot in loop when they can t find their firmware The SPA932 expansion module is supported ATAs Model Tested Fkeys XiVO HA PAP2 No 0 No SPA2102 No 0 No SPA8800 No 0 No SPA112 No 0 No For best results activate DHCP Integration on your XiVO Note These devices can be used to connect Faxes For better success with faxes some parameters must be changed You can read the Using analog gateways section Note If you want to manually resynchronize the configuration from the ATA device you should use the following url http ATA IP admin resync http XIVO 8667 FILE where ATA IP is the IP address of the ATA XIVO IP is the IP address of your XiVO 108 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 CONF FILE is one of spa2102 cfg spa8000 cfg Fanvil Model Tested Fkeys XiV
163. 2 Running the Wizard After the system installation you must go through the wizard before being able to use your XiVO Open your browser and enter your server s IP address in the navigation bar For example http 192 168 1 10 Language You first have to select the language you want to use for the wizard 4 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 me MVO Installation 5 ifai m Steps Welcome Licence Welcome into the XiVO installer Components check Configuration Thanks for choosing XiVO This installer will help you to configure a fully functional XiVO Entities and contexts Validation 11 Let yourself be guided and don t forget to note informations you will set i e root password for XiVO administration interface login You can also get online help at https wiki xivo fr Have fun Step 1 Choose your language gt gt gt Language Engish s Fig 1 1 Select the language Licence Licence Components check GNU GENERAL PUBLIC LICENSE Configuration Version 3 29 June 2007 Entities and contexts Validation Copyright 2007 Free Software Foundation Inc http fsf org Everyone is permitted to copy and distribute verbatim copies of this license document but changing it is not allowed Preamble The GNU General Public License is a free copyleft license for software and other kinds of works Th
164. 3 4 NET CPE NET spans spans spans spans Sie ee eee ee rl xivo 1 xivo 2 p ee eee PBX One XiVO and one PBX This case is not currently supported You ll find a workaround in the Berofos Integra tion with PBX section Multiple berofos It s possible to use more than 1 berofos with XiVO For each supplementary berofos you want to use you must first configure it properly like you did for the first one The only difference is that you need to add a berofos declaration to the etc bnfos conf file instead of creating overwriting the file Here s an example of a valid config file for 2 berofos fost mac 00 19 32 00 12 1D host 10 100 0 201 login admin foobar fos2 mac 00 11 22 33 44 55 host 10 100 0 202 login admin barfoo Warning berofos name must follow the pattern osX where X is a number starting with 1 then 2 etc The bnfos tool won t work properly if it s not the case Operation When your XiVO switch the relay mode of your berofos it logs the event in the var 10g syslog file Default mode Note that when the berofos is off the A and D ports are connected together This behavior is not customizable 1 10 High Availability HA 269 XiVO doc Documentation Release 15 13 Uninstallation It is important to remove the etc bnfos conf file on the slave node when you don t want
165. 3 44 55 op commit options 0 506 6 6 022 6L 72 8 1 11 and SDK 335 XiVO doc Documentation Release 15 13 Example response HTTP 1 1 204 No Content Configs Management Get the Config Manager The config manager links to the following resources e The c g configs relation links to the list of configs The c g autocreate relation links to the config autocreate service Query GET provd cfg mgr Example request GET provd cfg mgr HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json links href provd cfg mgr configs rel ofg configs href provd cfg_mgr autocreate rel cfg autocreate 1 List Configs Query GET provd cfg_mgr configs Query Parameters These are the same parameters as for the list devices action Example request GET provd cfg_mgr configs HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json 336 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example response HTTP 1 1 200 OK Content Type configs configdevice deletable nag parent ids base true defaultconfigdevice 1 raw_config x key
166. 30i 3 3 1 5089 sip lines 6 Aastra 67311 3 3 1 2235 sip lines 6 switchboard true Aastra 6735i 3 3 1 5089 sip lines 9 Aastra 6737i 3 3 1 5089 sip lines 9 Aastra 67391 3 3 1 2235 sip lines 9 Aastra 67531 3 3 1 2235 sip lines 9 Aastra 6755i 3 3 1 2235 sip lines 9 switchboard true Aastra 6757i 3 3 1 2235 sip lines 9 switchboard true Aastra 9143i 3 3 1 2235 sip lines 9 Aastra 9480i 3 3 1 2235 sip lines 9 description Plugin for Aastra 67301 67311 67352 67371 67394 67531 version 1 1 1 11 APl and SDK 343 755a 5T 35 XiVO doc Documentation Release 15 13 Reload a Plugin Reload the given plugin This is mostly useful during plugin development after changing the code of the plugin instead of restarting the xivo provd application Query POST provd pg mgr reload Example request POST provd pg mgr reload HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json id xuivosaadstra 3 23 1 9P2 Example response HTTP 1 1 204 No Content General Resources This section describes the resources that are available from more than one URI or are generic enough to not fit in a more specific section Operation In Progress This resource represents an operation in progress and is used to follow the progr
167. 4 14 16 to 13 25 14 17 here 13 25 to 14 16 cat etc apt preferences d 50 xivo 14 16 pref EOF Package Pin release a xivo 14 16 Pin Priority 700 EOF apt get update apt get install xivo fai apt get purge xivo fai 13 25 apt get update apt get install xivo fai 14 16 apt get update apt get install xivo upgrade xivo 14 16 xivo upgrade rm etc apt preferences d 50 xivo 14 16 pref 13 24 14 16 to 14 184 here 14 05 to 15 11 apt get update apt get install xivo fai apt get update apt get install xivo dist xivo dist xivo 15 11 apt get purge xivo fai apt get update apt get install xivo upgrade xivo 15 11 xivo upgrade 1 4 Upgrading 17 XiVO doc Documentation Release 15 13 14 18 to 14 19 here 14 18 to 15 12 xivo dist xivo 15 12 apt get update apt get install xivo upgrade xivo 15 12 xivo upgrade 1 4 8 Upgrade Notes 15 13 Consult the 15 13 Roadmap Asterisk has been upgraded from version 11 17 1 to 13 4 0 which is a major Asterisk upgrade An ARI user has been added to etc asterisk ari conf If you have configured Asterisk HTTP server to bind on a publicly reachable address in etc asterisk http conf then you should up date your configuration to prevent unauthorized access on your Asterisk The xivo dird configuration option source to display columns has been removed in favor of the new op tion
168. 43 Device successfully synchronized 1 8 Administration 137 XiVO doc Documentation Release 15 13 E O General settings Protocol O 00 14 7 e1 37 62 10 97 5 100 Technicolor 572030 xivo technicolor ST2030 2 74 00 Protocol Voicemails M Qi oo0554 13 c205 10 975 102 Aastra 67391 xivo aastra 3 2 2 56 A oe Phonebook Advanced 10 97 5 103 Cisco SPA962 xivo cisco spa legacy 500 10 97 5 104 Technicolor 572030 Xivo technicolor ST2030 2 74 IPBX settings Devices Lines Users Ine Existent on the provisioning server Fig 1 44 Error during device synchronization Search IPBX m Synchronize aci 00 14 71 e1 37 62 10975 00 Technicolor 572030 xivo technicolor ST2030 2 74 Select al by rotocol _ _ Delete Protocol 05 10 97 5 102 Aastra 6739 xivo aastra 3 2 2 56 gt Voicemails Phonebook 000e 08 dd 642e 10 97 5 103 Cisco SPA962 xivo cisco spa legacy C amp Qoxuztera2os 10975104 Technicolor 572030 xivo technicolor ST2030 2 74 uo Devices e Legend A Io i Fig 1 45 Synchronize selected devices Select the devices yo
169. 5 wctel3xp 0000 03 0c 0 Setting up global serial parameters for Tl wctel3xp 0000 03 0c 0 VPM450 firmware dahdi fw oct6114 032 bin not available from userspace For the firmware update to complete you must halt the machine a reboot won t be enough before restarting it 14 14 Consult the 14 14 Roadmap See the changelog for REST API Upon an important freeze of Asterisk Asterisk will be restarted See the associated ticket for more infor mation 14 13 Consult the 14 13 Roadmap See the changelog for REST API Skills based routing for an agent which doesn t have the skill X the rule X 10 was previously evaluated to true since not having the skill X was equivalent to having it with a value of 0 This behaviour has changed and the same expression is now evaluated to false If you are using skills based routing you ll need to check that your rules are still doing what you expect See skill evaluation for more information 24 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 14 12 Consult the 14 12 Roadmap All provisioning plugins were modified Although not mandatory it is strongly advised to update all used plugins The function key Activate voicemail was removed as it was a duplicate of existing function key Enable voicemail All users having the Activate voicemail function key will have to be reconfigured with a Enable voicemail function key in order to keep
170. 500cc158 373 00e078 7 Content Type application json id 412c212cff500cc158 373 006e078 f7 Mao WTO OO mac 00 00 5e 00 00 01 sn null vendor Aastra model 6731i versions 3 2 2 description null status configured plugin xivo aastra 3 2 2 SP3 options null Lemplate id defaultconfigdevice c rel devices href https xivoserver 1 1 devices 412c212cff 500cc158 373 00e078 7 Update a Device 1 11 and SDK 289 XiVO doc Documentation Release 15 13 Query PUT 1 1 devices lt id gt The update does not need to set all the fields for the device Only the fields that need to be updated must be set Parameters id Device s id Input Same as for creating a device Please see Create a Device Errors Same as for creating a device Please see Create a Device Example request PUT 1 1 devices 42 HTTP 1 1 Host xivoserver Content Type application json Wares Example response HTTP 1 1 204 No Content Delete a Device device can not be deleted if it is linked to a line You must deassociate the line and the device first Query DELETE 1 1 devices lt id gt Error code Error message Description Errors 400 error while deleting Device explanation See error message for more details 404 Not
171. 5c84662864b0ae5c27b33e4 If the id field is not given then an ID id automatically generated by the server Get a Config Query GET provd cfg mgr configs config id Example request GET provd cfg mgr configs 77839d0 05c84662864b0ae5c27b33e4 HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json config id 77839d0 05c84662864b0ae5c27b33e4 parent ids base 1 raw config sip lines 1 auth_username 100 display_name Foo 338 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 password 100 username 100 Get a Raw Config Query GET provd cfg_mgr configs lt config_id gt raw Example request GET provd cfg_mgr configs 77839d0 05c84662864b0ae5c27b33e4 raw HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json raw config X xivo phonebook ip 10 34 1 11 http port 8667 10 94 17 44 ntp enabled true ntp ip 10 34 1 11 sip lines wp ud auth username 100 display name John password 100 username 100 tftp port 69 Update a Config Que
172. 6753i 6755i 67571 675 0 116 0 4 99 874kb BR Xivo aastra 3 2 2 6268 Greffon pour Aastra 6735i et 6737i en version 3 2 2 6268 Insta MH this pl ugi n 03 o 75kb o _ xivo aastra switchboard Greffon pour Aastra 67311 6755i 67571 en version 3 2 2 1136 0 1 7 xivo alcatel 2 01 10 Greffon pour Alcatel IP Touch 4008 and 4018 extended edition en 0 11 6 07 kb O xivo avaya 4 1 13 Greffon pour Avaya auparavant connu comme Nortel 1220 IP et 123 0 1 1 4 65 kb loud xivo cisco pap2t 5 1 6 Greffon pour Cisco PAP2T en version 5 16 Edit this plugin o 1092kb 77 xivo cisco sccp 9 0 3 Greffon pour Cisco 7911G 7941G 7941G GE 7961G en version 9 0 2 0 3 8 6 9 kb 2598 Xivo cisco sccp legacy Greffon pour Cisco 7912G 7940G et 7960G en version 8 1 2 du logi 02 0399 705kb 988 xivo cisco spa 7 4 8 Greffon pour Cisco SMB SPA301 303 501G 502G 504G 508G 509G 03 11 99 kb lou xivo cisco spa legacy Greffon pour Cisco auparavant connu comme Linksys SPA901 921 0 3 12 02 kb lou xivo cisco spa2102 5 2 12 Greffon pour Cisco SPA2102 en version 5 2 12 Uninstall this plugin 10 89 kb 7 xivo cisco spa3102 5 1 10 Greffon pour Cisco 5 102 en version 5 1 10 DE m xivo cisco spaB000 6 1 3 Greffon pour Cisco SPA8000 en version 6 1 3 0 3 10 91kb 7 xivo cisco spa8800 6 1 7 Greffon pour Cisco 5 8800 en version 6 1 7 0 3 10 9 kb xivo digium 1 1 0 0 Greffon pour Digium D40 D50 et D70 en version 1 1 0 0 03 4 09 kb lou xivo gig
173. 866 2014 06 18 12 04 54 320 8564 INFO twisted Site starting on 8666 confd xivo confd f d f for foreground d for debug messages Log file var log xivo confd log 2013 10 28 10 02 00 352 xivo confd 8905 INFO xivo confd flask http server POST http 127 0 2013 10 28 10 04 35 815 xivo confd 8905 INFO xivo confd flask http server GET http 127 0 sysconfd xivo sysconfd l debug f debug for debug level logging f for foreground Log file var log xivo sysconfd log 1 12 Contributors 371 XiVO doc Documentation Release 15 13 2014 06 18 12 00 23 221 8277 INFO xivo sysconfd locking PID 2014 06 18 12 00 23 233 8277 INFO xivo sysconfd pidfile ok 2014 06 18 12 00 23 237 8277 INFO http_json_server will now serve 1 12 4 XiVO Guidelines Inter process communication Our current goal is to use only two means of communication between XiVO processes a REST API over HTTP for synchronous commands a software bus RabbitMQ for asynchronous events Each component should have its own REST API and its own events and can communicate with every other component from across a network only via those means Service API The current xivo dao Git repository contains the basis of the future services Python API The API is split between different resources available in XiVO such as users groups schedules For each resource t
174. 8n MWI Speeddial BLF 1 12 16 Web Interface Configuration for development Default error level for XiVO web interface is E ALL amp DEPRECATED amp E USER DEPRECATED amp E RECOVERABLE ERROR amp E STRICT 442 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 If you to display warning other error in your browser edit the etc xivo web interface xivo ini andreplace report type level to 3 error level 2047 report type 3 report mode 1 report func 1 email john doe example com file var log xivo web interface error log You may also edit etc xivo web interface php ini and change the error level but you will need to restart the cgi etc init d spawn fcgi restart Interactive debugging in Eclipse Instructions for Eclipse 4 3 On your XiVO 1 Install php5 xdebug apt get install php5 xdebug 2 Edit the etc php5 con d 20 xdebug ini and add these lines at the end xdebug remote enable 1 xdebug remote host dev host ip where dev host ip is the IP address of your machine where Eclipse is installed 3 Restart spawn fcgi service spawn fcgi restart On your machine where Eclipse is installed 1 Make sure you have Eclipse PDT installed 2 Create a PHP project named xivo web interface e Choose Create project at existing location using the xivo web interface src dire
175. Attended transfer button or the F5 key put the call on hold using the Hold button or the F7 key e end the call using the Hangup button or the F8 key Transferring a call Transfer buttons allow the operator to select towards which destination he wishes to transfer the call This is made through the Directory xlet For defails about the xlet Directory usage and configuration see Directory Once the destination name has been entered press Enter If multiple destinations are displayed you can choose by double clicking on the destination using Up Down arrows then pressing Enter pressing the transfer button again Blind transfers are straightforward once the call is transferred the operator is free to manage other calls Attended transfers are a bit more complicated the operator needs to wait for the transfer destination to answer before completing the transfer In this example the operator is currently asking Bernard Marx if he can transfer Alice Wonderland to him Q Charlie Chaplin Agent 103 Phone 103 103 E Connected to 103 E En ligne OU appelle N Disponible eA 8 Unpaused No option Switchboard Directory 9 Current Call bernard G Enter ra 7 Name Number Location Complete T Cancel T Bernard Marx 102 Alice Wunderland lt 101 gt 00 26 4 Incoming Calls Waiting Calls F9 0 calls 0 call Name Number Time Name Number Time Dial 8 9 Enter Number v
176. CE 2 2 1 NoOp pressed digit is 2 redirect to 8833 in S IVR DESTINATION CONTEXT exten exten 2 n Goto IVR_DESTINATION_CONTEXT 8833 1 CHOICE 3 exten exten 3 1 pressed digit is 3 redirect to 8547 S IVR DESTINATION CONTEXT 3 n Goto S IVR DESTINATION CONTEXT 8547 1 CHOICE 4 exten exten 4 1 NoOp pressed digit is 4 redirect to start label in this context 4 n Goto s start TIMEOUT exten exten t 1 NoOp no digit pressed for 5s process it like an error t n Goto i 1 INVALID CHOICE exten i 1 NoOp if counter variable is 3 or more then goto label error i n Gotolf counter gt 3 error res rontext rontext rontext i n NoOp pressed digit is invalid and less than 3 errors the guid i n Playback GV DIRECTORY SOUNDS ivr example invalid choice i n Goto s start i n error Playback GV DIRECTORY SOUNDS ivr example error i n Hangup ivr exem ple invalid cl IVR external dial To call the script dp ivr example from an external phone you must create an incoming call and redirect the call to the script dp ivr example with the command Goto dp ivr example s 1 IVR internal dial To call the script dp ivr example from an internal phone you mus
177. CHANNEL CHANNEL VARIABLE mysheeturl V same n Return You can replace documentation xivo io by the URL you want The second step is to set the URL when the call is queued To do that we will use a preprocessing subroutine This is configured in the queue configuration go to Services Call center Queues and edit the queue Set the field Preprocessing subroutine to setsheeturl the same as above The third step is to configure the sheet to open the wanted URL Go to Services CTI Server Sheets Models and create a new sheet Keep the default for everything except the Action tab add a field and set it to dp mysheeturl the same as above The fourth and final step is to trigger the sheet when the agent answers the queued call Go to Services CTI Server Sheets Events and link the event Agent linked to the sheet you just created That s it you can assign agents to your queue log the agents and make them answer calls with the XiVO Client opened and your browser should open the specified URL 1 8 10 Devices Synchronize a device First you have to display the list of devices Fig 1 39 Click the synchronize button for a device O M 00 14 7t e1 37 62 10 97 5 100 Technicolor ST2030 xivo technicolor ST2030 2 74 EF O o0 08 54 13 ca 05 10 97 5 102 Aastra 6739i xivo aastra 3 2 2 56 o9 00 08 4464 26 10 97 5 103 Cisco SPA962 xivo cisco spa legacy O 00 14
178. CP41 9 0 3S Yes 7942 Yes SCCP42 9 0 3S Yes 7960 Yes 8 1 2 0 No 7961 Yes SCCP41 9 0 3S Yes 7962 Yes SCCP42 9 0 3S Yes CIPC Yes 2 1 2 Yes An unsupported device won t be able to connect to asterisk at all The Timezone aware column indicates if the device supports the timezone tag in its configuration file i e in the file that the device request to the provisioning server when it boots If you have devices that don t support the timezone tag and these devices are in a different timezone than the one of the XiVO you can look at the issue 5161 for a potential solution 1 8 Administration 207 XiVO doc Documentation Release 15 13 1 8 29 Schedules Schedules are specific time frames that can be defined to open or close a service Within schedules you may specify opening days and hours or close days and hours A default destination as user group can be defined when the schedule is in closed state Schedules can be applied to Users Groups Inbound calls Outbound calls Queues Creating Schedules General Closed hours Name workinghours Timezone America New_York zi lt lt Schedule 09h00 to 18h00 Mon to Fri fa c
179. Charlie Busy call forwarding towards Charlie 1 8 Administration 121 XiVO doc Documentation Release 15 13 Call completion will activate and call back for the rerouted called party Scenario Alice tries to call Bob but the call is redirected to Charlie When activating call completion Alice hears that the call completion is activated and eventually Alice is called back to speak with Charlie This occurs when Bob redirects the call with any of the following Boss Secretary filter to the secretary Charlie Call completion will activate and call back for the original called party but fail to join him Scenario Alice tries to call Bob but the call is redirected to Charlie When activating call completion Alice hears that the call completion is activated and eventually Alice is called back to speak with Bob But when Alice answers Bob is not called If Alice activates call completion again she will hear that the call completion was cancelled This occurs when Bob redirects rejects the call with any of the following Do Not Disturb mode a new call forwarding rule that was applied after Alice activated call completion Unconditional call forwarding towards Charlie Closed schedule towards Charlie Call permission forbidding Alice to call Bob Preprocess subroutine forwarding the call towards Charlie Limitations Call completion can only be used with SIP lines It can t be used with SCCP lines tcan t b
180. DONT_OPTIMIZE flag 3 Edit etc asterisk modules conf so that asterisk doesn t load unnecessary modules This step is optional It makes asterisk start noticeably faster and often makes the output of valgrind easier to analyze since there s less noise 4 Edit etc asterisk asterisk conf and comment the highpriority option This step is op tional 5 Stop monit and asterisk monit quit service asterisk stop 6 Stop all unneeded XiVO services For example it can be useful to stop xivo ctid so that it won t interact with asterisk via the AMI 7 Copy the valgrind supp file into tmp The valgrind supp file is located in the contrib directory of the asterisk source code 8 Execute valgrind in the tmp directory cd tmp valgrind leak check full log file valgrind txt suppressions valgrind supp vgdb no ast Note that when you terminate asterisk with Control C asterisk does not unload the modules before exiting What this means is that you might have lots of possibly lost memory errors due to that If you already know which modules is responsible for the memory leak bug you should explicitly unload it before terminating asterisk It is suggested to have 768 MiB of RAM or more since running asterisk under valgrind takes a lots of extra memory External links e https wiki asterisk org wiki display AST Debugging e http blog xivo io index php post 2012 10 24 Visualizing asterisk deadlocks
181. Documentation Release 15 13 prod debian Dockerfile docs EEG integration tests LICENSE README md requirements txt setup cfg setup py test requirements txt travis yml xivo confd Sources etc Contains default configuration files docs Contains technical documentation for this package API doc architecture doc diagrams Should be in RST format using Sphinx bin Contains the binaries Not applicable for pure libraries integration tests Contains the tests bigger than unit tests Tests should be runnable simply e g nosetests integration tests README md Read me in markdown Github flavor LICENSE License GPLv3 travis yml Travis CI configuration file Python Standard files setup py setup cfg requirements txt test requirements txt xivo confd the main sources Debian debian Contains the Debian packaging files cont rol rules Docker Dockerfile Used to build a docker image for a working production version 382 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 contribs docker prod Contains the files necessary for running xivo confd inside a production Docker image contribs docker other Contains the Dockerfile and other files to run xivo confd inside Docker with specific configuration File naming PID file var run xivo confd xivo confd pid
182. EAP SIM database authentication gateway interface This is a text string in implementation specific format The example implementation in eap sim db c uses this as the UNIX domain socket name for the HLR AuC gateway e g hlr auc gw In this case the path uses unix prefix eap sim db unix tmp hlr auc gw sock Encryption key for EAP FAST PAC Opaque values This key must be a secret random value It is configured as a 16 octet value in hex format It can be generated e g with the following command od txl v N16 dev random colrm 1 8 tr d pac opaque encr 000102030405060708090 050 04 0 0 EAP FAST authority identity A ID A ID indicates the identity of the authority that issues PACs The A ID should be unique across all issuing servers In theory this is a variable length field but due to some existing implementations requiring A ID to be 16 octets in length it is strongly recommended to use that length for the field to provid interoperability with deployed peer implementations This field is configured in hex format eap fast 14 101112131415161718191 161 1 1 1 EAP FAST authority identifier information A ID Info This is a user friendly name for the A ID For example th nterprise nam and server name in a human readable format This field is encoded as UTF 8 eap fast a id info test server Enable disable different EAP FAST provisioning modes provisioning disable
183. EL for calls passed after upgrading to XiVO 13 16 The new REST API now makes possible to associate multiple user to a given line and or extension There are currently some limitations on how those users and lines can be manipulated using the web interface Please read the REST API 1 1 documentation and more precisely the Associate Line to User section for more information There was no production release of XiVO 13 15 AII 13 15 developments are included in the official 13 16 release Consult the 13 14 Roadmap The latest Polycom plugin enables the phone lock feature with a default user password of 123 All Polycom phones used with XiVO also have a default admin password In order for the phone lock feature to be secure one should change every phone s admin AND user passwords WebServices for SIP trunks lines field nat value yes changed to force rport comedia The database has beed updated in order to remove deprecated tables generalfeatures extenumbers exten hash cost center 1 4 Upgrading 31 XiVO doc Documentation Release 15 13 13 13 Consult the 13 13 Roadmap 13 12 Consult the 13 12 Roadmap CTI protocol Modified values of agent availability Read CTI Protocol changelog Clean up was made related to the minimization of the XiVO Client Some visual differences have been observed on Mac OS X that do not affect the XiVO Client in a functional way 13 11 Consult the 13 11 Roadmap Asterisk has been up
184. Each SCCP session connection now use 3 file descriptors instead of 1 previously On XiVO the file descriptor limit for the asterisk process is 8192 which means that the increase in used file descriptors should not be a problem even on a large installation 14 04 Consult the 14 04 Roadmap Live reload of the configuration can be enabled and disabled using the REST API The generation of call logs for unanswered calls from the XiVO client have been improved 14 03 Consult the 14 03 Roadmap A migration script adds an index on the linkedid field in the cel table Tests have shown that this operation can last up to 11 5 minutes on a XiVO Corporate with 18 millions CELs xivo upgrade will thus be slightly longer Two new daemons are now operationnal xivo amid and xivo call logd xivo amid constantly reads the AMI and sends AMI events to the RabbitMQ bus xivo call logd generates call logs in real time based on AMI LINKEDID END events read on the bus An increase in load average is expected with the addition of these two new daemons The cron job calling xivo call logs now runs once a day at 4 25 instead of every 5 minutes 14 02 Consult the 14 02 Roadmap PHP Web services has been removed from documentation REST API 1 0 Web services has been removed from documentation REST API 1 1 User Line Extension service is replaced by User Line and Line Extension services 14 01 Consult the 14 01 Roadmap The followin
185. Echo canceller for DTMF detection If you have an hardware echo canceller you may want to use it to detect the DTMF signal instead of asterisk 1 Create the file etc modprobe d xivo hwec dtmf conf touch etc modprobe d xivo hwec dtmf conf I 2 Fill it with the following lines replacing MODULE NAME by the correct module name wcte13xp wCtAxxp options DAHDI MODULE NAME vpmdtmfsupport 1 3 Then restart the services xivo service restart Card configuration Now that you have oaded the correct DAHDI modules and configured the echo canceller you can proceed with the card configuration Follow one of the appropriate link below BRI card configuration Verifications Verify that the wcb4xxp module is uncommented in etc dahdi modules If it wasn t do again the step Load the correct DAHDI modules Generate DAHDI configuration Issue the command dahdi genconf Warning it will erase all existing configuration in etc dahdi system conf etc asterisk dahdi channels conf files Configure DAHDI system conf configuration First step is to check etc dahdi system conf file check the span numbering if needed change the clock source See detailed explanations of this file in the etc dahdi system conf section Below is an example for a typical french BRI line span Span 1 B4 0 1 B4XXP PCI Card 0 Span 1 MASTER RED span 1 1 0 ccs
186. Edit the file etc default xivo ctid and add the following line export XIVO CTID AMI PROXY 1 2 Restart the CTI server Service xivo ctid restart If you are on a XiVO cluster you must do the same procedure on the slave if you want the ami proxy to also be enabled on the slave To disable the ami proxy make sure the line you added in step 1 is completely removed it is not sufficient to set the value of the variable to 0 You can remove the etc default xivo ctid file if it is now empty 1 14 7 Agents receiving two ACD calls An agent can sometimes receive more than 1 ACD call at the same time even if the queues he s in have the ringinuse parameter set to no default This behaviour is caused by a bug in asterisk https issues asterisk org Jira browse AS TERISK 16115 It s possible to workaround this bug in XiVO by adding an agent subroutine The subroutine can be either set globally or per agent 460 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 pre limit agentcallback exten 5 1 same n Set LOCKED S LOCK agentcallback same GotoIf LOCKED not locked 1 same n Set GROUP agentcallback XIVO_AGENT_ID same n Set COUNT GROUP_COUNT XIVO_AGENT_ID Q agentcallback same NoOp UNLOCK agentcallback same n GotoIf COUNT lt 1 too many calls 1 same Return
187. HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json 1 11 and SDK 347 XiVO doc Documentation Release 15 13 Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json Links href provd pg_mgr install install rel srv install snstall href provd pg mgr install uninstall rel sryv instaLl uminstall href provd pg mgr install installed rel srv install installed s href provd pg_mgr install installable rel srv install installable href provd pg_mgr install upgrade rel srv install upgrade href provd pg mgr install update rel srv install update The upgrade and update services are optional and not all installation service provide them Install a Package Query POST uri Example request Example request for the installation service of the plugin manager POST provd pg mgr install install HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json id xivo polycom 4 0 4 Example response HTTP 1 1 201 Created Location provd pg mgr install install 1 Content Type application vnd proformatique provd json The URI returned in the Locat ion header points to an operation in progress resource Uninstall a Package 348 Chapter 1 Table of Contents
188. I server is frozen and won t come back online You must ensure that the partition containing var always has at least 100 MiB of free disk space If it does not the symptoms are the CTI server is frozen after logging unlogging an agent or adding removing a member from a queue trying to log unlog an agent via a phone is not possible To get the system back on tracks after freeing some space in var you must do xivo service restart 1 14 6 CTI server is unexpectedly terminating If you observes that your CTI server is sometimes unexpectedly terminating with the following message in var log xivo ctid log WARNING main AMI CLOSING Then you might be in the case where asterisk generates lots of data in a short period of time on the AMI while the CTI server is busy processing other thing and is not actively reading from its AMI connection If the CTI server takes too much time before consuming some data from the AMI connection asterisk will close the AMI connection The CTI server will terminate itself once it detects the connection to the AMI has been lost There s a workaround to this problem called the ami proxy which is a process which buffers the AMI connection between the CTI server and asterisk This should only be used as a last resort solution since this increases the latency between the processes and does not fix the root issue Note New in version 14 21 To enable the ami proxy you must 1
189. Number of waiting calls per logged in agent when a new call arrives 6 12 0 5 Call will not be redirected If a new call arrives when there s no waiting calls the call will always be allowed to enter the queue For example in the following scenario Maximum number of waiting calls per logged in agent 0 5 Current number of waiting calls 0 Current number of logged in agents 1 Number of waiting calls per logged in agent when a new call arrives 1 1 1 Even if the number of waiting calls per logged in agent 1 is greater than the maximum 0 5 the call will still be accepted since there are currently no waiting calls 1 9 3 Supervision Introduction Allows a contact center supervisor to monitor contact center activities such as Monitoring real time information from call queues Agent activities per call queues Agent detailed activities XiVO client as a Supervision Platform Configuration A supervisor profile defined in Service CTI Server Profiles menu usually contains the following Xlets Identity Queues Queue members Queues entries detail Agents list Agents detail Note You may also see the Agent Status Dashboard Supervision Panel Clicking on a queue s name in the queue list will display the agent list in the xlet Queue Members and show waiting calls in the Calls of a Queue xlet Clicking on an agent s name in the agent list will display information on
190. O HA C62P Yes 5 Yes Gigaset Also known as Siemens Model Tested Fkeys XiVO HA C470 IP No 0 No C475 IP No 0 No C590 IP No 0 No C595 IP No 0 No C610 IP No 0 No C610A IP No 0 No S675 IP No 0 No S685 IP No 0 No N300 IP No 0 No N300A IP No 0 No N510 IP PRO No 0 No Jitsi Model Tested Fkeys XiVO HA Jitsi Yes No Panasonic Panasonic KX HTXXX series Model Tested Fkeys XiVO HA KX HT113 No No KX HT123 No No KX HT133 No No KX HT136 No No Note This phone is for testing for the moment Polycom Model Tested Fkeys XiVO HA SPIP320 No 0 No SPIP321 No 0 No SPIP330 No 0 No SPIP430 No 0 No SPIP501 Yes 0 No SPIP600 No 0 No SPIP601 No 0 No SPIP670 No 47 No 1 7 Ecosystem 109 XiVO doc Documentation Release 15 13 SoundStation IP Model Tested Fkeys XiVO HA SPIP4000 No 0 No Others Model Tested Fkeys XiVO HA VVX1500 No 0 No Snom Model Tested Fkeys XiVO HA 300 No 6 Yes 320 Yes 12 Yes 360 No Yes 820 Yes 4 Yes MP No Yes PAI No 0 Yes There s a known issue with the provisioning of Snom phones in XiVO After a factory reset of a phone if no language and timezone are set for the default config device in XiVO Configuration Provisioning
191. P address or hostname Context Incalls Register tab Register checked Transport udp Username xivo trunk Password pass Remote server XiVO B IP address or hostname On both XiVO activate some codecs Services IPBX General Settings SIP protocol tab Signaling Enabled codecs at least GSM audio At that point the Asterisk command sip show registry on XiVO B should print a line showing that XiVO A is registered meaning your trunk is established Set the outgoing calls The outgoing calls configuration will allow XiVO to know which extensions will be called through the trunk On the call emitting server s go on the page Services IPBX Call management Outgoing calls and add an outgoing call Tab General Trunks xivo trunk Tab Exten Exten 99 note the period at the end Stripnum 4 This will tell XiVO if any extension begins with 99 then try to dial it on the trunk xivo trunk after removing the 4 first characters the 99 prefix The most useful special characters to match extensions are period will match one or more characters X will match only one character You can find more details about pattern matching in Asterisk hence in XiVO on the Asterisk wiki 164 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Set the incoming calls Now that we have calls going ou
192. Rooms Incoming calls Call filters Call pickups Schedules Agents Queues For the devices The filtering only applies to the devices associated with a line The devices in autoprov mode or not configured mode are visible by every administrator REST API The REST API does not have the notion of entity When creating a resource without context via REST API the resource will be associated to an arbitrary entity Affected resources are Contexts Call filters Group pickups Schedules Users 142 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 8 14 Fax Fax transmission It s possible to send faxes from XiVO using the fax Xlet in the XiVO client XiVO Client 15 10 2 12 6 Client profile XiVO Client Help Alice Wonderland Send fax Choose file to send file BROWSE Choose destination number fax number SEND FAX Connected Fig 1 48 The fax Xlet in the XiVO Client The file to send must be in PDF format Warning Sending faxes is currently not supported if there is a network equipment that changes TCP port numbers or IP addresses like a router doing NAT or NAPT between the CTI client and the CTI server Fax reception Adding a fax reception DID If you want to receive faxes from XiVO you need to add incoming calls definition with the Application destination and the FaxToMail application for every DID you want to receive faxes from
193. SIP phone that is not supported by the provisioning system of XiVO You would like to know if it s possible to add auto provisioning support for it That said you have never tested the phone before This guide will help you get through the different steps that are needed to add auto provisioning support for a phone to XiVO 1 12 Contributors 415 XiVO doc Documentation Release 15 13 Prerequisites Before continuing you ll need the following e a private LAN where only your phones and your test machines are connected to it i e a LAN that you fully control Configuring a test environment Although it s possible to do all the testing directly on a XiVO it s more comfortable and usually easier to do on a separate dedicated machine That said you ll still need a XiVO near since we ll be doing the call testing part on it and not on a separate asterisk So for the rest of this guide we ll suppose you are doing your tests on a Debian Wheezy with the following configuration Installed packages isc dhcp server tftpd hpa apache2 e Example content of the etc dhcp dhocpd conf file restart isc dhcp server after modifica tion ddns update style none default lease time 7200 max lease time 86400 log facility 10cal7 subnet 10 34 1 0 netmask 255 255 255 0 authoritative range 10 34 1 200 10 34 1 250 option subnet mask 255 255 255 0 option broadcast address 10 34
194. SPA3102 which modifies several parameters Note With SPA ATA plugins gt v0 8 you should not need to follow this section anymore since all of these parameters are now set in the base templates of all except for Echo Canc Adapt Enable Echo Supp Enable Echo Canc Enable Note Be aware that most of the parameters are or could be country specific i e Preferred Codec FAX Passthru Codec RTP Packet Size RTP Start Loopback Codec Ring Waveform Ring Frequency Ring Voltage FXS Port Impedance 146 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 Create a custom template for the SPA3102 base template cd var lib xivo provd plugins xivo cisco spa3102 5 1 10 var templates cp templates base tpl 2 Add the following content before the 1at profile tag lt CUSTOM TPL for faxes START gt for line no line in sip lines iteritems Dial Plan L line no gt Dial Plan line no _ ua na gt x lt Dial_Plan_ line no gt Call Waiting Serv line no ua na No Call Waiting Serv line no gt Three Way Call Serv 11 line no _ ua 2 na No Three Way Call Serv 11 line no _ gt Preferred Codec line no _ ua na G711a Preferred Codec 11 line no _ gt Silence Supp Enable 1 line no ua 2 na No Silence Supp Enable 11 line no _ gt Echo Canc Adapt Enabl
195. Settings Through this function you can access the lowest level of configuration storage QSettings It also contains the options stored in BaseConfig but is less easy to use This direct access is used for purely graphical settings only used to remember the appearance of the GUI until the next launch These settings don t have to be shared with other widgets and storing them directly in QSettings avoids writing code to import export to from BaseConfig getProfileSetting setProfileSetting This pair of methods allow you to read write settings directly in QSet tings but specifically for the current configuration profile Configuration profiles When starting XiVO Client with an argument this argument is interpreted as a profile name This profile name allows you to separate different profiles with different configuration options For example configuration profile profileA will auto connect with user and password B and profileB will not auto connect but is set to connect with user C no password remembered To invoke these profiles use xivoclient profileA xivoclient profileB The default configuration profile is default user 1 12 Contributors 449 XiVO doc Documentation Release 15 13 Recognizing extracting phone numbers Of course working on XiVO Client implies working with phone numbers But how to interpret them easily when we are not sure of the format they re in You
196. Synchronize a device Query GET 1 1 devices lt id gt associate_line lt lineid gt Parameters id Device s id line id Line id Example request GET 1 1 devices 412c212cff500cc158 373 00e078 7 associate line 2 Host xivoserver 1 11 and SDK 291 XiVO doc Documentation Release 15 13 Example response HTTP 1 1 204 No Content Remove a line from a device Warning This feature is not yet accessible nor functional After removing a line the device needs to be synchronized for the changes to take effect Please see Synchronize a device Query GET 1 1 devices lt id gt remove_line lt lineid gt Parameters id Device s id line_id Line id Example request GET 1 1 devices 412c212cff500cc158f 373 00e078f7 remove line 2 Host xivoserver Example response HTTP 1 1 204 No Content Extensions extension represents a number that can be dialed on a phone Once an extension is created it be associated with different kinds of resources These associations determine where a call will be routed when the extension is dialed An extension is composed of an exten the number to dial and a context from where are we allowed to dial The context restrains what source a call will come in from e g DID calls will come from the context from extern Extension Representation
197. Template device you will be forced to select a default language and timezone on the phone UI Technicolor Previously known as Thomson Model Tested Fkeys XiVO HA ST2022 No No ST2030 Yes 10 No Note Function keys are shared with line keys Yealink Model Tested Fkeys XiVO HA T20P No 2 No T26P No 13 No Note Some function keys are shared with line keys Zenitel Model Tested Fkeys XiVO HA IP station Yes 1 No The officially supported devices will be supported across upgrades and phone features are guaranteed to be sup ported on the latest version 110 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 The community supported devices are only supported by the community In other words maintenance bug corrections and features are developed by members of the XiVO community XiVO does not officially endorse support for these devices The next topics lists the officially and community supported devices For each vendor a table shows the various features supported by XiVO Here s an example Model X Model Y Model Z Provisioning Y Y Y H A Y Y Y Directory XIVO N Y Y Funckeys 0 2 8 Supported programmable keys User with supervision function Y Y Y The rows have the following meaning Provisioning Is the device supported by the auto p
198. This is done by defining a mapping between the field named reverse on the Mapped fields list and a database field Examples reverse gt phonebook society or reverse gt phonebook fullname The first example would show the contact s company name on the caller ID name the second would show his full name Include the directory To include a directory in reverse directory definition go to Services CTI Server Directories Reverse directories and add the directories to include to reverse lookups in the Related directories section Restart the CTI server and incoming caller IDs should be resolved using the specified directories 192 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 8 27 Provisioning XiVO supports the auto provisioning of a large number of telephony Devices including SIP phones SIP ATAs and even softphones Introduction The auto provisioning feature found in XiVO make it possible to provision i e configure a lots of telephony devices in an efficient and effortless way How it works Here s a simplified view of how auto provisioning is supported on a typical SIP hardphone 1 The phone is powered on 2 During its boot process the phone sends a DHCP request to obtain its network configuration 3 A DHCP server replies with the phone network configuration an HTTP URL 4 The phone use the provided URL to retrieve a common configuration file a MAC spec
199. To use this feature at least one boss and one secretary must be defined Voice pitch E n Enable supervision Enable call transfer Incoming call filtering Do not disturb Filter Boss Secretary Creating a Filter The filter is used to associate a boss to one or many secretaries and to set a ring strategy The call filter is added in the Services IPBX Call management Call filters page Different ringing strategies can be applied Boss rings first then all secretaries one by one Boss rings first then secretaries are all ringing simultaneously Secretaries ring one by one Secretaries are all ringing simultaneously 118 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Name Context Default default Cali from Mode Secretaries simultaneous Boss first then secretaries in serial Boss first then secretaries simultaneously Secretaries in serial Secretaries simultaneously Ringing time CallerID mode Identity tems selected Remove all Add au Jean Yves LEBLEU Boss and secretaries are ringing simultaneously Change the caller id if the secretary wants to know which boss was initialy called When one of serial strategies is used the first secretary called is the last in the list The
200. UE Agent or caller ends the call after 12 seconds time callid queuename agent event 2012 07 04 07 37 46 601754 1341401851 34 ai Agent 3001 COMPLETEAGEN 2 274 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Call on a full queue time callid queuename agent event 2012 07 04 07 40 17 339945 1341402016 44 ql NONE FULL Call on a closed queue time callid queuename agent event 2012 07 04 07 48 03 455999 1341402482 49 ql NONE CLOSED Caller abandon before an answer time callid queuename agent event 2012 07 04 07 49 52 939802 1341402586 51 NONE ABANDON 1 11 3 REST API The XiVO REST API is the privileged way to programmatically interact with XiVO Reference XiVO confd API Note REST API 1 1 for confd is currently evolving New features and small fixes are regularly being added over time We invite the reader to periodically check the changelog for an update on new features and changes xivo confd REST API changelog 14 16 Association user voicemail when associating a voicemail whose id does not exist before error 404 after error 400 14 14 e Association ine extension a same extension can not be associated to multiple lines 14 13 Resource ine field provisioning extension type chan
201. XiVO doc Documentation Release 15 13 Avencall July 27 2015 Contents 1 Table of Contents 14 Introduchon 24022454 022s Se ebak 3 1 2 Installation Bae eRe SOY RR RS ws 3 1 3 Getting Started 222 4 sah pe Brive SESE EOE S 14 Upgrading eA eh Eas SR Ges 15 4 299 mc Rm be ds lO Systemi pa zudem teed es 1 7 Ecosystem 552 eee x L8 Adpmunistralon 225 5255 19 Contact Center 2 52 se ados y Er UR RS 1 10 High Availability HA uk eR ERES LII APland SDK 2x9 RS o3 LAD 2 9 265 AAS ee E ER Sue x 1 13 Quality assurances gee 5254 PAS doe S 144 Troubleshooting 222222 4406 2805 254 5542 1 15 Community Documentation 1 16 Documentation changelog 2 Changelog 3 Indices and tables XiVO doc Documentation Release 15 13 XiVO is an application suite developed by Avencall Group based on several free existing components includ ing Asterisk and our own developments to provide communication services IPBX Unified Messaging to businesses XiVO is free software Most of its distinctive components and XiVO as a whole are distributed under the GPLv3 license You may also check the XiVO blog for more information XiVO documentation is also available as a downloadable HTML EPUB or PDF file See the downloads page for a list of available files or use the
202. XiVO sysconfd API This service provides a public API that can be used to change the configuration that are on a XiVO Warning The 0 1 API is currently in development Major changes could still happen and new resources will be added over time API reference Asterisk Voicemail Delete voicemail Query GET delete voicemail Parameters Mandatory name the voicemail name Optional context the voicemail context default is default Error code Error message Description 404 Not found The voicemail does not exist Errors 352 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example requests GET delete voicemail HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json nothing Common configuration Apply configuration Query GET commonconf apply Generate configuration Query POST commonconf generate Dhcpd configuration Update configuration Query GET dhcpd update Ethernet configuration Discover interfaces Query GET discover netifaces Example request GET discover netifaces HTTP 1 1 Host xivoserver Accept application json Example response 1 11 and SDK 353 XiVO doc Documentation Release 15 13 HTTP 1 1 200 OK C
203. Xlet library binary Create the translation files your XLet directory lupdate lt xletname gt pro This creates as much ts translation files as specified in the pro file You can now translate strings in these file The XLet will now be compiled and translated Add a new XLet For now it is not possible to add easily an XLet without changing the CTI server configuration files If you just want to test your new XLet you can add the following line in baseengine cpp m capaxlets push back QVariantList lt lt QVariant lt xletname gt lt lt QVariant tab right after the line m capaxlets datamap value capaxlets toList You can replace tab with grid or dock Add a translation This is definitely not something funny and not easy to automatize You have to add in every pro file of the project except xlets pro and all those that don t need translations a line TRANSLATIONS project lang ts Replace project with the project name xivoclient baselib xlet and lang by the identifier of your language en fr nl Then you have to add in every qrc file the qm files corresponding to the ones you added in the pro files such as lt file gt lt project gt _ lt lang gt qm lt file gt in the lt qresource gt section of these XML qrc files After that you have to run in the XiVO Client root directory something like find name pro exec lup
204. YT NYT NYT Incoming call filtering NYT N NYT Y NYT NYT NYT Do not disturb NYT SK NYT HK NYT NYT NYT Group interception NYT N NYT Y NYT NYT NYT Listen to online calls NYT N NYT Y NYT NYT NYT Directory access NYT N NYT Y NYT NYT NYT Filtering Boss Secretary NYT N NYT Y NYT NYT NYT Transfers Functions Blind transfer NYT SK NYT N NYT NYT NYT Indirect transfer NYT SK NYT HK NYT NYT NYT Forwards Functions Disable all forwarding NYT N NYT Y NYT NYT NYT Enable Disable forwarding on no answer NYT SK NYT Y NYT NYT NYT Enable Disable forwarding on busy NYT SK NYT Y NYT NYT NYT Enable Disable forwarding unconditional NYT SK NYT Y NYT NYT NYT Voicemail Functions 1 7 Ecosystem 103 XiVO doc Documentation Release 15 13 Table 1 4 continued from previous page SoundPoint SoundStation IP Enable voicemail with supervision function NYT N NYT Y NYT NYT NYT Reach the voicemail NYT SK NYT HK NYT NYT NYT Delete messages from voicemail NYT N NYT Y NYT NYT NYT Agent Functions Connect Disconnect a static agent NYT N NYT Y NYT NYT NYT Connect a static agent NYT N NYT Y NYT NYT NYT Disconnect a static agent NYT N NYT Y NYT NYT NYT Parking Functions Parking NYT N NYT N NYT NYT NYT Parking position NYT N NYT N NYT NYT NYT Paging Functions Paging NYT N NYT Y NYT NYT NYT Particularities For directed call pickup to work via the BLF fun
205. a 3 3 1 SP2 rel pg plugin Xivo cisco sccp 9 0 3 links href provd pg mgr plugins xivo cisco sccp 9 0 3 yet 5g plugin Geta Plugin The plugin links to the following resources The pg info relation links to the plugin information The srv install relation links to the plugin installation service Plugins usually provided this service to install uninstall firmware and language files Query GET provd pg mgr plugins plugin id Example request GET provd pg mgr plugins xivo aastra 3 3 1 SP2 HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json links href provd pg mgr plugins xivo aastra 3 3 1 SP2 info rel og info href provd pg mgr plugins xivo aastra 3 3 1 SP2 install 342 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 rel sry install Get Information of a Plugin Query GET provd pg mgr plugins plugin id info Example request Host xivoserver Accept application vnd proformatique provdtjson GET provd pg mgr plugins xivo aastra 3 3 1 SP2 info HTTP 1 1 Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json plugin info capabilities Aastra 67
206. able The Xlets are detailed in X ets The Position attribute determines how the Xlets will be laid out dock will display a Xlet in its own frame This frame can have some options Floating means that the frame can be detached from the main window of the CTI Client Closable means that the Xlet can be hidden Movable means that the Xlet can be moved either inside the main window or outside Scroll means that the Xlet will display a scroll bar if the Xlet is too large grid will display a Xlet inside the main window and it will not be movable Multiple grid Xlets will be laid out vertically the second below the first tab will display a Xlet inside a tab of the Xlet Tabber Thus the Xlet Tabber is required and can t be in a tab position The Number attribute gives the order of the Xlets beginning with 0 The order applies only to Xlets having the same Position attribute 1 8 9 Display customer informations Sheet Configuration Sheets can be defined under Services CTI Server Models in the web interface Once a sheet is defined it has to be assigned to an event in the Services CTI Server Events menu Model The model contains the content of the displayed sheet Event Events are actions that trigger the defined sheet A sheet can be assigned to many events In that case the sheet will be raised for each event Server s
207. advertisement 2 Local time zone as specified in 8 3 of IEEE Std 1003 1 2004 stdoffset dst offset start time end time time_zone EST5 IEEE 802 11u 2011 Enable Interworking service interworking 1 Access Network Type Private network Private network with guest access Chargeable public network Free public network Personal device network 5 Emergency services only network 14 Test or experimental 15 Wildcard access_network_type 0 EO ll Whether the network provides connectivity to the Internet 1 12 Contributors 439 XiVO doc Documentation Release 15 13 0 Unspecified 1 Network provides connectivity to the Internet internet 1 Additional Step Required for Access Note This is only used with open network i e ASRA shall ne set to 0 if RSN is used asra 0 Emergency services reachabl esr 0 Unauthenticated emergency service accessibl uesa 0 Venue Info optional The available values are defined in IEEE Std 802 11u 2011 7 3 1 34 Example values group type 0 0 Unspecified 1 7 Convention Center 1 13 Coffee Shop 2 0 Unspecified Business 7 1 Private Residence venue_group 7 venue type 1 Homogeneous ESS identifier option
208. ahdi system conf and etc asterisk dahdi channels conf files Configure DAHDI system conf configuration First step is to check etc dahdi system conf file check the span numbering if needed change the clock source usually at least in France you should remove the crc4 See detailed explanations of this file in the etc dahdi system conf section Below is an example for a typical french PRI line span Span 1 TE2 0 1 T2XXP PCI Card 0 Span 1 CCS HDB3 CRC4 RED span 1 1 0 ccs hdb3 termtype te bchan 1 15 17 31 1 8 Administration 157 XiVO doc Documentation Release 15 13 dchan 16 echocanceller mg2 1 15 17 31 Asterisk dahdi channels conf configuration Then you have to modify the etc asterisk dahdi channels conf file remove the unused lines like context default group 63 change the context lines if needed the signalling should be one of pri net pri cpe Below is an example for a typical french PRI line span Span 1 TE2 0 1 T2XXP PCI Card 0 Span 1 CCS HDB3 CRC4 RED group 0 11 belongs to group 0 and 11 context from extern incoming call to this span will be sent in from extern c ntext switchtype euroisdn signalling pri cpe use pri cpe signalling channel gt 1 15 17 31 the above configuration applies to channels 1 to 15 and 17 to 31 Next step Now that you have configured yo
209. al dotllHESSID If set this shall be identifical to one of the BSSIDs in the homogeneous ESS and this shall be set to the same value across all BSSs in homogeneous ESS hessid 02 03 04 05 06 07 Roaming Consortium List Arbitrary number of Roaming Consortium OIs can be configured with each line adding a new OI to the list The first thr ntries are available through Beacon and Probe Response frames Any additional entry will be available only through queries Each OI is between 3 and 15 octets and is configured a a hexstring roaming consortium 021122 roaming consortium 2233445566 Multiple BSSID support Above configuration is using the default interface wlan or multi SSID VLAN interfaces Other BSSIDs can be added by using separator bss with default interface name to be allocated for the data packets of the new BSS hostapd will generate BSSID mask based on the BSSIDs that are configured hostapd will verify that dev addr amp MASK dev addr If this is not the case the MAC address of the radio must be changed before starting hostapd ifconfig wlanO hw ether MAC addr gt If a BSSID is configured for every secondary BSS this limitation is not applied at hostapd and other masks may be used if the driver supports them e g swap the locally administered bit BSSIDs are assigned in order
210. allation you can continue by running the configuration wizard XiVO doc Documentation Release 15 13 Installing from a minimal Debian installation XiVO can be installed directly over a 32 bit or a 64 bit beta Debian Wheezy When doing so you are strongly advised to start with a clean and minimal installation of Debian Wheezy The latest installation image for Debian Wheezy can be found at https www debian org releases wheezy debian installer Requirements The installed Debian must use the architecure i386 or amd64 have a default locale with charset UTF 8 Note the use of amd64 debian image is experimental Installation Once you have your Debian Wheezy properly installed download the XiVO installation script wget http mirror xivo io fai xivo migration xivo install current sh And run it bash xivo install current sh Note For testing purposes you can alternatively install the release candidate or developement version of XiVO Beware that there is no guarantee that these versions will work nor upgrade correctly To install the release candidate version bash xivo install current sh r To install the developement version bash xivo install current sh d At the end of the installation you can continue by running the configuration wizard Unsupported installation methods Unofficial ways of installing By PXE More details available on our XiVO blog 1 2
211. aller ID is the following My Name lt 9999 gt If you don t set the number part of the caller ID the dialplan s number will be used instead This might not be a good option in most cases Outgoing call caller ID When you create an outgoing call it s possible to set the it to internal using the check box in the outgoing call configuration menu When this option is activated the caller s caller ID will be forwarded to the trunk This option is use full when the other side of the trunk can reach the user with it s caller ID number When the caller s caller ID is not usable to the called party the outgoing call s caller id can be fixed to a given value that is more use full to the outside world Giving the public number here might be a good idea 1 8 Administration 173 XiVO doc Documentation Release 15 13 permissions ules test_originate Context z Use ENUM Internal Preprocess subroutine Ringing time before hangup Unlimited v Trunks 2 test originate SIP trunki dahdi g1 trunk2 dahdi g2 174 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 A user can also have a forced caller ID for outgoing calls This can be use full for someone who has his own public number This option can be set in the user s configuration page The Outgoing Caller ID id option must be set to Custom
212. ame Numbers interval start Numbers interval end 0000000000005 rir EE Printed name Numbers interval start 3 Numbers interval DID length gece ees cee ces RECORDER DUNT able DUREE aso se eo nn ER RURE ee ape cop See nena apne asec Ramee eee Rc MA eed eO TT Fig 1 4 Entities and Contexts 6 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 2 Enter the number interval for you internal context The interval will define the users s phone numbers for your system you can change it afterwards 3 Enter the DID range and DID length for your system 4 You may change the name of your outgoing calls context Validation Finally you can validate your configuration by clicking on the Validate button Note that if you want to change one of the settings you can go backwards in the wizard by clicking on the Previous button Congratulations you now have a fully functional XiVO server You can subscribe to the xivo announce list to always stay informed on the latest upgrades for XiVO To start configuring XiVO see Getting Started 1 2 3 Post Installation Here are a few configuration options that are commonly changed once the installation is completed Please note that these changes are optional Display called name on internal calls When you call internally another phone of the system you wou
213. ame cd Snewname rm f o Makefile for f type f print do mv f echo f sed s xletnull S newname done find type f sed i s xletnull newname g s X Ll etNull NewName g s XLETNULL SNEWNAME g Before executing the script just replace the first three variables with the name of the new XLet Then you must add a line in xivoclient xlets pro to add your new directory to the SUBDIRS variable Then you can start implementing your new class The lt xletname gt Plugin class is only an interface between the main app and your XLet Translations If you want to localize your XLet there are four steps Modify the sources In the lt xletname gt Plugin constructor add the line b engine registerTranslation xletname 9261 before the return instruction Modify the project file Add these lines in the pro file in your directory TRANSLATIONS xletname fr TRANSLATIONS xletname nl ts RESOURCES res qrc Replace fr and nl with the languages you want 1 12 Contributors 451 XiVO doc Documentation Release 15 13 Create the resource file In a file res qrc in your XLet directory put these lines lt DOCTYPE RCC gt lt RCC version 1 0 gt lt qresource gt lt file gt lt xletname gt _fr qm lt file gt lt file gt lt xletname gt _nl qm lt file gt lt qresource gt lt RCC gt These files will be embedded in the
214. ami termtype te bchan 1 2 hardhdlc 3 echocanceller mg2 1 2 Asterisk dahdi channels conf configuration Then you have to modify the etc asterisk dahdi channels conf fie remove the unused lines like 154 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 context default group 63 change the context lines if needed the signalling should be one of bri net bri cpe bri net ptmp bri cpe ptmp See some explanations of this file in the etc asterisk dahdi channels conf section Below is an example for a typical french BRI line span Span 1 4 0 1 BAXXP PCI Card 0 Span 1 MASTER RED group 0 11 belongs to group 0 and 11 context from extern incoming call to this span will be sent in from extern context switchtype euroisdn signalling bri cpe use bri cpe signalling channel 1 2 the above configuration applies to channels 1 and 2 Next step Now that you have configured your BRI card 1 you must check if you need to follow one of the Specific configuration sections below 2 then if you have another type of card to configure you can go back to the configure your card section 3 if you have configured all your card you have to configure the DAHDI interconnections in the web interface Specific configuration You will find below 3 configurations that we recommend for BRI lines These configu ratio
215. an be supplied to other extensions The following setup py shows an example of a python library that add a plugin of each kind to xivo dird usr bin env python coding utf 8 from setuptools import setup from setuptools import find packages setup name XiVO dird plugin sample version 0 0 1 description An example program 86 Chapter 1 Table of Contents 20 21 22 23 24 26 27 XiVO doc Documentation Release 15 13 packages find packages entry points xivo dird services my service dummy DummyServicePlugin xivo dird backends my backend dummy DummyBackend xivo dird views my view dummy DummyView Back End Back ends are used to query directories Each back end implements a way to query a given directory Each instance of a given back end is called a source Sources are used by the services to get results from each configured directory Given one LDAP back end I can configure a source from the LDAP at alpha example com and another source from the other LDAP at beta example com Both of these sources use the LDAP back end Implementation details Namespace xivo dird backends Abstract source plugin BaseSourcePlugin Methods name the name of the source typically retrieved from the configuration injected to load load args set up resources used by the plugin depending on the config args is
216. andom string self return join random choice string lowercase for _ in xrange 5 88 Chapter 1 Table of Contents 23 24 25 26 27 28 XiVO doc Documentation Release 15 13 Service Service plugins add new functionality to the dird server These functionalities are available to views When loaded a service plugin receives its configuration and a dictionary of available sources Some service examples that come to mind include A lookup service to search through all configured sources A reverse lookup service to search through all configured sources and return a specific field of the first matching result Implementation details Namespace xivo dird services Abstract service plugin BaseServicePlugin Abstract service BaseService Methods load args set up resources used by the plugin depending on the config args is a dictionary containing key config the whole configuration file in dict form key sources a dictionary of source names to sources load must return a callable which will be made available in the view plugins unload free resources used by the plugin Example The following example adds a service that will return an empty list when used dummy py coding utf 8 x import logging from xivo dird import BaseService from xivo dird import BaseServicePlugin logger logging getLogger name class DummyServicePlugin BaseServicePlu
217. apter 1 Table of Contents XiVO doc Documentation Release 15 13 Qt SDK You need the development files of the Qt 5 library available on the Qt website The currently supported Qt version is 5 4 1 Get sources a bash shell enter git clone git github com xivo pbx xivo client qt git Building Launch qmake to generate the Makefile cd xivo client qt path to qt5 bin qmak spec 9 This will also generate a file versions mak that contains version informations about the code being compiled It is necessary for compilation and packaging You can then launch make make Binaries are available in the bin directory The version of the executable is taken from the git describe command Debug build Add DEBUG yes on the command line make DEBUG yes Cleaning make distclean Launch You can launch the built executable with DYLD LIBRARY PATH bin bin xivoclient app Contents MacOS xivoclient Package You need to have the bin directory of Qt in your PATH To create the app bundle make pack This will result in a dmg file in the current directory The version of the package is taken from the git describe command Building old versions Building old versions 1 1 23 Gallifrey 1 12 Contributors 447 XiVO doc Documentation Release 15 13 Build Download this
218. ard 4 X XiVO Client 36 444 446 Xlets 36 467
219. as been moved into a new python package xivo provd client If you have custom scripts using this client you ll need to update them See http projects xivo io issues 5469 for more information The provd_pycli command name has been deprecated in favor of xivo provd cli These 2 commands do the same thing the only difference being the name of the command The provd pycli command name will be removed in 15 10 so if you have custom scripts referencing provd pycli you ll need to update them The xivo agentctl command name has been deprecated in favor of xivo agentd cli These 2 commands do the same thing the only difference being the name of the command The xivo agentctl command name will be removed in 15 10 so if you have custom scripts referencing xivo agentctl you ll need to update them 15 05 Consult the 15 05 Roadmap The Xlet identity has been modified to follow the new XiVO Client design which implies the removal of some details 20 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 15 04 Consult the 15 04 Roadmap 15 03 Consult the 15 03 Roadmap 15 02 Consult the 15 02 Roadmap 15 01 Consult the 15 01 Roadmap The confd REST API is now more restrictive on HTTP headers Content Type must be set to typically application json The following configuration files have been created etc xivo agid config yml etc xivo call logd config yml etc xivo amid config
220. aset C470 Greffon pour Gigaset aussi connu comme Siemens C470 IP C475 IP 0 10 4 79 kb 7 xivo gigaset C590 Greffon pour Gigaset aussi connu comme Siemens C590 IP C595 IP 0 1 0 5 2 kb 7 xivo jitsi 1 Greffon pour Jitsi en version 1 0 0 11 3 04 kb 7 Fig 1 58 Configuration Provisioning Plugin Warning If you uninstall a plugin that is used by some of your devices they will be left in an unconfigured state and won t be associated to another plugin automatically The search box at the top comes in handy when you want to find which plugin to install for your device For exam ple if you have a Cisco SPA508G enter 508 in the search box and you should see there s 1 plugin compatible with it Note If your device has a number in its model name you should use only the number as the search keyword since this is what usually gives the best results It s possible there will be more than 1 plugin compatible with a given device In these cases the difference between the two plugins is usually just the firmware version the plugins target If you are unsure about which version you should install you should look for more information on the vendor website It s good practice to only install the plugins you need and no more Alternative plugins repository By default the list of plugins available for installation are the stable plugins for the officially supported devices This can be changed in the Configuration
221. asterisk 11 package Name Description Loaded in Asterisk Replaced By AST1 8 Status app_dahdibarge Barge in on DAHDI channel Yes Deprecated app_chanspy application app_readfile Stores output of file into a variable Yes Deprecated func_env FILEO app_saycountpl Say polish counting words Yes Deprecated say conf app setcallerid Set CallerID Presentation Yes Deprecated func callerid Application cdr sglite SQLite CDR Backend No Removed cdr_sqlite3_custom chan_gtalk Gtalk Channel Driver No Deprecated chan_motif chan_jingle Jingle Channel Driver No Deprecated chan_motif chan_vpb Voicetronix API driver No Supported format sIn16 Raw Signed Linear 16KHz Audio Yes Removed format sin support res ais SAForum AIS No Removed res corosync res jabber AJI Asterisk Jabber Interface No Deprecated res xmpp List of modules that were loaded in asterisk 1 8 but that are not loaded anymore in asterisk 11 see modules conf res calendar so res calendar caldav so res calendar ews so res calendar exchange so res calendar icalendar so res config sglite so res stun monitor so List of debian packages that are not available anymore for asterisk 11 asterisk config asterisk mysql asterisk web vmail Note These packages were not installed by default for asterisk 1 8 If you are using some custom dialplan or AGIs it is your responsibility to make sure it still w
222. at the second context field contains the context of the voicemail Voicemails of other contexts will not be accessible through this incoming call 1 9 Contact Center In XiVO the contact center is implemented to fulfill the following objectives Call routing Includes basic call distribution using call queues and skills based routing Agent and Supervisor workstation Provides the ability to execute contact center actions such as agent login agent logout and to receive real time statistics regarding contact center status e Statistics reporting Provides contact center management reporting on contact center activities Advanced functionalities Call recording Screen Pop up 1 9 Contact Center 227 XiVO doc Documentation Release 15 13 1 9 1 Agents Introduction A call center agent is the person who handles incoming or outgoing customer calls for a business A call center agent might handle account inquiries customer complaints or support issues Other names for a call center agent include customer service representative CSR telephone sales or service representative TSR attendant associate operator account executive or team member SearchCRM In this respect agents in XiVO have no fixed line and can login from any registered device Geiting Started Create a user with a SIP line and a provisioned device Create agents Create a queue adding created agent as member of queue Creating agen
223. ate keys Function No A collection of function keys under the form position Key funckey See the example for more details Example name Example template keys iE destination type user user id 34 f plf true label Call mom destination teustom exten 5551234567 296 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Function Key Field Type Required Description Description blf boolean No Turn on BLF when there is activity on the destination label string No Label to display next to the function key destination Destination Yes Destination to call Example plf True label Call john destination type user user_id 34 Destination destination determines the number to dial when using a function key Destinations are composed of a parameter named t ype and any additional parameters required by its type Available destination types agent An agent bsfilter Boss Secretary filter conference Conference room custom A custom number to dial forward Forward a call towards another number group A group onlinerec Record a conversation during a call paging A paging park Park a call park_position Pick up a parked call queue Call queue service A call service transfer Transfer a call user A User Here are the parameters
224. ate DND Client gt Server class featuresput commandid 1088978942 function enablednd value true Server Client Mgetlist config enablednd true function updateconfig listname users Masquer T2 Limenow 1361456614 55 tipbxid xivo Recording function enablerecording value true false Activate deactivate recording for a user extension call recording has to be activated Services gt IPBX gt IPBX services Extension Client gt Server class featuresput commandid 1088978942 function enablerecording val ue Server Client class goetlrst config enablerecording true function updateconfig listname users Mere timenow 1361456614 55 tipbxid xivo Unconditional Forward Forward the call at any time call does not reach the user function fwd Client gt Server class featuresput commandid 2082138822 function fwd value destunc 1002 enableunc true Server Client 400 Chapter 1 Table of Contents true XiVO doc Documentation Release 15 13 config destunc 1002 enableunc true function updateconfig listname users Mq WW timenow 1361456777 98 tipbxid xivo Forward O
225. atistics Configuration Configuration options Field Values Description name string Configuration name useful for remembering what the configuration is used for interval enum 0 999 Default time interval used when displaying statistics Examples 1 day day week show statistics for yesterday 3 weeks show statistics for the last 3 month weeks show on Display this configuration on the summary page summary page timezone Amer Your time zone ica Montreal Period Maximum and minimum dates that can be used for displaying statistics cache start YYYY MM Start date end YY Y Y MM End date If left to 0 use the servers current date Working Work hours for agents Hours start hh mm Beginning of working hours end hh mm End of working hours Periods Number of calls answered for a time period Period 1 number of Show number of calls answered within 20 seconds in column P1 seconds Example 20 Period n number of Show number of calls answered within 20 seconds in column Pn seconds Example 20 Note Calls outside of working hours will not be in the cache e g if working hours are from 8 00 AM to 16 00 PM a call at 7 55 AM will not show up in the reports Note Statistics are computed on the hour e g If work hours are from 8 30 to 16 15 working hours should be set from 8 00 to 17 00 Note Period includes both bound
226. ault gateway Note The network configuration will be applied at the end of the wizard 5 Finally modify the DNS server information if needed Entities and Contexts Contexts are used for managing various phone numbers that are used by your system The Internal calls context manages extension numbers that can be reached internally The Incalls context manages calls coming from outside of your system The Outcalls context manages calls going from your system to the outside 1 Enter the entity name e g your organization name Allowed characters are A Z a z 0 9 1 2 Installation 5 XiVO doc Documentation Release 15 13 ox lt Previous Next gt Licence EL Components check H Configuration i Hostname 777 1 amd contexig lt lt 22 lt 2 2 25 222 525522225222 22 4 lt 500 lt lt 62 22222022 2222 5 Validation Domain name Domain mame 1 2 Webinterface root password EN 5 Re enter password 7 Fig 1 3 Basic configuration Welcome Licence Components check Configuration Entities and contexts Validation Printed n
227. available in the XiVO client The goal of this page is to explain how to configure your switchboard and how to use it The switchboard xlet and profile allow an operator to view incoming calls answer them put calls on hold view the calls on hold and pick up the calls on hold Limitations Note The shortcut keys of the switchboard do not work on the Mac version of the XiVO client Note The enter shortcut to answer a call will not work if the focus is currently on a widget that will consume the key press ie a text field a drop down Note The call center statistics are not applicable to the switchboard queues The only valid counter is the received calls counter 210 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Configuration Quick Summary In order to configure a switchboard on your XiVO you need to Create a queue for your switchboard Create a queue for your switchboard s calls on hold Create the users that will be operators Activate the switchboard option for your phone Create an agent for your user Assign the incoming calls to the switchboard queue For each operator add a function key for logging in or logging out from the switchboard queue Set no answer destinations on the switchboard queue Supported Devices The supported phones for the switchboard are Brand Model XiVO version Plugin version
228. aved and restored every time you reconnect 1 5 XiVO Client 49 XiVO doc Documentation Release 15 13 Contacts Sheets Fax History Remote Directory Services Personal Directory Conference Num ro Entreprise E mail Source 1 B laine Alog 988 Inconnue 2 Bruce Willis 4182552510 Inconnue 3 Etienne Lagouste 12345 Inconnue 4 Hakuna Matata 6666426 Inconnue 5 Linus Torvalds 4183333333 Inconnue Fig 1 18 Example of contacts sorted by name Service Xlet Overview The service xlet allows the user to enable and disable telephony services such as call forwarding call filter and do not disturb Forward services changes are also reflected in the web interface in the services ipbx tab under IPBX settings users In the user configuration service tab Configuration The available service list is configured from the web interface in the services cti server tab under general settings profiles The right side of the service section contains services that are available to a given profile 1 5 4 Configuration The XiVO Client configuration options can be accessed under XiVO Client Configure Connection Configuration This page allows the user to set his network information to connect to the xivo ctid server Server is the IP address of the server Backup server is the IP address of the backup server Port is the port on which xivo ctid is listening for connections default 5003 If an encrypted c
229. b Fail No agent was available to answer the call when the call entered the queue Join an empty queue condition on the advanced tab or the call was queued and no agents were available to answer Remove callers if there are no agents on the advanced tab 230 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Diversions Diversions can be used to redirect calls to another destination when a queue is very busy Calls are redirected using one of the two following scenarios General Announces Members Application No answer Advanced Schedules Diversions On estimated wait time overrun Maximum estimated wait time 5 minutes zj Destination Endcal sf Choice Busy z Delay before hangup z On number of waiting calls per logged in agent overrun lt Maximum number of waiting calls per logged in agent 1 Destination Endcal Busy z Delay before hangup The diversion check is done only once per call before the preprocess subroutine is executed and before the call enters the queue In the following sections a waiting call is a call that has entered the queue but has not yet been answered by a queue member Estimated Wait Time Overrun When this scenario is used the administrator can set a d
230. be called through the trunk Go on the page Services IPBX Call management Outgoing calls and add an outgoing call Tab General Trunks provider_username Tab Exten Exten 418 note the period at the end This will tell XiVO if an internal user dials a number beginning with 418 then try to dial it on the trunk provider_username The most useful special characters to match extensions are period will match one or more characters X will match only one character You can find more details about pattern matching in Asterisk hence in XiVO on the Asterisk wiki Set the incoming calls Now that we have calls going out we need to route incoming calls To route an incoming call to the right destination in the right context we will create an incoming call in Services IPBX Call management Incoming calls Tab General DID your public phone number Context Incalls the same than configured in the trunk Destination User Redirect to the front desk guy This will tell XiVO if you receive an incoming call to the public phone number in the context Incalls then route it to the user the front desk guy The destination context will be found automatically depending on the context of the line of the given user 166 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Interconnect a XiVO to a PBX via an ISDN link The goal o
231. both 13 18 and 13 19 therefore please consult both Roadmaps Consult the 13 19 Roadmap Consult the 13 18 Roadmap Call logs are now generated automatically incrementally and regularly Call logs generated before 13 19 will be erased one last time The database was highly modified for everything related to devices table devicefeatures does not exist anymore and now relies on information from xivo provd Consult the 13 17 Roadmap There is a major change to call logs They are no longer available as a web report but only as a csv export See the call logs documentation Furthermore call logs are now fetched with the new REST API See Call Logs Paging group numbers are now exclusively numeric All non numeric paging group numbers are converted to their numeric only equivalent while upgrading to XiVO 13 17 58 becomes 58 for example Consult the 13 16 Roadmap A migration script modifies the user and line related tables and the way users lines and extensions are associated As a consequence of this script it is not possible any more to associate a user and a line without extensions Existing associations between users and one or more lines having no extensions will be removed Users and lines will still exist unassociated The call logs page is able to display partial results of big queries instead of displaying a blank page Two new CEL messages are now enabled LINKEDID END and BRIDGE UPDATE Those events will only exist in C
232. bsccp The modifications mostly affect administrators users are not affected Major changes are Improved support for live modifications no more manual intervention in the asterisk CLI is needed Improved handling of concurrency crash and deadlock due to concurrency problems should not occur anymore The following commands have been removed because they were not needed sccp resync sccp set directmedia sccp show lines sccp update config The behavior of the following commands have been changed module reload chan_sccp reloads the module configuration without interrupting the telephony ser vice A device will only be resetted restarted if needed and only once the device is idle Some changes don t even require the device to be resetted sccp show config output format has been changed a little sccp show devices only show the connected devices instead of all the devices This might change in the future To get a list of all the devices use sccp show config Configuration File format of the sccp conf configuration file has been changed This will only impact you if you are using xivo libsccp without using XiVO The format has been changed because the module is now using the ACO module from asterisk which expect configuration file to have a specific format See sccp conf sample for a configuration file example 28 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Other
233. bx vj Use ENUM Internal C Preprocess subroutine Ringing time before hangup Unlimited Trunks 1 items selected Remove all Add all 12 pabx dahdilg2 idefisk maq2 SIP jocelyn SIP loadtester SIP redirection local t2colt dahdi g0 test audiocodes SIP toulouse SIP Fig 1 55 Outgoing call Schedules General Call permissions mum Stripnum Callerid 21 0 Exten Fig 1 56 Outgoing exten X Create an interconnection There are three types of interconnections Customized SIP AX Customized interconnections Customized interconnections are mainly used for interconnections using DAHDI or Local channels Name itis the name which will appear in the outcall interconnections list Interface this is the channel name for DAHDI see DAHDI interconnections Interface suffix optional a suffix added after the dialed number in fact the Dial command will dial lt Interface gt lt EXTEN gt lt Interface suffix Context currently not relevant DAHDI interconnections use your DAHDI links you must create a customized interconnection Name the name of the interconnection like e1_span1 or bri port1 Interface must be of the form dahdi group order group number where e group ord
234. by selecting this presence o 0000 Presence name donotdisturb Display name pas d ranger The human readable name to be displayed Color status Color of icon status 32 22 22 amp Search D connect Disponible 3 SOT M PNE I eene Bient t de retour H r u O Action Params Activate DND mode z Activate pause to queue zj Actions action param Enable DND true false Pause agent in all queues Unpause agent in all queues Agent logoff 1 8 Administration 127 XiVO doc Documentation Release 15 13 Enable encryption To enable encryption of CTI communications between server and clients you have to create a certificate in Con figuration Certificates Then go in the menu CTI Server General settings General and in the section Listening ports check the line CTIS and select both the certificate and the private key you created earlier By default the CTIS port is 5013 In your XiVO Client in the menu XiVO Client Configure Connection click on the lock icon and adjust the port value if necessary Warning For now there is no mechanism for stron
235. cWmin 7 cWmax 15 burst 3 3 802 1D Tag UP to AC mappings WMM specifies following mapping of data frames to different ACs This mapping can be configured using Linux QoS tc and sch pktpri o module 802 1D Tag 802 1D Designation Access Category WMM Designation 1 BK AC_BK Background Background 0 BE AC_BE Best Effort 3 EF AC BE Best Effort 4 CL AC VI Video 5 VI AC VI Video 6 VO AC VO Voice NC AC VO Voice Data frames with no priority information AC BE Management frames AC VO PS Poll frames AC BE I Default WMM parameters IEE 802 11 draft 11 03 0504 03 000e for 802 11a or 802 11g networks These parameters are sent to WMM clients when they associate The parameters will be used by WMM clients for frames transmitted to the access point note txop limit is in units of 32microseconds note acm is admission control mandatory flag 0 admission control not required 1 mandatory note here cwMin and cmMax are in exponent form the actual cw value used will b 2 n 1 where n is the value given her wmm enabled 1 WMM PS Unscheduled Automatic Power Save Delivery U APSD Enable this flag if U APSD supported outside hostapd eg Firmware driver uapsd advertisement enabled 1 Low priority AC BK background wmm ac bk cwmin 4 wmm ac bk cwmax 10 wmm bk aifs 7 wmm bk txop limit 0 wmm ac bk acm 0
236. call None gt MOH class to play to parked calls default Use ADSI announces EN 188 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 You can add entries one by one or you can mass import from a CSV file Note This page describes how to use the Phonebook feature of XiVO which is one specific source of contacts For other sources of contacts see Directories and LDAP Mass import contacts Go in the PBX Services gt Phonebook section and move your mouse cursor on the button in the upper right corner Select Import a file The file to be imported must be a CSV file with a pipe character as field delimiter The file must be encoded in UTF 8 without an initial Mandatory headers are e title possible values mr mrs ms displayname Optional headers are firstname lastname society mobilenumber email url description officenumber faxnumber officeaddress1 officeaddress2 officecity officestate officezipcode officecountry homenumber e homeaddress1 homeaddress2 homecity homestate homezipcode homecountry othernumber otheraddress1 5 These fields must contain only numeric characters no space point etc 6 These fields must contain ISO country codes The complete list is described here 1 8 Administration 189 XiVO doc Documentation Release 15 13 otheraddre
237. call form result 13 17 e for messages of class 1ogin capas from server to client the key presence has been removed 13 14 e for messages of class get list list agents and function updatestatus the key availability in the status object dictionary has changed values deleted values call non acd incoming and call non acd outgoing added values on_call_non_acd_incoming_internal on_call_non_acd_incoming_external on_call_non_acd_outgoing_internal on_call_non_acd_outgoing_external 13 12 e for messages of class get list list agents and function updatestatus the key availability in the status object dictionary has changed values deleted value on call non acd added values on call non acd incoming andon call non acd outgoing 13 10 e for messages of class get list and function updateconfig config object dictionary does not have rules order key anymore Commands Objects have the format lt type gt lt xivoid gt lt typeid gt type can take any of the following values user agent queue phone group meetme xivoid indicates on which server the object is defined lt typeid gt is the object id type dependant e g user xivo test 5 I m looking for the user that has the ID 5 on the xivo test server Here is a non exaustive list of types exten user 386 Chapter 1 Table of Contents XiVO doc Documentation Release 15
238. called him but when he came back he did not received nor placed any call then Alice will not be called back In fact in all scenarios after call completion has been requested by the caller the called phone needs to transition from busy to no longer busy for the caller to be called back This means that in the following scenario 1 Alice attempts to call Bob 120 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 2 Bob is currently on a phone call so he doesn t answer the call from Alice 3 Bob finish his call a few seconds later 4 Alice then dials 40 to request call completion Bob is not busy anymore Then for Alice to be called back Bob needs to become busy and then not busy If Alice is busy when Bob becomes not busy then the call completion callback will only happen after both Alice and Bob are not busy When call completion is active it can be cancelled by dialing the 40 extension Some timers governs the use of call completion These are offer timer the time the caller has to request call completion Defaults to 30 seconds busy available timer when call completion on busy subscriber is requested if this timer expires before the called party becomes available then the call completion attempt will be cancelled Defaults to 900 seconds no response available timer similar to the busy available timer but when call completion on no response is requested Defaults to 900 s
239. can dial 81001 from your phone and it will intercept i e pickup the call to this user 140 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 The extension prefix used to pickup calls be changed via the Services IPBX IPBX services Extensions page Custom Line Limitation There is a case where directed pickup does not work which is the following Given you have a user U with a line of type customized Given this custom line is using DAHDI technology Given this user is a member of group G When a call is made to group G Then you won t be able to intercept the call made to U by pressing 8 lt line number of U If you find yourself in this situation you ll need to write a bit of dialplan For example if you have the following a user with a custom line with number 1001 in context default e a custom line with interface DAHDI g1 5551234 Then add the following or similar custom lines exten 11 1001 1 same n Set __PICKUPMARK 1001 default same n Dial DAHDI g1 5551234 same n Hangup do a dialplan reload in the asterisk CLI Then edit the line of the user and change the interface value to Local 1inel001Gcustom lines Note that you ll need to update your dialplan if you update the number of the line or the context 1 8 13 Entities Purpose In some cases as the telephony provider you want different independent
240. ce room 1010 In this example we have filled the Name and Number fields the others have been left to their default value As you can see there s quite a few options when adding editing a conference room Here s a description of the most common one General PIN code Protects your conference room with a PIN number People trying to join the room will be asked for the PIN code General Don t play announce for first participant Don t play the you are currently the only person in this conference for the first participant General Max participants Limits the number of participants in the conference room A value of 0 means unlimited 1 8 8 CTI Server The CTI server configuration options can be found in the web interface under the services tab 1 8 Administration 125 XiVO doc Documentation Release 15 13 General Options The general options allow the administrator to manage network connections between the CTI server and other services and clients The section named AMI connection allows the administrator to configure the information required to connect to the Asterisk Manager Interface AMI These fields should match the entries in etc asterisk manager conf GINO gt 2 25212225 2 lt 22 2 2 1 555 2255425 5 62 6 Login xivo_cti_user Password phaickbebs9 IP Address
241. cement to caller Play simultaneous announcement to called users The announcement to playback in all devices Description Save _ 1 8 25 Parking With XiVO it is possible to park calls the same way you may park your car in a car parking If you define supervised keys on a phone set for all the users of a system when a call is parked all the users are able to see that some one is waiting for an answer push the phone key and get the call back to the phone There is a default parking number 700 which is already configured when you install XiVO but you may change the default configuration by editing the parking extension menu Service IPBX IPBX Services Exten sions Advanced Parking Using this extension you may define the parking number used to park call the parking lots wether the sytem is rotating over the parking lots to park the calls enable parking hint if you want to be able to supervise the parking using phone keys and other system default parameters You have two options in case of parking timeout Callback the peer that parked this call In this case the call is sent back to the user who parked the call Send park call to the dialplan In case you don t want to call back the user who parked the call you have the option to send the call to any other extension or application If the parking times out the call is sent back to the dialpla
242. ching pattern ignore case Client gt Server 1 12 Contributors 395 XiVO doc Documentation Release 15 13 Glass directory commandid 1079140548 pattern pau Server gt Client class directory headers Nom Num u00e9ro Mobile Autre numNu00e9ro E mail Fonct j replyid 1079140548 resultlist Claire Mapaurtal 33644558899 31256 cmapaurtal societe com Paul Salvadier 33445236988 33678521430 31406 psalvadier societe Status gk timenow 1378798928 26 parking keepalive availstate filetransfer getipbxlist class getipbxlist commandid lt commandid gt ipbxcommand class ipbxcommand command originate commandid lt commandid gt destination user special myvoicemail source user special me People People headers Client gt Server class people_headers commandid lt commandid gt Server Client class people headers result commandid lt commandid gt column_headers Status Name Number column_types null null number 396 Chapter 1 Table of Contents Kon Save com XiVO doc Documentation Release 15 13 People Search Client gt Server class people_search pattern lt pattern gt commandid lt commandid gt Server
243. clude sub contexts No context inclusion This context allows to route incoming calls from the XiVO to the PBX 1 8 Administration 169 XiVO doc Documentation Release 15 13 General Users Groups Queues Conference rooms Incoming calls 4 Name to pabx Displayed name Vers PABX Maquette Context gt Include sub contexts 0 items selected Remove all Add all Appels entrants from extern Appels internes default Appels sortants to extern Description Fig 1 51 to extern context Create incoming calls In our example incoming calls on spans 1 and 3 spans pluged to the provider are routed by from extern context We are going to create a default route to redirect incoming calls to the PBX Create an incoming call as below DID XXXX according to the number of digits sent by the provider Context Incoming calls Destination Customized Command Goto to pabx S XIVO DSTNUM 1 General Call permissions Schedules DID XXXX Context Appels entrants from extern gt Destination Customized Command Goto defaultS XIVO DSTI CalelD mode vj Preprocess subroutine Description Sae SS O SSS Fig 1 52 Incoming call XXXX Create the interconnections You have to create two interconnections provider side
244. codecs It obviously depends on the telco links the country the phones the usage etc Here is a typical example for Europe the main goal in this example is to select only G 711 A Law instead of both G 711 A Law and G 711 u Law by default e SIP Services IPBX General settings SIP Protocol Signaling Customize codec enabled Codec list G 711 A Law G 722 G 729A H 264 e AX2 Services IPBX General settings IAX Protocol Default Customize enabled Codec list G 711 A Law G 722 G 729A H 264 1 3 Getting Started This section will show you how to create a user with a SIP line This simple use case covers what a lot of people need to start using a phone You can use these steps for configuring a phone e g a softphone an Analog to Digital switch or a SIP phone This tutorial doesn t cover how to automatically provision a supported device For this consult the provisionning section We first need to log into the XiVO web interface The web interface is where you can administer the whole system When logged in you will see a page with all the status information about your system This page helps you monitor the health of your system and gives you information about your network Please note the IP address of your server you will need this information later on when you will configure your device e g phone To configure a device for a user start by navigatin
245. configure 156 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 In file etc asterisk chan_dahdi conf remove all occurrences of layerl_presence and layer2_persistence options 2 Inthe file etc asterisk dahdi channels conf use bri_cpe signalling signalling bri_cpe 3 If it exists delete the file etc modprobe d xivo wcb4xxp conf rm etc modprobe d xivo wcb4xxp conf 4 Then apply the configuration by restarting the services xivo service restart Note Expected behavior The dahdi show status command should show the BRI spans in OK status even if there is no call In asterisk CLI you should not see the spans going Up and Down if it happens it is a problem only if incoming or outgoing calls are rejected PRI card configuration Verifications Verify that the correct module is configured et c dahdi modules depending on the card you installed in your server If it wasn t do again the step Load the correct DAHDI modules Warning 13 TE23x TE43x cards e these cards need a specific dahdi module configuration See TE 3x TE23x 43 EI TI selection paragraph you MUST install the correct echo canceller firmware to be able to use these cards See Hardware Echo cancellation paragraph Generate DAHDI configuration Issue the command dahdi_genconf Warning it will erase all existing configuration in etc d
246. country state zipcode Each line is a field that will be displayed in the Remote Directory xlet Name Display Available display formats db phone db firstname db lastname db fullname db company db mail Field title Field type Default value Display format db firstname db l et Num ro phone db phone EJ Entreprise Inconnue db company E mail db mail Source xivo directory st Mobile phone db mobile Description Default display Save Adding the fax to the directory display 1 In the definition section add field name fax with the value phonebooknumber fax number 2 In the display filter section add a field with field title Fax and display format db fax 3 Restart the CTI Server Now the fax should be available displayed in the Remote Directory xlet Reverse lookup It s possible to do reverse lookups on incoming calls to show a better caller ID name when the caller is in one of our directories Reverse lookup will only be tried if at least one of the following conditions is true The caller ID name is the same as the caller ID number The caller ID name is unknown 1 8 Administration 191 XiVO doc Documentation Release 15 13 Also reverse lookup is performed after ca
247. cription ction General settings gt 1 sheet_action_custom1 oe General Profiles O gt dial sheet_action_dial oe Es O gt Demo Demo sheet eoe Presences Phone hints 1 O gt queue sheet_action_queue oe METEN gt xivo Mod le de fiche de base Reverse directories Direct directories Display filters Sheets Models Events Control Restart CTI server 1 8 Administration 129 XiVO doc Documentation Release 15 13 General settings General settings Sheet Systray Actions Focus Description Modele de fiche de base ED You must give a name to your sheet to be able to select it later The Focus checkbox makes the XiVO Client pop up when the sheet is displayed if the XiVO Client was hidden Sheets There are two different ways to configure the contents of the sheet creating a custom sheet from the Qt designer This gives you a total control on the layout of the information and allows you to save and process data entered during or after a call listing the different fields and their content The information will be automatically laid out in a linear fashion and will be read only Custom sheet General settings Sheet y Systray Actions Disabled Qt interface http l the url to mylfile ui Field ttle Field type Default value Display value qu Save
248. ction keys you need to make sure that the option Set caller id in dialog infot xml notify is enabled on your XiVO This option is located on the Services IPBX General settings SIP Protocol page in the Signaling tab Also directed call pickup via a BLF function key will not work if the extension number of the supervised user is different from its caller ID number Note XiVO HA cluster BLF function key saved on the master node are not available Supported expansion modules e Polycom Color Expansion for Polycom 300 310 400 410 500 600 e Polycom Paper Expansion for Polycom 300 310 400 410 500 600 e Polycom SoundPoint Backlit for Polycom SoundPoint 650 Warning Polycom VVX Camera are not supported Snom 370 710 715 720 D725 760 821 870 Provisioning Y Y Y Y Y Y Y Y H A Y Y Y Y Y Y Y Y Directory XIVO HK SK SK HK HK HK HK HK Funckeys 12 5 5 18 18 16 12 15 Supported programmable keys User with supervision function Y Y Y Y Y Y Y Y Group Y Y Y Y Y Y Queue Y Y Y Y Y Y Y Y Conference Room with supervision function Y Y Y Y Y Y Y Y General Functions Online call recording N N N N N N N N Phone status Y Y Y Y Y Y Y Y Sound recording Y Y Y Y Y Y Y Y Call recording Y Y Y Y Y Y Y Y Incoming call filtering Y Y Y Y Y Y Y Y Do not disturb HK SK SK HK HK HK HK HK Continued on ne
249. ctory 3 In the Window Preferences menu on the PHP Debug page Set the PHP Debugger to XDebug Add a new PHP server with the following information Name anything you want Base URL https xivo ip Path Mapping Path on Server usr share xivo web interfac Path in Workspace xivo web interfac 4 Create a new PHP Web Application debug configuration Choose the PHP server you created in last step Pick some file which can be anything if you don t break at first line Uncheck Auto Generate and set the path you want your browser to open when you ll launch this debug configuration 1 12 Contributors 443 XiVO doc Documentation Release 15 13 Then to start a debugging session set some breakpoints in the code and launch your debug configuration This will open the page in your browser and when the code will hit your breakpoints you ll be able to go through the code step by step etc 1 12 17 XiVO Client Building the XiVO Client Building the XiVO Client on Windows platforms This page explains how to build an executable of the XiVO Client from its sources for Windows Windows Prerequisites Cygwin Cygwin Web site Click the setup link and execute During the installer check the package Devel gt git Qt SDK You need the development files of the Qt 5 library available on the Qt website The currently supported Qt version is 5 4 1 NSIS installer on
250. customize the file 0004 2211c8b user cfg you will have to create a template file named 0004 2211c8b user cfg tpl and so on Here we want to customize the content of a device specific file named 00085D2EECFB cfg we need to create a template named 00085D2EECFB cfg tpl I cp templates 6739i tpl var templates 00085D2bEECFB cfg tpl vi var templates 00085D2bEECFB cfg tpl xivo provd cli c devices using_mac 00085D2EECFB reconfigure Note The choice to use this syntax comes from the fact that prova supports devices that do not have MAC addresses namely softphones Also some devices have more than one file like Snom so this way make it possible to customize more than 1 file The template to use as the base for a device specific template will vary depending on the need Typically the model template will be a good choice but it might not always be the case Changing the Plugin Used by a Device From time to time new firmwares are released by the devices manufacturer This sometimes translate to a new plugin being available for these devices When this happens it almost always means the new plugin obsoletes the older one The older plugin is then considered end of life and won t receive any new updates nor be available for new installation Let s suppose we have the old xivo aastra 3 2 2 1136 plugin installed on our xivo and want to use
251. d For User keys start to key in the user name in destination XiVO will try to complete with the corresponding user If the forward unconditionnal function key is used with no destination the user will be prompted when the user presses the function key and the BLF will monitor ALL unconditionnal forward for this user General Lines answer Services Voicemail Groups Keys Key Type Destination Label Supervision i Do not disturb 21 Enabled 8 Incoming call filtering zj Enabled Enable Disable forwarding unc 102 Enabled gt 4 Enable Disable forwarding on E 71 102 Enabled 5 Enable Disable forwarding 102 Enabled zj 2 6 Y Enable Disable forwarding unc gt 103 Enabled M 3 Save _ 1 8 Administration 223 XiVO doc Documentation Release 15 13 Extensions 3 online call recording To enable online call recording you must check the Enable online call recording box in the user form y Voicemail Groups Func Keys Enable supervision Enable call transfer Enable online call r
252. d only anonymous provisioning allowed only authenticated provisioning allowed both provisioning modes allowed default eap_fast_prov 3 WNrR Oo ll EAP FAST PAC Key lifetime in seconds hard limit key lifetime 2604800 EAP FAST PAC Key refresh time in seconds soft limit on remaining hard limit The server will generate a new PAC Key when this number of seconds Contributors 431 XiVO doc Documentation Release 15 13 or fewer of the lifetime remains pac_key_refresh_time 86400 EAP SIM and EAP AKA protected success failure indication using AT RESULT IND default 0 disabled eap sim aka result ind 1 Trusted Network Connect TNC If enabled TNC validation will be required before the peer is allowed to connect Note This is only used with EAP TTLS and EAP FAST If any other EAP method is enabled the peer will be allowed to connect without TNC tnc 1l I IE E 802 11f Inter Access Point Protocol IAPP Interface to be used for IAPP broadcast packets iapp interface ethO0 RADIUS client configuration for IEEE 802 1X with external Authentication Server IEEE 802 11 authentication with external ACL for MAC addresses and accounting The own IP address of the acce
253. d optional the password to use when performing a simple bind Default to an empty string ldap custom filter optional a custom LDAP filter to use when performing searches instead of searching in the column specified by the searched columns option 1 6 System 93 WH Row XiVO doc Documentation Release 15 13 This must be a valid LDAP filter where the string O will be replaced by the escaped search term when performing a search Example amp cn Q Idap_network_timeout optional the maximum time in second that an LDAP network operation can take If it takes more time than that no result is returned Defaults to 0 1 Idap_timeout optional the maximum time in second that an LDAP operation can take Defaults to 1 0 unique_column optional the column that contains a unique identifier of the entry This is necessary for listing and identifying favorites phonebook Back end name phonebook Purpose search directory entries from a XiVO phone book Configuration Example a file inside source_config_dir type phonebook name my_phonebook phonebook url https example org service ipbx json php restricted pbx services phonebook phonebook username admin phonebook password foobar format columns firstname phonebook firstname lastname phonebook lastname number phonebooknumber office number phonebook url optional the phon
254. d a NAT you should disable this behaviour by setting the NAT option to 1 via the Configuration Provisioning General page Enabling the NAT option will also improve the performance of the provisioning server in this scenario Limitations You must only have phones of the following brands Aastra Cisco SPA Yealink All your devices must be behind a NAT equipment the devices may be grouped behind different NAT equipments not necessarily the same one You must provision the devices via the Web interface i e associate the devices from the user form Using the 6 digit provisioning code on the phone will produce unexpected results i e the wrong device will be provisioned For technical information about why other devices are not supported you can look at this issue on the XiVO bug tracker Remote directory If you have a phone provisioned with XiVO and its one of the supported ones you ll be able to search in your XiVO directory and place call directly from your phone See the list of supported devices to know if a model supports the XiVO directory or not Configuration For the remote directory to work on your phones the first thing to do is to go to the Services IPBX General settings Phonebook page You then have to add the range of IP addresses that will be allowed to access the directory So if you know that your phone s IP addresses are all in the 192 168 1 0 24 subnet just click on the small
255. d by xivo dird but it s a good idea to use these for your configuration format unique column This column is what makes an entry unique in this source The unique column is used to build the uid that is passed to the list method to fetch a list of results by unique ids search columns This list of columns is used to try and match an entry when searching this source format columns This section is used to add or modify columns The values are python format strings using the raw search result as argument The implementation of the back end should take these values into account and return results accordingly Example The following example add a backend that will return random names and number dummy coding utf 8 x import logging logger logging getLogger __name__ class DummyBackendPlugin object def name self return my_local_dummy def load self args logger info dummy backend loaded def unload self logger info dummy backend unloaded def search self term args nb results random randint 1 20 return random list nb results def list self unique ids return random list len unique_ids def random list self nb results columns Firstname Lastname Number return random entry columns for xrange nb results def random entry self columns random stuff random string for _ in xrange len columns return dict zip columns random stuff def r
256. d gt A user needs to have a line to associate a does not have any line voicemail 400 Invalid parameters user with id lt user_id gt You must unassociate the current voicemail already has a voicemail before reassociating a new one Example request POST 1 1 users 59 voicemail Host xivoserver Content Type application json voicemail id enabled 432 false Example response HTTP 1 1 201 Location 1 1 users 59 voicemail voicemail id 432 user ld 59 enabled false rel voicemails href https xivoserver 1 1 voicemails 432 rel users href https xivoserver 1 1 users 59 Deassociate a User from a Voicemail Query DEL 1 1 users lt user_id gt voicemail Example request D Hos EL 1 1 users 20 voicemail xivoserver 1 11 and SDK 329 XiVO doc Documentation Release 15 13 Example response HTTP 1 1 204 No Content Migration from 1 0 URL Occurences of 1 0 have been replaced for 1 1 Trailing slashes have been removed For example in 1 0 the URL to list users is 1 0 users In 1 1 it is 1 1 users XiVO provd API This section describes the REST API provided by the xivo provd application If you want to interact with the REST API of the xivo provd daemon that is executing as part of XiVO you
257. d to this line 400 Invalid parameters There is an extension associated to this line Example request POST 1 1 users 59 lines Host xivoserver Content Type application json line id 432 Example response HTTP 1 1 201 Location 1 1 users 59 lines user id 59 line id 432 main user true main line true links rel lines href https xivoserver 1 1 lines 432 rel users href https xivoserver 1 1 users 59 Dissociate a User from a Line devices that are attached the line must be removed before dissociating a user from its line A device can be dissociated be resetting it to autoprov mode Consult the documentation on Devices for further details Query DELETE 1 1 users user id lines line id Error code Error message Description 400 User with id lt user_id gt is not associated with line id line id Errors z z 400 Invalid parameters There are secondary users associated to this user_line 400 Invalid parameters A device is still associated to the line Example request Host xivoserver DELETE 1 1 users 59 lines 598 Content Type application json 320 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example response HTTP 1 1 204 No Content Voicemails Voicemail Representation
258. date This will create or update all ts translation files registered in the pro files You can then start translating the strings in these files in the xivoclient i16n folder Code modification If you want to be able to select your new language from within the XiVO Client you have to add it in the interface For that you can add your new language in the m locale cbox QCombobox in ConfigWidget 452 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 CTI debugging tool If you have a problem and you want to see what is going on between the CTI server and client you can use a specific script designed specifically for XiVO instead of using something like Wireshark to listen network communications Profiling To get profiling informations on the XiVO Client Compile the XiVO Client with debugging symbols Run the command LD LIBRARY PATH bin valgrind tool callgrind bin xivoclient Quit the client e Open the generated file callgrind out pid with KCacheGrind Automatic checking tools We use two tools to check the source code of the XiVO Client CppCheck et Valgrind CppCheck Usage cppcheck I baselib src I xivoclient src Valgrind Memcheck Usage LD LIBRARY PATH bin valgrind leak check full suppressions valgrind supp num callers 30 You need to fill a file valgrind supp with Valgrind suppressions to avoid displaying errors in
259. de the clock to the PBX the timing value is to be set to 0 see etc dahdi system conf section Example Below an example for interconnection with two ISDN provider Span 1 TE4 0 1 TE4XXP PCI Card 0 Span 1 MASTER span 1 1 0 ccs hdb3 Span towards Provider bchan 1 15 17 31 dchan 16 echocanceller mg2 1 15 17 31 Span 2 TE4 0 2 TE4XXP PCI Card 0 Span 2 span 2 2 0 ccs hdb3 Span towards Provider bchan 32 46 48 62 dchan 47 echocanceller mg2 32 46 48 62 Span 3 TE4 0 3 TE4XXP PCI Card 0 Span 3 span 3 0 0 ccs hdb3 Span towards PBX bchan 63 77 79 93 dchan 78 echocanceller mg2 63 77 79 93 Span 4 TE4 0 4 TE4XXP PCI Card 0 Span 4 span 4 0 0 ccs hdb3 Span towards PBX bchan 94 108 110 124 dchan 109 echocanceller mg2 94 108 110 124 dahdi channels conf Configuraton Modify the file etc asterisk dahdi channels conf group 40 provider side g2 PBX side context from extern or from pabx signalling pri cpe provider side pri net PBX side Warning Towards certains destinations some PBX use an overlapdialing digits are sent one by one In this case we have to activate a parameter on the spans concerned overlapdial incoming This can be seen with pri intense debug Below an example of file etc asterisk dahdi channels conf Be careful to three parameters group context signalling 168 Chapter 1 Table of Contents XiVO doc Documentatio
260. delay 0 5 You will also need to change the XML API username password by creating a custom template for your phone Snom Phones When using a Snom switchboard you must not configure a function key on position 1 To be able to use a Snom phone for the switchboard the XiVO must be able to do HTTP requests to the phone This might be problematic if there s a NAT between your XiVO and your phone The following command should work from your XiVO s bash command line wget http guest guest lt phone IP address command htm key SPEAKER If this command does not activate the phone s speaker your net work configuration will have to be fixed before you can use the Snom switchboard It s possible to configure the Snom switchboard via the configuration files of xivo ctid The following options are available switchboard snom username guest password guest answer delay 0 5 You have to change the username and password option if you have changed the administrator username or admin istrator password for your phone in Configuration Provisioning Template Device Create an Agent for the Operator Each operator needs to have an associated agent Warning Each agent MUST ONLY be a member of the Switchboard queue 214 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 To create an agent e Go to Services Call center Agents Click on the group default Click on the Add button
261. device field to null click on the Save button on the web interface The phone doesn t restart and the phone is in autoprov mode in the device list You can synchronize the device to reboot it 198 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 xivo snom 8 4 31 cvo aastra d 2 2 56 qvo aastra 3 2 2 56 qva aastra 3 2 2 55 Device with Several Users Associated Edit the primary user associated to the terminal one with the line 1 and put the device field to null click on the Save button on the web interface The primary line of the phone has been removed so the device will lose its funckeys associated to primary user but there others lines associated to the device will stay provisionned The phone doesn t restart and the phone is in autoprov mode in the device list You can synchronize the device for reboot it From a Device Dial guest 48378 on the phone dialpad followed by xivo 9486 as a password The phone restarts and display autoprov ready to be used for another user Advanced Configuration DHCP Integration If your phones are getting their network configuration from your XiVO s DHCP server it s possible to activate the DHCP integration on the Configuration Provisioning General page What DHCP integration does is that on every DHCP request made by one of your phones the DHCP server sends information about the request to provd which can then use
262. dit e Fields must have their name starting with XIVOFORM If you want to send information that is not visible you can make the widget invisible on the sheet change the maximumWidth or maximumHeight property to 0 e edit the ui file and add the following property to the widget lt property name visible gt lt bool gt false lt bool gt lt property gt When a CTI client submits a custom sheet a call_form_result event is published on the event bus Systray Mostly the same syntax as the sheet with less field types available title body A Systray popup will display a single title the last one added to the list of fields and zero one or more fields of type body General settings Sheet Systray Actions Field title Field type Default value Display value Nom tile 1xivo calledidname Num ro body v xivo calleridnum Origine body 52 xivo origin Save Warning The popup message on MacOSX works with Growl http growl info We could get simple sheet popup to work using the free Growl Fork http www macupdate com app mac 4 1038 growl fork Note that this is not officially supported Actions The action is for the xivo client so if you configure an action please be sure you understand it s executed by the client You need to allow this action in the client configuration too menu XiVO Client gt Configure tab Functions tick option Customer Info and in sub
263. e Client Audio files a i On hold Music Login Extensions Password 1 Paging i Phonebook Profile Client Backup Files Configuration files Description Contexts Asterisk Log Files Reload Asterisk Restart Asterisk Fig 1 10 User information Afterwards click on the Lines tab SIP Protocol IAX Protocol Voicemails Phonebook Advanced Devices Lines Users Groups Voicemails Conference rooms Fig 1 11 Lines menu Enter a number for your phone If you click inside the field you will see the range of numbers you can use For our example we will use 10007 By default the selected protocol is SIP which is what we want for now Click on Save to create the line We now have a user named Alice Wonderland with the phone number 1000 1 3 Getting Started 11 XiVO doc Documentation Release 15 13 General settings General Novanswer Services Voicemail Groups Func Keys 7 Protocol Entity machine test 1 Name Context Number Site l Device Fig 1 12 Line information Fig 1 13 Save B SIP Protocol Ax Protocol Alice Wonderland Phoneb
264. e 220 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 Complete transfer button 2 Cancel transfer button 3 Transfer destination filtering field xlet Directory 4 Transfer destination list xlet Directory Once the destination has answered you can e cancel the transfer with F8 key complete the transfer with F5 key Note The operator can not complete an attended transfer while the transfer destination is ringing In this case the operator must cancel the attended transfer and use the Blind transfer action Putting call on hold If the user places the call on hold it will be removed from the Current call frame and displayed in the Waiting calls list The time counter shows how long the call has been waiting thus it will be reset each time the call returns in the Waiting calls list The calls are ordered from the oldest to the newest Retrieving a call on hold Once a call has been placed on hold the operator will most certainly want to retrieve that call later to distribute it to another destination To retrieve a call on hold click the desired call in the Waiting calls list with the keyboard move the focus to the Waiting calls list F9 key choose the desired call with the arrow keys press the Enter key Once a call has been retrieved from the Waiting calls list it is moved back into the Current Call frame ready to be distributed 1 8 32 Users Users Configuration
265. e broadcast netmask address typeid 6 name ethO hwtypeid 1 dummyif false mtu 1500 Carrier true flags 3 options false null application json null 29 698T062 2 clk 0 5 0 null 11724 17 255 255 255 2550 0 7 172 17 0 101 Modify interface Field Values Description iface string Interface name like ethO method list static or dhcp address string netmask string Description broadcast string gateway string mtu int auto boolean up boolean options list dns search and dns nameservers Query PUT modify_physical_eth_ipv4 Example request PUT modify_physical_eth_ipv4 Host xivoserver Content Type application json HTTP 1 1 1 11 and SDK 355 XiVO doc Documentation Release 15 13 ifname ethO method dhcp auto True Replace virtual interface Query PUT replace virtual eth ipv4 Example request PUT replace virtual eth ipv4 HTTP 1 1 Host xivoserver Content Type application json ifname eth0 0 new ifname eth0 1 method dhcp auto True Modify interface Query PUT modify eth ipv4 Example request PUT modify eth ipv4 HTTP 1 1 Host xivoserver Content Type application json ifname ethO0 addre
266. e same same same same same same same same same same same same same same same Pid exten exten n NoOp Set the context containing your ivr destinations n Set IVR DESTINATION CONTEXT 2my ivr destination context n NoOp Set the directory containing your ivr sounds n Set GV DIRECTORY SOUNDS var lib xivo sounds ivr sounds n NoOp the system answers the call and waits for 1 second before continuing n Answer 1000 n NoOp the system plays the first part of the audio file welcome to n first Playback GV DIRECTORY SOUNDS ivr example welcome sound n NoOp variable counter is set to 0 n beginning Set counter 0 n NoOp variable counter is incremented and the label start is defined n start Set counter counter 11 n NoOp counter variable is now counter n NoOp waiting for 1 second before reading the message that indicate all choi n Wait 1 n NoOp play the message ivr example choices that contain all choices Background GV_DIRECTORY_SOUNDS ivr example choices n NoOp waiting for DTMF during 5s n Waitexten 5 CHOICE 1 1 1 NoOp pressed digit is 1 redirect to 8000 IVR DESTINATION CONTEXT 1 n Goto S IVR DESTINATION 8000 1 CHOICE 2 exten 2 1 NoOp pressed digit is 2 redirect to 8833 S IVR DESTINATION CONTEXT exten I
267. e 1 line no _ ua 2 na No c Echo Canc Adapt Enable line no gt Echo Supp Enable line no Jj ua na No Echo Supp Enable line no _ gt Echo Canc Enable 1 line no _ ua na No Echo Canc Enable line no _ gt Use Pref Codec Only 11 line no ua 2 na yes Use Pref Codec Only line no _ gt DTMF Tx Mode line no ua na Normal DTMF Tx Mode 1 line no _ gt FAX Enable 38 line no _ ua na Yes FAX Enable 38 line no _ gt FAX T38 Redundancy 1 line no _ ua na gt 1 lt FAX_T38_Redundancy_ line no _ FAX Passthru Method line no _ ua na 5ReINVITE FAX Passthru Method 1 line no _ gt FAX Passthru Codec line no _ gt 6711 lt Passthru Codec 1 line _ gt FAX Disable ECAN line no ua na yes FAX Disable ECAN line no _ gt FAX Tone Detect Mode line no _ ua na gt caller or 11 lt Tone Detect Mode line Network Jitter Level line no _ ua na gt very high Network Jitter Level line no _ gt Jitter Buffer Adjustment line no Jj ua na disable Jitter Buffer Adjustment 11 line nc 1 endfor lt SIP Parameters gt lt RTP_Packet_Size ua na gt 0 020 lt RTP_Packet_Size gt RTP Start Loopback Codec ua 2 na G711a RTP Start Loopback Codec lt Regional parameters gt
268. e 200 default zj Ring time Destination Group Redirect to everyone 200 defaut Ring time ur 555225220522 345222182052 5555 aeeeresearesccasne E E 5 Destination User 71 i Redirect to Guardian 21 Ring time XiVO Client configuration Directory xlet The transfer destination is chosen in the Directory xlet You must follow the Directory section to be able to use it Configuration for multiple switchboards The above documentation can be used for multiple switchboards on the same XiVO by replacing the switch board and switchboard hold queues name and configuring the operators XiVO client accordingly in the XiVO Client Configure Functions Switchboard window Usage Warning The switchboard configuration must be completed before using the switchboard This includes Device User Agent and Queues configuration see above Directory xlet configuration see Directory If it s not the case the user must disconnect his client and reconnect The XiVO Client Switchboard Profile When the user connects with his XiVO Client he gets the Switchboard profile 1 Current Call frame 1 8 Administration 217 XiVO doc Documentation Release 15 13 Connection Account GUI Settings Presence reporting Customer Info esence reporting Customer Info Dialer Switchboard queue name Switc
269. e 15 13 Interim accounting update interval If this is set larger than 0 and acct_server is configured hostapd will send interim accounting updates every N seconds Note if set this overrides possible Acct Interim Interval attribute in Access Accept message Thus this value should not be configured in hostapd conf if RADIUS server is used to control the interim interval This value should not be less 600 10 minutes and must not be less than 60 1 minute radius acct interim interval 600 Dynamic VLAN mode allow RADIUS authentication server to decide which VLAN is used for the stations This information is parsed from following RADIUS attributes based on RFC 3580 and RFC 2868 Tunnel Type value 13 VLAN Tunnel Medium Typ value 6 IEEE 802 Tunnel Private Group ID value VLANID as a string vlan file option below must be configured if dynamic VLANs are used Optionally the local MAC ACL list accept mac file can be used to set static client MAC address to VLAN ID mapping 0 disabled default 1 option use default interface if RADIUS server does not include VLAN ID 2 required reject authentication if RADIUS server does not include VLAN ID dynamic vlan 0 VLAN interface list for dynamic VLAN mode is read from a separate text fil This list is used to map VLAN ID from the RADIUS server to a network interface Each station is bound to one interface in the same way as wit
270. e REST API to manage personal contacts create delete list Service Plugins lookup Service name lookup Purpose Search through multiple data sources looking for entries matching a word Configuration Example excerpt from the main configuration file services lookup default sources my csv timeout 0 5 The configuration is a dictionary whose keys are profile names and values are configuration specific to that profile For each profile the configuration keys are sources The list of source names that are to be used for the lookup timeout The maximum waiting time for an answer from any source Results from sources that take longer to answer are ignored Default no timeout favorites Service name favorites Purpose Mark unmark contacts as favorites and get the list of all favorites 1 6 System 91 N XiVO doc Documentation Release 15 13 personal Service name personal Purpose Add delete list personal contacts of users The personal service needs a working Consul installation to store personal contacts Configuration Example excerpt from the main configuration file services favorites default sources my_csv timeout 0 5 The configuration is a dictionary whose keys are profile names and values are configuration specific to that profile For each profile the configuration keys are sources The list of source names that are to be used for the lookup t
271. e VLAN than the XiVO and when they want to interact with it they must pass through the NAT With this setup we could also put some phones in the same VLAN as the XiVO We would then have a mixed environment where some phones are behind the NAT and some phones aren t Also it s easy to go from a non NAT environment to a NAT environment with this setup What you usually have to do is only to switch your phone from the XiVO VLAN to the phones VLAN and reconfiguring the lines on your XiVO The instruction in this page are written for Debian Wheezy and VirtualBox Prerequisite On the host machine e 1 VLAN network interface for the XiVO In our example this will be eth0 341 with IP 10 34 1 254 24 e 1 VLAN network interface for the phones In our example this will be eth0 342 with IP 10 34 2 254 24 On the guest machine i e on the XiVO e 1 network adapter attached to the XiVO VLAN network interface In our example this interface inside the virtual machine will have the IP 10 34 1 1 24 Configuration 1 On the host install the ISC DHCP server apt get install isc dhcp server 2 If you do not want it to always be started update rc d isc dhcp server disable 3 Edit the DHCP server configuration file etc dhcp dhcpd conf We need to configure the DHCP server to serve network configuration for the phones Aastra and Snom in this case 420 Chapter 1 Table of Contents XiVO doc Documenta
272. e XiVO daemons meet these expectations it is a work in progress A daemon scaffold can be found in the XiVO Daemon Skeleton section 372 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 12 5 Profiling Python Programs Profiling CPU Time Usage Here s an example on how to profile xivo ctid for CPU time usage 1 Stop the monit daemon service monit stop Stop the process you want to profile i e xivo ctid service xivo ctid stop Start the service in foreground mode running with the profiler python m cProfile o test profile usr bin xivo ctid f This will create a file named test profile when the process terminates Note that profiling multi threaded program xivo agid xivo confd doesn t work reliably The Debugging Daemons section documents how to launch the various XiVO services in foreground debug mode 4 Examine the result of the profiling python m pstats test profile Welcome to the profile statistics browser sort time stats 15 oe oe sort cumulative stats 15 99 Measuring Code Coverage Here s an example on how to measure the code coverage of xivo ctid This can be useful when you suspect a piece of code to be unused and you want to have additional information about it 1 Install the following packages apt get install python pip build essential python dev Install coverage via pip pip install
273. e able to search your LDAP servers directly from your phones if they support this feature Note This page describes how to add LDAP servers as sources of contacts For other sources of contacts see Phonebook and Directories Add a LDAP Server You can add a LDAP server by clicking on the add button at the top right corner of the Configuration Manage ment LDAP Servers page You ll then be shown this page LDAP Servers Add Name debanddap Host 19216832194 Port 389 Protocol version 3 Description Save Fig 1 30 Adding a LDAP server Enter the following information Name the server s display name Host the hostname or IP address Port the port number default 389 Security layer select SSL if it is activated on your server and you want to use it default disabled SSL means TLS SSL doesn t mean StartTLS and port 636 should then be used Protocol version the LDAP protocol version default 3 Warning When editing an LDAP server you ll have to restart the CTI server for the changes to be taken into account 114 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Notes on SSL TLS usage If you are using SSL with an LDAP server that is using a CA certificate from an unknown certificate authority you ll have to put the certificate file as a single file ending with crt into usr local share ca certificates andrun update ca certificates Yo
274. e are excluded All the network configuration i e everything under the Configuration Network section All the support configuration i e everything under the Configuration Support section e Call logs Call center statistics Certificates HA settings Provisioning configuration Voicemail messages Less importantly these are also excluded Queue logs CELs XiVO Client You have to enter the master and slave address in the Connect ion tab of the XiVO Client configuration The main server is the master node and the backup server is the slave node When connecting the XiVO Client with the main server down the login screen will hang for 3 seconds before connecting to the backup server 264 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Configuration Account GUI Settings Functions Advanced Host address CTI port Main server 192 168 32 177 5003 B C Encrypt Connection Backup server 192 168 32 193 5003 B C Encrypt Connection Try to reconnect Checking this box disables the Error Popups Try to reconnect interval 20 Keep alive interval 120 1 10 High Availability HA 265 XiVO doc Documentation Release 15 13 1 10 4 Internals 4 scripts are used to manage services and data replication xivo master slave db replication slave ip is used on the master to replicate the master s data on the slave server It runs on the master xivo mana
275. e call and another on the queue on which the call was received It also contains the status of the call ie answered abandoned full etc 256 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 P2 16 205 31 60s P5 61s ee 0 23 2 LS O E C o o A E De otal Total calls handled Total abandoned calls mpi m pi IN P2 IN P2 IN P3 IN P3 m P4 mp4 ms aps 1 9 Contact Center 257 XiVO doc Documentation Release 15 13 P1 0 15s P2 16 205 P3 21 305 P4 31 605 P5 61s PL Total calls handled Calls handled Abandoned calls P1 P27 93 P4 9S Pi P2 PS P4 PS January 0 0 0 0 0 0 0 AEE EEEE April 4 0 0 0 0 0 0 0 May 1 0 0 0 0 0 0 2 June 1570 14 119 121 214 23 2 4 13 21 July 569 11 31 41 62 19 1 3 4 5 August 0 0 0 0 0 0 0 0 0 0 September 0 0 0 0 0 0 0 0 0 0 October 0 0 0 0 0 0 0 0 0 0 December 0 0 0 0 0 0 0 0 0 0 Total 2028 25 140 153 257 95 7 15 24 33 Total abandoned calls mpi Epi 2 mp2 Ep4 E p4 i P5 i P5 Field Values Description id gener ated cal nu This call id is also used in the CEL table and can be used to get call detail information lid meric value time Call time ring Ringing duration time in
276. e configuration file Now that we know the modules we need we can create our configuration file 1 Create the file etc dahdi modules touch etc dahdi modules 2 Fill it with the modules name you found with the dahdi_hardware command one module name per line In our example your etc dahdi modules file should contain the following lines wcb4xxp wct4xxp 1 8 Administration 151 XiVO doc Documentation Release 15 13 Note Inthe usr share dahdi modules sample file you can find all the modules supported in your XiVO version Apply the configuration To apply the configuration restart the services xivo service restart Next step Now that you have loaded the correct module for your card you must 1 check if you need to follow one of the Specific configuration sections below 2 and continue with the next configuration step which is to configure the echo canceller Specific configuration This section lists some specific configuration You should not follow them unless you have a specific need 13 TE23x 43 E1 T1 selection With EI T1 cards you must select the correct line mode between e El the European standard and 1 North American standard For old generation cards TE12x TE20x 40 series the line mode is selected via a physical jumper For new generation cards like TE13x TE23x TE43x series the line mode is selected by configuration If y
277. e from closed to open When asked for the authentication mode select something like Auto or You don t have to enter anything for the username password 9 You ll probably want to bridge your wlan interface with another interface for example a VLAN interface brctl addbr brctl addif br0 wlanO brctl addif br0 ethn0 341 ip link set br0 up 10 If you are using virtualbox and your guest interface is bridged to eth0 341 you ll need to change its config uration and bridge it with brO instead else it won t work properly Adding Support for a New Phone This section describes the requirements to consider that a SCCP phone is working with XiVO libsccp Basic functionality Register on Asterisk SCCP reset restart 1 12 Contributors 441 XiVO doc Documentation Release 15 13 Call history Date time display HA Telephony These test should be done with and without direct media enabled Emit a call Receive a call Receive and transfer a call Emit a call and transfer the call Hold and resume a call Features 0 and others Receive 2 calls simultaneously Emit 2 calls simultaneously DTMF on an external IVR Function keys Redial DND Hold Resume New call End call Call forward Enable Call forward Disable Try each button in each mode on hook in progress etc Optional options to test and document Phone book Caller ID and other display i1
278. e hints in their Knowledge Base here http kb digium com entry 1 63 PRI Digium cards needs 1000 interruption per seconds If the system cannot supply them it increment the IRQ missed counter As indicated in Digium KB you should avoid shared IRQ with other equipments like HD or NIC interfaces 162 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 8 19 Incall General Configuration You can configure incoming calls settings in Services IPBX Call Management Incoming calls DID Direct Inward Dialing Configuration When character is prepended a called DID the character is discarded Example Bob has a DID with number 1000 Alice can call Bob by dialing either 1000 or 1000 without configuring another DID 1 8 20 Interconnections Interconnect two XiVO directly Fig 1 49 Situation diagram Interconnecting two XiVO will allow you to send and receive calls between the users configured on both sides The steps to configure the interconnections are Establish the trunk between the two XiVO that is the SIP connection between the two servers Configure outgoing calls on the server s used to emit calls Configure incoming calls on the server s used to receive calls For now only SIP interconnections have been tested Establish the trunk The settings below allow a trunk to be used in both directions so it doesn t matter which server is A and which i
279. e https wiki asterisk org wiki display AST Valgrind 1 12 3 Debugging Daemons Here s how to run the various daemons present in XiVO in foreground and debug mode Note that it s usually a good idea to stop monit before running a daemon in foreground agentd xivo agentd f v f for foreground e y for verbose Log file var log xivo agentd log 1 12 Contributors 369 XiVO doc Documentation Release 15 13 ting update c ting update 2013 10 29 11 03 55 799 25830 INFO Starting xivo agentd 2013 10 29 11 03 58 632 25830 INFO Executing statuses command agid xivo agid f d f for foreground e d for debug Log file var log xivo agid log 2014 06 18 11 01 02 816 28779 INFO xivo agid agid xivo agid starting 2014 06 18 11 01 04 479 28779 INFO xivo agid modules callerid forphones execu 2014 06 18 11 01 04 877 28779 INFO xivo agid modules callerid forphones execu amid xivo amid f v f for foreground v for verbose Log file var log xivo amid log 2014 01 15 10 36 42 372 5252 INFO Starting xivo amid 2014 01 15 10 36 42 372 5252 INFO Connecting socket 2014 01 15 10 36 42 372 5252 INFO Connecting AMI client to localhost 5038 call logd xivo call logd f v f for foreground v for verbose Log file var log xivo call logd log 2014 02 12 14 58 05 051 2014
280. e is no call For outgoing calls the layerl layer2 should be brought back up by the XiVO i e asterisk chan_dahdi For incoming calls the layerl layer2 should be brought back up by the operator You can consider that there is a problem only if incoming or outgoing calls are rejected PTMP with layerl layer2 persistence In this mode we will configure asterisk and DAHDI to use Point to Multipoint PTMP signalling and to keep Layerl and Layer2 UP Follow theses steps to configure 1 Before the line include dahdi channels conf add in file etc asterisk chan dahdi conf the following lines layerl presence required layer2 persistence keep up 2 In the file etc asterisk dahdi channels conf use bri_cpe_ptmp signalling Signalling bri_cpe_ptmp 3 If it exists delete the etc modprobe d xivo wcb4xxp conf rm etc modprobe d xivo wcb4xxp conf 4 Then apply the configuration by restarting the services xivo service restart Note Expected behavior The dahdi show status command should show the BRI spans in OK status even if there is no call In asterisk CLI you may see the spans going Up Down Up it is a problem only if incoming or outgoing calls are rejected PTP with layerl layer2 persistence In this mode we will configure asterisk and DAHDI to use Point to Point PTP signalling and use default behavior for Layer and Layer2 Follow theses steps to
281. e licenses for most software and other practical works are designed to take away your freedom to share and change the works By contrast the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program to make sure it remains free software for all its users We the Free Software Foundation use the GNU General Public License for most of our software it applies also to any other work released this way by its authors You can apply it to your programs too When we speak of free software we are referring to freedom not price Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software and charge for them if you wish that you receive source code or can get it if you want it that you can change the software or use pieces of it in new 1 accept the terms of this licence SSS ae ae Fig 1 2 Accept the license License You then have to accept the GPLv3 License under which XiVO is distributed Configuration 1 Enter the hostname Allowed characters are 2 a z 0 9 Enter the domain name Allowed characters are A Z a z 0 9 Enter the password for the root user of the web interface N Configure the IP address and gateway used by your XiVO by default it pre fills the fields with the current IP and gateway of the network interface on which you are connected if the network interface has a def
282. e phone supports DHCP HTTP provisioning the next question is what do you need to put in the DHCP response to tell the phone where its configuration files are located Unless the admin documentation of the phone is really poor this should not be too hard to find Once you have found this information the easiest way to send it to the phone is to create a custom host declaration for the phone in the et c dhcp dhcpd conf file like in this example 1 12 Contributors 417 XiVO doc Documentation Release 15 13 host my phone hardware ethernet 00 11 22 33 44 55 option tftp server name http 169 254 0 1 foobar cfg What are the configuration files the phone needs filename and content and what do we need to put in it for the phone to minimally be able to make and receive calls on XiVO Now that you are able to tell your phone where to look for its configuration files you need to write these files with the right content in it Again at this step you ll need to look through the documentation or examples to answer this question Note that you only want to have the most basic configuration here i e only configure 1 line with the right SIP registrar and proxy and the associated username and password Do basic telephony services like transfer works correctly when using the phone buttons On most phones it s possible to do transfer both attended and direct three way conferences or put some one on h
283. e source code is available on GitHub at https github com xivo pbx xivo doc Provided you already have Python installed on your system You need first to install Sphinx easy_install U Sphinx Quick Reference http docutils sourceforge net docs user rst cheatsheet txt http docutils sourceforge net docs user rst quickref html e http openalea gforge inria fr doc openalea doc _build html source sphinx rest_syntax html Documentation guideline Here s the guideline conventions to follow for the XiVO documentation Language The documentation must be written in english and only in english Sections The top section of each file must be capitalized using the following rule capitalization of all words except for articles prepositions conjunctions and forms of to be Correct The Vitamins are in My Fresh California Raisins Incorrect The Vitamins Are In My Fresh California Raisins Use the following punctuation characters with overline for file title for sections for subsections for subsubsections 7 easy install can be found in the debian package python setuptools sudo apt get install python setuptools 364 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Punctuation characters should be exactly as long as the section text Correct Sectionl Incorrect Section2 There should be 2 empty lines between
284. e used with outgoing calls and incoming calls except if these calls are passing through a customized trunk of type Local t can t be used with groups or queues The call completion feature can t be enabled only for a few users either all users have access to it or none Configuration The call completion extension is enabled via the Services IPBX IPBX services Extensions page in the General tab Enableldisable call completion Extension 40 Fig 1 35 Call Completion Extension If your XiVO has been installed in version 14 16 or earlier then this extension is by default disabled Otherwise this extension is by default enabled 1 8 4 Call Permissions You can manage call permissions via the Services IPBX Call management Call permissions page Call permissions can be used for denying a user from calling a specific extension denying a user of a group from calling a specific extension denying a specific extension on a specific outgoing call from being called 122 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 denying an incoming call coming from a specific extension from calling you More than one extension can match a given call permission either by specifying more than one extension for that permission or by using extension patterns You can also create permissions that allow a specific extension to be called instead of being denied This make it possible
285. ebook s URL Default to http 1ocalhost service ipbx json php private pbx services phonebook The URL to use differs depending on if you are accessing the phone book locally or remotely e Local http 1localhost service ipbx json php private pbx services phonebook e Remote https example org service ipbx json php restricted pbx services phoneboc phonebook username optional the username to use in HTTP requests No HTTP authentication is tried when phonebook username or phonebook password are empty phonebook password optional the password to use in HTTP requests phonebook timeout optional the HTTP request timeout in seconds Defaults to 1 0 To be able to access the phone book of a remote XiVO you must create a web services access user Configuration Web Services Access on the remote XiVO personal Back end name personal Purpose search directory entries among users personal contacts You should only have one source of type personal because only one will be used to list personal contacts The personal backend needs a working Consul installation This backend works with the personal service which allows users to add personal contacts The complete list of fields is in Personal contacts 94 Chapter 1 Table of Contents Dw Row XiVO doc Documentation Release 15 13 Configuration Example a file inside source_config_dir type personal name personal format_columns firstname firstname last
286. econds recall timer when the caller who requested call completion is called back how long the original caller s phone rings before giving up Defaults to 30 seconds It s currently impossible to modify the value of these timers in XiVO Special Scenarios There are four special scenarios the call completion will not activate the call completion will activate and call back for the original called party the call completion will activate and call back for the rerouted called party the call completion will activate and call back for the original called party but fail to join him Call completion will not activate Scenario Alice tries to call Bob but the call is redirected to Charlie When activating call completion Alice hears that the call completion can not be activated This occurs when Bob redirects rejects the call with any of the following Unconditional call forwarding towards Charlie Closed schedule towards Charlie Call permission forbidding Alice to call Bob Preprocess subroutine forwarding the call towards Charlie Call completion will activate and call back for the original called party Scenario Alice tries to call Bob but the call is redirected to Charlie When activating call completion Alice hears that the call completion is activated and eventually Alice is called back to speak with Bob This occurs when Bob redirects rejects the call with any of the following No answer call forwarding towards
287. ecording i Call recording Incoming call filtering j Do not disturb Filter Boss Secretary No v 1 Agent zi Fig 1 71 Users Services When this option is activated the user can press 3 during a conversation to start stop online call recording The recorded file will be available in the monitor directory of the Services IPBX Audio files menu 26 call recording You can enable disable the recording of all calls for a user in 2 different way 1 By checking the Call recording box of the user form Lines No answer Services Voicemail Groups Func Keys Enable supervision Enable call transfer Enable online call recording Call recording Incoming call filtering C Do not disturb Filter Boss Secretary No 7 zj Fig 1 72 Users Services 2 By using the extension 26 from your phone the call recording option must be activated in Services gt IPBX Extensions When this option is activated all calls made to or made by the user will be recorded in the monitor directory of the Services IPBX Audio files menu 1 8 33 Voicemail Voicemail Configuration 224 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 General Configuration You can configure general settings for your voicemail service in Services IPBX General Sett
288. ed in Logger conf and should only be enabled when verbose debugging is required Using this option in production would produce VERY large log files e Files location var log asterisk Number of archived files 15 Rotation frequence Daily provd File location var log xivo provd log e Rotate configuration etc logrotate d xivo provd Number of archived files 15 Rotation frequence Daily sysconfd File location var log xivo sysconfd log Rotate configuration etc logrotate d xivo sysconfd Number of archived files 15 Rotation frequence Daily web interface e File location var log xivo web interface log e Rotate configuration etc logrotate d xivo web interfac Number of archived files 21 Rotation frequence Daily xivo confgend The xivo confgend daemon output is sent to the file specified with the logfile parameter when launched with twistd The file location can be changed in etc init d xivo confgend Search the line begining with logfile var log xivo confgend log and change it to your liking 1 6 System 73 XiVO doc Documentation Release 15 13 e File location var log xivo confgend log Rotate configuration etc logrotate d xivo confgend Number of archived files 15 Rotation frequence Daily xivo ctid File location var log xivo ctid pid Rotate configuration etc logrotate d xivo ctid Number of archived log files 15 Rotation
289. efined you can use them in your destination numbers For example when someone calls the DID 100 you might want the tp example org and mail backend to be run but otherwise you only want the mail backend to be run Here s an example of a valid etc xivo asterisk xivo fax conf configuration file general tiff2pdf usr bin tiff2pdf mutt usr bin mutt lp usr bin lp mail subject FAX reception to dstnum s content_file etc xivo mail txt email from no reply fax xivo io ftp_example_org host example org username foo password bar directory foobar dstnum default dest mail dstnum 100 dest mail ftp example org The section named dstnum default will be used only if no DID specific actions are defined After editing etc xivo asterisk xivo fax conf you need to restart agid server for the changes to be applied etc init d xivo agid restart Using the FTP backend The FTP backend is used to send a PDF version of the received fax to an FTP server An FTP backend is always defined in a section beginning with the ftp prefix Here s an example for a backend named ftp example org ftp example org host example org username foo password bar directory foobar The directory option is optional and if not specified the document will be put in the user s root directory 1 8 Administration 145 XiVO doc Documentation Release
290. eleted if it is associated to a line You must delete the association first Consult the documentation on Line Extension Associations for further details 1 11 and SDK 295 XiVO doc Documentation Release 15 13 Query DELETE 1 1 extensions lt id gt Error code Error message Description 400 error while deleting Extension lt explanation gt See error message for more details 400 Error while deleting Extension extension still has a See explanation above Errors link 404 Not found The requested extension was not found Example request 1 1 extensions 1 HTTP 1 1 xivoserver DELETE Host Example response HTTP 1 1 204 No Content Line Extension Association See Line Extension Associations Function Keys Function keys can be used as shortcuts for dialing a number or accomplishing other menial tasks by pushing a button on the phone A function key s action is determined by its destination Function keys can be added directly on a user or in a template Templates are useful for creating a set of common function keys that can be used by the same group of people This page only describes the data models used by the REST API Consult the API documentation for further details on URLs Function Key Template Field Type Re Description quired Parameters name string No A name for the templ
291. ely with iwconfig channel 5 Beacon interval in kus 1 024 ms default 100 range 15 65535 ted in many you new group hould have t of allowed s The for 119 and the Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 beacon_int 100 DTIM delivery traffic information message period range 1 255 number of beacons between DTIMs 1 every beacon includes DTIM element default 2 dtim_period 2 Maximum number of stations allowed in station table New stations will be rejected after the station table is full IEEE 802 11 has a limit of 2007 different association IDs so this number should not be larger than that default 2007 max_num_sta 255 RTS CTS threshold 2347 disabled default range 0 2347 If this field is not included in hostapd conf hostapd will not control RTS threshold and iwconfig wlan rts lt val gt can be used to set it rts_threshold 2347 Fragmentation threshold 2346 disabled default range 256 2346 If this field is not included in hostapd conf hostapd will not control fragmentation threshold and iwconfig wlan frag lt val gt be used to set St fragm threshold 2346 Rate configuration Default is to enable all rates supported by the hardware This configuration item allows this list be filtered so that only the listed rates will be left in the list If the list i
292. entation Release 15 13 Development For the HTTP API see http api xivo io For the xivo auth developer s see XiVO auth developer s guide 1 6 15 XiVO dird xivo dird is the directory server for XiVO It offers a simple REST interface to query all directories that are configured xivo dird is extendable with plugins xivo dird changelog 15 13 Added personal contacts endpoints in REST API GET directories personal lt profile gt GET personal POST personal DELETE personal contact id Signature of backend method 1ist has a new argument args e Argument args for backend methods list and search has anew key token infos e Argument args for backend method load has a new key main config e Methods call and lookup of service plugin lookup take a new token infos argument 15 12 Added authentication on all REST API endpoints Service plugins receive the whole configuration rather than only their own section XiVO dird configuration There are three sources of configuration for xivo dird the command line options the main configuration file the sources configuration directory The command line options have priority over the main configuration file options Main Configuration File Default location etc xivo dird config yml Format YAML The default location may be overwritten by the command line options Here s an example of the main configuration file 1 6 System 81
293. entity Xlet allows you to make calls from your computer via your phone This means that you can enter the number that you want to dial on your computer then your phone rings and when you answer it the called phone will ring XiVO Client 15 10 2 12 geF3fF9F6 Client profile XiVO Client Help Alice Wonderland Connected Usage You can enter the number you want to dial in the text box and then click the button or press enter to dial it If you dial an invalid extension a number is an extension your phone will ring and you will be told that the extension is not valid Configuration In the menu XiVO Client Configure GUI Settings you can enable the integration of the clipboard in the XiVO Client all text selected in other programs will be automatically pasted in the Dial text box This feature currently only works on GNU Linux systems Local Directory Xlet Overview The local directory xlet allow a user to add personnal contacts to the XiVO client History Services Contacts Conference Directory Personal Directory New Contact Export Contacts Import Contacts Search Remove all Contacts First Name Last Name Phone Numbe Email Address Company Fax Number Mobile Numbe 1 Robert Toto 5555555555 2 Robert De Niro 6666666666 48 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Usage The New Contact button allow the user to add a new contact to his local contact file
294. ep Now that you have configured your Voice Compression card 1 you must check if you need to follow one of the Specific configuration sections below 2 then if you have another type of card to configure you can go back to the configure your card section Specific configuration Select the transcoding mode The Digium TC400 card can be used to transcode 120 G 729a channels 02 G 723 1 channels or 92 G 729a G 723 1 channels Depending on the codec you want to transcode you can modify the mode parameter which can take the following value 160 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 mode mixed this the default value which activates transcoding for 92 channels in G 729a or G 723 1 5 3 Kbit and 6 3 Kbit e mode g729 this option activates transcoding for 120 channels in G 729a e mode g723 this option activates transcoding for 92 channels in G 723 1 5 3 Kbit et 6 3 Kbit 1 Create the file etc modprobe d xivo transcode conf touch etc modprobe d xivo transcode conf 2 And insert the following lines options wctc xxp mode g729 3 Apply the configuration by restarting the services xivo service restart 4 Verify that the card is correctly seen by asterisk with the transcoder show CLI command this com mand should show the encoders decoders registered by the TC400 card CLI transcoder show 0 0 encoders decoders of 120 channels a
295. er Line Association Line Extension Association See Line Extension Associations Line Extension Associations Connects an extension with a line allowing the line to be called by dialing a number A line can be associated with one or more extensions The context of an extension determines from what source a call can arrive Currently this service only supports extensions inside the following context types internal Used for calling a line with an internal number e g 1000 Q default incall Used for calling a line from the outside e g from extern with a DID Field Value Description Association Representation line id int Line s ID extension id int Extension s ID Get the Extension associated to a Line Query GET lines line id extensions Error code Error message Description 404 Line with id lt line_id gt does not exist Errors Example Request GET lines 34 extensions Host xivoserver Accept application json Example Response 1 11 and SDK 305 XiVO doc Documentation Release 15 13 HTTP 1 1 200 OK Content Type application json totals 27 items line_id 34 extension_id 12 links rel lines href https xivoserver 1 1 lines 34 rel extensions href https xivoserver 1 1 extensions 12 line_id 34 extension_id 13
296. er is one of 172 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 9 pick the first available channel in group searching from lowest to highest G pick the first available channel in group searching from highest to lowest r pick the first available channel in group going in round robin fashion and remembering where it last left off searching from lowest to highest R pick the first available channel in group going in round robin fashion and remembering where it last left off searching from highest to lowest e group number is the group number to which belongs the span as defined in the erc asterisk dahdi channels conf Warning if you use a BRI card you MUST use per port dahdi groups You should not use a group like g0 which spans over several spans For example add an interconnection to the menu Services IPBX Trunk management Customized Name interconnection name Interface dahdi g0 Name t2 Interface dahdi gO Interface suffix Context Appels sortants to extern vf Description Save TEE Debug Interesting Asterisk commands sip show peers sip show registry sip set debug on Caller ID When setting up an interconnection with the public network or another PBX it is possible to set a caller ID in different places Each way to configure a caller ID has it s own use case The format for a c
297. ers specify the IP address of the router that will be the default gateway of the site option routers 172 30 8 1 In section pool modify the options pool log add the name of the site or of the subnet log concat binary to ascii 16 8 hardware POOL VoIP Site XXX range it will define the range of IP address the DHCP server can use to address the devices of that subnet range 172 30 8 10 172 30 8 200 Warning XiVO only answers to DHCP requests from supported devices In case of you need to address other equipment use the option allow unknown clients in the etc dhcp dhcpd_sites files At this point you can apply the changes of the DHCP server with the command etc init d isc dhcp server restart After that XiVO will start to serve the DHCP requests of the devices located on other site or other subnet than the VOIP subnet You will see in var 10g daemon 10g all the DHCP requests received and how they are handled by XiVO 1 6 2 Mail This section describes how to configure the mail server shipped with XiVO Postfix and the way XiVO handles mails In Configuration Network Mail the following options can be configured Domain Name messaging the server s displayed domain Will appear in Received mail headers e Source address of the server domain part of headers Return Path and From Relay SMTP and FallBack relay SMTP
298. ers the possibility to configure the general settings via the Configuration Management General page Live reload configuration permit to reload its configuration on command received from WEBI this option is enabled by default Telephony certificates XiVO offers the possibility to create and manage X 509 certificates via the the Configuration Management Certificates page These certificates can be used for enabling SIP TLS enabling encryption between the CTI server and the XiVO clients For the certificate used for HTTPS see HTTPS certificate Creating certificates You can add a certificate by clicking on the add button at the top right of the page You ll then be shown this page Certification authority Autosigned Certification authority CA password Password Cipher Tz Key engin 1024 Validity end date Common name Fig 1 29 Adding a certificate You should look at the examples if you don t know which attributes to set when creating your certificates 112 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Removing certificates When removing a certificate you should remove all the files related to that certificates Warning If you remove a certificate that is used somewhere in XiVO then you need to manually reconfigure tha
299. ervisor oper removed clock removed 1 5 XiVO Client This section describes the XiVO Client 1 5 1 Getting the XiVO client Binaries of the XiVO Client are available on our mirror latest version all versions Warning The installed version of the XiVO Client must match the XiVO server s version installation With our current architecture there is no way to guarantee that the XiVO server will be retro compatible with older versions of the XiVO Client Non matching XiVO server and XiVO Clients versions might lead to unexpected behaviour Choose the version you want and in the right directory get the exe file for Windows the deb file for Ubuntu or Debian 1386 or amd64 depending on your computer the dmg file for Mac OS For Windows double click on the file and follow the instructions You can also install it silently xivoclient 14 XX x86 exe S For Ubuntu Debian double click on the file or execute the following command gdebi xivoclient deb For Mac OS double click on the file and drag and drop the inner file on the Application entry of the Finder The XiVO Client should then be available in the applications menu of each platform 36 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 5 2 Connection to the server To connect to the server using the XiVO client you need a user name a password and the server s address Optionally it is poss
300. es xivo aastra switchboard and xivo snom switchboard plugins have been removed and their functionalities are now provided by the generic xivo aastra and xivo snom plugins respectively The upgrade is not done automatically so please follow the Upgrade Procedure section below Although you are strongly advised to upgrade your switchboard phone configuration backwards compatibility with the old system will be maintained Note that if you need to install a switchboard for a previous version of XiVO the old xivo aastra switchboard and xivo snom switchboard plugins can be found in the archive repository 26 Chapter 1 Table of Contents E XiVO doc Documentation Release 15 13 Upgrade Procedure This procedure should be executed after the upgrade to 14 07 or later the options used in this procedure are not available in versions before 14 07 The following upgrade procedure suppose that you are using an Aastra phone as your switchboard phone The same upgrade procedure apply for Snom phones with the only difference being the different plugin name 1 Update the list of installable plugins 2 Install the latest xivo aastra plugin or upgrade it to the latest version if it is already installed 3 Install the needed language files and firmware files 4 For each phone used for the switchboard change the plugin and activate the switchboard option Select the generic xivo aastra plugin Check the switchboard checkbox
301. ess of an underlying operation Said differently it is a monitor on an operation that can change over time Get Current Status Query GET uri Example request GET uri HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json status progress The status field describe the current status of the operation The format is label state current end NV sub oipsV Here s some examples progress downloadlprogress 344 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 downloadlprogress 10 downloadlprogress 10 100 e downloadlprogress file 1lprogress 20 100 file 2lwaiting 0 50 e downloadlprogress 20 150 file llprogress file 2lwaiting e oplprogress opllprogress opl 1lprogress op12lwaiting op2lprogress The state of an operation is either waiting progress success or fail Delete Delete the operation in progress resource This does not cancel the underlying operation it only deletes the monitor Every monitor that is created should be deleted else they won t be freed by the process and they will accumulate taking memory Query DELETE lt uri gt Example request DELETE lt uri gt HTTP 1 1 Host xivoserver Example response HTTP
302. estination for calls to be sent to when the average waiting time is over the threshold Note The average waiting time of a queue is updated only when a queue member answers a call If a new call arrives when there are no waiting calls the call will always be allowed to enter the queue Number of Waiting Calls per Logged In Agent Overrun When this scenario is used the administrator can set a destination for calls to be sent to when the number of waiting calls per logged in agent is over the threshold The number of waiting calls includes the call for which the check is currently being performed The number of logged in agents is the sum of user members and currently logged in agent members An agent only needs to be logged in and a member of the queue to participate towards the count of logged in agents regardless of whether he is available on call on pause or on wrapup The maximum number of waiting calls per logged in agent can have a fractional part Here are a few examples Maximum number of waiting calls per logged in agent 1 Current number of waiting calls 2 Current number of logged in agents 2 Number of waiting calls per logged in agent when a new call arrives 3 2 1 5 Call will be redirected Maximum number of waiting calls per logged in agent 0 5 1 9 Contact Center 231 XiVO doc Documentation Release 15 13 Number of waiting calls 5 Number of logged in agents 12
303. esults from remote directories will appear after 1 second If a directory entry as the same number as a mobile or a phone configured on the XiVO it s extra columns will be added to the corresponding entry instead of creating a new line in the search result For example If User 1 has number 1000 and is also in a configured LDAP with a location in Qu bec if the display filter contains the Location column the entry for User J will show Qu bec in the Location column after the search results are received Configuration Context The directory xlet needs a special context named switchboard directory In Services IPBX IPBX configuration Contexts add a new context with the followong parameters switchboard directory Type of context Other Display name Switchboard gt detaut default Internal pcm dev pcm dev eo LI gt from extern Incalls Incall pcm dev pcm dev gt invalid invalid Incall pem dev pcm dev gt pcm dev pcm dev Internal pem dev pcm dev 02 gt statscenter statscenter Internal pcm dev L1 gt switchboard directory Switchboard Other pcm dev pcm dev gt to extern Outcalls Outcall pcm dev pcm dev e 1 5 XiVO Client 43 XiVO doc Documentation Release 15 13 Name switchboard Available display formats db phone db firstname db lastname db fullname db company db mail
304. eu fr Voicemail Association Service for associating a user with a voicemail Association Representation Field Value Description Description voicemail id int Voicemail s ID enabled bool Enable voicemail for user Get the Voicemail associated to a User Query GET 1 1 users lt user_id gt voicemail Error code Error message Description Errors 404 Invalid parameters user with id lt user_id gt does not have a voicemail 404 User with id user id does not exist Example request GET 1 1 users 20 voicemail Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json voicemail id 132 user Ld 20 enabled true rel voicemails href https xivoserver 1 1 voicemails 132 rel users href https xivoserver 1 1 users 20 Associate a User to a Voicemail Query 328 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 POST 1 1 users lt user_id gt voicemail Field Required Values Description Input voicemail_id yes int Must be an existing id enabled no bool Default value true Error Error message Description code 400 Nonexistent parameters voicemail_id Errors lt voicemail_id gt does not exist 400 Invalid parameters user with id lt user_i
305. existent on the provisioning server Device properly configured Device configured in autoprov mode l Device not configured check if a plugin is installed for this device Fig 1 63 Device list The last step is to create a user with a SCCP line Creating a user with SCOP line Services IPBX IPBX settings Users 1 8 Administration 205 XiVO doc Documentation Release 15 13 SIP Protocol 1 Protocol Voicemails Phonebook Advanced IPBX settings Devices Lines Users Groups Voicemails Tree ennenn stings SIP Protocol Protocol Voicemails Phonebook Advanced Devices Lines Users Fig 1 64 Add a new user Es First name Last name User picture Browse Mobile phone number Create a schedules Ringing time 30 seconds l Fig 1 65 Edit user informations Before saving the newly configured user you need to select the Lines menu and add a SCCP line Now you can Save your new user General settings General Groups Func Keys SIP Protocol IAX Protocol Voicemails Phonebook Advanced settings ey 225 e Context Number Site Dem eal Devices Lines Users
306. f S IFACE lt network interface gt then ip route add lt destination gt via lt gateway gt ip route add lt destination gt via lt gateway gt fi 3 Fields lt network interface gt lt destination gt and lt gateway gt should be replaced by your specific configuration For example if you want to add a route for 192 168 50 128 25 via 192 168 17 254 which should be added when eth0 100 goes up bin sh if S IFACEJ eth0 100 then ip route add 192 168 50 128 25 via 192 168 17 254 EL Note You need to check which interface goes up to add routes only if the right interface goes up Otherwise the system will try to set the routes each time any interface goes up Change interface MTU Warning Changing the MTU is risky You should know what you are doing If you need to change the MTU here is how you should do it 1 Create the file etc network if up d xivo mtu touch etc network if up d xivo mtu chmod 755 etc network if up d xivo mtu 2 Insert the following content bin sh Set MTU per iface if S IFACE lt data interface gt then ip link set IFACE mtu lt data mtu gt elif IFACE lt voip interface gt then ip link set IFACE mtu voip mtu fi 3 Change the data interface to the name of your interface e g 0 and the data mtu to the new MTU e g 1492 4 Change the voip interface to
307. f command should usually give you the correct parameters if you correctly set the cards jumper All these information should be checked with your operator etc asterisk chan_dahdi conf This file contains the general parameters of the DAHDI channel It is not generated via the dahdi_genconf command etc asterisk dahdi channels conf This file contains the parameters of each channel It is generated via the dahdi_genconf command Below is an example of span definition group 0 11 context from extern switchtype euroisdn signalling pri_cpe channel gt 1 15 17 31 Note that parameters are read from top to bottom in a last match fashion and are applied to the given channels when it reads a line channel gt Here the channels 1 to 15 and 17 to 31 it is a typical E1 are set in groups 0 and 11 see DAHDI interconnections e in context from extern all calls received on these channels will be sent in the context rom extern and configured with switchtype euroisdn andsignalling pri cpe Debug Check IRQ misses It s always useful to verify if there isn t any missed IRQ problem with the cards Check cat proc dahdi span number If the JRO misses counter increments it s not good cat proc dahdi 1 Span 1 WCTDM O Wildcard TDM800P Board 1 MASTER IRQ misses 1762187 1 WCIDM 0 0 FXOKS 2 WCTDM 0 1 FXOKS 3 WCTDM 0 2 FXOKS In use 4 WCIDM 0 3 FXOKS Digium gives som
308. f management frame processing and as such this can be used with driver hostap or driver n180211 but not with driver madwifi 0 accept unless in deny list 1 deny unless in accept list 2 use external RADIUS server accept deny lists are searched first macaddr_acl 0 1 12 Contributors 425 XiVO doc Documentation Release 15 13 Accept deny lists are read from separate files containing list of MAC addresses one per line Use absolute path name to make sure that the files can be read on SIGHUP configuration reloads accept_mac_file etc hostapd accept deny_mac_file etc hostapd deny IEEE 802 11 specifies two authentication algorithms hostapd can be configured to allow both of these or only one Open system authentication should be used with IEEE 802 1X Bit fields of allowed authentication algorithms h bit 0 Open System Authentication bit 1 Shared Key Authentication requires WEP auth algs 1 Send empty SSID in beacons and ignore probe request frames that do not Specify full SSID i e require stations to know SSID default disabled 0 1 send empty length 0 SSID in beacon and ignore probe request for broadcast SSID 2 clear SSID ASCII 0 but keep the original length this may be required with some clients that do not support empty SSID and ignore probe requests for broadcast SSID ignore broadcast ssid 0 TX queue parameter
309. f this architecture can be one of start a smooth migration between an old telephony system towards IP telephony with XiVO bring new features to the PBX like voicemail conference IVR etc First XiVO is to be integrated transparently between the operator and the PBX Then users or features are to be migrated from the PBX to the XiVO It requires a special call routing configuration both on the XiVO and on the PBX ISDN PROVIDER n Fig 1 50 Interconnect XiVO to a PBX Hardware General uses You must have an ISDN card able to support both the ISDN provider and ISDN links with PBX Note If you have two ISDN provider links to PBX XiVO should have a card with 4 spans two to the provider and two to the PBX If you use two cards If you use two cards you have to Usea cable for clock synchronization between the cards Configure the wheel to define the cards order in the system The ISDN links used by XiVO to synchronize have to be plugged on the card number one Please refer to the section Sync cable Configuration You have now to configure two files 1 etc dahdi system conf 2 etc asterisk dahdi channels conf 1 8 Administration 167 XiVO doc Documentation Release 15 13 system conf Clock configuration e Provider side XiVO will get the clock from the provider the timing value is to be different from 0 see etc dahdi system conf section PBX side XiVO will provi
310. faces etc You will need to reapply the network configuration if you restore the data tgz file After Restoring The System Restart the services you stopped in the first step xivo service start You may also reboot the system 1 6 System 69 u postgre XiVO doc Documentation Release 15 13 1 6 6 HTTPS certificate X 509 certificates are used to authorize and secure communications with the server They are mainly used for HTTPS but can also be used for SIPS CTIS etc There are two categories of certificates in XiVO the default certificate used for HTTPS in the web interface and REST APIs the certificates created and managed via the web interface This article is about the former For the latter see Telephony certificates HTTPS XiVO uses HTTPS where possible The certificates are generated at install time or during the upgrade to 15 124 The main certificate is placed in usr share xivo certs server crt However this certificate is self signed and HTTP clients browser or REST API client will complain about this default certificate because it is not signed by a trusted Certification Authority CA To make the HTTP client accept this certificate you have two choices replace the self signed certificate with your own trusted certificate For this you can replace the following files Private key usr share xivo certs server key Certificate usr share xivo certs
311. figured verified the plugin is installed for this device You can then dial from your Aastra 67311 the provisioning code associated to a line of one of your user You will hear a prompt thanking you and your device should then reboot in the next few seconds Once the device has rebooted it will then be properly configured for your user to use it And also if you update the device page you ll see that the icon next to your device has now passed to green V Eminem RB Search CSG oo 8 237429 10 97 1105 xivo aastra 2 6 0 2019 50 9 i i Athough existing in the provisioning server Phonebook 1 Nonexistent in the provisioning server Advanced Device property configured Device configured mode Autoprov Devices Device not configured verified i the plugin is installed for this device Resetting a Device From the Device List in the Webi remove a phone from XiVO or enable a device to be used for another user there are two different possibilities click on the reset to autoprov button on the web interface The phone will restarts and display autoprov ready to be used for another user From the User Form in the Webi Device With one User Only Associated Edit the user associated to the device and put the
312. file type csv name my contacts in a csv file file usr local share my_contacts csv unique column id searched columns H in format_columns name fn ln number num This is strictly equivalent in the main configuration file sources my_contacts_in_a_csv_file type csv name my_contacts_in_a_csv_file file usr local share my_contacts csv unique_column id searched_columns fn in source_to_display_columns ln lastname fn firstname num number type The type of the source It must be the same than the name of one of the enabled back end plugins name The name of the source The value is arbitrary but it must be unique across all sources Warning Changing the name of the source will make all favorites in that source disappear There is currently no tool to help you migrate favorites between source names so choose your source names carefully The other options are dependent on the source type the back end used See the documentation of the back end plugin Stock Plugins Documentation However the following keys should be present in all source configurations searched_columns the columns used for the lookup Any column containing the search term substring will be a lookup result 84 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 format_columns a mapping between result fields and a format string The new key will be added to the resu
313. for switchboard users The General First name field has to be set The General Enable XiVO Client option has to be enabled The General Login field has to be set The General Password field has to be set The General Profile field has to be set to Switchboard e The Lines Number field has to have a valid extension The Lines Device field has to be a supported device The Services Enable call transfer option has to be enabled 212 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 8 Administration 213 XiVO doc Documentation Release 15 13 Activate the Switchboard Option for your Phone The switchboard option must be activated on the phone It s possible to activate this option only on supported phones and plugins e Edit device associated to your user in Services Devices Check the switchboard checkbox and save Synchronize your phone to apply the changes IP MAC Plugin Switchboard k Device config template Polycom Phones To be able to use a Polycom phone for the switchboard the XiVO must be able to do HTTP requests to the phone This might be problematic if there s a NAT between your XiVO and your phone It s possible to configure the Polycom switchboard via the configuration files of xivo ctid The following options are available switchboard_polycom username xivo switchboard password xivo switchboard answer
314. fore dis sociating an extension from its line A device can be dissociated be resetting it to autoprov mode Consult the documentation on Devices for further details Query DELETE 1 1 lines lt line_id gt extension Error code Error message Description Errors 404 Line with id lt line_id gt does not exist 400 Invalid parameters A device is still associated to the line 310 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example request D Hos EL ET 1 1 lines lt line_id gt extension xivoserver Example response HTTP 1 1 204 No Content Infos XiVO server infos Infos Representation Description Field Values Description P uuid string XiVO s UUID Example uuid 6fa459ea ee8a 3ca4 894e db77e160355e links anfos href https xivoserver 1 1 infos resource_id 6fa459ea 8a 3ca4 894e db Get Infos Query GET 1 1 infos Example request GET 1 1 infos HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json uuid 6fa459ea ee8a 3ca4 894e db77e160355 Users User Representation 1 11 and SDK 311 77e160355e XiVO doc Documentation Release 15 13
315. found The requested device was not found Example request DELETE Host 1 1 4 412 212 500 158 373 00 078 7 HTTP 1 1 xivoserver Example response HTTP 1 1 204 No Content Reset a device to autoprov Warning The device s configuration will be lost when reset to autoprov mode Resets a device into autoprov mode Once in autoprov a device can be reprovisionned using another provisioning code Query 290 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 GET 1 1 devices lt id gt autoprov Parameters id Device s id Example request GET 1 1 devices 412c212cff500cc158 373 00e078 7 autoprov Host xivoserver Example response HTTP 1 1 204 No Content Synchronize a device Synchronize a device s configuration Used when a configuration has been modified and the changes need to be sent to the device Query GET 1 1 devices lt id gt synchronize Parameters id Device s id Example request GET 1 1 devices 412c212cff500cc158 373 00e078 7 synchronize Host xivoserver Example response HTTP 1 1 204 No Content Associate a line to a device Warning This feature is not yet accessible nor functional After associating a line the device needs to be synchronized for the changes to take effect Please see
316. frequence Daily 1 6 10 NTP XiVO has a NTP server that must be synchronized to a reference server This can be a public one or customized for specific target networking architecture XiVO s NTP server is used by default as NTP server for the devices time reference Usage Show NTP service status etc init d ntp status Stop NTP service etc init d ntp stop Start NTP service etc init d ntp start Restart NTP service etc init d ntp restart Show NTP synchronization status ntpq p Configuring NTP service 1 Edit etc ntp conf 2 Give your NTP reference servers server 192 168 0 1 LAN existing NTP Server server 0 debian pool ntp org iburst dynamic default in ntp conf server l debian pool ntp org iburst dynamic default in ntp conf 3 f no reference server to synchronize to add this to synchronize locally server 127 127 1 0 local clock LCL fudge 127 127 1 0 stratum 10 LCL is not very reliable 4 Restart NTP service 74 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 5 Check NTP synchronization status Warning If 5 shows that NTP doesn t use NTP configuration in etc ntp conf maybe have you done a dhclient for one of your network interface and the dhcp server that gave the IP address also gave a NTP server address Thus you might check if the file var lib ntp ntp conf dhcp exists if yes th
317. from his XiVO client Usage The Choose a file to send field is used to select which file you want to send The Choose destination number field is the fax destination directory search can be used to find the fax number in available directories Supported file type pdf tiff History Xlet Overview The history xlet allow the user to view his last calls The user can filter by sent received and missed calls Usage The user can click on the number of caller to initiate a new call with a given correspondant Warning The column content is only refreshed when moving from one view to the other 1 5 XiVO Client 45 XiVO doc Documentation Release 15 13 XiVO Client 15 10 2 12 geF3fF9F6 Client profile XiVO Client Help Alice Wonderland Send fax Choose file to send file Choose destination number fax number SEND FAX Connected BROWSE 46 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 XiVO Client 15 10 2 12 geF3F9F6 Client profile XiVO Client Help Alice Wonderland History ALL CALLS gt SENT CALLS NAME NUMBER Dr Who 1022 A 1022 Dr Who 1022 X Dr Who 1022 Connected RECEIVED CALLS MISSED CALLS DATE 01 06 2015 06 56 49 01 06 2015 06 56 18 01 06 2015 06 55 54 01 06 2015 06 55 39 DURATION 1min8s 24s 1 5 XiVO Client 47 XiVO doc Documentation Release 15 13 Identity Xlet Overview The Id
318. g 1 74 Search voicemail for specific user 2 On user s configuration The other way is to directly add the voicemail from user s configuration in the voicemail tab General settings General Lines No answer Services Voicemail Groups Func Keys Protocol i i IAX Protocol Voice Asterisk Voicemails Phonebook Enable voicemail v Advanced ion JAE Option r IPBX settings tion v Devices Full name User Test Lines ii 4 Voicemail 1150 Groups Password Veicemaiis Conference rooms E mail management Time zone Incoming calls Outgoing calls Disable password checking J Call permissions 1 Attach the audio file v Call fiters Call pickups 1 Delete message after notification _ Schedules Calls Logs Save SSS qr SIP Protocol Fig 1 75 Add voicemail from user configuration 1 8 Administration 225 XiVO doc Documentation Release 15 13 arning In this way the language has to be set in user s general configuration Deactivating voicemail You can deactivate user s voicemail by un checking Enable voicemail option on the Voicemail tab from user s configuration N General settings Generd Lines Noanswer Services Groups Func Keys SIP Protocol REGE
319. g XiVO ISO install script install over pre installed Debian xivo upgrade Downgrades are not supported you can only upgrade to a greater version We only support upgrades to archive versions gt 13 25 e g you can upgrade a 12 16 to 14 16 but not 12 16 to 13 16 Current version before 14 18 here 13 25 apt get install xivo fai 13 25 You are now considered in an archived version see the section Upgrade from an older archive version to a newer archive version below 16 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Current version after 14 18 xivo dist xivo 15 12 apt get update apt get install xivo upgrade xivo 15 12 xivo upgrade Upgrade from an older archive version to a newer archive version Downgrades are not supported you can only upgrade to a greater version We only support upgrades to archive versions gt 13 25 e g you can upgrade a 12 16 to 14 16 but not 12 16 to 13 16 1 2 13 24 to 13 25 14 17 here 1 2 3 to 14 16 cat etc apt preferences d 50 xivo 14 16 pref EOF Package Pin release a xivo 14 16 Pin Priority 700 EOF apt get update apt get install xivo fai xivo fai skaro squeeze xivo skaro 1 2 3 apt get update apt get install xivo fai 14 16 apt get update apt get install xivo upgrade xivo 14 16 xivo upgrade rm etc apt preferences d 50 xivo 14 16 pref apt get update 13 2
320. g authentification of the server The connection is encrypted but the identity of the server is not verified CTI profiles The CTI profiles define which features are made available to a user You can configure which profile will be used by a user in the menu PBX PBX Settings Users General y Lines No answer Services Voicemail Groups Func Keys First name Alice Last name Wonderland User picture Browse Mobile phonenumber 000 Schedes I Ringing time 30 seconds Simultaneous calls 5 On Hold Music default Language Timezone 71 Caller ID Wonderland Outgoing Caller ID Default Preprocess subroutine User field 24V M _ occecscenas annus cciieneseuaancietaesascesansatusensesesasauasaueceesnseuesassenesasccceesseeceqacessenteece sn Enable XiVO Client Login alice Password ali Profile Switchboard Description You can also customize the default profiles or add new profiles in the menu CTI Server Profiles 128 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 3 Supervisor eG L 3 Agent Edit profile 7e e 3 ciem switchboard oe C noservices eo Xlets To choose which features are available to users using a profile you have to select which Xlets will be avail
321. g out AP s WPS capabilities by acting as a Registrar and using M1 from the AP The config methods attribute in that message is supposed to indicate only the configuration method supported by the AP in Enrollee role i e to add an external Registrar For that case PBC shall not be used and as such the PushButton config method is removed from M1 by default If pbc in ml1 1 is included in the configuration file the PushButton config method is left in M1 if included in config methods parameter to allow Windows 7 to use PBC instead of PIN e g from a label in the AP in ml1 1 Static access point PIN for initial configuration and adding Registrars If not set hostapd will not allow external WPS Registrars to control the access point The AP PIN can also be set at runtime with hostapd cli wps ap pin command Use of temporary enabled by user action and random AP PIN is much more secure than configuring a static AP PIN here As such use of the ap pin parameter is not recommended if the AP device has means for displaying a random PIN ap pin 12345670 Skip building of automatic WPS credential This can be used to allow the automatically generated Credential attribute to be replaced with pre configured Credential s Skip cred build 1 Additional Credential attribute s This option can be used to add pre configured Credential attributes into M8 message when acting as a Registrar If skip cred build 1 this data will also be ab
322. g paths have been renamed etc pf xivo to etc xivo var lib pf xivoto var lib xivo usr share pf xivoto usr share xivo You must update any dialplan or configuration file using these paths 2013 13 25 Consult the 13 25 Roadmap Debian has been upgraded from version 6 Squeeze to 7 Wheezy which is essentially a complete system upgrade Please consult the following detailed upgrade notes for more information 1 4 Upgrading 29 XiVO doc Documentation Release 15 13 Debian GNU Linux Wheezy Upgrade Notes Before the upgrade The upgrade will take longer than usual because the whole Debian system will be upgraded The system must be restarted after the upgrade because the Linux kernel will also be upgraded LDAPS In case XiVO is using a LDAP server through SSL TLS LDAPS the documentation instructed you to append the certificate to etc ssl certs ca certificates crt However this is the wrong way to add a new certificate because it will be erased by the upgrade To keep your certificate installed through the upgrade you must follow the instructions given in the LDAP docu mentation After the upgrade GRUB Cloned Virtual Machines only GRUB installations on cloned virtual machines may lead to un bootable systems if not fixed properly before restarting the system If xivo upgrade detects your system is in a broken state it will display a few commands to repair the GRUB installation 13 24 Consu
323. g to the IPBX menu Hover over the Services tab a dropdown menu will appear Click on Select the Users setting in the left menu From here press on the plus sign A pop up will appear where you can click on Add 8 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 root Language Engish z Connection Fig 1 5 Logging into the XiVO OS FNS test machine Percent User ux Ey 300 2 6 32 5 486 Interface Received Uptime 0 day s 00 03 35 Load average 0 31 0 10 0 03 ethi 0 00 byte Partition Percent Free Used Total data system NI 18 9090 3717 MB 869 0 4586 0 MB data var 6 30 9 2672 1 MB 181 9 MB 2854 0 MB Fig 1 6 System informations Services Configuration CTI Server Call Center Monitoring Graphics Statistics 192 168 32 169 DNS address 192 168 32 169 Uptime lo 14 76 MiB 0 day s 00 11 57 14 76 MiB Fig 1 7 Menu IPBX 1 3 Getting Started XiVO doc Documentation Release 15 13 a es digiuni Asterisk Software Asterisk Version 1 8 11 0 pf xivo 1 2 6 20120410 200254 0785f48 Cee Hes oO 9
324. ge slave services start stop is used on the slave to start stop monit and asterisk The services won t be restarted after an upgrade or restart xivo check master status master ip is used to check the status of the master and enable or disable services accordingly xivo sync is used to sync directories from master to slave 1 10 5 Limitations When the master node is down some features are not available and some behave a bit differently This includes Call history call records are not recorded Voicemail messages saved on the master node are not available Custom voicemail greetings recorded on the master node are not available Phone provisioning is disabled i e synchronizing or rebooting a phone will make it unusable until the master is back up unless you have manually configured your slave e g reconfigured the DHCP server of the slave Note that on failover and on failback DND call forwards call filtering statuses may be lost if changed recently f you are connected as an agent then you might need to reconnect as an agent when the master goes down Since it s hard to know when the master goes down if your CTI client disconnect and you can t reconnect it then it s a sign the master might be down Additionally only on failback Voicemail messages are not copied from the slave to the master i e if someone left a message on your voicemail when the master was down you won t be able to cons
325. ged from int to string REST API 1 1 examples Create User for a line and a exten 1 11 and SDK 275 XiVO doc Documentation Release 15 13 POST 1 1 users firstname John lastname Doe firstname John E Doe timezone en US TIE caller id John Doel outgoing caller id default Example response Create line POST 1 l lines sip context default device slot 1 default us eri abcdef Example request secret secret password provisioning extension 123456 xample response SST POST 1 l extensions Example request xample response Associate an extension to aline m extension id dac Example request Associate aline to auser POST 1 1 5 Lii Example request coser ine E main user true main Tine true xample response Fig 1 93 Download source source 276 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Add user line and exten with association POST 1 1 voicemail email john doe xivo io max messages 25 attach audio delete messages ask password Example request language null timezon e null max messages 25 attach audio false delete messages false ask password true Associate a User to a Vo
326. gent performance counters do not take into account transfer between agents if agent A processes a call and transfers it to agent B only the counters of agent A will be updated Ignoring any info after the call transfer Counters Answered Number of calls answered by the agent Conversation Total time spent for calls answered during a given period Login Total login time of an agent Wrapup Total time spent in wrapup by an agent Pause Total pause time of an agent Warning Data generated before XiVO 12 19 might have erroneous results for the Login time counter Note The Pause time counter only supports PAUSEALL and UNPAUSEALL command from cticlient The agent must also be a member of a least 1 queue Note Wrapup time events were added to XiVO in version 12 21 252 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Agent summary Nb of calls Total time Answered Conversation Login Pause Wrapup 2 Karine Boudoix 108 87 09 59 57 30 58 51 10 53 16 00 21 30 2 Fred Epric 100 45 01 27 52 34 59 45 05 32 45 00 07 30 2 Hipolyte Marroussou 102 13 00 24 23 27 42 47 97 50 42 00 02 10 2 G rard Mensour 101 0 00 00 00 00 00 00 00 00 00 00 00 00 2 Ir ne Pourtox 106 39 03 52 40 34 08 47 22 39 31 00 09 45 2 Juliette Queriau 107 78 09 03 51 34 06 24 91 23 52 00 19 30 B Agent per day Nb of calls Total
327. gin mmm This plugin is responsible fow instantiating and returning the DummyService It manages its life time and should take care of its cleanup if necessary mmm def load self args nmm Ignores all provided arguments and instantiate a DummyService that is returned to the core logger info dummy loaded self service DummyService return self service def unload self logger info dummy unloaded 1 6 System 89 XiVO doc Documentation Release 15 13 class DummyService BaseService mmm A very dumb service that will return an empty list every time it is used mmm def call self return View View plugins add new routes to the HTTP application in xivo dird in particular the REST API of xivo dird they define the URLs to which xivo dird will respond and the formatting of data received and sent through those URLs For example we can define a REST API formatted in JSON with one view and the same API formatted in XML with another view Supporting the directory function of a phone is generally a matter of adding a new view for the format that the phone consumes Implementation details Namespace xivo dird views Abstract view plugin BaseViewPlugin Methods load args set up resources used by the plugin depending on the config Typically register routes on Flask Those routes would typically call a service args is a dictionary containing key config the sect
328. graded from version 11 3 0 to 11 4 0 API changes e Dialplan variable XIVO INTERFACE 0 is now XIVO INTERFACE Dialplan variable XIVO INTERFACE NB and XIVO INTERFACE COUNT have been removed The following fields have been removed from the lines and users web services line num roles group rules order time rules type 13 10 Consult the 13 10 Roadmap API changes CTI protocol for messages of class getlist and function updateconfig the config ob ject dictionary does not have a rules order key anymore 13 09 Consult the 13 09 Roadmap The Restart CTI server link has been moved from Services CTI Server Control to Services gt IPBX Control The Agent Status Dashboard has been optimized The Directory xlet can now be used to place call 13 08 Consult the 13 08 Roadmap asterisk has been upgraded from version 1 8 21 0 to 11 3 0 which is a major asterisk upgrade e The switchboard s queue now requires the xivo subr switchboard preprocess subroutine A fix to bug 4296 introduced functional changes due to the order in which sub contexts are included Please refer to ticket for details Please consult the following detailed upgrade notes for more information 32 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Asterisk 1 8 to 11 Upgrade Notes Table of modules that were available in the asterisk 1 8 package but that are not available anymore in the
329. groups can be create in the Services Call management Call pickups page In the general tab you can define a name and a description for the pickup group In the Interceptors tab you can define a list of users groups or queues that can intercept calls In the Intercepted tab you can define a list of users groups or queues that can be intercepted General Interceptors 2 Intercepted Groups 4 0 items selected Remove all Add all huge 30008 pcm dev Queues Create queue Users m 3 items selected Remove all Add all 3 P re User 0500 2 Linda User 0501 3 Fernando L Ig ane User 0502 N User 0503 User 0504 User 0505 User 0506 m Enabling an Interception Extension The pickup extension can be defined in the Services Extensions page The extension used by group pickup is called Group interception it s default value is 8 Warning The extension must be enabled even if a function key is used 150 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Adding a Function Key to an Interceptor
330. gt Example request GET provd dev mgr devices 68b10c99945b4fb889f 22a7559 c3271 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json device added auto config 38e5e08ffe804b468f5aa53D9536bb25 configured true description id 38e5e08ffe804b468f5aa53b9536bb25 ap MLO S41 252272 00 208 5 4 33 5 76 model 67311 plugin xivo aastra 3 3 1 SP2 remote state sip username je5qtq vendor Aastra version 3 3 1 2235 1 11 and SDK 333 XiVO doc Documentation Release 15 13 Update a Device Query PUT provd dev_mgr devices lt device_id gt Example request PUT provd dev mgr devices 68b10c99945b4fb889f 22a7559 c3271 HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json device added auto config 38e5e08ffe804b468f5aa53D9536bb25 configured true description id 38e5e08ffe804b468f5aa53b9536bb25 19 92 1 122 mac 00208 25d 33 655 76 model 6731i plugin xivo aastra 3 4 remote state sip username je5qtq vendor Aastra version 3 3 1 2235 Example response HTTP 1 1 204 No Content Delete a Device Query DELETE provd dev
331. gt Client class people_search_result commandid lt commandid gt term Bob column headers Firstname Lastname Phone number Mobile Fax Email Agent column types null name number office number mobile fax email relation agen results column values Bob Marley 5555555 5556666 5553333 mail example com nul relations agent id null user id null endpoint id null source entry id null source my_ldap_directory column values Charlie Boblin 5555556 5554444 5552222 mail2 relations 1 agent id 12 user id 34 endpoint id 56 source entry id 34 py source internal Favorites list Client gt Server class people_favorites commandid lt commandid gt Server gt Client class people_favorites_result commandid lt commandid gt column headers Firstname Lastname Phone number Mobile Fax Email column types null name number office number mobile fax email 1 results column_values Bob Marley 5555555 5556666 5553333 mail exam relations agent_id null user_id null endpoint_id null source entry id 55 source my ldap directory le com 1 12 Contributors 397 example com nz Agent relat
332. h multiple BSSIDs or SSIDs Each line in this text file is defining a new interface and the line must include VLAN ID and interface name separated by white spac space or tab vlan file etc hostapd vlan Interface where 802 1q tagged packets should appear when a RADIUS server is used to determine which VLAN a station is on hostapd creates a bridge for each VLAN Then hostapd adds a VLAN interface associated with the interface indicated by vlan tagged interface and the appropriate wireless interfac to the bridge vlan tagged interface ethO0 RADIUS authentication server configuration hostapd can be used as a RADIUS authentication server for other hosts This requires that the integrated EAP server is also enabled and both authentication services are sharing the same configuration File name of the RADIUS clients configuration for the RADIUS server If this commented out RADIUS server is disabled radius server clients etc hostapd radius clients The UDP port number for the RADIUS authentication server radius server auth port 1812 Use IPv6 with RADIUS server IPv4 will also be supported using IPv6 API radius server ipv6 1 WPA IEEE 802 111 configuration Enable WPA Setting this variable configures t
333. hanged from 1inked caller and linked called to linked the key direction have been removed the key talkingto kind have been removed the people personal contacts message was added e the people personal contacts result message was added e the people create personal contact message was added e the people personal contact created message was added thepeople delete personal contact message was added e the people personal contact deleted message was added 15 12 people search result hasanew key in relations source entry id the people favorites message was added thepeople favorites result message was added thepeople set favorite message was added thepeople favorite update message was added 15 11 e the fax progress message was added 15 09 for messages of class history the client cannot request by mode anymore The server returns all calls and the mode is now metadata for each call 14 24 for messages of class 1pbxcommand the command record and sipnotify have been removed e the logfromclient message has been removed 1 12 Contributors 385 XiVO doc Documentation Release 15 13 14 22 e for messages of class faxsend the steps file_decoded and file converted have been removed 14 06 e the dial success message was added 14 05 the unhold switchboard command was renamed resume switchboard 13 22 e the actionfiche message was renamed
334. hboard switchboard Switchboard call on hold queue name switchboard hold XiVO Client Availability Help B b VoiceMailBox 1002 Agent 1002 Phone 1002 fiut 1002 i 0 old 8 Connected to En ligne OU appelle E Disponible 2new Unpaused No option Switchboard ax Current Call Enter Qc F4 5 Attended T Hold Hangup SS Alice Blind T ie Alice 1001 02 54 Alice Gopher B b Incoming Calls Waiting Calls F9 Carl s 1 call 1 call Dave Name Number Time Name Number Time Frank Carlos 4185551234 00 04 Frank 1006 03 14 Gnu Linux G GreatLord MacDonnell Number 1001 1007 1002 1003 1004 1006 1006 1043 10 Enter Number 7 e 218 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Answer button Call button Blind transfer button Attended transfer button Hold button Hangup button Incoming Calls list OQ A UU N Waiting Calls list jmi Directory Xlet 11 Dial Xlet Note If you don t see the Switchboard Xlet right click on the grey bar at the right of the Help menu and check Switchboard XivO Client Availability Help Dial Directory The operator can login his agent using a function key or an extension to start receiving calls Call flow Answering an incoming call When the switchboard receives a call the new ca
335. he AP to require WPA either WPA PSK or WPA RADIUS EAP based on other configuration For WPA PSK either wpa_psk or wpa_passphrase must be set and wpa_key_mgmt must include WPA PSK For WPA RADIUS EAP ieee8021x must be set but without dynamic WEP keys RADIUS authentication server must be configured and WPA EAP must be included in wpa_key_mgmt 1 12 Contributors 433 XiVO doc Documentation Release 15 13 This field is a bit field that be used to enable WPA and or WPA2 full IEEE 802 11i RSN bitO WPA bitl IEEE 802 11i RSN WPA2 dot11RSNAEnabled 7920 doesn t support WPA2 1 802 111 3 0 WPA pre shared keys for WPA PSK This ither entered as a 256 bit secret in hex format 64 hex digits wpa_psk or as an ASCII passphrase 8 63 characters that will be converted to PSK This conversion uses SSID so the PSK changes when ASCII passphrase is used and the SSID is changed psk dotllRSNAConfigPSKValue wpa passphrase dot11RSNAConfigPSKPassPhrase psk 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef wpa passphrase example password Optionally WPA PSKs can be read from a separate text file containing list of PSK MAC address pairs This allows more than one PSK to be configured Use absolute path name to make sure that the files can be read on SIGHUP configura
336. he free space on the partition before creating one You can manually create a data backup file named data manual tgzin var tmp by issuing the following commands xivo backup data var tmp data manual 1 6 5 Restore Introduction A backup of both the configuration files and the database used by a XiVO installation is done automatically every day These backups are created in the var backups xivo directory and are kept for 7 days Limitations You must restore a backup on the same version of XiVO that was backed up Be aware that this procedure applies only to XiVO gt 14 08 see 4 08 Before Restoring the System Warning Before restoring a XiVO on a fresh install you have to setup XiVO using the wizard see Running the Wizard section Stop monit and all the xivo services xivo service stop Restoring System Files System files are stored in the data tgz file located in the var backups xivo directory This file contains for example voicemail files musics voice guides phone sets firmwares provisioning server configuration database To restore the file 68 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 tar xvfp var backups xivo data tgz C Restoring the Database Warning This will destroy all the current data in your database You have to check the free space on your system partition before extracting the backups
337. heet was triggered xivo channel asterisk channel value for advanced users xivo uniqueid asterisk uniqueid value for advanced users db prefixed variables are defined when the reverse lookup returns a result For example if you want to access to the reverse lookup full name you need to define a field fullname in the directory definition mapping to the full name field in your directory The db fullname will be replaced by the caller full name Every field of the directory is acces sible this way dp prefixed ones are the variables set through the dialplan through UserEvent application For example if you want to access from the dialplan to a variable dp test you need to add in your dialplan this line in a subroutine UserEvent dialplan2cti UNIQUEID UNIQUEID CHANNEL CHANNEL VARIABLE test VALUE Salut The dp test displays Salut Sending informations during after a call After showing a sheet the XiVO Client can also send back informa tion to XiVO for post processing or archiving Here are the requirements The sheet must contain a button named save to submit information Supported widgets QCalendarWidget QCheckBox QComboBox QDateEdit 1 8 Administration 133 XiVO doc Documentation Release 15 13 QDateTime QDateTimeEdit QDoubleSpinBox QLabel QLineEdit QList QPlainTextEdit QRadioButton QSpinBox QTimeE
338. here are different modules service the public module providing possible actions It contains only business logic and no technical logic There must be no file name no SQL queries and no URLs in this module dao the private Data Access Object It knows where to get data and how to update it such as SQL queries file names URLs but has no business logic model the public class used to represent the resource It must be self contained and have almost no methods except for computed fields based on other fields in the same object notifier private it knows to whom and in which format events must be sent validator private it checks input parameters from the service module Definition of XiVO Daemon The goalis to make XiVO as elastic as possible i e the XiVO services need to be able to run on separate machines and still talk to each other To be in accordance with our goal a XiVO daemon must if applicable Offer a REST API with encryption authentication and accepting cross site requests Be able to read and send events on a software bus Be able to run inside a container such as Docker and be separated from the XiVO server Offer a configuration file in YAML format Access the XiVO database through the xivo dao library Have a configurable level of logging Have its own log file Be extendable through the use of plugins Not run with system privileges Be installable from source Currently none of th
339. hony devices automatically communicate with the slave node instead of the master one Once the master is up again the telephony devices failback to the master node Both the failover and the failback operation are done automatically i e without any user intervention although an administrator might want to run some manual operations after failback as to for example make sure any voicemail messages that were left on the slave are copied back to the master 1 10 1 Prerequisites The HA in XiVO only works with telephony devices i e phones that support the notion of a primary and backup telephony server The master and the slave must be in the same subnet If firewalling the master must be allowed to join the slave on port 5432 Trunk registration timeout expiry should be less than 300 seconds 5 minutes The HA solution is guaranteed to work correctly with the following devices 1 10 2 Quick Summary You need two configured XiVO wizard passed Configure one XiVO as a master gt setup the slave address Restart services xivo service restart on master Configure the other XiVO as a slave setup the master address Configure file synchronization by runnning the script xivo sync on master Start configuration synchronization by running the script xivo master slave db replication slave ip on the master Resynchronize all your devices Configure the XiVO Clients That s it you now have a HA configuration
340. ht corner of the page and then log in Click on the Support menu Click on the Downloads tab then on Voice amp Unified Communications Select IP Telephony then Unified Communications Endpoints then the model of your phone in this example the 7940G Click on Skinny Client Control Protocol SCCP software Choose the same version as the one shown in the plugin Download the file with an extension ending in zip which is usually the last file in the list In the XiVO web interface you ll then be able to click on the install button for the firmware The procedure is similar for the network locale and the user locale package but Instead of clicking on Skinny Client Control Protocol SCCP software click on Unified Communica tions Manager Endpoints Locale Installer Click on Linux 1 7 Ecosystem 101 Warning These phones only be used in SCCP mode They are limited to the features supported ii XiVO doc Documentation Release 15 13 Choose the same version of the one shown in the plugin e For the network locale download the file named po locale combined network cop sgn For the user locale download the file named po locale locale name cop sgn for example po locale fr FR cop sgn for the FR locale e Both files must be placed in var lib xivo provd plugins plugin name var cache di rectory Then install them in the XiVO Web Interface
341. ible to login an agent while connecting to the server 1 5 3 Xlets Xlets are features of the XiVO Client It is the contraction of XiVO applets Conference Xlet Overview The conference xlet allow the user to join conferences and view conference room statuses Usage The Conference room list tab show all available conference rooms configured on the XiVO The user can click ona conference number to join the conference When a user joins a conference his phone will ring and the conference will be joined when the user answers the phone When clicking on a conference room a new tab is opened for the selected conference room The new tab contains information about the members of the conference The name and number of the member will be displayed when available Users can also mute and unmute themselves using the microphone icon on the left Contact Xlet Overview The Contacts XLet lists the people of your company giving you access to their phone and XiVO Client status Usage The Search text input allows you to filter the list of people according to their name or phone number An empty filter displays all contacts found If the filter matches some contacts you can see contact objects Here s what a contact object looks like You can see three informations The person s full name A person icon it displays the status of its XiVO Client Usually green means connected gray means disconnected A phone icon it
342. ibutors 393 XiVO doc Documentation Release 15 13 disconnected color 202020 actions agentlogoff longname D u00e9con list of other status depends on the cti server configuration services fwdrna fwdbusy fwdunc enablednd phonestatus 16 color F7FF05 longname En Attente color FFO32D longname En ligne OU 11 BM s color ODFF25 longname Disponible color FF0008 longname Occup u00e9 1 color 000000 longname D u00e9sactiv u00e9 ams color FFFFFF longname Indisponible 2 color 030303 longname Inexistant Ng a color FF0526 longname En Ligne OU Appelle ET Sonne wg color f1BOAFF longname Sonne by ipbxcommands capaxlets zdentity grid search tab customerinfo tab TIT ax appliname Client Second message describes the current user configuration function updateconfig listname users tipbxrd ivo timenow 1361440830 99 pd WW config enablednd false class getlist Third message describes the current user status function updatestatus listname users status availstate available ei pbxaid zivo 3W class getlist ti
343. ical to use a value between 0 and 100 inclusively as the weight of a skill although any integer is accepted Skill Rule Sets Once skills are created rule sets can be defined A rule set is a list of rules Here s an example of a rule set containing 2 rules 1 WT lt 60 english gt 50 2 english gt 0 242 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 The first rule of this rule set can be read as If the caller has been waiting for less than 60 seconds WT lt 60 only try to call agents which have the skill english set to a value higher than 50 otherwise go to the next rule And the second rule can be read as Only try to call agents which have the skill english set to a value higher than 0 Let s examine some simple scenarios because there s actually some subtilities on how calls are distributed We will suppose that we have a queue with the default settings and the following members Agent A with skill english set to 75 Agent B with skill english set to 25 Scenario 1 Given Agent A is logged and not in use Agent B is logged and not in use There is no call in the queue When a new call enters the queue then it is distributed to Agent A As long as Agent A is available and doesn t answer the call the call will never be distributed to Agent B even after 60 seconds of waiting time When another call enters the queue then after 60 seconds of waiting time this
344. icemail voicemail im Example request voicemail id user id enabled true Fig 1 94 Download source source Add voicemail with association Choice and add CTI profile with association Warning Some services are still being developped and can be changed without prior w own risk Here is a list of services in BETA stage Function Keys Multiple users for a line association API reference Agent Queue Association Warning This service is experimental Service for associating an agent with a queue Association Representation 1 11 and SDK 277 XiVO doc Documentation Release 15 13 GET 1 1 cti_profiles total 4 items id 1 name Supervisor id 2 name Agent idt name Client id 3 name Switchboard Example response etl_prowle se enabled Tru Example request Fig 1 95 Download source source Field Value Description agent id int Agent s ID Description queue_id int The Queue s id penalty int The penalty value Get an Agent Queue association Query GET 1 1 queues lt queue_id gt members agents lt agent_id gt Error Error message Descrip code tion 404 Resource Not Found QueueMember was not found agent_id lt agent_id gt Errors M queue_id lt queue_id gt 404 Resource Not Found Queue
345. ics are available for the following resources CPU Entropy nterruptions IRQ Stats System Load Memory Usage Open Files Open Inodes 148 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Swap Usage Each section is presented as a series of 4 graphics daily weekly monthly and yearly history Each graphic can be clicked on to zoom All information presented is read only usctisscinsgdafoblsessi kiaciitlsactasacasbisRi cecdscRcADIRC ise Locatcesetestectecsssccdcacceussckccue dee ctescccessstesss ly wp 5 5 4 5525 54 36 6 55 5 355858 5 884 245 4 255465 4 55 5 44624 555444 55 644 Me Ba 1 8 16 Groups Groups are used to be able to call a set or users Group name cannot be general reserved in asterisk configuration 1 8 17 Group Pickup Pickup groups allow users to intercept calls directed towards other users of the group This is done either by dialing a special extension or by pressing a function key The group pickup is limited to 64 groups 1 8 Administration 149 XiVO doc Documentation Release 15 13 Quick Summary In order to be able to use group pickup you have to Create a pickup group Enable an extension to intercept calls Add a function key to interceptors Creating a Pickup Group Pickup
346. ific configuration file a firmware image and some language files Building on this configuring one of the supported phone on XiVO is as simple as 1 Configuring the DHCP Server 2 Installing the required provd plugin 3 Powering on the phone 4 Dialing the user s provisioning code from the phone And voila once the phone has rebooted your user is ready to make and receive calls No manual editing of configuration files nor fiddling in the phone s web interface Limitations Device synchronisation does not work in the situation where multiple devices are connected from behind a NAPT network equipment The devices must be resynchronised manually External links ntroduction to provd plugin model HTTP TFTP requests processing in provd part 1 HTTP TFTP requests processing in provd part 2 Basic Configuration You have two options to get your phone to be provisioned Set up a DHCP server Tell manually each phone where to get the provisioning informations You may want to manually configure the phones if you are only trying XiVO or if your network configuration does not allow the phones to access the XiVO DHCP server You may want to set up a DHCP server if you have a significant number of phones to connect as no manual intervention will be required on each phone 1 8 Administration 193 XiVO doc Documentation Release 15 13 Configuring the DHCP Server XiVO includes a DHCP server that facilitate the auto
347. igned to variables with a clear name Bad example class TestRanking unittest TestCase def test_ranking self rank Rank 1 2 3 self assertEquals rank position 1 self assertEquals rank grade 2 self assertEquals rank session 3 Good example class TestRanking unittest TestCase def test ranking self position 1 grade 2 session 3 rank Rank position grade session self assertEquals rank position position self assertEquals rank grade grade self assertEquals rank session session Tests Tests for a package are placed in their own folder named tests inside the package Example packagel init__ py modl py tests init__ py test modl py package2 init__ py mod9 py tests init spy test_mod9 py 378 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Unit tests should be short clear and concise in order to make the test easy to understand A unit test is separated into 3 sections Preconditions Preparations Thing to test Assertions Sections are separated by a blank line Sections that become too big should be split into smaller functions Example class UserTestCase unittest TestCase def test fullname self user User firstname Bob lastname Marley expected Bob Marley fullname user fullname self assertEquals expected fullname def _prepare_expected_
348. ilters Fig 1 17 General line information 1 3 Getting Started 13 XiVO doc Documentation Release 15 13 1 4 Upgrading Upgrading a XiVO is done by executing commands through a terminal on the server You can connect to the server either through SSH or with a physical console To upgrade your XiVO to the latest version you must use the xivo upgrade script You can start an upgrade with the command xivo upgrade Note You can t use xivo upgrade if you have not run the wizard yet Upgrading from a version prior to XiVO 1 2 is not supported When upgrading XiVO you must also upgrade all associated XiVO Clients There is currently no retro compatibility on older XiVO Client versions This script will update XiVO and restart all services There are 2 options you can pass to xivo upgrade d to only download packages without installing them This will still upgrade the package containing xivo upgrade and xivo service e f to force upgrade without asking for user confirmation Warning If xivo upgrade fails or aborts in mid process the system might end up in a faulty condition If in doubt run the following command to check the current state of xivo s firewall rules iptables nvL If among others it displays something like the following line notice the DROP and 5060 0 0 DROP udp 0 0 0 0 0 0 0 0 0 0 udp dpt 5060 Then your XiVO will not be able to regi
349. imeout The maximum waiting time for an answer from any source Results from sources that take longer to answer are ignored Default no timeout Back end Configuration This sections completes the Sources Configuration section csv Back end name csv Purpose read directory entries from a CSV file Limitations the CSV delimiter is not configurable currently comma Configuration Example a file inside source config dir type csv name my csv file var tmp test csv unique column id searched columns fn in format columns lastname 1 firstname fn number num With the CSV file fn 1 1 Abrams 55553783147 2 Benito 5551354958 3 Charles Curie 5553132479 file the absolute path to the CSV file unique_column the column that contains a unique identifier of the entry This is necessary for listing and identi fying favorites 92 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 CSV web service Back end name csv_ws Purpose search using a web service that returns CSV formatted results Configuration Example a file inside source_config_dir type OSv ws name a csv web service lookup url http example com 8000 ws phonebook search term reverse lookup url http example com 8000 ws phonebook phonesearch term list url http example com 8000 ws phonebook delimiter
350. ing Not yet implemented qti context default name custom protocol custom provisioning extension 438111 device slot 2 Les if rel lines custom href https xivoserver 1 1 lines custom 2 SCCP example 1 11 and SDK 299 XiVO doc Documentation Release 15 13 Warning Not yet implemented context default name SCCP 1234 protocol Nscep provisioning extension 382731 device slot 1 rel lines href https xivoserver 1 1 lines_sccp 3 List Lines Query GET 1 1 lines Example request GET 1 1 lines HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json total items 3 Ly context default name alb2c4 protocol sip provisioning_extension 342395 device_slot 1 device_id 2b63136208fb117335ce874e65eba2a3 Wlainks lt 2 rel ines sip href https xivoserver 1 1 lines_sip 1 ra 2 context default name custom protocol custom provisioning_extension 438111 device_slot 2 device id 4c63136208fb117g35ce874e6eeba25e links rel lines custom href https xivoserver 1 1 lines custom 2 300 Chapter 1 Table of Contents
351. ing command find var lib xivo provd plugins xivo aastra name tpl exec sed i X xivo ph Update the Templates If you can t or don t want to update to a newer plugin you can instead update the templates used by the plugin This can be done either before or after the upgrade You ll have to 1 Update the templates so that the directory is accessed via HTTP 2 Restart synchronize all your phones In this specific case it is safe to directly modify the templates used by the plugin instead of creating custom templates To update the templates you can use the following command find var lib xivo provd plugins xivo aastra name tpl exec sed i X xivo ph 22 Chapter 1 Table of Contents nebook ip s nebook_ip s XiVO doc Documentation Release 15 13 Re enable SSL 3 0 If you can t restart synchronize your phones the last solution is to re enable SSL 3 0 on your XiVO This should only be used as a temporary solution to give you more time to plan a firmware upgrade for your phones This can be done only after the upgrade You ll have to 1 Update nginx configuration 2 Reload nginx This can be done using the following commands sed i s ssl protocols ssl protocols SSLv3 TLSv1 TLSv1 1 TLSv1 2 etc nginx sites availabl service nginx reload 14 19 Consult the 14 19 Roadmap 14 18 Consult the 14 18 Roadmap xivo fai packages were replaced with xivo dist a
352. ings Voice mails page Adding voicemail There are 2 ways to add a voicemail First is with Services IPBX IPBX settings Voicemails page 2nd is editing user s configuration 1 Via Services IPBX IPBX settings Voicemails In here you can add some voicemails and configure them by clicking on the plus button No voicemail found SIP Protocol Fig 1 73 Add voicemail from voicemails menu Once your voicemails are configured you have to edit the users configuration to search the voicemails previously created and then associate them to your users IPBX General settings 71 General Lines No answer Services Moicemai Groups Func Keys SIP Protocol IAX Protocol Voice Mail Asterisk Voicemails Phonebook Enable voicemail wf Advanced jon Search v IPBX settings prion Search Y Devices Search filter Use Lines Full name User test Users 1150Gdefault Groups Voicemail Voicemails Y Conference rooms Password management E mail Incoming calls Outgoing calls Time zone v N Call permissions Disable password checking gt Call fiters Call pickups Amachtheaudofie v Schedules Delete message after notification _ Calls Logs Trunk management i 5 SIP Protocol save JAX Protocol Fi
353. ins reload xivo cisco spa 7 5 4 Disable plugin caching Edit etc xivo provd provd conf and add the line cache plugin True Empty var cache xivo provd and restart provd Make your changes in provd plugins update the plugin version to the new one and upload to testing see below Now every time you uninstall install the plugin the new plugin will be fetched from testing instead of being cached even without changing the version Uploading to testing Before updating a plugin it must be passed through the testing phase Once it has been approved it can be uploaded to the production server Important Before uploading a plugin in the testing provd repository make sure to git pull the xivo provd plugins git repository To upload the modified plugin in the testing repo on provd xivo io you can execute the following command make upload Afterwards in the web interface you must modify the URL in section Configuration Provisioning General to 414 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 http provd xivo io plugins l testing You can then update the list of plugins and check the version number for the plugin that you modified Don t forget to install the plugin to test it Mass install all firmwares related to a given plugin Using xivo provd cli on a xivo server one can mass install firmwares Following example installs all firmwares f
354. internal context gt with your internal context Some places where you might want to add this preprocess subroutine is on queues and outgoing calls to be able to transfer the called person to another extension 1 14 2 Fax detection XiVO does not currently support Fax detection The following describe a workaround to use this feature The behavior is to answer all incoming external call wait for a number of seconds 4 in this example if a fax is detected receive it otherwise route the call normally Note This workaround works only on incoming calls towards an User and an User only e if the incoming trunk is a DAHDI or a SIP trunk if the user has a voicemail which is activated and with the email field filled XiVO 13 08 needs asterisk 11 Be aware that this workaround will probably not survive any upgrade 1 In the Web Interface and under Services IPBX IPBX configuration Configuration files add a new file named fax detection conf containing the following dialplan 1 14 Troubleshooting 457 XiVO doc Documentation Release 15 13 Fax Detection pre user global faxdetection exten s l NoOp Answer call to be able to detect fax if call is external AND user has an eme same n Gotolf XIVO_CALLORIGIN extern return same GotoIf XIVO_USEREMAIL return same Set FAXOPT faxdetec
355. invocation is cti proxy ctisave xivo new tmp cti client tmp cti server To do comparison it s often useful to strip some fields cti proxy ctisave xivo new tmp cti client tmp cti server strip timenow strip commandid strip replyid One useful thing to do with files generated from different ctisave invocation is to compare them with a tool like vimdiff for example File Edit View Terminal Tabs Help etienn 54 x etienn rootQ X X x x x etienn x etienn X X XiVO CTI Server Version xx on Linux skaro new 2 6 32 5 686 if 0 CTI Server Version xx on Linux skaro new 2 6 32 5 686 t class login id class login id version 7777 xivoversion 1 2 version 7777 xivoversion 1 2 capalist capalist client client 22311 limes lt lt lt 5 2 2 1 2 222 1 1 15 4 311 Lines gt 2 2 5 2 5 2 5244414 24 2 2 enablexfer false entityid 1 firstname User fullname User B1 incallfilter false lastname B1 enablexfer false entityid 1 firstname User fullname User Bl incallfilter false lastname Bl loginclient userbl mobilephonenumber profileclient client ringseconds
356. ion nul XiVO doc Documentation Release 15 13 column values Charlie Boblin 5555556 5554444 5552222 mail2 relations agent_id 12 user id 34 endpoint id 56 source entry id 34 Ly source internal 1 Set favorite Client gt Server class people_set_favorite source my ldap directory source entry id 55 favorite true commandid lt commandid gt Server Client class people_favorite_update source my_ldap_directory source entry id 55 favorite true commandid lt commandid gt Personal contacts list Client gt Server class people_personal_contacts commandid lt commandid gt Server gt Client class people_personal_contacts_result commandid lt commandid gt column_headers Firstname Lastname Phone number Mobile Fax Email column types null name number office number mobile fax email 1 results column values Bob Marley 5555555 5556666 5553333 mail exam relatuzons 1 agent id null user id null endpoint id null source entry id abcd 12 Py source personal hy column_values Charlie Boblin 5555556 5554444 5552222 mail2 relations agent_id null user_id null 398 Chapter 1 Table of Contents
357. ion of the configuration file for all views in dict form key services a dictionary of services indexed by name which may be called from a route key http app the Flask application instance key rest Flask RestFul Api instance unload free resources used by the plugin Example The following example adds a simple view G ET 0 1 directories ping answers message pong dummy py coding utf 8 import logging from flask restful import Resource logger logging getLogger name class PingViewPlugin object name ping def init J self logger debug dummy view created def load self args logger debug dummy view args 5 args 90 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 args rest api add resource PingView 0 1 directories ping def unload self logger debug dummy view unloaded class PingView Resource mmm Simple API using Flask Restful GET 0 1 directories ping answers pong mmm def get self return message pong Stock Plugins Documentation View Plugins default_json View name default_json Purpose present directory entries in JSON format The format is detailed in http api xivo io headers View name headers Purpose List headers that will be available in results from default_4json view personal view View name personal view Purpose Expos
358. ip 00123456789 This example defines 3 users John Doe with one SIP line with number 1000 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Fig 1 70 Import Users George Clinton with one SIP line with number 1001 Bill Bush with one SIP line with number 1002 Note Note that the number you use must all be in the range you defined for your default context Text file to add a simple user with a line and voicemail entityid firstname lastname language phonenumber context protocol voicemailname voic 1 John Doe en_US 1000 default sip John Doe 1000 1234 pmailmailbox Text file to add a simple user with a line and incall entityid firstname lastname phonenumber context protocol incallexten incallcontext 1 John Doe 1000 default sip 2050 from extern Function keys Function keys can be configured to customize the user s phone keys Key types are pre defined and can be browsed through the Type drop down list The Supervision field allows the key to be supervised A supervised key will light up when enabled In most cases a user cannot add multiple times exactly the same function key example two user function keys pointing to the same user Adding the same function key multiple times can lead to undefined behavior and generally will delete one of the two function keys Warning SCCP device only supports type Customize
359. is voicemail associated to a user voicemail before deleting it 404 Voicemail with uniqueid X does not exist The requested voicemail was not found or does not exist Query DELETE 1 1 voicemails id Example request DELETE 1 1 voicemails 1 HTTP 1 1 Host xivoserver 326 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example response HTTP 1 1 204 No Content Voicemail Languages Warning Not yet implemented Returns a list of languages that can be used when creating or updating a voicemail Query GET 1 1 voicemails languages Example request GET 1 1 voicemails languages HTTP 1 1 Host xivoserver Content Type application json Example response HTTP 1 1 200 OK Content Type application json total 7 items de DI en fr CA it IT nl NL Voicemail Timezones Warning Not yet implemented Returns a list of timezones that can be used when creating or updating a voicemail Query GET 1 1 voicemails timezones Example request GET 1 1 voicemails timezones HTTP 1 1 Host xivoserver Content Type application json Example response HTTP 1 1 200 OK Content Type application json totals 7 1 11 and SDK 327 XiVO doc Documentation Release 15 13 items
360. is event the user must send the Unregister user status update command data a dictionary containing 3 fields user id is an integer containing the ID of the user affected by this status change xivo_uuid a string containing the UUID of the XiVO that sent the status update status a string containing the new status of the user based on the cti profile configuration Note When multiple XiVO share user statuses the cti profile configuration for presences and phone statuses should match on all XiVO to be displayed properly Server Client class user status update data user jud 42 ivo uuid ethe xivo uuid status status name The user status update event contains the same data as the user status update The latter should be preferred to the former for uses that do not require a persistent connection to xivo ctid CTI server implementation In the git repository git github com xivo pbx xivo ctid git e cli config handles the configuration coming from the WEBI e interfaces interface ami together with asterisk ami definitions amiinterpret and xivo ami handle the AMI connections asterisk interfaces interface info handles the CLI like connections 408 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 interfaces interface webi handles the requests and signals coming from the WEBI interfaces interface cti handles the clien
361. is is used for NTP configuration prior to etc ntp conf Remove it and restart NTP check NTP synchroniza tion status then it should work 1 6 11 Proxy Configuration If you use XiVO behind an HTTP proxy you must do a couple of manipulations for it to work correctly apt Create etc apt apt conf d 90proxy file with the following content Acquire http Proxy http domain username password proxyip proxyport provd Proxy information is set via the Configuration Provisioning General page dhcp update This step is needed if you use the DHCP server of the XiVO Otherwise the DHCP configuration won t be correct Proxy information is set via the etc xivo dhcpd update conf file Edit the file and look for the proxy section xivo fetchfw This step is not needed if you don t use xivo fetchfw Proxy information is set via the etc xivo xivo fetchfw conf file Edit the file and look for the proxy section 1 6 12 Purge Logs Keeping records of personal communications for long periods may be subject to local legislation to avoid personal data retention Also keeping too many records may become resource intensive for the server To ease the removal of such records xivo purge db is a process that removes old log entries from the database This allows keeping records for a maximum period and deleting older ones By default xivo purge db removes all logs older than a year 365 days xivo purge db
362. it 1 2 IEEE 802 1X bit 2 4 RADIUS bit 3 8 WPA bit 4 16 driver interfac bit 5 32 IAPP bit 6 64 MLME Levels minimum value for logged events 0 verbose debugging 1 debugging 2 informational messages 3 notification 4 warning 1 12 Contributors 423 XiVO doc Documentation Release 15 13 logger syslog 1 logger syslog level 2 logger stdout 1 logger stdout level 2 Dump file for state information on SIGUSR1 dump file tmp hostapd dump Interface for separate control program If this is specified ho will create this directory and a UNIX domain socket for listenin from external programs CLI GUI etc for status information an configuration The socket file will be named based on the interf stapd to requests d than one interface is used var run hostapd is the recommended directory for sockets and by hostapd cli will use it when trying to connect with hostapd ctrl interface var run hostapd Access control for the control interface can be configured by se directory to allow only members of a group to use sockets This possible to run hostapd as root since it needs to change networ configuration and open raw sockets and still allow GUI CLI comp ac name So multiple hostapd processes interfaces can be run at the same time if more default tting the way it is k onents to be be used to run as non root users However since the
363. ite to open a program on your computer Program xivoclient exe Address callto 1602 V Always ask before opening this type of address Allowing web content to open a program can be useful but it can potentially harm your computer Do not allow it unless you trust the source of the content What s the risk 1 5 XiVO Client 55 XiVO doc Documentation Release 15 13 Internet Explorer Security This program does not have a valid digital signature that verifies its publisher This program will open outside of Protected mode putting your computer at risk You should only run programs from publishers you trust FH Name rogram Files x86 VXiVO yivoclient exe Publisher Unknown Publisher not show me the warning for this program again carl Simply click on allow to dial the number using the XiVO Client Note If you do not want these warnings to appear each time do not forget to check uncheck the checkbox at the bottom of the popups Ubuntu Currently callto or tel links are only supported in Firefox There is no configuration needed GNU Linux Debian Currently callto ortel links are only supported in Firefox If the XiVO Client is not listed in the proposi tion when you open the link browse your files to find usr bin xivoclient Manual association in Firefox If for some reason Firefox does not recognize callto ortel URIs you can manually associate them to the XiVO Client usi
364. ivo amid etc xivo auth etc xivo call logd etc xivo confd etc xivo confgend client etc xivo ctid etc xivo dird etc xivo dxtora etc xivo purge db etc xivo usr 1 local sbin usr share xivo XIVO VERSION var 1 var 1 var 1 var 1 var 1 lib asterisk lib consul Lib xivo provd Lib xivo log asterisk var spool asterisk The following files folders are excluded from this backup folders var lib xivo provd plugins x var cache x var spool asterisk monitor var spool asterisk meetme log files coredump files audio recordings and files greater than 10 MiB or folders containing more than 100 files if they belong to one of these folders var lib xivo sounds var lib asterisk sounds custom var lib asterisk moh var spool asterisk voicemail var spool asterisk monitor 1 6 System 67 XiVO doc Documentation Release 15 13 Database Creating a database backup file manually Warning A backup file may take a lot of space on the disk You should check the free space on the partition before creating one You can manually create a database backup file named db manual tgz in var tmp by issuing the following commands xivo backup db var tmp db manual Creating a data backup file manually Warning A backup file may take a lot of space on the disk You should check t
365. ize The user can also set his outgoing caller ID to anonymous General ines No answer Services Voicemail Groups Func Keys First name User1 Last name User picture Browse Mobile phone number Schedules Ringing time 30 seconds Simultaneous calls 5 z On Hold Music default v Language fr FR v Timezone 21 Caller ID User1 Outgoing Caller ID Customize gt Bob 5555551234 Subroutine preprocess User field gt 132552 52 5 2 20558 2245 5 se sesecseceses Enable XiVO Client Login pascal Password pascal Profile Client Description RE The order of precedence when setting the caller ID in multiple place is the following 1 Internal 2 User s outgoing caller ID 3 Outgoing call 4 Default caller ID 1 8 21 Interactive Voice Response Introduction Interactive voice response IVR is a technology that allows a computer to interact with humans through the use of voice and DTMF tones input via keypad In telecommunications IVR allows customers to interact with a company s host system via a telephone keypad or by speech recognition after which they can service their own inquiries by following the IVR dialogue Wikipedia The IVR function is not yet available in graphic mode in XiVO This functionality is currently supported using scripts al
366. l 1 cti profiles HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json 2 items 1 name Client ig 2 name Agent Get CTI Profile Query GET 1 1 cti_profiles lt id gt Example request GET 1 1 cti profiles 1 HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json id 1 284 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 name Client Devices Device Representation Field Values Description id string Read only ip string formatted as an IP address IP address 10 0 0 0 mac string formatted as a MAC address MAC address aa bb cc dd ee ff sn string Serial number vendor string Vendor name model string Device model version string Firmware version plugin string Provisioning plugin to be used by the device description string ee configured configured Device is config autoprov ured and ready to be used Description not configured autoprov Device can be pro visionned using a provision ing code not configured Device has not been completely config ured options object List of standard keys switchboard a boolean in dicating if this de
367. l Date Caller Called Period user Field 2013 01 01T01 00 00 sourcel 1001 2001 1 2013 01 02T00 00 00 source2 1002 2002 2 userfield Configuration 282 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Parameter Values Description Configuration parameters live reload bool Get live reload status Query GET 1 1 configuration live_reload Example requests GET 1 1 configuration live_reload HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json enabled true rel configuration href https xivoserver 1l 1 configuration live reload Change live reload status Query PUT 1 1 configuration live reload Example request PUT 1 1 configuration live reload HTTP 1 1 Host xivoserver Content Type application json enabled false Example response HTTP 1 1 204 No Content CTI Profiles CTI Profiles representation Field Values Description Description id integer Read only name string Display name 1 11 and SDK 283 XiVO doc Documentation Release 15 13 Example nag 1 name Client CTI Profiles list Query GET 1 1 cti profiles Example requests Listing all available CTI profiles GET 1
368. ld like your phone to display the name of the called person instead of the dialed number only To achieve this you must change the following SIP options e Services gt IPBX General settings SIP Protocol Default Trust the Remote Party ID yes Send the Remote Party ID select PAI Incoming caller number display The caller ID number on incoming calls depends on what is sent by your operator You can modify it via the file etc xivo asterisk xivo callerid conf Note The reverse directory lookup use the caller ID number after it has been modified by xivo in callerid conf Examples If you use a prefix to dial outgoing numbers like a 0 you should add a 0 to all the add sections e You may want to display incoming numbers in E 164 format For example you can change the nationall section to callerid 0 1 9 d 8 strip 1 add 33 To enable the changes you have to restart xivo agid service xivo agid restart 1 2 Installation 7 XiVO doc Documentation Release 15 13 Time and date Configure your locale and default time zone device template gt Configuration Provisioning Template Device by editing the default template e Configure the timezone in gt Services IPBX General settings Advanced Timezone If needed reconfigure your timezone for the system dpkg reconfigure tzdata Codecs You should also select default
369. le response HTTP 1 1 204 No Content Line Extension Association Warning This service is DEPRECATED Please use Line Extension Associations instead Association Representation Field Value Description Description line_id int Line s ID Read only extension_id int Extension s ID Get the Extension associated to a Line Query GET lines lt line_id gt extension Error code Error message Description Errors 404 Line with id lt line_id gt does not exist 404 Line with id lt line_id gt does not have an extension 308 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example Request GET lines 34 extension Host xivoserver Accept application json Example Response HTTP 1 1 200 OK Content Type application json line xd 34 extension id 12 rel lines_sip href https xivoserver 1 rel extensions href https xivoserver 1 1 lines_sip 34 l extensions 12 Get the Line associated to an Extension Query GET extensions extension id line Error code Error message Description Errors 404 Extension with id lt extension_id gt does not exist 404 Extension with id lt extension_id gt does not have a line Example Request GET extensions 48 line Host xivoserver Accept ap
370. le to override the Credential attribute that would have otherwise been automatically generated based on network configuration This configuration option points to an external file that much contain the WPS Credential attribute s as binary data extra cred hostapd cred Credential processing 0 process received credentials internally default 1 do not process received credentials just pass them over ctrl iface to external program s 2 process received credentials internally and pass them over ctrl iface to external program s Note With wps cred processing 1 skip cred build should be set to 1 and extra cred be used to provide the Credential data for Enrollees wps cred processing 1 will disabled automatic updates of hostapd conf file both for Credential processing and for marking AP Setup Locked based on validation failures of AP PIN An external program is responsible on updating the configuration appropriately in this case Wps cred processing 0 AP Settings Attributes for M7 By default hostapd generates the AP Settings Attributes for M7 based on the current configuration It is possible to override this by providing a file with pre configured attributes This is similar to extra cred file format but the AP Settings attributes are not encapsulated in a Credential attribute ap settings hostapd ap settings WPS UPnP interface If set support for external Registrars is enabled upnp_iface br0
371. led in the REST API documentation Specifying no start date returns all available call logs Specifying a start date and no end date returns all call logs from start date until now REST API Call logs are also available from the REST API See Call Logs Manual generation Call logs can also be generated manually To do so log on to the target XiVO server and run xivo call 1logs To avoid running for too long in one time the call logs generation is limited to the N last unprocessed CEL entries default 20 000 This means that successive calls to 11 1 045 will process more CELs making about N 10 more calls available in call logs going further back in history while processing new calls as well You can specify the number of CEL entries to consider For example to generate calls using the 100 000 last unprocessed CEL entries xivo call logs c 100000 1 8 6 CLI Tools XiVO comes with a collection of console CLI tools to help administer the server xivo dist xivo dist is the xivo repository sources manager It is used to switch between distributions production develop ment release candidate archived version Example use cases switch to production repository xivo dist xivo five 124 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 switch to development repository xivo dist xivo dev e switch to release candidate repository xivo dist xivo
372. lerts UM UR General Template line Template device Plugins Apply network configuration Apply system configuration Fig 1 61 Editing the xivo cisco sccp legacy plugin Now if you connect your first SCCP phone you should be able to see it in the device list Listing the detected devices Services IPBX IPBX settings Devices SIP Protocol Protocol Voicemails Phonebook Advanced Devices Lines Users Groups Voicemails 10 97 5 103 Cisco xivo cisco sccp legacy 1 27 NET S eae oh eee ea eae RETE 2 Existent the provisioning server inexistent on the provisioning server Device properly configured Device configured in autoprov mode Device not configured check if a plugin is installed for this device Fig 1 62 Device list When connecting a second SCCP phone the device will be automatically detected as well SIP Protocol IAX Protocol Voicemails Phonebook Advanced Devices Lines Users Groups Voicemails Conference rooms 00 17 5a 4a a3 6d 10 97 5 102 Cisco 7941G xivo cisco sccp legacy mE 00 1a 22 7abb fc 10 97 5 103 Cisco 7912G xivo cisco sccp legacy Existent on the provisioning server In
373. lient implementations that do not handle he new version number correctly they seem to drop the frames completely In order to make hostapd interoperate with these clients the version number can be set to the older version 1 with this configuration value apol version 2 1 12 Contributors 429 XiVO doc Documentation Release 15 13 Optional displayable message sent with EAP Request Identity The first 0 in this string will be converted to ASCII 0 nul This can be used to Separate network info comma separated list of attribute value pairs see e g RFC 4284 ap message hello ap_message hello Onetworkid netw nasid foo portid 0 NAIRealms example com WEP rekeying disabled if key lengths are not set or are set to 0 Key lengths for default broadcast and individual unicast keys 5 40 bit WEP also known as 64 bit WEP with 40 secret bits 13 104 bit WEP also known as 128 bit WEP with 104 secret bits wep_key_len_broadcast 5 wep_key_len_unicast 5 Rekeying period in seconds 0 do not rekey i e set keys only once wep_rekey_period 300 EAPOL Key index workaround set bit7 for WinXP Supplicant needed only if only broadcast keys are used apol_key_index_workaround 0 EAP reauthentication period in seconds default 3600 seconds 0 disable reauthentication ap_reauth_period 3600 Use PAE group address 01 80 c2 00 00 03 instead of indi
374. ll be added to call the field value Currently only the last mobile field will be displayed name a decoration will be added to the field value typically a color dot showing the presence status of the contact e g Disconnected Available Away 1 6 System 95 XiVO doc Documentation Release 15 13 number the field value will be added a decoration typically a color dot showing the status of the phone of the contact e g Offline Ringing Talking replaced with a button to call the contact with your phone when using the mouse personal the boolean field value will be used to show a deletion action for the contact Personal contacts e id company email fax firstname lastname mobile number Launching xivo dird Here are the list of available attributes of a private contact usage xivo dird h c CONFIG FILE d f optional arguments h help c CONFIG FILE config file CONFIG FILE d debug f foreground 1 LOG L u USI ER user USI 7 1 LOG LEVEL u USER show this help message and exit The path where is the config file Default etc xivo dird c Log debug messages Overrides log level Default False Foreground don t daemonize Default False EVEL log level LOG LEVEL Logs messages with LOG LEVEL details Mu
375. ll is added to the Incoming Calls list on the left and the phone starts ringing The user can answer this call by clicking on any call in the list clicking the Answer button pressing the Enter key Note The XiVO Client must be the active window for the keyboard shortcuts to be handled The operator can select which call to answer by clicking directly on the incoming call pressing F6 to select the incoming calls frame and pressing the up and down arrow keys Selecting a call to answer while talking will not answer the call Once the call has been answered it is removed from the incoming calls list and displayed in the Current Call frame Making a Call The switchboard operator can do the following operations Press the Call button or press F3 Search for the call destination in the directory xlet Press to confirm the selection and start the call 1 8 Administration 219 XiVO doc Documentation Release 15 13 Hanging Up a Call The switchboard operator can hang up its current call by either Clicking the Hangup button e Pressing the F8 key If the operator has placed a new call via the Directory or Dial xlet and that call has not yet been answered he can cancel it in the same way Distributing a call Once the call has been answered and placed in the current call frame the operator has 3 choices transfer the call to another user using the Blind transfer button or the F4 key using the
376. ller ID number normalization since XiVO 13 11 Some configuration must be in place to enable reverse directory lookups Match reverse fields The Match reverse directories field in Services CTI Server Directories Definitions should contains the fields that are used by the reverse lookup The list is comma separated and each field that appears in this list must also appear in the Value column of the Mapped Fields section or the reverse lookup won t work Example phonebooknumber office number phonebooknumber mobile number phonebooknumber home number This line would match office home and mobile numbers on incoming calls Name xivodir URI phonebook Y Delimiter Direct match phonebook firstname phonebook lastname phonebook Match reverse directories phonebooknumber office number phonebooknumber m lt lt Mapped fields Fieldname Value B company phonebook society firstname phonebook firstname fullname phonebook fullname lastname phonebook lastname fati phonebook email mobile phonebooknumber mobile number ia phone phonebooknumber office number fati reverse phonebook society l home phonebooknumber home number l Displayed field You have now to define which field should be used to display the result
377. lt if this name already exists in the result it will be replaced with the new value The syntax is a python format string See https docs python org 2 library string html formatspec for a complete reference XiVO dird developer s guide NY main pw Config file di instanciate Source config load Plugin manager load initialize add route Fig 1 26 xivo dird startup flow The XiVO dird architecture uses plugins as extension points for most of its job It uses stevedore to do the plugin instantiation and discovery and ABC classes to define the required interface Plugins in xivo dird use setuptools entry points That means that installing a new plugin to xivo dird requires an entry point in the plugin s setup py Each entry point s namespace is documented in the appropriate documentation section These entry points allow xivo dird to be able to discover and load extensions packaged with xivo dird or installed separately Each kind of plugin does a specific job There are three kinds of plugins in dird 1 Back End 2 Service 1 6 System 85 XiVO doc Documentation Release 15 13 3 View HTTP request Flask JSON encode Choose sources and wait for them Query real source Store contacts Idap avencall com mes contacts csv Idap example com Fig 1 27 xivo dird HTTP query All plugins are instantiated by the core The core then keeps a catalogue of loaded extensions that c
378. lt the 13 24 Roadmap e Default Quality of Service QoS settings have been changed for SCCP The IP packets containing audio media are now marked with the EF DSCP 13 23 Consult the 13 23 Roadmap The New call softkey has been removed from SCCP phones in connected state To start a new call the user will have to press Hold then New call This is the same behavior as a Call Manager Some softkeys have been moved on SCCP phones We tried to keep the keys in the same position at any given time As an example the transfer key will not become End call while transfering a call Note that this is a work in progress and some models still need some tweaking 13 22 Consult the 13 22 Roadmap PostgreSQL will be upgraded from 9 0 to 9 1 The upgrade of XiVO will take longer than usual depending on the size of the database Usually the database grows with the number of calls processed by XiVO The upgrade will be stopped if not enough space is available on the XiVO server 13 21 Consult the 13 21 Roadmap tis no more possible to delete a device associated to a line using REST API 13 20 Consult the 13 20 Roadmap xivo libsccp now supports direct media on wifi phone 7920 and 7921 xivo confd now implements a voicemail list 30 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 13 19 13 17 13 16 13 15 13 14 Since XiVO 13 18 was not released the 13 19 release contains all developments of
379. lue Description line_id integer Line s ID Description main_user boolean Read only True if the user is the first to have been associated to the line main_line boolean Read only To be implemented later Always true links list The links to the related resources Get the Lines associated to a User Query GET 1 1 users lt user_id gt lines Error code Error message Description Errors 404 User with id user id does not exist Example request GET 1 1 users 20 lines Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json Lots d items user 20 line_id 132 main_user true main line true Iinks s Inest href rel users href https xivoserver 1 1 lines 132 https xivoserver 1 1 users 20 Associate a Line to a User Query POST 1 1 users lt user_id gt lines Field Required Values Description Input line_id yes int Must be an existing id 1 11 API and SDK 319 XiVO doc Documentation Release 15 13 Error code Error message Description 400 Nonexistent parameters user_id lt user_id gt does not exist Errors 400 Nonexistent parameters line_id lt line_id gt does not exist 400 Invalid parameters user is already associate
380. ly You will only need NSIS installed if you want to create an installer for the XiVO Client NSIS download page During the installer choose the full installation The XiVO Client NSIS script file uses the NSIS Application Association Registration Plug in Download and extract the plug in and place the DLL from Plugins in the NSIS Plugins folder NSIS Application Association Registration Plug in download page Get sources a Cygwin shell git clone git github com xivo pbx xivo client qt git cd xivo client qt Building Path configuration You must change the values C Cygwin home user xivo client qt build deps to match the paths of your installed programs You must use an editor capable of understanding Unix end of lines such as Notepad Replace C with cygdrive c and backslashes with slashes You must respect the case of the directory names Paths containing spaces must be enclosed in double quotes For example if you installed NSIS in C Program Files x86 nsis you should write WIN NSIS PATH cygdrive c Program files x86 nsis 444 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Build Ina Cygwin shell source build deps export PATH SWIN_QT_PATH bin SWIN_MINGW_PATH bin SPATH qmake mingw32 make Binaries are available in the bin directory The version of the executable is taken from the git describe command Launch You ca
381. ly configured This means there s usually no need to modify static files in var tftpboot And this is a bad idea since a plugin upgrade will override these files Custom template for every devices 200 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 cp templates base tpl var templates vi var templates base tpl xivo provd cli c devices using plugin xivo aastra 3 3 1 SP2 reconfigure Once this is done if you want to synchronize all the affected devices use the following command xivo provd cli c devices using plugin xivo aastra 3 3 1 SP2 synchronize Custom template for a specific model Let s supose we want to customize the template for our 67391 cp templates 6739i tpl var templates vi var templates 6739i tpl xivo provd cli c devices using plugin xivo aastra 3 3 1 SP2 reconfigure Custom template for a specific device To create a custom template for a specific device you have to create a device specific template named device specific file with extension tpl in the var templates directory I e for Aastra phone if you want to customize the file 00085D2EECFB cfg you will have to create a template file named 00085D2EECFB cfg tpl I e for a Snom phone if you want to customize the file 000413470411 xml you will have to create a template file named 000413470411 xml tpl for a Polycom phone if you want to
382. m model 720 yerslon Vos Tegs Lng plugin xivo snom 8 7 3 19 description null status configured options null Lemplate id defaultconfigdevice LEAKS Ts rel devices href https xivoserver 1l 1 devices 6ff76e09a7ab51ec3afel52a63324ff9 Get Device Query GET 1 1 devices lt id gt Parameters id Device s id Error code Error message Description Errors 404 Not found The requested device was not found Example request 1 11 and SDK 287 XiVO doc Documentation Release 15 13 GET 1 1 devices 412c212cff500cc158f373ff 00e078f7 HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json id 412c212cff500cc158 373 00e078 7 ripe 10 070 I mac 00 00 5e 00 00 01 sone vendor Aastra model 6731i version 3 2 2 plugin xivo aastra 3 2 2 SP3 description null status configured options null template id defaultconfigdevice rel devices href https xivoserver 1 1 devices 412c212cff500cc158 373 00e078 7 Create a Device Query POST 1 1 devices Field Required Values Description ip no string see above mac no string see above sn no string see above Input
383. m 79 XiVO doc Documentation Release 15 13 Usage xivo auth is used through HTTP requests using HTTPS Its default port is 9794 As a user the most common operation is to get a new token This is done with the POST method Alice retrieves a token using her username password S Alice creates a new token using the xivo_user backend curl k X POST H Content Type application json u alice s3cre7 https localhost 9497 0 data issued at 2015 06 05710 16 58 557553 token 182361 6c6a 0cdc d869 964a7 08a7 In this example Alice used here XiVO CTI client login and password The authentication source is determined by the backend in the POST data Alice could also have specified an expiration time on her POST request The expiration value is the number of seconds before the token expires After retrieving her token Alice can query other services that use xivo auth and send her token to those service Those services can then use this token on Alice s behalf to access her personal storage If Alice wants to revoke her token before its expiration curl k X DELETE H Content Type application json https localhost 9497 0 1 token 1823cle Usage for services using xivo auth A service that requires authentication and identification can use xivo auth to externalise the burden of authentica tion The new service can then accept a token as part of its operations to authe
384. m TE133 TE131 cards that are in firmware version 780017 or earlier Digium TE435 TE235 cards that are in firmware version e0017 or ealier Warning The system will need to be power cycled after the upgrade Your cards will not be usable until then After the upgrade First you need to install the latest firmware for your TE133 TE131 or TE435 TE235 cards xivo fetchfw install digium te133 xivo fetchfw install digium te435 Then stop all the services and reload the DAHDI modules Reloading the DAHDI module might take up to 30 seconds xivo service stop service dahdi stop service dahdi start Following this manipulation you should see something similar at the end of the var log messages file dahdi Telephony Interface Unloaded dahdi Version 2 9 2 dahdi Telephony Interface Registered on major 196 wctel3xp 0000 03 0c 0 Firmware version 780017 is running but we require version 780019 wctel3xp 0000 03 0c 0 firmware agent loaded dahdi fw tel33 bin into memory wctel3xp 0000 03 0c 0 Found dahdi fw tel33 bin version 780019 Preparing for flash wctel3xp 0000 03 0c 0 Uploading dahdi fw tel33 bin This can take up to 30 seconds wctel3xp 0000 03 0c 0 Delaying reset Firmware load requires a power cycle wctel3xp 0000 03 0c 0 Running firmware version 780017 wctel3xp 0000 03 0c 0 Loaded firmware version 780019 Will load after next power cycle wctel3xp 0000 03 0c 0 FALC version
385. mail lt explanation gt See explanation for more details 400 Error while creating Voicemail number A voicemail with the same number already lt number gt already exists exists Use another number 400 Invalid parameters password Only numeric passwords are supported 400 Invalid parameters number lt number gt must be The string must only have positive numbers a sequence of positive numbers Errors 400 Invalid parameters max messages must be Only positive integers are accepted greater than 0 400 Nonexistent parameters context lt context gt The context used by the voicemail does not exist does not exist You must create the context first 400 Nonexistent parameters language lt language gt Consult Voicemail Languages for a list of does not exist available languages 400 Nonexistent parameters timezone lt timezone gt Consult Voicemail Timezones for a list of does not exist available timezones 400 Missing parameters lt list of missing fields gt Example request POST 1 1 voicemails HTTP 1 1 Host xivoserver Accept application json Content Type application json name John Doe number 1000 context default Example response HTTP 1 1 201 Created Location 1 1 voicemails 1 Content Type application json gg wq name John Doe number 1000 Context default password null email null pager null language null timezone eu
386. may translate them there The prompts used in XiVO are stored in xivo sounds git repository XiVO Client All translations are in Transifex xivo client The source language is English Translations are synchronised with the code before every release Web Interface Translations are currently available in French and English There are no plans to translate the Web interface in other languages 1 12 7 Style Guide Syntax License Python files start with a UTF8 encoding comment and the GPLv3 license A blank line should separate the license from the imports 374 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example FR FR SR ORR Coding UET ex Copyright C 2013 Avencall This program is free software you can redistribute it and or modify it under the terms of the GNU General Public License as published by the Free Software Foundation either version 3 of the License or at your option any later version This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU General Public License for more details You should have received a copy of the GNU General Public License along with this program not see http www gnu org licenses import argparse Spacing Lines should not go further tha
387. mber telephoneNumber dE s v Fig 1 32 Adding a LDAP Filter In the Display name section add and order the attributes that are going be used to display the results The first attribute will be used for each result which have this attribute else the second will be used etc The Phone number section is similar but is used for the phone number in the results Use a Custom Filter In some cases you might have to use a custom filter for your search requests instead of the default filter By default the search tries to match any attribute you choose in the Attributes tab In custom filters occurrence of the pattern Q is replaced by what the user entered on its phone Here s some examples of custom filters e cn SOx e amp cn Qx mail example org e cn SQx displayName 0Q 116 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Add a LDAP filter to the Phonebook In the Services General settings Phonebook page click on the LDAP filters page and add your filter to the list of enabled filters Please refer to the Remote directory section in order to properly configure a remote directory You ll then be able to search your LDAP server directly from your phone and dial from the displayed results Use with CTI Server and Client XiVO Add a LDAP Directory Filter to the CTI Server the Services
388. mber 400 Invalid parameters ordering parameter you must use one of the fields available in a lt field gt does not exist device when sorting a list 400 Invalid parameters direction parameter use either asc or desc as a direction when direction does not exist sorting a list Example requests List all devices GET 1 1 devices HTTP 1 1 Host xivoserver Accept application json List 10 devices sorted by mac address GET 1 1 devices limit 10 amp order mac HTTP 1 1 Host xivoserver Accept application json Search for devices containing the term aastra GET 1 1 devices search aastra HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json 286 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 items id 412c212cff500cc158 373 00e078 7 pies SEO S00 EP mac 00 00 5e 00 00 01 snes end vendor Aastra model 6731i Version 3 2 2 plugin xivo aastra 3 2 2 SP3 description null status configured options null Lemplate id defaultconfigdevice cu rel devices href https xivoserver 1l 1 devices 412c212cff500cc158 373f 00e078 7 id 6ff76e09a7ab51ec3afel52a63324ff9 ope TEO 0 0327 mac 00 00 5e 00 00 02 enw lt onu vendor Sno
389. me message than the dial message with a source fied The source field is user xivo lt userid userid is replaced by a user identifer returned by the message getting Users configuration list Example class ipbxcommand command originate commandid 1683305913 source destination user xivo 34 exten xivo 1202 Hangup Client Server class ipbxcommand command hangup channelids commandid Cchan xivo channel id command id For example class ipbxcommand command hangup channelids commandid 177773016 chan xivo SIP im2p7kzr 00000003 Server Client clase ipbxcommand command hangup ipbxreply 1 replyid 177773016 timenow 1395756534 64 Login Once the network is connected at the socket level the login process requires three steps If one of these steps is omitted the connection is reseted by the cti server login id the username is sent as a login to the cti server cti server answers by giving a sessionid e login pass the password combined with the sessionid is sent to the cti server cti server answers by giving a capaid login capas the capaid is returned to the server with the phone state cti server answers with a list of info relevant to the user 1 12 Contributors 391 XiVO doc Documentation Release 15 13
390. meaningful values inside XiVO see Integration of XiVO dird with the rest of XiVO field the key of the data from the source that will be used for this field The display may be used by a plugin view to configure which fields are to be presented to the consumer profile to display A dictionary associating a profile to a display It allows xivo dird to use the right display when a consumer makes a query with a profile The key is the profile name and the value is the display name 1 6 System 83 XiVO doc Documentation Release 15 13 services section This section is a dictionary whose keys are the service plugin name and values are the configu ration of that service Hence the content of the value is dependent of the service plugin See the documentation of the service plugin Stock Plugins Documentation sources section This section is a dictionary whose keys are the source name and values are the configuration for that source See the Sources Configuration section for more details about source configuration Sources Configuration There are two ways to configure sources in the sources section of the main configuration e in files of a directory one file for each source Default directory location etc xivo dird sources d Files format YAML File names are ignored Each file listed in this directory will be read and used to create a data source for xivo dird Here is an example of a CSV source configuration in its own
391. menow 1361440830 99 Others call form result This message is received when a call form is submitted from a client to the XiVO Client gt Server class call form result commandid lt commandid gt infos buttonname saveandclose variables XIVOFORM varnamel valuel XIVOFORM varname2 value2 394 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 History e size Size of the list to be sent by the server Client gt Server history commandid lt commandid gt size ON xuserid lt xivoid gt lt userfeaturesid gt Server gt Client Send back a table of calls duration in seconds extension caller destination extension fullname caller ID name mode 0 sent calls 1 received calls 2 missed calls Terassi history history calldate 2013 03 29 08 44 35 273998 duration 30 148765 extension 844201 fullname Alice Wonderland mode 0 calldate 2013 03 28 16 56 48 071213 duration 58 134744 extension 41400 fullname 41400 mode 1 1 replyid 529422441 timenow 1364571477 33 Chitchat Class chaitkehat text message envoye Lo lt xivoid gt lt userfeaturesid gt commandid lt commandid gt featuresget featuresput Directory Request directory information names mat
392. mgr devices device id Example request DELE provd dev_mgr devices 68b10c99945b4 b889 22a7559 c3271 1 1 Host xivoserver Example response HTTP 1 1 204 No Content Synchronize a Device Query POST provd dev_mgr synchronize Example request 334 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 POST provd dev_mgr synchronize HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json id d035bccaf0dd4a8396fc57a3329ca0a4 Example response HTTP 1 1 201 Created Location provd dev mgr synchronize 42 The URI returned in the Locat ion header points to an operation in progress resource Reconfigure a Device Query POST provd dev_mgr reconfigure Error code Error message Description 400 invalid device ID Errors Example request POST provd dev mgr reconfigure HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json id d035bccaf0dd4a8396fc57a3329ca0a4 Example response HTTP 1 1 204 No Content Push DHCP Request Information Query POST provd dev mgr dhcpinfo Example request POST provd dev mgr dhcpinfo HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json dhcp info 192 168 1 100 mac 00211 2243
393. mode pickup Group Interception calllistening Listen to online calls directoryaccess Directory access fwdundoall Disable all forwaring enablevm Enable Voicemail vmusermsg Consult the Voicemail vmuserpurge Delete messages from voicemail Field Type Value Transfer transfer string Type of transfer Possible values blind attended 298 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Field Type Value User user id numeric User s id Lines The resource lines only provides read operations Modifications can only be done on protocol specific lines see below Generic Lines Line Representation Description Field Values Description id int Read only context string The name of an internal context name string The name of the line protocol string only value sip Read only provisioning extension string Code used to provision a device device slot int line s position on the device device id string ID of the device associated to the line links list The links to the resource SIP example iame I context default name alb2c4 protocol sip provisioning extension 342395 device slot 1 device id 2b63136208fb117335ce874e65eba2a3 Links s rel lines href https xivoserver 1l 1 lines sip 1 Custom example Warn
394. mple Purpose demonstrate how to create your own archive plugin Activate Plugin Each plugin needs to be explicitly enabled in the configuration of xivo purge db Here is an example of file added in etc xivo purge db conf d enabled plugins archives sample sample py The following example will be save a file in tmp xivo purge db sample with the following content Save tables before purge 365 days to keep sample file tmp xivo purge db sample def sample plugin config with open sample file w as output output write Save tables before purge 0 days to keep format config days to keep Install sample plugin following setup py shows an example of a python library that adds a plugin to xivo purge db usr bin env python coding utf 8 from setuptools import setup from setuptools import find packages setup 1 6 System 77 XiVO doc Documentation Release 15 13 name xivo purge db sample plugin version 0 0 1 description An example program packages find packages entry points xivo purge db archives sample xivo purge db sample sample sample plugin 1 1 6 13 XiVO service XiVO has many running services To restart the whole stack the xivo service command can be used to make sure the service is restarted in the right order Usage Show all services status xivo service status Stop
395. mpletion feature or CCSS for Call Completion Supplementary Services in XiVO allows for a caller to be automatically called back when a called party has become available To illustrate let s say Alice attempts to call Bob 2 Bob is currently on a phone call with Carol though so Bob rejects the call from Alice and Alice hears a message saying that Bob is busy 3 Alice then dials 40 to request call completion 4 Once Bob has finished his phone call Alice will be automatically called back by the system 5 When she answers Bob will be called on her behalf This feature has been introduced in XiVO in version 14 17 Description Call completion can be used in two scenarios when the called party is busy Call Completion on Busy Subscriber when the called party doesn t answer Call Completion on No Response We have already discussed the busy scenario in the introduction section Let s now illustrate the no answer scenario 1 Alice attempts to call Bob 2 Bob doesn t answer the phone Alternatively Alice hangs up before Bob has the time to answer the call 3 Alice then dial 40 to request call completion 4 When Bob s phone becomes busy and then is no longer busy Alice is automatically called back 5 When she answers Bob will be called on her behalf The important thing to note here is step 4 Bob s phone needs to become busy and then no longer busy for Alice to be called back This means that if Bob was away when Alice
396. n otherwise the filter will not return any results Context and filter association The new Display filter has to be assigned to the switchboard directory context You can then choose which directories will be searched by the Xlet Warning You must not select internal directory as it is already handled LDAP Configuration To search in ldap directories you must have an LDAP server configured See LDAP for more details LDAP filter If you already have an LDAP filter configured for the Remote directory Xlet you can use it If not please refer to Add a LDAP Filter 44 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 CTI Server a Eeoa General settings General switchboard directory v Profiles Disi iter 5 play filter switchboard Presences Directories E Phone hints i Directories Seach 1 Definitions Reverse directories i internal xivodir Direct directories Openkdep __ Display filters Sheets Models Events v Control Restart CTI server Description Save Include the new directory for lookup You must use the new LDAP filter in the Context and filter association step Fax Xlet Overview The Fax xlet allows the user to send faxes
397. n Release 15 13 Example Span 1 TE4 0 1 TE4XXP PCI Card 0 Span 1 MASTER group 0 11 context from extern switchtype euroisdn signalling pri cpe channel gt 1 15 17 31 Span 2 4 0 2 TEAXXP PCI Card 0 Span 2 group 0 12 context from extern switchtype euroisdn signalling pri cpe channel 32 46 48 62 Span 3 4 0 3 TE2XXP PCI Card 0 Span 3 group 2 13 context from pabx overlapdial incoming switchtype euroisdn signalling pri_net channel gt 63 77 79 93 Span 4 TE4 0 4 TAXXP PCI Card 0 Span 4 group 2 14 context from pabx overlapdial incoming switchtype euroisdn signalling pri net channel 94 108 110 124 Passthru function Create the from pabx context Create a file named xxxxx conf where xxxxx is the customer name in the directory etc asterisk extensions extra d Add the following lines in the file f rom pabx exten X 1 NoOp Appel depuis Pabx exten _X n goto default EXTEN 1 This dialplan allows to route incoming calls from the PBX in the default context of XiVO Then calls are routed Or to a SIP phone in default context Orto the outgoing to extern context included in default context Create the to extern context In the webi create a context named to pabx Name to pabx Display Name to pabx Context type Outcall In
398. n 80 to 100 characters n python indentation blocks use 4 spaces n PHP indentation blocks use tabs mports should be ordered alphabetically e Separate module imports and f rom imports with a blank line Example import argparse import datetime import os import re import shutil import tempfile from StringIO import StringlO from urllib import urlencode PEP8 When possible use pep8 to validate your code Generally the following errors are ignored E501 max 80 chars per line Example pep8 ignore E501 xivo cti When possible avoid using backslashes to separate lines Bad Example user session query User filter User firstname firstname filter User lastname lastname filter User number number all 1 12 Contributors 375 XiVO doc Documentation Release 15 13 Good Example user session query User filter User firstname firstname filter User lastname lastname filter User number number all Strings Avoid using the operator for concatenating strings Use string interpolation instead Bad Example phone interface SIP username password Good Example phone interface SIP s s username password Comments Redundant comments should be avoided Instead effort should be put on making the code clearer Bad Example Add the meeting to
399. n No Answer Forward the call to another destination if the user does not answer function fwd Client gt Server class featuresput commandid 1705419982 function fwd value destrna 1003 enablerna true Server gt Client class getlist config destrna 1003 enablerna true function updateconfig listname users ilg timenow 1361456966 89 tipbxid xivo Forward On Busy Forward the call to another destination when the user is busy function fwd Client gt Server class featuresput commandid 568274890 function fwd value destbusy 1009 enablebusy true Server gt Client class getlist config destbusy 1009 enablebusy true function updateconfig listname users WaWw Limenow 1361457163 77 tipbxid xivo Statistics Subscribe to queues stats This message can be sent from the client to enable statitics update on queues Client gt Server commandid 36 class subscribetoqueuesstats Server gt Client 1 12 Contributors 401 XiVO doc Documentation Release 15 13 Get queues stats When statistic update is enable by sending message Subscribe to queues stats The first element of the message is the queue id stats 10 Xivo LoggedAgents 0 class getqueues
400. n in context parkedcallstimeout You can define this context in a dialplan configuration file Service IPBX Configuration Files where you may define this context with dialplan commands Example parkedcallstimeout exten s l Noop park call time out same Playback hello world same Hangup It is also usual to define supervised phone keys to be able to park and unpark calls as in the example below 1 8 26 Phonebook A global phone book can be defined in PBX Service gt Phone book The phone book can be used from the XiVO client from the phones directory look key if the phone is compatible and are used to set the Caller ID for incoming calls 186 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Gon Push park calls Call is parked here DXX OEE Push to talk to caller 1 8 Administration 187 XiVO doc Documentation Release 15 13 Look for the next call Parkings hints Sf Allow dynamically created parkinglots On parkedcal imeout Send parked the z Who to play courtesy tone when picking up parked call Caler gt Allow based transfers when picking up parked call None gt Allow based parking when picking up parked call None gt Allow based hangups when picking up parked call None gt Allow based one touch recording when picking up parked
401. n launch make make Binaries are available in the bin directory The version of the executable is taken from the git describe command Build options To generate debug symbols make DEBUG yes To compile the unit tests of the XiVO Client qmake CONFIG tests or if you have a recent version of Google Mock e g on Debian Wheezy CONFIG tests CONFIG gmock To compile the XiVO Client ready for functional tests make FUNCTESTS yes Cleaning make distclean Launch You can launch the built executable with LD LIBRARY PATH bin bin xivoclient Package To create the Debian package usable on Debian and Ubuntu you first need to modify build deps to locate the Qt 5 installation directory path to qt5 bin qmake spec linux g 4 make make pack This will result in a Geb file in the current directory The version of the package is taken from the git describe command Building the XiVO Client on Mac OS This page explains how to build an executable of the XiVO Client from its sources for Mac OS Mac OS Prerequisites Developer tools You will need an Apple developer account to get development tools such as GCC To log in or sign in go to the Developer portal of Apple In the Downloads section get the Command line Tools for XCode and install them You might want to get XCode too but it is rather big 446 Ch
402. n launch the built executable with source build_deps PATH SWIN_QT_PATH bin PATH bin xivoclient Package To create the installer mingw32 make pack This will result in a exe file in the current directory Build options add a console CONFIG console To generate debug symbols mingw32 make Dl EBUG yes Clean mingw32 make distclean Building the XiVO Client on GNU Linux platforms This page explains how to build an executable of the XiVO Client from its sources for GNU Linux Prerequisites Qt5 library development website Ubuntu packages qt5 default qt5 qmake qttools5 dev tools qttools5 dev The currently supported Qt version is 5 4 1 e openGL development library libGL Debian package 1ibgl1 mesa dev Git Debian package git Generic software building tools make g Debian package build essential Get sources bash shell git clone git github com xivo pbx xivo client qt git Building You need to have the Qt5 binaries qmake lrelease in your PATH Launch qmake to generate the Makefile 1 12 Contributors 445 XiVO doc Documentation Release 15 13 cd xivo client qt path to qt5 bin qmake This will also generate a file versions mak that contains version informations about the code being compiled It is necessary for compilation and packaging You can the
403. n s musicclass setting instead The WaitMusicOnHold dialplan application was deprecated and has been removed Users of the application should use MusicOnHold with a duration parameter instead The SIPPEER dialplan function no longer supports using a colon as a delimiter for parameters The param eters for the function should be delimited using a comma 18 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 The SIPCHANINFO dialplan function was deprecated and has been removed Users of the function should use the CHANNEL function instead For SIP the codec preference order in an SDP during an offer is slightly different than previous releases Prior to Asterisk 13 the preference order of codecs used to be 1 Our preferred codec 2 Our configured codecs 3 Any non audio joint codecs Now in Asterisk 13 the preference order of codecs is 1 Our preferred codec 2 Any joint codecs offered by the inbound offer 3 All other codecs that are not the preferred codec and not a joint codec offered by the inbound offer Queue strategy rrmemory Round robin memory now has a predictable order Members will be called in the order that they are added to the queue For agents this means they will be called in the order they are logged When performing queue pause unpause on an interface without specifying an individual queue the PAUSE ALL UNPAUSEALL event will only be logged if at least one member of any queue exis
404. n will try to upgrade the firmware of an handset over the air OTA if the following conditions are met Handset with firmware 26 40 0 15 or later Base station with firmware 25 40 0 15 or later Handset with hardware 26 0 0 6 or later Otherwise you ll have to manually upgrade the handset firmware via USB In all cases you should consult the Yealink documentation on Upgrading W52x Handset Firmware Note Some function keys are shared with line keys Supported expansion modules Yealink EXP38 for Yealink T26P T28P 106 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Yealink EXP39 for Yealink T26P T28P Yealink EXP40 for Yealink T46G T48 Caption Community Supported Devices The community supported devices are only supported by the community In other words maintenance bug corrections and features are developed by members of the XiVO community XiVO does not officially endorse support for these devices xivo provd plugins for these devices can be installed from the community supported devices repository Aastra 67001 and 90001 series 7 Fkeys XiVO HA 67301No 8 Yes 675BiYes 6 Yes 675yiYes 30 Yes 914BiYes 7 Yes 948DiNo 6 Yes 948000 6 Yes Alcatel Lucent IP Touch series Model Tested Fkeys XiVO HA 4008 Extended Edition Yes 4 No 4018 Extended Edition Yes 4 No
405. name lastname number number unique_column is not configurable its value is always id xivo Back end name xivo Purpose add users from a XiVO may be remote as directory entries Configuration Example a file inside source_config_dir type xivo name my_xivo confd_config https True host xivo example com port 9486 version 1 1 username admin password password timeout 3 unique_column id searched_columns firstname lastname format_columns number exten mobile mobile_phone_number confd_config host the hostname of the XiVO more precisely of the xivo confd service confd_config port the port of the xivo confd service usually 9486 confd_config version the version of the xivo confd API should be 1 1 Integration of XiVO dird with the rest of XiVO Configuration values Views the main configuration file of xivo dird in the views section the following keys are interpreted and displayed in xlet people of the XiVO Client title The title will be shown as a header for the column type agent the field value will be ignored and replaced by an icon showing the status of the agent assigned to the contact e g green icon for logged agent red icon for unlogged agent e favorite the boolean field value will be replaced by an icon showing if the status is favorite yellow star filled or not yellow star empty mobile adropdown action on the number field wi
406. names are in CamelCase File names are in lower_underscore_cas Conventions for functions prefixed by find Return None when nothing is found Return an object when a single entity is found Return the first element when multiple entities are found Example def find by username username users userl user2 user3 user search user for user in users if user username username if len user search 0 return None return user 0 Conventions for functions prefixed by get Raise an Exception when nothing is found Return an object when a single entity is found Return the first element when multiple entities are found Example def get user userid users userl user2 user3 user search user for user in users if user userid userid if len user search 0 raise UserNotFoundError userid return user 0 1 12 Contributors 377 XiVO doc Documentation Release 15 13 Conventions for functions prefixed by find_all Return an empty list when nothing is found Return a list of objects when multiple entites are found Example def find all users by username username users userl user2 user3 user_search user for user in users if user username username return user_search Magic numbers Magic numbers should be avoided Arbitrary values should be ass
407. nd queueunpause commandid 822604987 member agent xivo Add an agent ina queue Client gt Server class ipbxcommand command queueadd commandid 542766213 member agent xivo 3 Remove an agent from a queue Client gt Server class ipbxcommand command queueremove commandid 742480296 member agent xivo 1 12 Contributors 387 XiVO doc Documentation Release 15 13 Listen to an agent Client gt Server class ipbxcommand command listen commandid 1423579492 destination Configuration The following messages are used to retrieve XiVO configuration Common fields class getlist function listid commandid tipbxid listname Name of the list to be retreived users phones agents queues voicemails queuemembers commandid 489035169 Ei 2 2555426 Users configuration Return a list of configured user id s Client gt Server class getlist commandid 489035169 function listid listname user Server gt Client class getlist function listid listname users list 11 n2 14 EM 3 a now tipbxid zxxvo timenow 1362735061 17 User configuration Return a user configuration tid is the
408. nds wpa gmk rekey 86400 aximum lifetime for PTK in seconds PTK to mitigate some attacks against wpa ptk rekey 600 This can be used to enforce rekeying of TKIP deficiencies Enable IEEE 802 11i RSN WPA2 pre authentication This is used to speed up roaming be pre authenticating IEEE 802 1X EAP part of the full RSN authentication and key handshake before actually associating with a new AP dot11RSNAPreauthenticationEnabled 434 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 rsn_preauth 1 Space separated list of interfaces from which pre authentication frames are accepted e g ethO or ethO wlanOwdsO This list should include all interface that are used for connections to other APs This could include wired interfaces and WDS links The normal wireless data interface towards associated stations e g wlan0 should not be added since pre authentication is only used with APs other than the currently associated one rsn_preauth_interfaces eth0 peerkey Whether PeerKey negotiation for direct links IE allowed This is only used with RSN WPA2 0 disabled default 1 enabled peerkey 1 I 802 11 15 ieee80211w Whether management frame protection MFP is enabled 0 disabled default 1 optional 2 required ieee80211w 0 Association SA Query maximum timeout in TU 1 024 ms for MFP
409. ne Q I want to use the Page application to call many phones at the same time A Here a Page example for a one way call half duplex exten gt 1000 1 Verbose 2 Paging to external cisco phone same n Page sccp 100 autoanswer amp sccp 101 autoanswer i 120 for a two way call full duplex exten gt 1000 1 Verbose 2 Paging to external cisco phone same n Page sccp 100 autoanswer amp sccp 101 autoanswer di 120 Network Configuration for 7920 7921 Here s how to to configure a hostapd based AP on a Debian host so that both a 7920 and 7921 Wi Fi phone can connect to it The 7920 is older than the 7921 and is pretty limited in its Wi Fi functionnality 802 11b WPA no WPA2 422 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 TKIP no CCMP AES Which means that the most secure WLAN you can set up if you want both phones to connect to it is not that secure 1 Make sure you have a wireless NIC capable of master mode 2 If needed install the firmware lt vendor gt package For example if you have a ralink card like I do ap t get install firmware ralink 3 Install the other dependencies ap t get install wireless tools hostapd bridge utils 4 Create an hostapd configuration file in etc hostapd hostapd sccp conf with content in b hostapd configuration file
410. new WPS Registrar are not accepted but previously authorized Registrars including the internal one can continue to add new Enrollees ap setup locked 1 436 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Universally Unique IDentifier UUID see RFC 4122 of the device This value is used as the UUID for the internal WPS Registrar If the AP is also using UPnP this value should be set to the device s UPnP UUID If not configured UUID will be generated based on the local MAC address uuid 12345678 9abc def0 1234 56789abcdef0 Note If wpa psk file is set WPS is used to generate random per device PSKs that will be appended to the wpa psk file If wpa psk file is not set the default PSK wpa psk wpa passphrase will be delivered to Enrollees Use of per device PSKs is recommended as the more secure option i e make sure to set wpa psk file when using WPS with WPA PSK When an Enrollee requests access to the network with PIN method the Enrollee PIN will need to b ntered for the Registrar PIN request notifications are sent to hostapd ctrl iface monitor In addition they can be written to a text file that could be used e g to populate the AP administration UI with pending PIN requests If the following variable is set the PIN requests will be written to the configured file Wps pin requests var run hostapd pin requests Device Name User friendly descripti
411. new device in the devices list 8 You can now provision the phones by typing the provisioning code you get it in the Lines list 9 Quit Jitsi again configuration syncing is not available with the Jitsi plugin 10 And launch Jitsi again you should now be connected with you phone account 1 8 28 SCCP Configuration Activating DHCP Server Configuration Network DHCP Activating DHCP Integration Configuration Provisioning General Installing a plugin for SCCP Phone Configuration Provisioning Plugins Review SCCP general settings Services gt IPBX IPBX settings SCCP general settings 1 8 Administration 203 XiVO doc Documentation Release 15 13 Management xivo cisco sccp 9 2 1 Plugin for Cisco 7941G and 7941G GE in version 9 2 1 of the SCCP 0 18 8 95kb 7 ges xivo cisco sccp legacy Plugin for Cisco 7940G in version 8 1 2 of the SCCP software 018 7 Directories Web Services Access Certificates Fig 1 59 Installing xivo cisco sccp plugin Enable direct media Dialtimeout 5 Default language Codecs 4 Customize codecs Disabled codecs 1 items selected Remove all Add an 2 G 729A Audio 6 711 u law Audio G 711 A law Audio mirum aM E MEE ME Ema M E assem me er rt Fig
412. new tool to handle repositories sources Upon upgrade xivo dist is installed and run and all xivo fai packages are purged Consult xivo dist use cases 14 17 Consult the 14 17 Roadmap e DAHDI configuration file etc dahdi modules is no more created by default and must now be main tained manually No action is needed upon upgrade but be aware that the upstream sample file is now available in usr share dahdi modules sample See dahdi modules documentation for detailed info The new CCSS feature will not be enabled upon upgrade you must explicitly enable it in the JPBX Services Extensions menu 14 16 Consult the 14 16 Roadmap See the changelog for xivo confd s REST API e DAHDI is upgraded to 2 10 0 If the upgrade process asks about et c dahdi modules we recommend that you keep the old version of the file Asterisk now inserts CEL and queue log entries via the ODBC asterisk modules instead of the pgsql mod ules 14 15 Consult the 14 15 Roadmap Duplicate function keys will be deleted upon upgrade If multiple function keys pointing to the same des tination are detected for a given user only the one with the lowest position will be kept To see the list of deleted function keys check the xivo upgrade log file such as grep MIGRATE FK var log xivo upgrade log 1 4 Upgrading 23 XiVO doc Documentation Release 15 13 DAHDI 2 9 2 Upgrade Notes These notes only apply to e Digiu
413. ng 55 Valid choice 1 Callto 8001 2 Callto 8002 3 Return to the previous menu gt Closed Playback ivr example schedule closed 182 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 exten i n error Playback GV_DIRECTORY_SOUNDS ivr example error exten i n Hangup dp ivr submenu exten s 1 NoOp dp ivr submenu same n NoOp the system answers the call and waits for 1 second before continuing same n Answer 1000 same n NoOp variable counter is set to 0 same n beginning Set counter 0 same n NoOp variable counter is incremented and the label start is defined same n start Set counter counter 11 same n NoOp counter variable is now counter same n NoOp waiting for 1 second before reading the message that indicate all choices same n Wait 1 same n NoOp play the message ivr example choices that contain all choices same n Background GV_DIRECTORY_SOUNDS ivr example submenu choices same n NoOp waiting for DTMF during 5s same n Waitexten 5 CHOICE 1 exten 1 1 NoOp pressed digit is 1 redirect to 8000 in IVR_DESTINATION_CONTEXT context 1 n Goto IVR_DESTINATION_CONTEXT 8000 1 exten CHOICE 2 exten 2 1 NoOp pressed digit is 2 redirect to 8001 in IVR_DESTINATION_CONTEXT context exten 2 n Goto IVR
414. ng a preprocess subroutine on an agent and are answering the channel in this subroutine See http projects xivo io issues 5693 When using SCCP phones the connected line information on the phones are not updated after a transfer See http projects xivo io issues 5695 15 12 Consult the 15 12 Roadmap 1 4 Upgrading 19 XiVO doc Documentation Release 15 13 The certificate used for HTTPS in the web interface will be regenerated if the default certificate was used Your browser will complain about the new certificate and it is safe to accept it see 3656 See also HTTPS certificate If you have an HA configuration then you should run xivo sync i on the master node to setup file synchronization between the master and the slave File synchronization will then be done automatically every hour via rsync and ssh xivo auth and xivo dird now use HTTPS if you have custom development using these services update your configuration accordingly 15 11 Consult the 15 11 Roadmap The call records older than 365 days will be periodically removed The first automatic purge will occur in the night after the upgrade See Purge Logs for more details 15 10 Consult the 15 10 Roadmap 15 09 Consult the 15 09 Roadmap 15 08 Consult the 15 08 Roadmap The Dialer Xlet has been integrated in Identity Xlet 15 07 Consult the 15 07 Roadmap 15 06 Consult the 15 06 Roadmap The provd client h
415. ng containing the UUID of the XiVO that sent the status update status a string containing the new status logged in or logged Server Client class agent status update datats 4 agent id 42 Xivo uuid lt the xivo uuid gt Status lt status name gt The agent_status_update event contains the same data as the agent_status_update The latter should be preferred to the former for uses that do not require a persistent connection to xivo ctid Register endpoint status update register endpoint status update command is used to register to the status updates of a list of lines Once registered to a endpoint s status the client will receive all Endpoint status update events for the registered agents This command should be sent when a endpoint is displayed in the people xlet to be able to update the agent status icon The Unregister endpoint status update command should be used to stop receiving updates Client gt Server class register endpoint status update endpoint ids lt xivo uuid gt lt gt xivo uuid cendpoint id2 406 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 4 lt xivo uuid gt endpoint idn commandid lt commandid gt Unregister endpoint status update The unregister_endpoint_status_update command is used to unregister from the
416. ng on busy NT N N Y N N Y Y Enable Disable forwarding unconditional NT N N Y N N Y Y Voicemail Functions Enable voicemail with supervision function NT N N N N N N N Reach the voicemail NT N N SK N N HK HK Delete messages from voicemail NT N N Y N N Y Y Agent Functions Connect Disconnect a static agent NT N N Y N N Y Y Connect a static agent NT N N Y N N Y Disconnect a static agent NT N N Y N N Y Y Parking Functions Parking NT N N N N N N N Parking position NT N N N N N N N Paging Functions Paging NT N N Y N N Y Y Perles XIVO s SCCP implementation To install firmware for xivo cisco sccp plugins you need to manually download the firmware files from the Cisco website and save them in the var lib xivo provd plugins plugin name var cache directory This directory is created by XiVO when you install the plugin i e xivo cisco sccp legacy If you create the directory manually the installation will fail Warning Access to Cisco firmware updates requires a Cisco account with sufficient privileges The account requires paying for the service and remains under the responsibility of the client or partner Avencall is not responsible for these firmwares and does not offer any updates For example if you have installed the xivo cisco sccp legacy plugin and you want to install the 7940 7960 fw networklocale and userlocale fr FR package you must Go to http www cisco com Click on Log In in the top rig
417. ng the following steps 1 Type about config in the URL bar Click the be careful I promise button to close the warning Right click anywhere in the list and select New gt Boolean Enter network protocol handler external callto as preference name A WwW N Select false as value 6 Repeat steps 3 to 6 but replace callto by tel at step 4 The next time that you click on a telephone link Firefox will ask you to choose an application You will then be able to choose the XiVO client for handling telephone numbers 56 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 6 System 1 6 1 DHCP Server XiVO includes a DHCP server that must be used to address telephony devices Basic Configuration of the VOIP subnet This section describes how to configure DHCP server for other subnets or with advanced options Activation of DHCP server DHCP Server can be activated through the XiVO Web Interface Configuration Network DHCP SSS eee Active Pool start Pool end Extra network interfaces 9 Save Mr ES Fig 1 19 Configuration Network DHCP By default it will only answer to DHCP requests coming from the VoIP subnet defined in the Configuration Network Interfaces section If you need to activate DHCP server on an other interface you have to fill the Extra network interfaces field with for example et hO After saving your modification
418. ns were tested on different type of french BRI lines with success Note The pre requisites are XiVO gt 14 12 Use per port dahdi interconnection see the DAHDI interconnections section If you don t know which one to configure we recommend that you try each one after the other in this order 1 PTMP without layerl layer2 persistence 2 PTMP with layerl layer2 persistence 3 with layerl layer2 persistence PTMP without layerl layer2 persistence In this mode we will configure asterisk and DAHDI to use Point to Multipoint PTMP signalling and to leave Layerl and Layer2 DOWN Follow theses steps to configure 1 Before the line include dahdi channels conf etc asterisk chan dahdi conf the following lines add in file layerl presenc ignore layer2 persistenc leave down 2 In the file etc asterisk dahdi channels conf use bri_cpe_ptmp signalling 1 8 Administration 155 XiVO doc Documentation Release 15 13 Signalling bri_cpe_ptmp 3 Create the file etc modprobe d xivo wcb4xxp conf to deactivate the layer persistence touch etc modprobe d xivo wcb4xxp conf 4 Fill it with the following content options wcb4xxp persistentlayer1 0 5 Then apply the configuration by restarting the services xivo service restart Note Expected behavior The dahdi show status command should show the BRI spans in RED status if ther
419. nstead of when the destination answers 2 Given the agent is on an ACD call When the agent logs out When the agent hangs up the ACD call When the agent logs back in via CTI Client Then the agent may be seen as outgoing non ACD communication whether there is a non ACD com munication or not To make the agent Not in use again make a non ACD call and hangup 3 Given the agent is on ACD call When the agent calls someone else e g his supervisor When the ACD call hangs up while the agent talks to his supervisor Then the agent is seen as available instead of in outgoing non ACD communication This applies to all kinds of non ACD calls Changing the disposition The disposition of the Xlet can be changed in two ways Placement of queues Which queues are displayed The disposition is saved whenever the XiVO Client is closed and restored when it is opened again Changing the placement of queues The little windows containing each queue can be resized and moved around That way any layout can be achieved according to the size and importance of each queue Choosing which queues are displayed There is a little contextual menu when right clicking on the title bar of every queue window Checking unchecking the lines of this menu shows hides the associated queue Known issues There is no profile containing this xlet The profile must be created manually There is no sorting on agents in a queue An em
420. nt 402 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 class getlist function updatestatus listname phones Status channels groups hintstatus 0 queues Lid 1 timenow 1364994093 48 tipbxid xivo Queue status Client gt Server commandid 17 class getlist tig 8 tipbxid xivo function updatestatu Server Client function updatestatus listname queues tipbxid xivo timenow 1384 status agentmembers 1 5 phonemembers 8 exes USt clase getlrst Agent status tid is the agent id Client gt Server class s getlzst commandid random integer function updatestatus listname agents Nera 635 t3pbxrd z xivot Server Client olass getlsst listname agents function updatestatus Uu3pbxac s zivo 635 Status availability logged_out availability_since 1370868774 74 Channel null groups on_call_acd false on_call_nonacd false on_wrapup false phonenumber null queues 113 availability can take the values logged out available unavailable on call nonacd incoming internal on call nonacd incoming external on call nonacd outgoing internal on call
421. ntation Release 15 13 XiVO does not offer natively the possibility to configure Berofos in this failover mode The Berofos Integration with PBX section describes a workaround Installation and Configuration Master Configuration There is nothing to be done on the master node Slave Configuration First install the bntools package apt get install bntools This will make the bn os command available You can then connect your berofos to your network and power it on By default the berofos will try to get an IP address via DHCP If it is not able to get such address from a DHCP server it will take the 192 168 0 2 24 IP address Note The DHCP server on XiVO does not offer IP addresses to berofos devices by default Next step is to create the etc bnfos conf file via the following command bnfos scan x If no berofos device is detected using this last command you ll have to explicitly specify the IP address of the berofos via the h option bnfos Scan x h berofos ip At this stage your etc bnfos conf file should contains something like this 1 mac 00 19 32 00 12 1D host 10 34 1 50 login lt user gt lt password gt It is advised to configure your berofos with a static IP address You first need to put your berofos into flash mode press and hold the black button next to the power button power on your berofos release the black button when the
422. ntial when looking for documentation or other information The MAC address will be needed later on for some tests and it s always good to know the firmware version of the phone if you are trying to upgrade to a newer firmware version and you re having some troubles and when reading the documentation 3 Is the official administrator guide documentation available publicly on the vendor web site Is it available only after registering and login to the vendor web site Having access to the administrator guide documentation of the phone is also essential Once you ve found it download it and keep the link to the URL If you can t find it it s probably not worth going further 4 Is the latest firmware of the phone available publicly on the vendor web site Is it available only after registering and login to the vendor web site Good auto provisioning support means you need to have an easy way to download the latest firmware of the phone Ideally this mean the firmware is downloadable from an URL with no authentication whatsoever In the worst case you ll need to login on some web portal before being able to download the firmware which will be cumbersome to automatize and probably fragile If this is the case it s probably not worth going further 5 Does the phone need other files like language files If so are these files available publicly on the vendor web site After registering Although you might not be able to an
423. nticate the user using the service Once a service receives a token from one of its user it will need to check the validity of that token There are 2 forms of verification one that only checks if the token is valid and the other returns information about this token s session if it is valid Checking if a token is valid curl k i X HEAD H Content Type application json https localhost 9497 0 1 token 1823cl HTTP 1 1 204 NO CONTENT Content Type text html charset utf 8 Content Length 0 Date Fri 05 Jun 2015 14 49 50 GMT Server pom dev 0 get more information about this token curl k X GET H Content Type application json https localhost 9497 0 1 tok n 1823clee 6 data issued at 2015 06 05710 16 58 557553 token 182361 6c6a 0cdc d869 964a7 08a7 Launching xivo auth usage xivo auth h c CONFIG FILE u USER d f 1 LOG LEVEL optional arguments h help show this help message and exit c CONFIG FILE config file CONFIG FILE The path to the config file u USER user USER User to run the daemon d debug Log debug messages foreground Foreground don t daemonize 1 LOG LEVEL log level LOG LEVEL Logs messages with LOG LEVEL details Must be one of critical error warning info debug Default None 80 Chapter 1 Table of Contents XiVO doc Docum
424. number 1000 protocol sip function updateconfig listname phones tid 3 timenow 1364994093 43 tipbx Agents configuration Client gt Server class getlist oommandid 1431355191 function listid listname agemts tipbxi Queues configuration Client Server class getlist commandid 719950939 function listid listname queues tipbxid Server gt Client function listid listname queues rtipbxid xivo list 910 ee tUm gw e timenow 1382704 649 64 eq Queue configuration tid is the id returned in the list field of the getlist response message Client gt Server commandid 7 class getlist tid 3 tipbxid xivo function updateconfig Server Client function updateconfig listname queues tipbxid xivo timenow 1382 config displayname red name red context default number 3002 elass Wgetiist Voicemails configuration Client Server elass getlist eommandid 1034160761 function liistid listname voc 1 12 Contributors 389 listname 704649 69 emails tij XiVO doc Documentation Release 15 13 Queue members configuration Client gt Server class getlist commandid 964899043 function listid listname queu Server gt
425. o be removed from all queues groups or other XiVO entities whom he is member 316 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Query DELETE 1 1 users lt id gt Error code Error message Description 400 error while deleting User lt explanation gt See error message for more details 400 Error while deleting User user still associated to a line See explanation above Errors 400 Error while deleting User user still associated to a See explanation above voicemail 404 User with id X does not exist The requested user was not found Example request DELETE 1 1 users 67 HTTP 1 1 Host xivoserver Example response HTTP 1 1 204 No Content ct ser Line Association See User Line Association Users Voicemails Association See Voicemail Association sers CTI profiles Association See User CTI configuration c ser CTI configuration CTI Configuration Representation Field Value Description Description user id int User s ID Read only cti profile id int CTI Profile s ID enabled bool Status of the CTI configuration Get the CTI Configuration for a User Query GET users lt user_id gt cti Error code Error message Description Errors 404 User with id lt user_id gt does not exist Example Req
426. o ctid Configuration File Default location etc xivo sysconfd conf Format INI The default location may be overwritten by the command line options Here s an example of the configuration file general xivo config path etc xivo templates path usr share xivo sysconfd templates custom templates path etc xivo sysconfd custom templates backup path var backups xivo sysconfd resolvconf hostname file etc hostname hostname update cmd etc init d hostname sh start hosts file etc hosts resolvconf file etc resolv conf network interfaces file etc network interfaces wizard templates path usr share xivo config templates custom templates path etc xivo custom templates commonconf commonconf file etc xivo common conf commonconf cmd usr sbin xivo update config commonconf monit usr sbin xivo monitoring update openss1 1 6 System 97 XiVO doc Documentation Release 15 13 certsdir var lib xivo certificates monit monit checks dir usr share xivo monitoring checks monit conf dir etc monit conf d request handlers synchronous true bus username guest password guest host localhost port 5672 xchange_name xivo xchange_type topic exchange_durable true request_handlers section synchronous If this option is true when xivo sysconfd receives a request to reload the dialplan for example it will wait for
427. o transfer calls using the XiVO client you have to enable the transfer service from the user configuration or the queue configuration if used form in the web interface Attended Transfers Important For the Attended Transfer to work properly in all expected cases you must take care of the value of the options below Services IPBX Services IPBX Extensions Advanced Parking option Allow DTMF based transfers when picking up parked call should be set to Caller to be able to initiate an attended transfer for a call picked from a parking option Allow DTMF based hangups when picking up parked call should be set to Caller to be able to abort an attended transfer picked up from a parking Usage 1 Answer an incoming call 2 Search an user in the Contact xlet 3 Right clic on the user icon and choose Attended transfer a If the selected user has also a mobile you can choose its mobile b You can abort the attended transfer by dialing 0 on your phone see note below c You can finish the attended transfer by hanging up the call 1 5 XiVO Client 41 XiVO doc Documentation Release 15 13 Other important options to look to are Services IPBX Services IPBX Extensions General gt Transfers option Timeout for answer on attended transfer should be set to a value below the mean ringing time of most users on the XiVO if you want the attented transfer be aborted a
428. oa Received Answered Abandoned Closed Saturated Blocking Answered rate 005 STA1 1749 1521 84 21 0 0 123 00 00 13 88 0 2 1713 1454 73 38 0 0 148 00 00 11 86 0 5 1529 1367 76 23 0 0 63 00 00 10 90 0 5 4 2147 1776 115 17 0 0 239 00 00 16 83 0 STAS 1800 1594 93 28 0 0 85 00 00 13 89 0 By clicking a queue name you may display detailed queue statistics Statistics can be displayed By week By month By year Counters Received Total number of received calls Answered Calls answered by an agent Abandoned Calls that were hung up while waiting for an answer Dissuaded or Overflowed Closed Calls received when the queue was closed No answer NA Calls that reached the ring timeout delay Satured Calls received when the queue was already full Maximum number of people allowed to wait limit of advanced tab or when one of the diversion parameters were reached 1 9 Contact Center 249 XiVO doc Documentation Release 15 13 Dissuaded or Overflowed 10h 11h 11h 12h 12h 13h 13h 14h 14h 15h 15h 16h zs 39 2 o o 2 oowzs s2 0 Total call distributed m Answered E Abandoned Closed Bi Saturated Bi Blocking Queues Performance 110 T r 278s 253s ETMA 83 005 55 28 0 9 AL RN 5 e e 5 e 9 o ME od od 5 00 01 25 0
429. ocumented on a per event type if not this is assumed to be null AMI events All AMI events are broadcasted on the bus routing key ami lt event name gt event specific data a dictionary with the content of the AMI event Example event with binding key QueueMembersStatus name QueueMemberStatus origin uuid ca7f87e9 c2c8 5fad balb c3140ebb9be3 data WI Penalty 0 CallsTaken 0 Toki kiote M MemberName sip m3ylhs Queue petak QW Membership static Location sipVX m3ylhs Privilege agent all Pauseqg Qm StateInterface sip m4ylhs call form result The call form result event is sent when a custom call form is submitted by a CTI client routing key call form result event specific data a dictionary with 2 keys user id an integer corresponding to the user ID of the client who saved the call form variables a dictionary holding the content of the form Example name call form result origin uuid ca7f87e9 c2c8 5fad balb c3140ebb9be3 data s user id 40 variables firstname John lastname Doe agent status update The agent status update is sent when an agent is logged in or logged out routing key status agent 272 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 event specific data a dictionary with
430. old directly from the phone Do some tests to see if it works correctly Also at this step it s a good idea to check how the phone handle non ascii characters either in the caller ID or in its configuration files Does other standard features work correctly on the phone For quality auto provisioning support you must find how to configure and make the following features work NTP server MWI function keys speed dial BLF directed pickup call interception timezone and DST support multi language DTMF hard keys like the voicemail hard key on some phone non ASCII labels line name function key label non ASCII caller ID backup proxy registrar paging Once you have answered all these questions you ll have a good idea on how the phone works and how to configure it Next step would be to start the development of a new provd plugin for your phone for a specific firmware version IOT Phones FK Funckey HK HardKey Y Supported MN Menu N Not supported NT Not tested NYT Not yet tested SK SoftKey 418 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 model Provisioning H A Directory XIVO Funckeys Supported programmable keys User with supervision function Group Queue Conference Room with supervision function General Functions Online call recording Phone status Sound recording Call recording Incoming call
431. om version 1 4 13 to 1 4 14 PostgreSQL upgraded from version 9 0 4 to 9 0 13 13 06 Consult the 13 06 Roadmap The new Agent Status Dashboard has a few known limitations See related dashboard xlet known issues section Status Since counter in xlet list of agents has changed behavior to better reflect states of agents in queues as seen by asterisk See Ticket 4254 for more details 13 05 Consult the 13 05 Roadmap The bug 4228 concerning BS filter only applies to 13 04 servers installed from scratch Please upgrade to 13 05 The order of softkeys on SCCP phones has changed e g the Bis button is now at the left 13 04 Consult the 13 04 Roadmap Upgrade procedure for HA Cluster has changed Refer to Specific Procedure Upgrading a Cluster Configuration of switchboards has changed Since the directory xlet can now display any column from the lookup source a display filter has to be configured and assigned to the switchboard directory context Refer to Directory xlet documenttion There is no more context field directly associated with a call filter Boss and secretary users associated with a call filter must necessarily be in the same context 2012 34 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 12 24 Consult the 12 24 Roadmap XiVO 12 24 has some limitations mainly affecting the contact center features due to the rewriting of the code handling agents Please con
432. on of device up to 32 octets encoded in UTF 8 device name Wireless AP Manufacturer The manufacturer of the device up to 64 ASCII characters manufacturer Company Model Name Model of the device up to 32 ASCII characters model name WAP Model Number Additional device description up to 32 ASCII characters model number 123 Serial Number Serial number of the device up to 32 characters serial number 12345 Primary Device Type Used format categ OUI subcateg categ Category as an integer value OUI OUI and type octet as a 4 octet hex encoded value 0050F204 for default WPS OUI subcateg OUI specific Sub Category as an integer value Examples 1 0050F204 1 1 0050F204 2 Computer PC Computer Server 5 0050F204 1 Storage NAS 6 0050F204 1 Network Infrastructure AP device 6 0050 204 1 OS Version 4 octet operating system version number hex string os version 01020300 Config Methods List of the supported configuration methods Available methods usba ethernet label display ext nfc token int nfc token interface push button keypad virtual display physical display virtual push button physical push button 1 12 Contributors 437 XiVO doc Documentation Release 15 13 config_methods label virtual_display virtual_push_button keypad WPS capability discovery workaround for PBC with Windows 7 Windows 7 uses incorrect way of figurin
433. onnection between the client and server is required click on the lock icon and change the port value to 5013 The server needs to be configured to accept encrypted connection 1 5 5 Handling callto and tel URLs The XiVO Client can handle telephone number links that appear in web pages The client will automatically dial the number when you click on a link Note You must already be logged in for automatic dialing to work otherwise the client will simply start up and wait for you to log in 50 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 XiVO Client 15 10 2 12 geF3fF9F6 Client profile xiVO Client Help Alice Wonderland Services Call filtering C Do not disturb Call forwards No call forward Unconditional forward to 1234 Simple call forwards 123 Connected 1 5 XiVO Client 51 XiVO doc Documentation Release 15 13 General Xlets Preferences Name client Display name Client A more understandable name I Max GUI 1 Put 1 for no limit Presence xivo Phonehints xivo v E Eme SEE m E EU a v a S e a AS TETT i iG R ret Greer di Gi ia s qoc md es d Enable voicemail g 4 Warning The option in XiVO Client GUI Options Allow multiple instances of XiVO Client must be disabled else you will launch one new XiVO Client with every click Mac OS callto links
434. ons limit 10 amp search 17 HTTP 1 1 Host xivoserver Accept application json List extensions of type incall GET 1 1 extensions type incall HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type application json total 2 items gts Ti context default exten 1234 commented false links 1 11 API and SDK 293 XiVO doc Documentati on Release 15 13 rel extensions href https xivoserver 1 1 extensions 1 1 rds 2 context default exten 6789 commented true links rel extensions href https xivoserver 1 1 extensions 2 1 Get Extension Query GET 1 1 extensions lt id gt Example request GET 1 1 extensions 1 HTTP 1 1 Host xivoserver Accept application json Example response HTTP 1 1 200 OK Content Type applic ation json Woods 1 context default exten 1234 commented false Create Extension The extension number must be included in one of the extension ranges for the given context Query POST 1 1 extensions Field Required Values Description exten es strin Input y 2 context yes string commented no boolean If True the extension is disabled Error code Erro
435. ontent Type application json hwaddress 00 00 00 00 00 00 typeid 24 alias raw device null network 127 0 0 0 family inet physicalif false vlan raw device null vlanif false dummyif false mtu 65536 broadcast 127 255 255 255 hwtypeid 772 netmask 255 0 0 0 carrier true flags 9 address 127 0 0 1 vlan id null type loopback options null aliasif false name lo eth0 alias raw device null family inet hwaddress 36 76 70 29 69 c2 vlan id null network cz 172 17 0 0 physicalif false vlan raw device null vlanif false eth aliasif false broadcasts 17241 255 255 netmask 255 255 0 0 address 172 17 0 101 typeid 6 name ethO hwtypeid 1 dummyif false mtu 1500 Carrier true flags 3 options null Get interface Query GET netiface interface Example request 354 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 GET netiface ethO 1 1 Host xivoserver Content Type application json Example response HTTP 1 1 200 OK Content Type eth0 alias raw device family inet hwaddress 36 76 70 vlan id null network physicalif vlan raw device vlanif false eth aliasif fals
436. ontext default Restart CTI Server 1 8 2 Boss Secretary Filter The boss secretary filter allow to set a secretary or a boss role to a user Filters can then be created to filter calls directed to a boss using different strategies 1 8 Administration 117 XiVO doc Documentation Release 15 13 CTI Server General settings a General Name defaut f Profiles Display fiter Display Display LM Phone hints Agents Search Directories xivodir Definitions Reverse directories gt mend Direct directories Idap Display fitters ial ee Sheer Models T Events Oppo po pn CUpMCRUE RCRUM UR nd as ie es Ee ae eke ale E GUN MN E Control Restart CTI server Description Contexte par d faut Save Fig 1 34 Adding a directory LDAP to CTI Server Quick Summary In order to be able to use the boss secretary filter you have to Select a boss role for one the users Select a secretary role for one ot the users Create a filter to set a strategy for this boss secretary filter Add a function key for the user boss and the user secretary Defining a Role The secretary or boss role can be set in the user s configuration page under the service tab
437. ook Fig 1 14 User added information 12 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Now we need to go get the SIP username and password to configure our phone Go back to the IPBX menu on the left and click on Lines XIVO O 8 siPhuchg 104962 Alice Wonderland 1000 oe SIP Protocol IAX Protocol Voi i P Lc cccueceaceesse urere Ren Pe rhum E e m ea e espe E Sm E sema assess AE RARE C E S MEER 1 Phonebook f Advanced Groups Lines Conference rooms Fig 1 15 Lines information You will see a line associated with the user we just created Click on the pencil icon to edit the line e axo Search O Cone i Line associated to a device Line not associated to a device Users Groups Voicemails Conference rooms Fig 1 16 Edit line We can now see the username and password for the SIP line you can configure your phone using the IP for your server the username and the password Search SS SIP Protocol Signaling T38 Advanced Conference rooms Verify new messages presence RFC non conformant zj Incoming calls Outgoing cal EN BEEN SSS UU Callf
438. or messages are contained in a JSON list even if there is only one error message message 1 message 2 1 11 4 Subroutine What is it The preprocess subroutine allows you to enhance XiVO features through the Asterisk dialplan Features that can be enhanced are User Group Queue Meetme Incoming call Outgoing call There are three possible categories 362 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Subroutine for one feature Subroutine for global forwarding Subroutine for global incoming call to an object Adding new subroutine If you want to add a new subroutine we propose to edit a new configuration file in the directory etc asterisk extensions extra d You can also add this file by the web interface An example myexemple exten s 1 NoOp This is an example same n Return Don t forget to finish your subroutine by a Return Global subroutine There is predefined subroutine for this feature you can find the name and the activation in the etc xivo asterisk xivo globals conf The variables Global Preprocess subroutine XIVO PRESUBR GLOBAL ENABLE 1 XIVO PRESUBR GLOBAL USER xivo subrgbl user XIVO PRESUBR GLOBAL AGENT xivo subrgbl agent XIVO PRESUBR GLOBAL GROUP xivo subrgbl group XIVO PRESUBR GLOBAL QUEUE xivo subrgbl queue XIVO PRESUBR GLOBAL MEETME xivo subrgbl meetme XIVO PRESUBR GLOBAL
439. or the number of seconds alloted before being redirected to another agent Ringing time Application tab The total time the call will stay in the queue Timeout priority Application tab Determines which timeout to use before ending a call When set to configuration the call will use the Member reachability time out When set to dialplan the call will use the Ringing time 1 9 Contact Center 229 XiVO doc Documentation Release 15 13 Time before Member retrying a call Reachability time out to a member tiie mene 0 15 25 15s 10s Ringingtime 60s Timeout priority conf jo Timeout priority app 40 10s No Answer Calls can be diverted on no answer Destination Redirect to ses Sete ccceuscaspeecesenseccse Choice E Destination Redirect to Play occupation message _ Do not play introduction message Do not play unavailable message Use n 101 method del n nd ne n a No answer The call reached the Ringing time Application tab and no agent answered call Congestion The number of calls waiting has reached the Maximum number of people allowed to wait limit specified on the advanced ta
440. or xivo snom 8 7 3 25 5 plugin note the auto completion xivo provd cli plugins installed keys u xivo snom 8 7 3 15 u xivo cisco sccp legacy u xivo snom 98 4 35 u xivo snom 98 7 3 25 u xivo aastra switchboard u xivo aastra 3 2 2 SP3 u xivo aastra 3 2 2 11396 u xivo cisco sccp 9 0 3 u null u xivo snom 9 7 3 25 5 xivo provd cli p plugins xivo snom 8 7 3 25 5 xivo provd cli p install all Uploading to stable checked you must synchronize the plugin from testing to stable If applicable you should also update the archive repo To download the stable and archive plugins make download stable make download archive Go to the plugins build directory and delete the plugins that are going to be updated Note that if you are not updating a plugin but you are instead removing it once and for all you should instead move it to the archive directory rm fi stable xivo cisco spax Copy the files from the directory testing to stable cp testing xivo cisco spa stable Go back to the plugins directory and upload the files to the stable and archive repo 5 make upload stable make upload archive The file are now up to date and you can test by putting back the stable url in the web interface s configuration http provd xivo io plugins 1 stable Testing a new SIP phone Let s suppose you have received a brand new
441. organisations to have their telephony served by your XiVO e g different departments using the same telephony infrastructure but you do not want each organisation to see or edit the configuration of other organisations Configuration In Configuration Entities you can create entities one for each independant organisation In Configuration Users you can select an entity for each administrator Note Once an entity is linked with an administrator it can not be deleted You have to unlink the entity from all administrator to be able to delete it For the new entity to be useful you need to create contexts in this entity You may need an Internal context for users groups queues etc an Incall context for incoming calls an Outcall context for outgoing calls which should be included in the Internal context for the users to be able to call external numbers 1 8 Administration 141 XiVO doc Documentation Release 15 13 Limitations Global Fields Some fields are globally unique and will collide when the same value is used in different entities User CTI login Agent number Queue name Context name An error message will appear when creating resources with colliding parameters saying the resource already exists even if the entity linked administrator can not see them Affected Lists Only the following lists may be filtered by entity Lines Users Devices Groups Voicemails Conference
442. orks with asterisk 11 See the External Links for more information External Links e http svnview digium com svn asterisk branches 11 UPGRADE 10 txt e http svnview digium com svn asterisk branches 1 1 UPGRADE txt e https wiki asterisk org wiki display AST New in 10 e https wiki asterisk org wiki display AST New in 1 1 The switchboard s queue preprocess subroutine The switchboard s queue now uses a preprocess subroutine named xivo_subr_switchboard This preprocess subroutine will be associated with all queues named __switch board that have no preprocess subroutine defined before the upgrade 1 4 Upgrading 33 XiVO doc Documentation Release 15 13 If your switchboard queue is named anything other than __switchboard you should add the preprocess subroutine manually If your switchboard queue already has a preprocess subroutine you should add a Gosub xivo_subr_switchboard to you preprocess subroutine Consult the 13 07 Roadmap Agent Status Dashboard has more features and less limitations See related agent status dashboard docu mentation XiVO call centers have no more notion of disabled agents All previously disabled agents in web interface will become active agents after upgrading asterisk has been upgraded from version 1 8 20 1 to 1 8 21 0 Please note that in XiVO 13 08 asterisk will be upgraded to version 11 DAHDI has been upgraded from version 2 6 1 to 2 6 2 libpri has been upgraded fr
443. ou re configuring one of these TE13x T23x T43x cards then you MUST create a configuration file to set the line mode to E1 1 Create the etc modprobe d xivo wcte linemode conf touch etc modprobe d xivo wcte linemode conf 2 Fill it with the following lines replacing DAHDI MODULE NAME by the correct module name wct e13xp wete43x set the card in E1 T1 mode options DAHDI MODULE NAME default linemode el 3 Then restart the services xivo service restart Hardware Echo cancellation It is recommended to use telephony cards with an hardware echo canceller module Warning with TE13x TE23x and TE43x cards you MUST install the echo canceller firmware Otherwise the card won t work properly 152 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Know which firmware you need If you have an hardware echo canceller module you have to install its firmware You first need to know which firmware you have to install The simplest way is to restart dahdi and then to lookup in the dmesg which firmware does DAHDI request at startup xivo service restart dmesg grep firmware 5461540 738209 wct4xxp 0000 01 0e 0 firmware agent aborted loading dahdi fw oct6114 064 bin 5461540 738310 wct4xxp 0000 01 0 0 VPM450 firmware dahdi fw oct6114 064 bin not available fr In the example above you can see that the module wct 4xx
444. our data source Delimiter the field delimiter in your data source Direct match the key used to match entries for direct lookup Match reverse directories idem but for reverse lookup Mapped field the fieldname is the identifier of the field It will be used in the display filter so look there if you want to use an existing one or make it up if you want a custom display filter the value is the corresponding header of your data source File directories For file directories the Direct match and the Match reverse directories must be filled with the name of the column used to match entries For example given you have the following CSV name phone John 5551234 And you want to do direct lookup on the name column and reverse lookup on the phone column then you ll use Direct match name 1 8 Administration 139 XiVO doc Documentation Release 15 13 Match reverse directories phone Web service directories For web service directories the Direct match and the Match reverse directories must be filled with the name of the HTTP query parameter that will be used when doing the HTTP requests For example given you have the following directory definition Direct match search Match reverse directories phonesearch When a direct lookup for John is performed then the following HTTP request GET ws phonebook search John HTTP 1 1 is emitted When a reverse lookup for
445. ovd plugins for your devices and setup correctly your DHCP server you can then connect your devices to your network But first go to Services IPBX Devices page You will then see that no devices are currently known by your XiVO Sex OO General settings No device found SIP Protocol Dundi Protocol V Although existing in the provisioning server Voicemails ge m Nonexistent in the provisioning server Advanced device property configured Outbound 5 Device configured mode Autoprov m device not configured verified the plugin is installed tor this device mn Call fiters You can then power on your devices on your LAN For example after you power on an Aastra 67311 and give it 1 8 Administration 197 XiVO doc Documentation Release 15 13 the time to boot and maybe upgrade its firmware you should then see the phone having its first line configured as autoprov and if you refresh the devices page you should see that your XiVO now knows about your 67311 OO 00 08 54 23 74 29 10 97 1 105 Aastra 6731i xivo aastra 2 6 0 2019 50 i a Although existing in the provisioning server Nonexistent in the provisioning server Device properly configured Device configured mode Autoprov Device not con
446. p login_capas Login capas Client gt Server loginkind capargd s 3 lastconnwins False commandid lt commandid gt state available class user login_capas loginkind can be user or agent if agent the property agentphonenumber can be added gt Client Server First message describes all the capabilities of the client configured at the server level presence actual presence of the user userid the user id can be used as a reference capas userstatus a list of available statuses status name color selectionnable status from this status default action to be done when this status 1s selected long name services list of availble services phonestatus list of available phonestatuses with default colors and descriptive names capaxlets List of xlets configured for this profile appliname elass Login capas presence available userid ipbxad i sivo timenow 1361440830 99 replyid 3 cepas e d regcommands preferences false userstatus available color 08FD20 allowed available away outtolunch donotdistu actions enablednd false longname Disponible berightback color FFB545 allowed available away outtolunch donotdi actions enablednd false longname Bient u 1 12 Contr
447. p requested the dahdi fw oct6114 064 bin firmware file but did not found it But you now know that you need the dahdi fw oct6114 064 bin firmware Install the firmware When you know which firmware you need you can install it with xivo fetchfw utility 1 Use xivo fetchfw to find the name of the package You can search for digium occurrences in the available packages xivo fetchfw search digium 2 Find the package name which matches the firmware file you need In our example we need the dahdi fw oct6114 064 bin file which is supplied by the package named digium oct6114 064 xivo fetchfw install digium oct6114 064 Activate the Hardware Echo cancellation Now that you installed hardware echo canceller firmware you must activate it in etc asterisk chan_dahdi conf file echocancel 1 Apply the configuration To apply the configuration restart the services xivo service restart Next step Now that you have loaded the correct module for your card you must 1 check if you need to follow one of the Specific configuration sections below 2 and continue with the next configuration step which is to configure your card according to the operator links Specific configuration This section describes some specific configuration You should not follow them unless you have a specific need 1 8 Administration 153 XiVO doc Documentation Release 15 13 Use the Hardware
448. pe application vnd proformatique provd json The URI returned in the Locat ion header points to an operation in progress resource List Installable Packages Query GET uri Example request Example request for the installation service of the plugin manager GET provd pg_mgr install installable HTTP 1 1 Host xivoserver Accept application vnd proformatique provdtjson Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json pkgs null capabilities We es etu 1 sip lines 0 description Plugin that offers no configuration service and rejects dsize 1073 shalsum 90b2fb6c2b135a9d539488b6a85779dd95e0e876 version 1 0 Xivo aastra 3 3 1 SP2 capabilities Aastra 6730i 3 3 1 5089 sip lines 6 Aastra 6731i 3 3 1 2235 sip lines 6 switchboard true Aastra 6735i 3 3 1 5089 sip lines 9 Aastra 6737i 3 3 1 5089 sip Iines 9 Aastra 67391 3 3 1 2235 sip lines 9 Aastra 6753i 3 3 1 2235 sip lines 9 Aastra 67551 3 3 1 2235 1 sip lines 9 req 350 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 switchboard true Aastra 67571 3 3 1 2235 sip lines 9 switchboard true Aastra 91431 3 3 1 2235 sip lines 9
449. people xlet to be able to update the agent status icon The Unregister agent status update command should be used to stop receiving updates Client gt Server class register_agent_status_update agent ids lt xivo uuid gt agent id1 lt xivo uuid gt agent id2 1 12 Contributors 405 XiVO doc Documentation Release 15 13 ME 2 lt xivo uuid gt agent idn commandid commandid Unregister agent status update unregister agent status update command is used to unregister from the status updates of a list of agent Once unregistered the client will stop receiving the Agent status update events for the specified agents Client gt Server class unregister_agent_status_update agent ids lt xivo uuid gt agent id1 lt xivo uuid gt agent id2 lt xivo uuid gt agent idn commandid lt commandid gt Agent status update agent status update event is received when the presence of an agent changes To receive this event the user must first register to the event for a specified agent using the Register agent status update command To stop receiving this event the user must send the Unregister agent status update command data a dictionary containing 3 fields agent id is an integer containing the ID of the user affected by this status change xivo uuid a stri
450. plication json Example Response HTTP 1 1 200 OK Content Type application json line id 34 extension id 48 winks meuf rel lines_sip href https xivoserver 1 rel extensions href https xivoserver 1 1 lines sip 34 l extensions 48 1 11 and SDK 309 XiVO doc Documentation Release 15 13 Associate an Extension to a Line Query POST lines lt line_id gt extension Field Required Values Description Input cie extension id yes int Must be an existing id Error Error message Description code 404 Line with id line id does not exist Errors 400 Nonexistent parameters extension_id lt extension_id gt does not exist 400 Invalid parameters line with id lt line_id gt already has an extension You must unassociate the current extension before reassociating a new one Example request POST 1 1 lines 75 extension Host xivoserver Content Type application json extension_id 46 Example response HTTP 1 1 201 Location 1 1 lines 75 extension Line 204 75 extension id 46 Links rel lines sip href https xivoserver 1 1 lines_sip 75 rel extensions href https xivoserver 1 1 extensions 46 Dissociate an Extension from a Line Any devices that are attached to the line must be removed be
451. provisioning of telephony devices It is not activated by default There s a few things to know about the peculiarities of the included DHCP server it only answers to DHCP requests from supported devices it only answers to DHCP requests coming from the VoIP subnet see network configuration This means that if your phones are on the same broadcast domain than your computers and you would like the DHCP server on your XiVO to handle both your phones and your computers that won t do it The DHCP server is configured via the Configuration Network DHCP page eee Active Pool start Pool end Extra network interfaces Save M HR M R Fig 1 57 Configuration Network DHCP Active Activate desactivate the DHCP server Pool start The lower IP address which will be assigned dynamically This address should be in the VoIP subnet Example 10 0 0 10 Pool end The higher IP address which will be assigned dynamically This address should be in the VoIP subnet Example 10 0 0 99 Extra network interfaces A list of space separated network interface name Example eth0 Useful if you have done some custom configuration in the etc dhcp dhcpd_extra conf file You need to explicitly specify the additional interfaces the DHCP server should listen on After saving your modifications you need to click on Apply system configuration for them to be applied Installing provd Plugins The
452. pty queue will display an empty box with no message specifying the queue has no logged agents Configuration No special configuration is necessary other than creating a CTI profile in which the Agent Status Dashboard is added 240 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 bigqueue debordement Ghost 11008 Queue 11000 Queue 11002 Queue 11001 Queue 11004 Queue 11003 Queue 11006 Queue 11005 Queue 11007 1 9 5 Skills Based Routing Introduction Skills based routing SBR or Skills based call routing is a call assignment strategy used in call cen tres to assign incoming calls to the most suitable agent instead of simply choosing the next available agent It is an enhancement to the Automatic Call Distributor ACD systems found in most call cen tres The need for skills based routing has arisen as call centres have become larger and dealt with a wider variety of call types Wikipedia In this respect skills based routing is also based on call distribution to agents through waiting queues but one or many skills can be assigned to each agent and call can be distributed to the most suitable agent In skills based routing you will have to find a way to be able to tag the call for a specific skill need This can be done for example by entering the call distribution system using different incoming call numbers using an IVR to let the caller do his own choice or by requesting to the info
453. r message Description Errors 400 exten number not inside range of context context 400 error while creating Extension explanation See error message for more details 294 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Example request POST 1 1 extensions HTTP 1 1 Host xivoserver Accept application json Content Type application json exten 1234 context default commented false Example response HTTP 1 1 201 Created Location 1 1 extensions 1 Content Type application json yc 1 links f rel extensions href https xivoserver 1 1 extensions 1 Update an Extension The update does not need to set all the fields of the edited extension The update only needs to set the modified fields The new extension number must be included in one of the extension ranges for the new context Query PUT 1 1 extensions lt id gt Error code Error message Description E 400 error while editing Extension explanation See error message for more details exten lt number gt not inside range of lt context gt 404 Not found The requested extension was not found Example request PUT 1 1 extensions 42 HTTP 1 1 Host xivoserver Content Type application json context my context Example response HTTP 1 1 204 No Content Delete Extension An extension can not be d
454. rce2 1002 2002 2 userfield 1 11 and SDK 281 XiVO doc Documentation Release 15 13 Format Call logs are presented in CSV format with the following specifications field names are listed on the first line fields are separated by commas if there is a comma in a field value the value is surrounded by double quotes the CSV file uses the character encoding UTF 8 List Call logs Note Call logs are generated automatically but not immediately See Call Logs Query GET 1 1 call logs Example request GET 1 1 call logs HTTP 1 1 Host xivoserver Accept text csv Example response HTTP 1 1 200 OK Content Type text csv charset utf8 Call Date Caller Called Period user Field 2013 01 01T00 00 00 sourcel 1001 2001 1 2013 01 02T00 00 00 source2 1002 2002 2 userfield Filtering by period Query GET 1 1 call logs start date DATE amp end date DATE DATE must be in the following format YYYY MM DDTHH MM SS Note the T separating the date and time start date and end date must be given together the REST API will not accept start date without end date and vice versa Example request GET 1 1 11 logs start date 2013 01 01T00 12 34 amp end date 2013 01 02T06 54 32 1 Host xivoserver Accept text csv Example response HTTP 1 1 200 OK Content Type text csv charset utf8 Cal
455. rdThe order of sort either ASC or DESC Example request Host xivoserver Accept application vnd proformatique provd json GET provd dev mgr devices HTTP 1 1 Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json devices added auto 38e5e08ffe804b468 f5aa53b9536bb25 configured true description id 38e5e08ffe804b468 5aa53b9536bb25 ps 05942 mac 00 08 5d 33 e65 76 model 6731i xivo aastra 3 3 1 8P2 config plugin remote state sip username Aastra 3 3 1 2235 vendor version Create a Device 332 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Query POST provd dev_mgr devices Example request POST provd dev_mgr devices HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json device ap 2921661 1 mac 005121 22433 44 255 plugin 3 3 1 8 2 Example response HTTP 1 1 201 Created Content Type application vnd proformatique provd json Location provd dev_mgr devices 68b10c99945b4 fb889f22a7559FfC3271 id 68b10c99945b4fb889F22a7559FC3271 If the id field is not given then an ID is automatically generated by the server Get a Device Query GET provd dev_mgr devices lt device_id
456. re in use Apply configuration If you didn t do it already you have to restart the services to apply the configuration xivo service restart At the end of this page you will also find some general notes and DAHDI Notes on configuration files etc dahdi system conf A span is created for each card port Below is an example of a standard 1 port span 1 1 0 ccs hdb3 dchan 16 bchan 1 15 17 31 echocanceller mg2 1 15 17 31 Each span has to be declared with the following information span lt spannum gt lt timing gt lt LBO gt lt framing gt lt coding gt crc4 e spannum corresponds to the span number It starts to 1 and has to be incremented by 1 at each new span This number MUST be unique timing describes the how this span will be considered regarding the synchronization 0 do not use this span as a synchronization source 1 use this span as the primary synchronization source 2 use this span as the secondary synchronization source etc LBO 0 not used framing correct values are ccs or cas For ISDN lines ccs is used coding correct values are hdb3 or ami For example hdb3 is used for an E1 PRI link whereas ami is used for TO french BRI link 1 8 Administration 161 XiVO doc Documentation Release 15 13 crc4 this is a framing option for PRI lines For example it is rarely use in France Note that the dahdi_gencon
457. red LEDs of port D start blinking Then you can issue the following command by first replacing the network configuration with your one bnfos netconf f fosl i 10 34 1 20 n 255 255 255 0 g 10 34 1 1 d 0 Note iis the IP address n is the netmask e g is the gateway e d 0 is to disable DHCP You can then update your berofos firmware to version 1 53 wget http www beronet com downloads berofos bnfos_v153 bin bnfos flash bnfos_v153 bin f fosl Once this is done you ll have to reboot your berofos in operationnal mode that is in normal mode Then you must rewrite the etc bnfos conf mainly if you changed the IP address 1 10 High Availability HA 267 XiVO doc Documentation Release 15 13 bnfos scan x h berofos ip Now that your berofos has proper network configuration and an up to date firmware you might want to set a password on your berofos bnfos set apwd lt password gt f fosl bnfos set pwd 1 f fosl You must then edit the etc bnfos conf and replace the login line to something like login admin lt password gt Next configure your berofos for it to work correctly with the XiVO HA bnfos set wdog 0 f fosl bnfos set wdogdef 0 f fosl bnfos set scenario 0 f fosl bnfos set mode 1 f fosl bnfos set modedef 1 f fosl This among other things disable the watchdog The switching
458. relay mail servers Rewriting shipping addresses Canonical address Rewriting See Postfix canonical documentation for more info Warning Postfix the mail server shipped with XiVO should be stopped on an installed XiVO with no valid and reachable DNS servers configured If Postfix is not stopped messages will bounce in queues and could end up affecting core pbx features If you need to disable Postfix here is how you should do it 1 6 System 59 XiVO doc Documentation Release 15 13 etc init d postfix stop insserv r postfix If you ever need to enable Postfix again insserv postfix etc init d postfix start Alternatively you can empty Postfix s queues by issuging the following commands on the XiVO server postsuper d ALL 1 6 3 Network You must configure your network interfaces directly from the XiVO web interface via the Configuration Network Interfaces page The Voip interface is used by the DHCP server and the provisioning server How to You can only have one VoIP interface which is ethO by default This interface is configured during the wizard The DHCP server and provisioning server among other use information from the VoIP interface in its configura tion For example the DHCP server will only listen on the VoIP interface per default To change this interface you must either create a new one or edit an existing one and change its type to VoIP The t
459. rement that the string between and is empty An extension could be to define other serialization methods if needed General settings Sheet Systray Actions Display value No action Event configuration You can configure a sheet when a specific event is called For example if you want to receive a sheet when an agent answers to a call you can choose a sheet model for the Link event The following events are available Dial When the member s phone starts ringing for calls on a group or queue or when the user receives a call Link When a user or agent answers a call Unlink When a user or agent hangup a call received from a queue Incoming DID Received a call in a DID Hangup Hangup the call Dial Link Unlink Incoming DID Save The informations about a call are displayed via the XiVO Client on forms called sheets 1 8 Administration 135 XiVO doc Documentation Release 15 13 Example Display a Web page when an agent answers a call The first step is to assign the URL to a dialplan variable Go in the Services IPBX Configuration files and create a new file called set sheeturl conf In this file put the following setsheeturl exten s l NoOp Starting Set Sheet URL same n Set SHEET URL CTI http documentation xivo io sam n UserEvent dialplan2cti UNIQUEID S UNIQUEID
460. required for each destination Field Type Value Agent agent id numeric Agents s id Field Type Value BSFilter filter_member_id numeric ID of the filter member 1 11 and SDK 297 XiVO doc Documentation Release 15 13 Field Type Value Conference DE conference id numeric Conference s id Field Type Value Sitom exten string Number to dial Field Type Value Forward forward string Type of forward Possible values busy noanswer unconditional exten string Number to dial optional Field Type Value Group group_id numeric Group s id Online call recording No parameters are required for this destination Field Type Value Paging paging id numeric Pagings s id Parking No parameters are required for this destination Field Type Value Parking Position park_position numeric string Position of the parking to pick up Oui Field Type Value queue_id numeric User s id Fiel E 3 aug service string Name of the service Currently supported services phonestatus Phone Status recsnd Sound Recording callrecord Call recording incallfilter Incoming call filtering enablednd Enable Do not disturb
461. ridge wds brO0 428 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Client isolation can be used to prevent low level bridging of frames between associated stations in the BSS By default this bridging is allowed ap isolate 1 IE I E 802 11n related configuration ieee80211n Whether IE 0 disabled default 1 enabled Note You will also need to enable WMM for full HT functionality 80211 1 E 802 11n HT is enabled ht capab HT capabilities list of flags LDPC coding capability LDPC supported Supported channel width set HT40 both 20 MHz and 40 MHz with secondary channel below the primary channel HT40 both 20 MHz and 40 MHz with secondary channel below the primary channel 20 MHz only if neither is set Note There are limits on which channels can be used with HT40 and HT40 Following table shows the channels that may be available for HT40 and HT40 use per IEEE 802 11n Annex J freq 40 HT40 2 4 GHz 5 13 1 7 1 9 in Europe Japan 5 GHz 40 48 56 64 36 44 52 60 depending on the location not all of these channels may be available for use Please note that 40 MHz channels may switch their primary and secondary channels if needed or creation of 40 MHz channel maybe rejected based
462. ring User phone number creates aline Must exist context string context name internal context must ex protocol enum sip sccp Line protocol linename string Line name SIP only linesecret string Line secret SIP only section incall To add an incall to an user incallexten string DID number incallexten must exist i incallcontext string Context name incall context must exi incallringseconds int Ring time in seconds section voicemail To add a voicemail to a user You must set a language to use this section voicemailname string Voicemail fullname voicemailmailbox string Mailbox number voicemailpassword string Password voicemail voicemailemail string Mail to send a notification when a message is rece voicemailattach bool 0 1 Enable Disable attach the audio file to your mail voicemaildelete bool 0 1 Enable Disable delete message after notification voicemailskippass bool 0 1 Enable Disable password checking Warning Warning Examples this field is required valid by section this field is required if you add a voicemail First step is to create a text file containing the users you want to create Here s a basic example entityid firstname lastname phonenumber context protocol mobilephonenumber l John Doe 1000 default sip 00123456789 l George Clinton 1001 default sip 00123456789 1 Bill Bush 1002 default s
463. rmation system database the customer profile Agents 7 Fig 1 80 Skills Based Routing Getting Started Create the skills 1 9 Contact Center 241 XiVO doc Documentation Release 15 13 Apply the skills to the agents Create the skill rule sets Assign the skill rule sets using a configuration file Apply the skill rule sets to call qualification i e incoming calls by using the preprocess subroutine field Note that you shouldn t use skill based routing on a queue with queue members of type user because the behaviour is not defined and might change in a future XiVO version Skills Skills are created using the menu Services Call center Skills Each skill belongs to a category First create the category and in this category create different skills Note that a skill name can t contain upper case letters and must be globally unique i e the same name can t be used in two different categories Category language Values english french Name Description Fig 1 81 Skills Creation Once all the skills are created you may apply them to agents Agents may have one or more skills from different categories General Users Queues d Queueskills Advanced 75 Skill Weight english z french zj 25 G6 86 Fig 1 82 Apply Skills to Agents It is typ
464. roduce your own reports provided you do not use the XiVO server original tables but copy the tables to your own data server You may use the following procedure as a template Allow remote database access on XiVO Create a postgresql account read only on asterisk database Create target tables in your database located on the data server Copy the statistic table content to your data server General Architecture 1 The queue log table of the asterisk database is filled by events from Asterisk and by custom dialplan events 1 9 Contact Center 255 XiVO doc Documentation Release 15 13 P1 CaL E CHECA 16 20s P3 21 30s P4 31 60s P5 61s Abandoned calls P1 1 Tuesday 2 2 OS GO RT E Du ZARARA Total calls handled Total abandoned calls Epi Ep2 E p2 m P3 4 4 5 5 2 xivo stat fill db is then used to read data from the queue log table and generate the tables stat call on queue and stat queue periodic 3 The web interface generate tables and graphics from the stat call queue and stat queue periodic tables depending on the selected configuration Statistic Data Table Content stat call on queue This table is used to store each call individually Each call received on a queue generates a single entry in this table containing time related fields and a foreign key to the agent who answered th
465. rofos ten times each 5 seconds for 2 1 i lt 10 1 do usr bin bnfos kick f fosl s bin sleep 5 done else usr bin logger 50 Asterisk is not running fi 4 Add execution rights to script chmod x usr local sbin berofos workaround 5 Create a cron to launch the script every minutes etc cron d berofos cron workaround 4 Workaround to berofos integration MAILTO x l x x root usr local sbin berofos workaround 1 14 4 Upgrading from XiVO 1 2 3 1 There is an issue with xivo libsccp and pf xivo base config during an upgrade from 1 2 3 dpkg error processing var cache apt archives pf xivo base config 13 3 1 2 4 1 lall deb ur trying to overwrite etc asterisk sccp conf which is also in package xivo libsccp 1 2 3 1 Errors wer ncountered while processing var cache apt archives pf xivo base config 13 3a1 2 4 1 all deb E Sub process usr bin dpkg returned an error code 1 2 You have to remove var lib dpkg info xivo libsccp conffiles rm var lib dpkg info xivo libsccp conffiles 3 You have to edit var lib dpkg info xivo libsccp list and remove the following line etc asterisk sccp conf 4 and remove etc asterisk sccp conf 1 14 Troubleshooting 459 XiVO doc Documentation Release 15 13 rm etc asterisk sccp conf 5 Now you can launch xivo upgrade to finish the upgrade process 1 14 5 CT
466. rom a queue on pause or on wrapup Logged A clickable cell to log or unlog the agent Joined queues The number of queues the agent will be receiving calls from Paused A clickable cell to pause or unpause the agent Paused queues The number of queues in which the agent is paused 236 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Agent Details Charlie Chaplin 103 default Logout x 2 Queues Joined Paused 4 000066 Gracery store green Bakery Switchboard queue early rtp SuperQueue c uu d Dg cis mi e c I e 0007 Fig 1 79 Agent Details 1 9 Contact Center 237 XiVO doc Documentation Release 15 13 Agent Details General information Display advanced informations of an agent and enable to login logoff add remove to a queue and pause unpause 1 This is the status information of agent Button to login logoff agent Supervision button of the Xlet Calls of a queue Add Remove agent for given queue te 19 Pause Unpause button for given queue Queue members The queue members lists which agents or phones will receive calls from the selected queue and some of their attributes Queue Members picerie 301 default 2 agent s and 2 phone s Number Firstname Lastname Logged Paused Answered calls Last call Penalty l Wonderland Logged in Not paused 0 2 Yoda Kenobi 0 0 Paul Castagnet
467. rovisioning system H A Is the device supported by the high availability system Directory XiVO Is the device supported by the remote directory In other word is it possible to consult the XiVO s remote directory from the device Funckeys How many function keys can be configured on the device from the XiVO web interface The number of function keys that can be configured on a device is not necessarily the same as the number of physical function keys the device has For example an Aastra 6757i has 12 physical keys but you can configure 30 function keys because of the page system Inside a table the following legend is used Y Yes Supported e N No Not supported NT Not tested NYT Not yet tested Each table also contains a section about the supported function keys In that section the following legend can also be used FK Funckey e SK SoftKey HK HardKey MN Menu Function keys work using the extensions in Services Extensions It is important to enable the function keys you want to use Also the enable transfer option in the user configuration services tab must be enabled to use transfer function keys 1 8 Administration 1 8 1 Advanced Configuration This section describes the advanced system configuration 1 8 Administration 111 XiVO doc Documentation Release 15 13 Live reload configuration Fig 1 28 Configure XiVO General Settings XiVO General Settings XiVO off
468. ry PUT provd cfg mgr configs config id Example request PUT provd cfg mgr configs 77839d0 05c84662864b0ae5c27b33e4 HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json 1 11 and SDK 339 XiVO doc Documentation Release 15 13 eonfig id 77839d0f 05c846628 64b0ae5c27b33e4 parent ids base 1 raw config lines 1 auth_username 100 display name John password 100 username 100 Example response HTTP 1 1 204 No Content Delete a Config Query DELETE provd cfg mgr configs config id Example request DELE provd cfg_mgr configs 77839d0f05c84662864b0ae5c27b33e4 Host xivoserver H I Example response HTTP 1 1 204 No Content Autocreate a Config This service is used to create a new config from the config that has the aut ocreate role Query POST provd cfg mgr autocreate Example request POST provd cfg mgr autocreate HTTP 1 1 Host xivoserver Content Type application vnd proformatique provd json Example response 340 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 HTTP 1 1 201 Created Content Type application vnd proformatique provd json Location provd cfg_mgr configs autoprov1411400365 id a
469. s the XiVO Client itself the source files are directly in src the XLet library xletlib contains the code common to multiple XLets plugins like the XLet base class and mainly GUI stuff the XLets themselves xlets each one is in a xlets something subfolder Each XLet is compiled into a dynamic library but some XLets are still compiled within the xivoclient executable instead of in a separated library They are marked with a builtin subfolder name delivery This folder contains all license informations necessary for the XiVO Client to be redistributed i e the GNU GPLv3 and the additional requirements Configuration access The settings of the application are stored in BaseEngine for runtime and in files when the client is closed e config XiVO on GNU Linux systems what about other platforms There are now 3 sets of functions from BaseEngine that you can use to read store settings getConfig setConfig They are proxy methods to use the BaseConfig object inside BaseEngine They use QVariantMap to store the settings values They are currently used to store retrieve options used in the ConfigWid get You can find the available keys to access data in the detailed Doxygen documentation of BaseEngine or in baseengine h Note that the settings stored in BaseConfig won t be written in the configuration file if BaseEngine is not aware of their existence loaded in loadSettings and saved in saveSettings get
470. s B Consider XiVO A wants to establish a trunk with XiVO B On XiVO B go on page Services IPBX Trunk management SIP Protocol and create a SIP trunk Name xivo trunk Username xivo trunk Password pass Connection type Friend IP addressing type Dynamic Context see below 1 8 Administration 163 XiVO doc Documentation Release 15 13 Note For the moment Name and Username need to be the same string The Context field will determine which extensions will be reachable by the other side of the trunk If Context is set to default then every user group conf room queue etc that have an extension if the default context will be reachable directly by the other end of the trunk This setting can ease configuration if you manage both ends of the trunk f you are establishing a trunk with a provider you probably don t want everything to be available to every one else so you can set the Context field to Incalls By default there is no extension available in this context so we will be able to configure which extension are reachable by the other end This is the role of the incoming calls making bridges from the Incal1s context to other contexts On XiVO A create the other end of the SIP trunk on the Services IPBX Trunk management SIP Protocol Name xivo trunk Username xivo trunk Password pass Identified by Friend Connection type Static Address XiVO B I
471. s EDCF bursting tx queue queue name param queues data0 datal data2 data3 after beacon beacon data0 is the highest priority queue parameters aifs AIFS default 2 cwmin cwMin 1 3 7 15 31 63 127 255 511 1023 cwmax cwMax 1 3 7 15 31 63 127 255 511 1023 cwMax gt cwMin burst maximum length in milliseconds with precision of up to 0 1 ms for bursting Default WMM parameters IEEE 802 11 draft 11 03 0504 03 000e These parameters are used by the access point when transmitting frames to the clients Low priority AC BK background tx queue data3 aifs 7 tx queue data3 cwmin 15 tx queue data3 cwmax 1023 tx queue data3 burst 0 Note for IEEE 802 11b mode cWmin 31 cWmax 1023 burst 0 Normal priority AC BE best effort tx queue data2 aifs 3 tx queue data2 cwmin 15 tx queue data2 cwmax 63 tx queue data2 burst 0 Note for IEEE 802 11b mode cWmin 31 cWmax 127 burst 0 High priority AC VI video tx queue datal aifs 1 tx queue datal cwmin 7 tx queue datal cwmax 15 tx queue datal burst 3 0 Note for IEEE 802 11b mode cWmin 15 cWmax 31 burst 6 0 Highest priority AC VO voice tx queue 0 aifs 1 426 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 tx_queue_data0_cwmin 3 tx_queue_data0_cwmax 7 tx queue 0 burst 1 5 Note for IEEE 802 11b mode
472. s asterisk SIP UDP 5060 0 0 0 0 yes yes asterisk IAX UDP 4569 0 0 0 0 yes yes asterisk SCCP TCP 2000 0 0 0 0 yes yes asterisk AMI TCP 5038 127 0 0 1 yes yes sshd SSH TCP 22 0 0 0 0 yes yes xivo webi HTTP TCP 80 0 0 0 0 yes yes xivo webi HTTPS TCP 443 0 0 0 0 yes yes munin HTTP TCP 4949 127 0 0 1 no yes xivo ctid XiVO CTI TCP 5003 0 0 0 0 yes yes xivo ctid XiVO CTIS TCP 5013 0 0 0 0 yes no postgresql SQL TCP 5432 127 0 0 1 yes yes rabbitMQ AMQP TCP 5672 0 0 0 0 yes yes consul Consul RPC TCP 8300 127 0 0 1 yes yes consul Consul Serf TCP UDP 8301 127 0 0 1 yes yes LAN consul Consul Serf TCP UDP 8302 127 0 0 1 yes yes WAN consul Consul HTTP TCP 8500 127 0 0 1 both yes xivo provd HTTP TCP 8667 0 0 0 0 no yes xivo confgend HTTP TCP 8669 127 0 0 1 no yes xivo sysconfd HTTP TCP 8668 127 0 0 1 no yes xivo confd HTTPS TCP 9486 0 0 0 0 yes yes xivo confd HTTP TCP 9487 127 0 0 1 no yes xivo dird HTTPS TCP 9489 0 0 0 0 yes yes xivo amid HTTP TCP 949 127 0 0 1 no yes xivo agentd HTTP TCP 9493 127 0 0 1 no yes xivo ctid HTTP TCP 9495 127 0 0 1 no yes xivo auth HTTPS TCP 9497 0 0 0 0 both yes 1 12 9 XiVO Package File Structure Package naming Let s assume we want to organise the files for xivo confd Gitrepo name xivo confd Binary file name xivo confd Python package name xivo confd xivo confd bin xivo confd contribs c docker SS us 1 12 Contributors 381 XiVO doc
473. s if the same number is used for the higher bound and the lower bound of next period some calls will be counted twice i e period 1 0 30 period 2 31 60 period 3 61 248 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 How to generate the cache The cache must be generated before using reports By default the cache is automatically generated every six hours However you can safely generate it manually The script to generate the cache is xivo stat fill_db When this script is run statistics will be regenerated for the last 8 hours starting from the previous hour e g If you run xivo stat on 2012 08 04 11 47 00 statistics will be regenerated from 2012 08 04 03 00 00 to 2012 08 04 11 47 00 Note xivo stat fill_db can be a long operation when used for the first time or after a xivo stat clean_db Warning The current events have an end date of the launch date of the script xivo stat as the end date Clearing the cache If for some reason the cache generation fails or the cache becomes unusable the administrator can safely clean the cache using xivo stat clean_db and then regenerate it This operation will only clear the cache and does not erase any other data Queue statistics Queue statistics can be viewed in Services Statistics Queue The first table displays a list of queues with all the counters for the period choosen from the Dashboard panel Dissuaded or Overflowed
474. s you need to click on Apply system configuration for them to be applied Change default gateway for DHCP By default the XiVO DHCP server gives the XiVO IP address in the router option To change this you must create a custom template 1 Create a custom template for the dhcpd subnet conf head file mkdir p etc xivo custom templates dhcp etc dhcp cd etc xivo custom templates dhcp etc dhcp cp usr share xivo config templates dhcp etc dhcp dhcpd subnet conf head 2 Edit the custom template vim dhcpd subnet conf head 3 In the file replace the string by the router of your VoIP network for example option routers 192 168 2 254 4 Re generate the dhcp configuration xivo update config DHCP server should have been restarted and should now give the new router option Configuring DHCP server to serve unknown hosts By default the XiVO DHCP server serves only known hosts That is either hosts which MAC address prefix the OUI is known or hosts which Vendor Identifier is known 1 6 System 57 XiVO doc Documentation Release 15 13 Known and Vendor Class Identifiers are declared in etc dhcp dhcpd_update files If you want your XiVO DHCP server to serve also unknown hosts like PCs follow these instructions 1 Create a custom template for the dhcpd_subnet conf tail file mkdir p etc xivo custom templates dhcp
475. s directory You can then use the following command to create a new migration script alembic revision m lt description gt This will create a file in the alembic versions directory which you ll have to edit When the migration scripts are executed they use a connection to the database with the role user asterisk This means that new objects that are created in the migration scripts will be owned by the asterisk role and it is thus not necessary nor recommended to explicitly grant access to objects to the asterisk role i e no GRANT ALL command after a CREATE TABLE command 1 12 13 Diagrams Agent states Graphs representing states and transitions between agent states Used in Agent status dashboard and agent list Download DIA Architecture Uses DB KV Uses key value DB Fig 1 97 Relationships between the components of Xivo source 1 12 14 Provisioning This section describes the informations and tools for xivo provd 412 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Managing DHCP server configuration This page considers the configuration files of the DHCP server in etc dhcp dhcpd_update Who modifies the files The files are updated with the command dhcpd update which is also run when updating the provisioning plugins This commands fetches configurations files from the provd xivo io server How to update the source files En
476. s empty all rates are used This list can have entries that are not in the list of rates the hardware supports such entries are ignored Th ntries in this list are in 100 kbps i e 11 Mbps 110 If this item is present at least one rate have to be matching with the rates hardware supports default use the most common supported rate setting for the selected hw mode i e this line can be removed from configuration file in most cases supported rates 10 20 55 110 60 90 120 180 240 360 480 540 Basic rate set configuration List of rates in 100 kbps that are included in the basic rate set If this item is not included usually reasonable default set is used basic rates 10 20 basic rates 10 20 55 110 basic rates 60 120 240 Short Preamble This parameter can be used to enable optional use of short preamble for frames sent at 2 Mbps 5 5 Mbps and 11 Mbps to improve network performance This applies only to IEEE 802 11b compatible networks and this should only be enabled if the local hardware supports use of short preamble If any of the associated STAs do not support short preamble use of short preamble will be disabled and enabled when such STAs disassociate dynamically 0 do not allow use of short preamble default 1 allow use of short preamble preamble 1 Station MAC address based authentication Please note that this kind of access control requires a driver that uses hostapd to take care o
477. s v Yes v Yes v Yes v N A Agents a Directories maa Definitions Reverse directories save Direct directories 2 Display filters Sheets Actions Events Restart CTI server Configuration Some values can be configured for the xlet The statistic fetch timer can be set in the CTI profile preferences This option is expressed in seconds and the default is 30 seconds 9 CTI Server Ee ro General settings General jusPreferencesis General Profiles Status Preference value Presences Statistics fetch period Queues list xlet M 10 Phone Hints N ef Dii Definitions LSave Reverse directories Direct directories Display filters ects Restart CTI server The statistical period can be configured through the XiVO client once logged in by right clicking on the Queue s name in the Queues xlet For each queue you can configure the following information Qos maximum wait time for a call in seconds Window period of time used for accumulating statistics in seconds The data used to compute statistics on the XiVO server is only kept for a maximum of 3 hours The window period cannot be configured to go beyond this limit Display options can also be set on the client side A threshold can be configured to change the color of a column using the
478. sages Overrides 1og level Default False foreground Foreground don t daemonize Default False log filename File to write logs to Default var log xivo dird 1log log level Logs messages with LOG LEVEL details Must be one of critical error warning info debug Default info pid filename File used as lock to avoid multiple xivo dird instances Default var run xivo dird xivo dird pid source config dir The directory from which sources configuration are read See Sources Configuration Default etc xivo dird sources d user The owner of the process Default www data rest api section wsgi socket The socket used for WSGI communications between nginx and xivo dird Default var run xivo dird xivo dird sock enabled plugins section This sections controls which plugins are to be loaded at xivo dird startup All plugin types must have at least one plugin enabled or xivo dird will not start For back end plugins sources using a back end plugin that is not enabled will be ignored views section displays A dictionary describing the content of each display The key is the display s name and the value are the display s content The display content is a list of fields Each field is a dictionary with the following keys title The label of the field default The default value of the field type An arbitrary identifier of the field May be used by consumers to identify the field without matching the label For
479. sd Default gateway SSS Description SSS SSS Fig 1 22 Adding a new virtual interface 1 6 System 63 XiVO doc Documentation Release 15 13 Physical Interface of VLAN IDof VLAN 101 Method Static Address 1098762 Netmask 255252550 Default gateway Description Save eg Fig 1 23 Adding a new virtual interface C gt eno 08 00 27 6a 49 e5 i 192 168 32 51 O 3 0 101 i 10 97 62 08 00 27 e9 fa f4 ES dod CER ELLO 5 55 55 LLL LL NL TUM Enable gt Disable gt Not apply rer 08 00 27 6a 49 e5 Entities 08 00 27 6a 49 e5 O gt etho 101 O gt eti 08 00 27 e9 fa f4 Web Services Access Certificates Fig 1 25 Listing the network interfaces 64 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Add static network routes Static route can t be currently added via the web interface If you want static routes in your XiVO you should do the following steps described below It would ensure that your static routes are applied at startup in fact each time the network interface goes up 1 Create the file etc network if up d xivo routes touch etc network if up d xivo routes chmod 755 etc network if up d xivo routes 2 Insert the following content bin sh i
480. se 15 13 Text fields QLineEdit QLabel QPlainTextEdit can contain variables that will be substituted See the variable list for more information List of fields Default XiVO sheet example General settings Sheet Systray Actions Disabled 7 Qt interface Field title Field type Default value Display value Nom title xivo calleridname et Num ro text xivo calleridnum E Origine tet xivo origin 1 Save Example showing all kinds of fields General settings Sheet Systray Actions Disabled Qt interface file tmp testdesigner ui Field title Field type Default value Display value Phone phone Unknown xivo calleridnum E Titre title test test titre Ej picture picture picture xivo callerpicture E Test tet text dp test form qtui Uniq text xivo uniqueid EJ url url X http git xivo fr EJ urlx uk http duckduckgo c Save Each field is represented by the following parameters Field title name of your line used as label on the sheet Field type define the type of field displayed on the
481. seconds time talk Talk time duration in seconds time wait Wait time duration in seconds time sta See status description below tus queue id Id of the queue the name of the queue can be found in table stat_queue using this name queue details can be found in table queue features agent jid Id of the agent the agent name can be found in table stat agent using this name agent details can be found in table agent features using the number in the second part of the name Exemple Agent 1002 is agent with number 1002 in table agent features 258 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 stat_call_on_queue queue log Asterisk database stat queue periodic xivo stat Fig 1 87 Statistics Architecture 1 9 Contact Center 259 XiVO doc Documentation Release 15 13 Queue Call Status Status Description full Call was not queued because queue was full happens when the number of calls is greater than the maximum number of calls allowed to wait closed Closed due to the schedule applied to the queue joinempty No agents were available in the queue to take the call follows the join empty parameter of the queue leaveempty No agents available while the call was waiting in the qeuue di Call diverted because the ratio number of agent number of calls waiting configured was vert_ca_ratio exceeded di Call diverted
482. sections except when an empty section is followed by another section Correct Sectionl Section2 Bar Correct Sectionl cberget Section2 Bar Correct Sectionl Foo Incorrect Sectionl Foo 1 12 Contributors 365 XiVO doc Documentation Release 15 13 Lists Bullet lists First item Second item Autonumbered lists First item Second item Literal blocks Use on the same line as the line containing text when possible The literal blocks must be indented with three spaces Correct Bla bla bla apt get update Incorrect Bla bla bla apt get update Inline markup Use the following roles when applicable e file for file i e The file dev null file menuselection for the web interface menu The menuselection Configuration gt Management gt Certificates page guilabel for designating a specific GUI element The guilabel Action column Others There must be no warning nor error messages when building the documentation with make html There should be one and only one newline character at the end of each file There should be no trailing whitespace at the end of lines Paragraphs must be wrapped and lines should be at most 100 characters long 366 Chapter 1 Table of Contents
483. server crt configure your HTTP client to trust the self signed certificate by adding a new trusted CA The CA certificate or bundle is the file usr share xivo certs server crt 1 6 7 Configuration Files This section describes some of the XiVO configuration files Configuration priority Usually the configuration is read from two locations a configuration file con ig yml and a configuration directory conf Files in the conf d extra configuration directory are used in alphabetical order and the first one has priority For example 00 debug yml1 debug True 01 nodebug yml debug False The value that will be used for debug will be True since 00 debug ym1 comes before 01 nodebug yml in the alphabetical order xivo agentd The configuration is done in the configuration directory The configuration file should not be modified because it will be overridden by upgrades Default configuration directory etc xivo agentd conf d e Default configuration file etc xivo agentd config yml 70 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 The configuration file may be used as an example for supported configuration file values See also Configuration priority xivo auth The configuration is done in the configuration directory The configuration file should not be modified because it will be overridden by upgrades Default configuration directory etc
484. sheet Supported field types title to create a title on your sheet text show a text url a simple url link open your default browser urlx an url button phone create a tel link you can click to call on your sheet form show the form from an ui predefined It s an xml ui You need to define qtui in display format Default value if given this value will be used when all substitutions in the display value field fail Display value you can define text variables or both See the variable list for more information 132 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Variables Three kinds of variables are available xivo prefix is reserved and set inside the CTI server xivo where for sheet events event triggering the sheet xivo origin place from where the lookup is requested did internal forcelookup xivo direction incoming or internal xivo did DID number xivo calleridnum xivo calleridname xivo calleridrdnis contains information whether there was a transfer xivo calleridton Type Of Network national international xivo calledidnum xivo calledidname xivo ipbxid xivo astid in 1 1 xivo directory for directory requests it is the directory database the item has been found xivo queuename queue called xivo agentnumber agent number called xivo date formatted date string xivo time formatted time string when the s
485. sip 1 Update a SIP Line Only fields that need to be updated should be sent All other fields will remain unmodified during the update Query PUT 1 1 lines_sip lt id gt Errors Same as for creating a SIP line Please see Create SIP line Example request PUT 1 1 lines sip 67 HTTP 1 1 Host xivoserver Content Type application json context my context Example response HTTP 1 1 204 No Content Delete SIP Line A SIP line can not be deleted if it is still associated with a user an extesion or a device Any user extension or device attached to the line must be dissociated first Consult the documentation on User Line Association Line Extension Associations and Devices for further explanations Query 304 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 DELETE 1 1 lines_sip lt id gt Errors Error Error message Description code 400 error while deleting Line See error message for more details lt explanation gt 400 Error while deleting Line line still Line is still associated to a user extension or device see has a link explanation above 404 Line with line_id X does not exist The requested line was not found Example request DELETE 1 1 lines sip 1 HTTP 1 1 Host xivoserver Example response HTTP 1 1 204 No Content User Line Association See Us
486. sl_certificateinfos Export public key Query GET openssl_exportpubkey Export SSL certificate Query GET openssl_export Create CA certificate Query POST openssl_createcacertificate Create certificate Query POST openssl_createcertificate Delete certificate Query 358 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 GET openssl_deletecertificate Import SSL certificate Query POST openssl_import DNS configuration Host configuration Query POST hosts Resolv conf configuration Query POST resolv_conf Services daemon Reload services Query POST services Xivo Services Reload XiVO services Query POST xivoctl Handlers Execute handlers Query POST exec_request_handlers Status check Status 1 11 and SDK 359 XiVO doc Documentation Release 15 13 Query GET status_check Example request Content Type application json GET status check HTTP 1 1 Host xivoserver Example response HTTP 1 1 200 OK Content Type application json status up For other services see http api xivo io Configuration The REST API is available via HTTPS or HTTP on port offer by the daemon Accessing
487. so named dialplan 1 8 Administration 175 XiVO doc Documentation Release 15 13 Use Case Minimal IVR Flowchart Configuration File and Dialplan Invalid extension ortimeout First step you need to create a configuration file that contain an asterisk context and your IVR dialpan In our example both file and context are named dp ivr example V Services settings callme conf SIP Protocol dp call return to switchboard conf 7 SCCP Protocol Voicemails Phonebook Configuration Advanced IPBX settings dp e164 compatibility conf Devices Lines Users J dp incall predec conf Groups Voicemails _ dp incall redirection conf dp internal call to svi conf dp dual ringing with routing conf _ dp dual ringing without routing conf Conference rooms dp shorts numbers conf Call n Incoming calls Outgoing calls de Call permissions Call filters Call pickups Schedules Calls Logs SIP Protocol IAX Protocol 1 Customized Audio files On hold Music Extensions 222222822 File dp ivr example conf File content Copy all these lines in the newly created configuration file in our case dp ivr example dp ivr example exten 1 dp
488. ss 192 168 0 1 netmask 255 255 255 0 broadcast 192 168 0 255 gateway 192 168 0 254 mtu rz L500 auto True up True options dns search toto tld tutu tld dns nameservers 127 0 0 1 192 168 0 254 Change state Query PUT change_state_eth_ipv4 Example request 356 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 PUT change_state_eth_ipv4 HTTP 1 1 Host xivoserver Content Type application json ifname ethO state True Delete interface ipv4 Query GET delete eth ipv4 interface Example request GET delete eth ipv4 eth0 HTTP 1 1 Host xivoserver Content Type application json HA configuration Get HA configuration Query GET get ha config Update HA configuration Query POST update ha config network configuration Get network configuration Query GET network config Rename ethernet interface Query POST rename ethernet interfac swap ethernet interface Query 1 11 and SDK 357 XiVO doc Documentation Release 15 13 POST swap_ethernet_interfaces Routes Query POST routes OpenSSL configuration List certificates Query GET openssl_listcertificates Get certificate infos Query GET opens
489. ss point used as NAS IP Address own ip addr 127 0 0 1 Optional NAS Identifier string for RADIUS messages When used this should be a unique to the NAS within the scope of the RADIUS server For example a fully qualified domain name can be used her When using IEEE 802 11r nas identifier must be set and must be between 1 and 48 octets long nas identifier ap example com RADIUS authentication server auth server addr 127 0 0 1 auth server port 1812 auth server shared secret secret RADIUS accounting server acct server addr 127 0 0 1 acct server port 1813 acct server shared secret secret Secondary RADIUS servers to be used if primary one does not reply to RADIUS packets These are optional and there can be more than one secondary server listed auth server addr 127 0 0 2 auth server port 1812 auth server shared secret secret2 acct server addr 127 0 0 2 acct server port 1813 acct server shared secret secret2 Retry interval for trying to return to the primary RADIUS server in seconds RADIUS client code will automatically try to use the next server when the current server is not replying to requests If this interval is set primary server will be retried after configured amount of time even if the currently used secondary server is still working radius retry primary interval 600 432 Chapter 1 Table of Contents XiVO doc Documentation Releas
490. ss2 othercity otherstate otherzipcode othercountry Displayed fields It s possible to add more fields to the display in the CTT client The display can be customized in the web interface under Services gt CTI server gt Directories gt Display filter Fields that can be displayed are set in Directories gt Definitions gt xivodir The field name will be used to refer to this field in the directory display The fields in definition can be used with the following syntax db field name General phone book section These fields are set in the General tab of the phone book phonebook description phonebook displayname phonebook email phonebook firstname phonebook fullname this value is automatically generated as lt firstname gt lt lastname gt e g John Doe phonebook lastname phonebook society phonebook title phonebook url Phone numbers These are the different phone numbers that are available phonebooknumber fax number phonebooknumber home number phonebooknumber mobile number phonebooknumber office number phonebooknumber other number Addresses Each configured address can be accessed Address uses the following syntax phonebookaddress location field e g phonebookaddress office zipcode 190 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Locations home office other Fields address1 address2 city
491. st be one of critical error warning ER The owner of the process info debug Default info Terminology Back end A back end is a connector to query a specific type of directory e g one back end to query LDAP servers another back end to query CSV files etc Source A source is an instance of a back end One backend may be used multiples times to query multiple directories of the same type For example I could have the customer csv and the employee csv sources each using the CSV back end but reading a different file 96 Chapter 1 Table of Contents nfig yml XiVO doc Documentation Release 15 13 Plugins A plugin is an extension point in xivo dird It is a way to add or modify the functionality of xivo dird There are currently three types of plugins Back ends to query different types of directories LDAP CSV etc Services to provide different directory actions lookup reverse lookup etc Views to expose directory results in different formats JSON XML etc API See http api xivo io section XiVO Dird 1 6 16 XiVO sysconfd xivo sysconfd is the system configuration server for XiVO It does quite a few different things here s a non exhaustive list configuring network interfaces hostname DNS configuring high availability staring stopping restarting services reloading asterisk configuration sending some events to components xivo agentd xivo agid and xiv
492. stats timenow 1384509582 88 stats 1 Xivo WaltingCalls class getqueuesstats timenow 1384509582 89 stats 1 Xivo TalkingAgents 0 Xivo AvailableAgents 1 Xivo EWT class getqueuesstats timenow 1384512350 25 Status These messages can also be received without any request as unsolicited messages User status User status is to manage user presence Request user status update Client gt Server class getlist commandid 107712156 function updatestatus listname users Mees 14 Server Client class getilst function updatestatus listname users status availstate outtolunch connection yes Lid 1 timenow 1364994093 48 tipbxid xivo Change User status Client gt Server availstate away Class availstate commandid 1946092392 ipbxid ivo userid 1 Server Client class r getlist function updatestatus listname users status availstate away tid 1 timenow 1370523352 6 tipbxid xivo Phone status tid is the line id found in linelist from message User configuration Client gt Server class i getlisct commandid 107712156 function updatestatus listname phones pid 8 tipbxid xivo Server Clie
493. status updates of a list of agent Once unregistered the client will stop receiving the Endpoint status update events for the specified agents Client gt Server class unregister endpoint status update endpoint ids lt xivo uuid gt endpoint idl1 lt xivo uuid gt endpoint id2 oy lt xivo uuid gt endpoint idn commandid lt commandid gt Endpoint status update endpoint status update event is received when the status of a line changes To receive this event the user must first register to the event for a specified endpoint using the Register endpoint status update command To stop receiving this event the user must send the Unregister endpoint status update command data a dictionary containing 3 fields endpoint id is an integer containing the ID of the line affected by this status change uuid a string containing the UUID of the XiVO that sent the status update status an integer matching an entry in the cti hint configuration Server Client class endpoint status update data endpoint id 42 tivo uuid ethe xivo uuid status hint status The endpoint status update event contains the same data as the endpoint status update The latter should be preferred to the former for uses that do not require a persistent connection to xivo ctid Register user status update register user status
494. ster any SIP phones In this case you must delete the DROP rules with the following command iptables D INPUT p udp dport 5060 j DROP Repeat this command until no more unwanted rules are left 1 4 1 Preparing for an Upgrade Consult the roadmaps starting from your current version to the current prod version Read all existing Upgrade Notes see below starting from your version to the current prod version For custom setups follow the required procedures described below example cluster To download the packages beforehand run xivo upgrade d This is not necessary but useful for upgrading more quickly prior to stopping telephone services When ready run xivo upgrade which will start the upgrade process Telephone services will be stopped during the process When finished check that the services are running with xivo service status command and with actual checks like SIP registration ISDN links status internal incoming outgoing calls XiVO Client connections etc 14 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 1 4 2 Upgrading from XiVO 14 01 14 02 14 03 14 04 installed from the ISO In those versions xivo upgrade keeps XiVO on the same version You must do the following before the normal upgrade echo deb http mirror xivo io debian xivo five main gt etc apt sources list d xiy amp amp apt get update amp amp apt get install xivo fai amp amp rm
495. sterisk ful 5 Fetch xivo ctid logs for the day of the crash make sure file was not already logrotated cp a var log xivo ctid log var local date Y m d hostname xivo ctid ld 6 Open a new issue on the bugtracker with following information Tracker Bug Status New Category Asterisk In versions The version of your XiVO installation where the crash freeze happened Subject Asterisk CrashorAsterisk Freeze Description Add as much context as possible if possible a scenario that lead to the issue the date and time of issue where we can fetch logs and backtrace Attach logs and backtrace if available to the ticket issue must be saved then edited and files attached to a comment 1 12 Contributors 367 ip 0751 1 104 XiVO doc Documentation Release 15 13 Debugging Asterisk Crash When asterisk crashes it usually leaves a core file in var spool asterisk You can create a backtrace from a core file named core file with gdb batch ex bt full ex thread apply all bt asterisk core file bt thr ads txt Debugging Asterisk Freeze You can create a backtrace of a running asterisk process with batch ex thread apply all bt asterisk S pidof asterisk gt bt threads txt If your version of asterisk has been compiled with the DEBUG THREADS flag you can get more information about locks with asterisk rx core show locks core sho
496. substitution The agid service must be restarted to apply changes etc init d xivo agid restart Changing the email subject You can change the subject of the email sent upon fax reception by editing etc xivo asterisk xivo fax conf Look for the mail section and in this section modify the value of the subject option The available variable substitution are the same as for the email body The agid service must be restarted to apply changes etc init d xivo agid restart Changing the email from You can change the from of the email sent upon fax reception by editing etc xivo asterisk xivo fax conf Look for the mail section and in this section modify the value of the email from option The agid service must be restarted to apply changes 144 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 etc init d xivo agid restart Using the advanced features The following features are only available via the etc xivo asterisk xivo_fax conf configuration file They are not available from the web interface The configuration file has documentation embedded in it in the form of comments so we recommend you reading them before editing the configuration file The way it works is the following you first declare some backends i e actions to be taken when a fax is received A backend name looks like mail ftp example orgorprinter office once your backends are d
497. sult the following detailed upgrade notes for more information Contact Center XiVO 12 24 In order to fix problems related to Asterisk freezing through the chan agent mod ule XiVO 12 24 implements a new way of managing agents Warning The contact center XiVO 12 24 does not implement all the features available in 12 22 Therefore you must not upgrade your XiVO if you depend on these features These features will be reimplemented in the future starting with version 13 01 Missing Features Skill based routing Penalities Call listening Live reload via the web interface Agents must be logged out for the following operations Adding or removing agents from the queues When changing the name of a queue only the name not the displayed name You can logoff all the agents with the following command xivo agentctl c logoff all Preprocess subroutines Subroutines on users are currently no longer executed when an agent receives a call from the queue High availability HA for the contact center is not supported for the moment When switching from a master to a slave you must relog all your agents SCCP Devices Available In use statuses for agents that are logged in do not work for the moment Changes in behavior In use indicator in the XiVO client In XiVO 12 22 an agent is seen as In use when The agent s phone is ringing or has answered a call coming only from a queue In XiVO 12 24
498. sure your modifications are working e Ona XiVO edit manually the file etc dhcp dhcpd_update conf Service isc dhcp server restart e If errors are shown in var log daemon 1og check your modifications Edit the files Edit the files in the Git repo xivo provd plugins directory dhcp Push your modifications Goin dhcp e Run make upload to push your modifications to provd xivo io There is no testing version of these files Once the files are uploaded they are available for all XiVO installations Managing Plugins Git Repository Most plugin related files are available in the xivo provd plugins repository Following examples are relative to the repository directory tree Any modifications should be preceeded by a git pull Updating a Plugin We will be using the xivo cisco spa plugins family as an example on this page There is one directory per family Here is the directory structure for xvo cisco spa plugins xivo cisco spa model name xxx model name xxx t common build py Every plugin has a folder called common which regoups common ressources for each model Every model has its own folder with its version number After modifying a plugin you must increment the version number You can modifiy the file plugin info to change the version number plugins xivo cisco spa model name xxx t plugin info 1 12 Contributors 413 XiVO doc Documentation Release 15
499. swer to this question yet because you might not know if the phone needs such files to be either in English or in French the two officially supported language in XiVO you ll need to have an easy access to these files if its the case 6 Does the phone supports auto provisioning via DHCP HTTP or TFTP The provisioning system in XiVO is based on the popular method of using a DHCP server to tell the phone where to download its configuration files and a HTTP or TFTP server to serve these configuration files Some phones support other methods of provisioning like TR 069 but that s of no use here Also if your phone is only configurable via its web interface although it s technically possible to configure it automatically by navigating its web interface it s an extremely bad idea since it s impossible to guarantee that you ll still be able to provision the phone on the next firmware release If the phone supports both HTTP and TFTP pick HTTP it usually works better with the provisioning server of XiVO 7 What are the default usernames passwords on the phone to access administrator menus phone UI and web UI How do you do a factory reset of the phone Although this step is optional it might be handy later to have these kind of information Try to find them now and note them somewhere 8 What are the DHCP options and their values to send to the phones to tell it where its configuration files are located Once you know that th
500. t internal name where gt lt CDATA dial gt lt internal gt internal name channel CDATA SIP barometrix jyldev 00000009 intern l internal name focus gt lt CDATA no gt lt internal gt internal name zip gt lt CDATA 1 gt lt internal gt lt sheet_qtui order 0010 name qtui type None gt lt CDATA gt lt sheet_qtui gt sheet info order 0010 name Nom type title gt lt CDATA 0230210083 gt lt sheet_info gt sheet info order 0030 name Origine type text gt lt CDATA extern gt lt sheet_info gt sheet info order 0020 name Num xc3 xa9ro type text gt lt 02302100 3 gt lt sheet_ systray info order 0010 name Nom type title gt lt CDATA Maric xc3 xa9 Sapr xc3 xaftc systray info order 0030 name Origine type body CDATA extern systray info systray info order 0020 name Num xc3 xa9ro type body gt lt CDATA 023021 user profile 083 syst The xml file content is defined by the following xsd file xivo javactilib src main xsd sheet xsd online version Phone status update Received when a phone status change class getlist function updatestatus listname phones 404 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 class getlist function updatestatus listname phones tipbxid s timenow
501. t yes Activate dynamically fax detection same n Answer same n Wait 4 You can change the number of seconds it will wait for fax 4 to 6 is gc same n Set FAXOPT faxdetect no If no fax was detected deactivate dyamidally fax dete same n return Return exten 1 detected from S CALLERID num towards XIVO_DSTNUM will be sent u same n GotoIf S S CHANNEL channeltype 2 2 od same n changeechocan Set CHANNEL echocan_mode fax if chan type is dahdi set echo same n continue Gosub faxtomail s 1 XIVO_USEREMAIL 2 In the file etc xivo asterisk xivo globals conf set the global user subroutine to pre user global faxdetection this subroutine will be executed each time a user is called XIVO_PRESUBR_GLOBAL_USER pre user global faxdetection 3 Reload asterisk configuration both for dialplan and dahdi asterisk rx core reload 1 14 3 Berofos Integration with PBX You can use a Berofos failover switch to secure the ISDN provider lines when installing a XiVO in front of an existing PBX The goal of this configuration is to mitigate the consequences of an outage of the XiVO with this equipment the ISDN provider links could be switched to the PBX directly if the XiVO goes down XiVO does not offer natively the possibility to configure Berofos in this failover mode This section describes a workaround Logical view Provider
502. t big_fonts qss Windows and Mac xivoclient stylesheet big_fonts qss GNU Linux The big_fonts qss file should contain QueuesView font size 40px QueuesView QHeaderView font size 40px Units of size that can be used are described on the Qt documentation Agent List General information The queue list is a dashboard displaying each agent configured on the XiVO Agents List plain 9 Joined geladi EE Paused Number First name Last name Listen Status since Logged queues 101 Alice Wonderland Listen a 0 102 Bob Cat Listen 3 0 103 Charlie i Chaplin Listen il Columns Number The agent s number First name amp Last name The agent s first name and last name Listen A clickable cell to listen to the agent s current call Clicking on the cell will make your phone ring When you ll answer you ll hear the conversation the agent is having You ll then be able to press the following digits on your phone to switch between the different listen modes e 4 spy mode default No one hears you 5 whisper mode Only the agent hears you e 6 barge mode Both the agent and the person he s talking to hear you Status since Shows the agent s status and the time spent in this status An agent can have three statuses Not in use when he is ready to answer an ACD call Out of queue when he called or answered a call not from the queue In use when he is either on call f
503. t create an entry in the default context xivo xtrafeatures is included in default The best way is to add the extension in the file xivo xtrafeatures conf 1 8 Administration 177 XiVO doc Documentation Release 15 13 CallerID mode Preprocess subroutine 7 Description SIP Protocol Protocol SCCP Protocol Voicemails Phonebook Advanced Devices Lines Users Groups Voicemails Conference rooms Incoming calls Outgoing calls Call permissions Call filters Call pickups Schedules Calls Logs SIP Protocol Protocol Customized Audio files On hold Music Extensions Paging Reload dialplan E 178 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 exten gt 8899 1 Goto dp ivr example s 1 Use Case IVR with a schedule In many cases you need to associate your IVR to a schedule to indicate when your company is closed Flowchart Playback ivr exemple schedule closed Playback ivr example welcome sound Playback ivr example invalid choice Background ivr exemple choices Invalid extension waitexten ortimeout Counter lt 3 during 55 Valid choice Playback ivr Callto 8000 example error Callto 8833 Callto 8547 Repeat the menu Create Schedule First step create your schedule 1 from the menu Call
504. t from a XiVO we need to route incoming calls on the XiVO destination Note This step is only necessary if the trunk is linked to an Incoming calls context To route an incoming call to the right destination in the right context we will create an incoming call in Services IPBX Call management Incoming calls Tab General DID 101 Context Incalls Destination User Redirect to someone This will tell XiVO if you receive an incoming call to the extension 101 in the context Incalls then route it to the user someone The destination context will be found automatically depending on the context of the line of the given user So with the outgoing call set earlier on XiVO A and with the incoming call above set on XiVO B a user on XiVO A will dial 99101 and the user someone will ring on XiVO Interconnect a XiVO to a VoIP provider When you want to send and receive calls to the global telephony network one option is to subscribe to a VoIP provider To receive calls your XiVO needs to tell your provider that it is ready and to which IP the calls must be sent To send calls your XiVO needs to authenticate itself so that the provider knows that your XiVO is authorized to send calls and whose account must be credited with the call fare The steps to configure the interconnections are Establish the trunk between the two XiVO that is the SIP connection between the two servers Configure outgoing calls
505. t portion of XiVO For example if you remove the certificate files used for SIP TLS then you need to manually disable SIP TLS or asterisk will look for certificate file but it won t be able to find them Examples In the following examples if a field is not specified than you should leave it at its default value Creating certificates for SIP TLS You need to create both a CA certificate and a server certificate CA certificate Name phones CA Certification authority checkbox checked Autosigned checked Valid end date at least one month in the future Common name the FQDN Fully Qualified Domain Name of your XiVO Organization your organization s name or blank Email your email or organization s email Server certificate Name phones Certification authority select phones CA Valid end date at least one month in the future Common name the FQDN of your XiVO Organization your organization s name or blank Email your email or organization s email Creating certificate for CTI server Name xivo ctid Autosigned checked Valid end date at least one month in the future Common name the FQDN of your XiVO Organization your organization s name or blank Email your email or organization s email 1 8 Administration 113 XiVO doc Documentation Release 15 13 LDAP XiVO offers the possibility to integrate LDAP servers Once configured properly you ll b
506. tation Release 15 13 1 4 7 Upgrading to from an archive version Upgrade involving archive version of XiVO Introduction What is an archive version An archive version refers to a XiVO installation whose version is frozen you can t upgrade it until you manually change the upgrade server What is the point Using archive versions enable you to upgrade your XiVO to a specific version in case you don t want to upgrade to the latest which is not recommended but sometimes necessary You will then be able to upgrade your newer archive version to the latest version or to an even newer archive version Archive package names Archive packages are named as follow XiVO version Archive package name 1 2 to 1 2 12 pf fai xivo 1 2 skaro 1 2 1 12 14 to 13 24 xivo fai skaro 13 04 13 25 to 14 17 xivo fai 14 06 Upgrade from an archive to the latest version Archive version 13 25 apt get update apt get install xivo fai xivo fai skaro squeeze xivo skaro cat usr share xivo XIVO VERSION xivo upgrade Archive version gt 13 25 and 14 18 apt get update apt get install xivo fai xivo upgrade Archive version gt 14 18 xivo dist xivo five xivo upgrade As a result xivo upgrade will upgrade XiVO to the latest stable version Upgrade from an older non archive version to a newer archive version Non archive version means any normal way of installin
507. tch agents to an id that is different from the id in the agent configuration table This is necessary to avoid loosing statistics on a deleted agent This also means that if an agent changes number ie Agent 1001 to Agent 1202 the supervisor will have to take this information into account when viewing the statistics Affecting an old number to a another agent also means that the supervisor will have to ignore entries for this given agent for the period before the number assignment to the new agent 260 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 stat_queue This table is used to store queues in a table that is different from the queue configuration table This is necessary to avoid losing statistics on a deleted queue Renaming a queue is also not handled at this time 1 10 High Availability HA The HA High Availability solution in XiVO makes it possible to maintain basic telephony function whatever your main XiVO server is running or not When running a XiVO HA cluster users are guaranteed to never experience a downtime of more than 5 minutes of their basic telephony service The HA solution in XiVO is based on a 2 nodes master and slave architecture In the normal situation both the master and slave nodes are running in parallel the slave acting as an hot standby and all the telephony services are provided by the master node If the master fails or must be shutdown for maintenance then the telep
508. te 0 0 102 Bob Cat Logged out Not paused 0 6 Columns Number The agent number or the phone number of the queue member Firstname and Lastname First name and last name of the agent or the user to which the phone belongs Logged Whether the agent is logged or not Blank for a phone Paused Whether the agent is paused or not Blank for a phone Answered calls Number of calls answered by the member since last login for an agent or restart or configura tion reload Last call Hangup time of the last answered calls Penalty Penalty of the queue member Link XiVO Client presence to agent presence You can configure XiVO to have the following scenario The agent person leaves temporarily his office lunch break He sets his presence in the XiVO Client to the according state The agent will be automatically set in pause and his phone will not ring from queues He comes back to his office and set his presence to Available The pause will be automatically cancelled You can configure the presence states of CTI profiles and attach Act ions to them such as Set in pause or Enable DND You can then attach an action Set in pause for multiple presence states and attach an action Cancel the pause for the presence state Available 238 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 For now the actions attached to the mandatory presence Disconnected will not be taken into account 1 9 4 Agent Sta
509. terface Creating extra subnet configuration files First thing to do is to create a directory and to copy into it the configuration files mkdir etc dhcp dhcpd sites cp etc dhcp dhcpd subnet conf etc dhcp dhcpd sites dhcpd siteXXX conf cp etc dhcp dhcpd subnet conf etc dhcp dhcpd sites dhcpd lanDATA conf Note In this case we ll create 2 files for 2 differents subnets You can change the name of the files and create as many files as you want in the folder etc dhcp dhcpd sites Just adapt this procedure by changing the name of the file in the different links After creating one or several files in etc dhcp dhcpd sites you have to edit the file etc dhcp dhcpd_extra conf and add the according include statement like include etc dhcp dhcpd sites dhcpd siteXXX conf include etc dhcp dhcpd sites dhcpd lanDATA conf 58 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Adjusting Options of the DHCP server Once you have created the subnet in the DHCP server you must edit each configuration file the files in etc dhcp dhcpd_sites and modify the different parameters In section subnet write the IP subnet and change the following options underlined fields in the example subnet 172 30 8 0 netmask 255 255 255 0 subnet mask option subnet mask 255 255 255 0 broadcast address option broadcast address 172 30 8 255 rout
510. th their DID are created 2 Create the file etc asterisk extensions extra d fax conf with the following content For faxes The following subroutine forces inbound and outbound codec to alaw For outbound codec selection we must set the variable with inheritance Must be set on each Fax DID pre incall fax exten s 1 NoOp Force alaw codec on both inbound operator side and outbound analog gv xten s n Set SIP CODEC INBOUND alaw xten s n Set 6 lt CODEC OUTBOUND alaw xten s n Return The following subroutine forces outbound codec to alaw based on outgoing callerid number For outbound codec selection we must set the variable with inheritance Must be set on each outgoing call rule pre outcall fax exten s 1 NoOp Force alaw codec if caller is Fax exten s n GotoIf S S CALLERID num 0112697845 alaw exten s n Gotolf S CALLERID num 0112697846 alaw end exten s n alaw Set __SIP_CODEC_OUTBOUND alaw exten s n end Return 3 For each Fax users DID add the following string in the Preprocess subroutine field pre incall fax 4 For each Outgoing call rule add the the following string in Preprocess subroutine field pre outcall fax 1 8 15 Graphics The Services Graphics section gives a historical overview of a XiVO system s activity based on snapshots recorded every 5 minutes Graph
511. the agent in the Agent Details xlet Clicking on the icon in the Agent Details xlet will display information about the selected queue in the Calls of a Queue and Queue Members xlets 232 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Queues Calls of a Queue Talking Logged Aveilat Bakery 301 on xivo default 1 call s 1 Alice Wonderland 101 00 08 Number Queues Waiting cals Ewr Longest wait 3500 3000 Grocery store 00 00 00 00 Queue Mernbers 8 3006 SuperQueue 00 00 00 00 Bakery 301Gdefaut 3 agent s and 0 phone s Number Firstname Lastname Logged Paused Answered calls Last call Penalty Alice Wonderland Not paused o o Cat Not paused o o Charlie chaplin Paused o o Joired Paused queues queues re Agent Details Bob Cat 102 on xlvo default Logged out since 01 14 Login Queues Joined First name Last name Listen LAN 01 Alice Wonderland Listen A 102 Bob cat Listen E 103 Charlie Chaplin Listen Grocery store 3000 m green 3500 4 Bakery 301 bro 3008 m m superqueue 2000 m Queues EEJ Number Queues a Waiting calls EWT Talking Logged Available Received Answered Abandoned Mean Waiting Time Max Waiting Time Efficiency Qos 3947 UNIX 7 00 00 0 0 0 0 0 0 3256 tomato 00 00 0 0 0 0 0 0 3007 superaueue 00 00 0 N A 0 0 0 0 5
512. the calendar only if it was created on a week day monday to friday if meeting day gt 0 and meeting day lt 7 calendar add meeting Good Example def created on week day meeting return meeting day gt 0 and meeting day lt 7 if created on week day meeting calendar add meeting Conditions Avoid using parenthesis around if statements unless the statement expands on multiple lines or you need to nest your conditions Bad Examples if x 3 print condition is true if x 3 and y 4 print condition is true Good Examples if x print condition is true if x 3 and y print condition is true if extremely_long_variable 3 and another_long_variable 376 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 and yet_another_variable 5 print condition is true if 2 3 4 i 1 4 1 6 print condition is true Consider refactoring your statement into a function if it becomes too long or the meaning isn t clear Bad Example if price tax bonus reduction fee lt money product money Good Example def calculate_price price tax bonus reduction fee return price tax bonus reduction fee final_price calculate_price price tax bonus reduction fee if final_price lt money product money Naming Class
513. the dialplan reload to complete before replying to the request When this option is false xivo sysconfd reply to the request immediately Setting this option to false will speed up some operation for example editing a user from the web interface or from xivo confd but this means that there will be a small delay up to a few seconds in the worst case between the time you create your user and the time you can dial successfully its extension 1 7 Ecosystem 1 7 1 Devices In XiVO there is two kind of devices Officially Supported Devices The officially supported devices will be supported across upgrades and phone features are guaranteed to be sup ported on the latest version xivo provd plugins for these devices can be installed from the officially supported devices repository Aastra 67311 6735i 67371 67391 6755i 6757i Provisioning Y Y Y Y Y Y H A Y Y Y Y Y Y Directory XIVO Y Y Y Y Y Y Funckeys 8 26 30 55 26 30 Supported programmable keys User with supervision function Y Y Y Y Y Y Group Y Y Y Y Y Y Queue Y Y Y Y Y Y Conference Room with supervision function Y Y Y Y Y Y Continued on next page 98 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Table 1 1 continued from previous page
514. the equivalent feature Log files have changed for the following daemons previously in var log daemon 1l0og xivo provd var log xivo provd log xivo agid var log xivo agid log xivo sysconfd var log xivo sysconfd log 14 11 Consult the 14 11 Roadmap e The API URL ines lt id gt extension is now deprecated Use lines lt id gt extensions instead 14 10 Consult the 14 10 Roadmap Custom MOH have been fixed but can not be used for playing uploaded files anymore See Music on Hold 14 09 Consult the 14 09 Roadmap REST 1 0 is no more All code tests and documentation was removed from XiVO All code developped for REST API 1 0 must now be adapted to use REST API 1 1 14 08 Consult the 14 08 Roadmap The xivo database has been merged into the asterisk database The database schema has also been altered in a way that it might make the upgrade longer than usual Please consult the following detailed updated notes for more information Databases Merge Upgrade Notes xivo database has been merged into the asterisk database in XiVO 14 08 This has an impact on The restore procedure There s only one database to restore now Also the procedure to restore the data while keeping the system configuration has been updated The data that is replicated between the master and the slave in a high availability cluster Previously all the configuration that was under the Configuration
515. the name of your interface e g eth0 10 and the voip mtu to the new MTU e g 1488 1 6 System 65 XiVO doc Documentation Release 15 13 Note In the above example you can set a different MTU per interface If you don t need a per interface MTU you can simply write bin sh ip link set IFACE mtu my mtu 1 6 4 Backup Periodic backup A backup of the database and the data are launched every day with a logrotate task It is run at 06 25 a m and backups are kept for 7 days Logrotate task etc logrotate d xivo backup Logrotate cron etc cron daily logrotate Retrieve the backup You can retrieve the backup from the web interface in Services IPBX IPBX Configuration Backup Files page Otherwise with shell access you can retrieve them in var backups xivo In this directory you will find db tgz and data tgz files for the database and data backups Backup script usr sbin xivo backup Backup location var backups xivo What is actually backed up Data Here is the list of folders and files that are backed up etc asterisk etc dahdi etc dhcp etc hostname etc hosts e etc ldap etc network if up d xivo routes etc network interfaces etc ntp conf etc resolv conf 66 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 etc ss1 etc wanpipe etc xivo agentd etc xivo agid etc x
516. the one with the lower priority You can use parentheses 0 to change the priority of operations Dynamic Part The dynamic part can reference the following variables WT EWT The waiting time WT is the elapsed time since the call entered the queue The time the call pass in an IVR or another queue is not taken into account The estimated waiting time EWT has never fully worked It is mentioned here only for historical reason You should not use it It might be removed in a future XiVO version Examples WT lt 60 Skill Part The skill part can reference any skills name as variables You can also use meta variables starting with a to substitute them with data set on the Queue call For example if you call Queue with the skill rule set argument equal to select lang lang german Then every lang occurrence will be replaced by german Examples english 50 e technic 0 os gt 29 amp lang gt 39 os gt 39 amp lang gt 19 Evaluation Note that the expression english french is equivalent to english 0 french 0 244 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Name select lang Rules WT lt 10 lang gt 90 lang gt 40 Save Fig 1 83 Create Skill Rule Sets Sometimes a rule references a skill which is not defined for every agent For example given the following rule
517. there you can see there s quite a few files and directories tree common py t entry py t pkgs pkgs db plugin info README templates T 67302 tpl 67312 tpl 6739i tpl 67531 tpl 6755i tpl 6757i tpl 9143i tpl 9480i tpl base tpl F var cache installed templates tftpboot Aastra aastra cfg The interesting directories are templates This is where the original templates lies You should not edit these files directly but instead copy the one you want to modify in the var templates directory var templates This is the directory where you put and edit your custom templates var tftpboot This is where the configuration files lies once they have been generated from the templates You should look at them to confirm that your custom templates are giving you the result you are expecting Warning When you uninstall a plugin the plugin directory is removed altogether including all the custom templates A few things to know before writing your first custom template templates use the Jinja2 template engine e when doing an include or an extend from a template the file is first looked up in var templates directory and then in the templates directory device in autoprov mode are affected by templates because from the point of view of prova there s no difference between a device in autoprov mode or ful
518. tion Release 15 13 ddns update style none default lease time 3600 max lease time 86400 log facility daemon option space Aastra6700 option Aastra6700 cfg server name code 2 text option Aastra6700 contact rcs code 3 boolean class Aastra match if substring option vendor class identifier 0 6 Aastra vendor option space Aastra6700 option Aastra6700 cfg server nam http 10 34 1 1 8667 Aastra option Aastra6700 contact rcs false class Snom match if substring option vendor class identifier 0 4 snom option tftp server name http 10 34 1 1 8667 the domain name servers option must be provided for the Snom 715 to work p option domain name servers 10 34 1 1 subnet 192 168 32 0 netmask 255 255 255 0 subnet 10 34 1 0 netmask 255 255 255 0 subnet 10 34 2 0 netmask 255 255 255 0 authoritative range 10 34 2 100 10 34 2 199 option subnet mask 255 255 255 0 option broadcast address 10 34 2 255 option routers 10 34 2 254 option ntp servers 10 34 1 1 If you have many network interfaces on your host machine you might also want to edit etc default isc dhcp server to only include the phones VLAN network interface in the IN TERFACES variable Start the isc dhcp server service isc dhcp server start Add an iptables rules to do NAT iptables t nat A POSTROUTING o eth0 341 j MASQUERADE
519. tion json Content Type application json firstname John lastname Doe userfield 1 11 and SDK 315 XiVO doc Documentation Release 15 13 Example response HTTP 1 1 201 Created Location 1 1 users 1 Content Type application json firstname John lastname Doe timezone language en_US description Caller id John Doe outgoing_caller_id default mobile phone number username password music on hold default preprocess subroutine userfield LINKS rel users href https xivoserver 1 1 users 1 Update a User Only the fields that need to be modified can be set If the firstname or the lastname is modified the name of associated voicemail is also updated Query PUT 1 1 users lt id gt Input Same as for creating a User Please see Create a User Errors Same as for creating a User Please see Create a User Example request PUT 1 1 users 67 HTTP 1 1 Host xivoserver Content Type application json firstname Jonathan Example response HTTP 1 1 204 No Content Delete User A user can not be deleted if he is associated to a line or a voicemail Any line or voicemail attached to the user must be dissociated first Consult the documentation on User Line Association and Voicemail Association for further details The user will als
520. tion reloads wpa psk file etc hostapd wpa psk Set of accepted key management algorithms WPA PSK WPA EAP or both The ntries are separated with a space WPA PSK SHA256 and WPA EAP SHA256 can be added to enable SHA256 based stronger algorithms dotllRSNAConfigAuthenticationSuitesTable wpa key mgmt WPA PSK Set of accepted cipher suites encryption algorithms for pairwise keys unicast packets This is a space separated list of algorithms CCMP AES in Counter mode with CBC MAC RFC 3610 IEEE 802 11i D7 0 TKIP Temporal Key Integrity Protocol IEEE 802 11i D7 0 Group cipher suite encryption algorithm for broadcast and multicast frames is automatically selected based on this configuration If only CCMP is allowed as the pairwise cipher group cipher will also be CCMP Otherwise TKIP will be used as the group cipher dot11RSNAConfigPairwiseCiphersTable Pairwise cipher for WPA v1 default TKIP 7920 only supports TKIP wpa_pairwise TKIP Pairwise cipher for RSN WPA2 default use wpa_pairwise value rsn_pairwise CCMP Time interval for rekeying GTK broadcast multicast encryption keys in seconds dot11RSNAConfigGroupRekeyTime wpa_group_rekey 600 Rekey GTK when any STA that possesses the current GTK is leaving the BSS dotll1RSNAConfigGroupRekeyStrict wpa strict rekey 1 Time interval for rekeying GMK master key used internally to generate GTKs in seco
521. to create a general deny all permission and then an allow for some one Finally instead of unconditionally denying calling a specific extension call permissions can instead challenge the user for a password to be able to call that extension As you can see you can do a lot of things with XiVO s call permissions They can be used to create fairly complex rules That said it is probably not a good idea to so because it s pretty sure you ll get it somehow wrong Examples Note that when creating or editing a call permission you must at least fill the Name field have one extension extension pattern in the Extensions field Denying a user from calling a specific extension Add the extension in the extensions list n the Users tab select the user Warning The extension can be anything but it will only work if it s the extension of a user or an extension that pass through an outgoing call It does not work for example if the extension is the number of a conference room Denying a user of a group from calling a specific extension First you must create a group and add the user to this group Note that groups aren t required to have a number Then Add the extension in the extensions list n the Groups tab select the group Denying users from calling a specific extension on a specific outgoing call Add the extension in the extensions list n the Outgoing calls tab select the outgoing call Note
522. to each BSS unless an explicit BSSID is Specified using the bssid parameter If an explicit BSSID is specified it must be chosen such that it results in a valid MASK that covers it and the dev addr is not the same as the MAC address of the radio is not the same as any other explicitly specified BSSID Please note that hostapd uses some of the values configured for the first BSS 440 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 as the defaults for the following BSSes However it is recommended that all BSSes include explicit configuration of all relevant configuration items bss wlanO 0 ssid test2 most of the above items can be used here apart from radio interface specific items like channel bss wlanO 1 bssid 00 13 10 95 fe 0b 5 Update the following parameters if applicable in the configuration file interface ssid channel wpa_passphrase 6 Create a new stanzain etc network interfaces iface wlan sccp inet manual hostapd etc hostapd hostapd sccp conf 7 Up the interface ifup wlan0 wlan sccp 8 Configure your 7920 7921 to connect to the network To unlock the phone s configuration menu on the 7921 Press the Navigation Button downwards to enter SETTINGS mode Navigate to and select Network Profiles Unlock the IP phone s configuration menu by pressing The padlock icon on the top right of the screen will chang
523. to the REST API requires to create a webservices user in the web interface Configuration Management Web Services Access if an IP address is specified for the user no authentication is needed if you choose not to specify an IP address for the user you can connect to the REST API with a HTTP Digest authentication using the user name and password you provided For instance the following command line allows to retrieve XiVO users through the REST API using the login admin and the password passadmin curl digest insecur cookie H Accept application json u admin passadmin https The REST API is also available on the loopback interface via HTTP on port 9487 with no authentication needed HTTP status codes Standard HTTP status codes are used For the full definition see IANA definition 200 Success 201 Created 400 Incorrect syntax 404 Resource not found 406 Not acceptable 412 Precondition failed 415 Unsupported media type 500 Internal server error General URL parameters All URU s starts by 1 1 1 1 is the current protocol version Example usage of general parameters GET http 127 0 0 1 9487 1 1 voicemails limit X amp skip Y 360 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Parameters order Sort the list using a column e g number See specific resource documentation for columns allowed direction asc or desc Sort
524. ts connections with the help of client connection and it often involves cti command too innerdata is meant to be the place where all statuses are computed and stored The main loop uses select syscall to dispatch the tasks according to miscellaneous incoming requests Requirements for innerdata e the properties fetched from the WEBI configuration shall be stored in the relevant xod config structure e the properties fetched from elsewhere shall be stored in the relevant xod status structure at least two kinds of objects are not predefined as are the phones or the queues for instance the channels in the asterisk SIP 345 0x12345678 meaning the group and queue members shall be handled in a special way each The purpose of the relations field in the various structures is to keep track of relations and cross relations between different objects a phone logged in as an agent itself in a queue itself called by some channels belonging to phones CTI server Message flow Messages sent from the CTI clients to the server are received by the CTIServer class CTIServer then calls interface cti CTI class manage connection method The interface cti uses his cti command handler member to parse and run the command The CTICommandHandler get a list of classes that handle this message from the CTICommandFactory Then the the interface cti CTI calls run commands on the handler which returns a list of all commands replies
525. ts Service Call center Agents General These settings are specific for a given agent Service Call center Agents Users These settings are specific for a given agent Service Call center Agents Queues These settings are specific for a given agent Service Call center Agents Advanced These settings are specific for a given agent Service IPBX General settings Advanced Agent These settings are global for all agents 1 9 2 Queues Call queues are used to distribute calls to the agents subscribed to the queue Queues are managed on the Services Call Center Queues page A queue can be configured with the following options Name used as an unique id cannot be general Display name Displayed on the supervisor screen On Hold music The music the caller will hear The music is played when waiting and when the call is on hold 228 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 General Announces Members Application Name Display name No answer Advanced Schedules Diversions Number Ring strategy Ring all 10 Context Default default 0 zi On Hold Music default 9 Announce when a member picks up the call i Customize the name of the caller Zj Preprocess subroutine Save Fig 1 78 Services Call Center Queues Add A ring strategy defines how queue members are called when
526. ts for that interface This has an impact on the agent performance statistics an agent must be a member of at least 1 queue for its pause time to show up in the statistics You can see the complete list of changes from the Asterisk website https wiki asterisk org wiki display AST Upgrading to Asterisk 12 e https wiki asterisk org wiki display AST Upgrading to Asterisk 13 e http git asterisk org gitweb p asterisk asterisk git a blob f CHANGES h d0363f7c3b03cec5f7 1b3806535c4f9d2b2baa0Z The AGI protocol did not change between Asterisk 11 and Asterisk 13 if you have custom AGI applications you only need to make sure that the dialplan applications and functions you are using from the AGI are still valid List of Known Bugs And Limitations List of known bugs and limitations for Asterisk 13 in XiVO 15 13 When direct media is active and DTMF are sent using SIP INFO DTMF are not working properly It is also impossible to do an attended transfer from the XiVO client in these conditions See http projects xivo io issues 5692 There s a small memory leak occurring on certain call scenarios mostly call center scenarios you should check the memory usage of your asterisk process once per month and do a xivo service restart when the memory usage grows too large See http projects xivo io issues 5694 Answering a Local channel cause a ringback tone to be heard by caller even after callee answers This can happens if you are usi
527. ttp The http module is the implementation of the HTTP interface Validate parameters Calls the backend the check the user authentification e Forward instructions to the token manager Handle exceptions and return the appropriate status code controller The controller is the plumbin of xivo auth it has no business logic Start the HTTP application Start the celery worker Load all enabled plugins e Instanciate the token manager token The token modules contains the business logic of xivo auth Creates and delete tokens Creates ACL Schedule token expiration Read write token data to consul tasks The tasks module contains implementation of celery tasks that are executed by the worker Called by the celery worker Forwards instructions to the token manager extension This is a place holder for a global variable for the celery app It will be removed and should not be used Other modules that should not need documentation are helpers config interfaces Plugins xivo auth is meant to be easy to extend This section describes how to add features to xivo auth Backends xivo auth allows its administrator to configure or many sources of authentication Implementing a new kind of authentication is quite simple 1 Create a python module implementing the backend interface 2 Install the python module with an entry point xivo_auth backends An example backend implementation is available here 1 6 Syste
528. ture at Avencall Berofos sz Fig 1 101 Testing architecture at Avencall Legend 456 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 assu is our production XiVO used to make calls in the company We also use it as a source of external calls to the test servers dev gateway is a simple gateway to link all other servers xivo daily is reinstalled every day and runs all the automatic tests in xivo acceptance xivo load handles a lot of calls all day long and we monitor the system metrics while it does callgen makes the calls towards xivo load xivo test and xivo test slave are used for manual tests we run before each release xivo premium not yet installed will allow us to test the new xivo premium hardware 1 14 Troubleshooting The list of current bugs can be found on the official XiVO issue tracker 1 14 1 Transfers using DTMF When transfering a call using DTMF 1 you get an invalid extension error when dialing the extension The workaround to this problem is to create a preprocess subroutine and assign it to the destinations where you have the problem Under Services IPBX IPBX configuration Configuration files add a new file containing the following dialplan allow transfer exten s 1 NoOp Setting transfer context same n Set TRANSFER CONTEXT internal context same n Return Do not forget to substitute lt
529. tus Dashboard Overview The goal of the agent status dashboard xlet is to give contact center supervisors a better overview of agent status evolution in active queues Agent status dashboard Queue 11002 8 X Queue 11000 X Queue 11007 Usage The xlet is read only and presents a list of queues For each queue the xlet displays a status box for each logged in agent Each status box gives the following information Agent name Agent status Shows the agent s status An agent can have six statuses Not in use when he is ready to answer an ACD call Int Incoming when he answered an internal call not from a queue Int Outgoing when he emitted an internal call not from a queue Ext Incoming when he answered an external call not from a queue Ext Outgoing when he emitted an external call not from a queue In use when he is either on call a from a queue on pause or on wrapup Agent status since Shows the time spent in the current status Background color green if Not in use purple if Int Incoming or Int Outgoing pink if Ext Incoming or Ext Outgoing orange if In use Note that the agent status will only change when the communication is established not when phones are ringing 1 9 Contact Center 239 XiVO doc Documentation Release 15 13 Known bugs 1 If an agent emits a call via his XiVO Client the status will change to Int Outgoing or Ext Outgoing when the destination phone rings i
530. u also need to make sure that the etc ldap ldap conf file contains a line TLS_CACERT etc ssl certs ca certificates crt After that restart spawn fcgi with etc init d spawn fcgi restart Also make sure to use the FQDN of the server in the host field when using SSL The host field must match exactly what s in the CN attribute of the server certificate Add a LDAP Filter Next thing to do after adding a LDAP server is to create a LDAP filter via the Services IPBX configuration LDAP Filters page LDAP filters define the information that will be searched and displayed when you do a directory search You can add a LDAP filter by clicking on the add button at the top right of the page You ll then be shown this page Name User Password Fig 1 31 Adding a LDAP Filter Enter the following information Name the filter s display name LDAP server the LDAP server this filter applies to 1 8 Administration 115 XiVO doc Documentation Release 15 13 User the dn of the user used to do search requests Password the password of the given user Base DN the base dn of search requests Filter if specified it replace the default filter Phone number type this string is appended next to each result display name You ll also probably need to modify some values in the Attributes tab General Attributes NL LL PEE RE P LEEREN i v Phone nu
531. u want to synchronize by checking the boxes A pop up will appear requesting confirmation nio S Are you sure you want to synchronise devices Cancel OK 762 y Jo ey 9 1T2030 2 74 o0 Oe Protocol 541 05 1097 5 102 Aastra 67391 xivo aastra 3 2 2 56 Phonebook 10 97 5 103 Cisco SPA962 xivo cisco spa legacy ET O Advanced 34 71 61 V 1 2 10975104 Technicolor 572030 xivo technicolor ST2030 2 74 ET T Fig 1 46 Synchronize selected devices confirmation If mass synchronization was successfully sent to the devices a green information balloon notifies you of success 1 8 11 Directories This page documents how to add and configure directories from custom sources Directories added from custom sources can be used for lookup via the CTI Client or for reverse lookup on incoming calls The directory feature of phones do not use these data sources Note This page describes how to add custom sources of contacts For other sources of contacts see Phonebook and LDAP Add a data source You can add new data sources via the Configuration Management Directories page File directories The source file of the directory must be in CSV format You will be able to choose the headers and the separator in the next
532. uest GET users 34 cti Host xivoserver Accept application json 1 11 and SDK 317 XiVO doc Documentation Release 15 13 Example Response HTTP 1 1 200 OK Content Type application json user_id 34 cti profile id 2 enabled true ranks rel users href https xivoserver 1 1 users 34 rel cti_profiles href https xivoserver 1 1 cti_profiles 2 Edit the CTI configuration of a user Query PUT users lt user_id gt cti Field Required Values Description Input cti_profile_id yes int Must be an existing id enabled yes bool Enable disable the CTI Error Error message Description code 404 User with id lt user_id gt does not exist Errors 400 Nonexistent parameters cti_profile_id lt cti_profile_id gt does not exist 400 Error while editing user id the user must have a username Add a username and a and password to enable the CTI password to the user Example request PUT 1 1 users 75 cti Host xivoserver Content Type application json profile Yd s 3 enabled true Example response HTTP 1 1 204 No Content User Line Association Service for associating a user with a line Association Representation 318 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Field Va
533. ult it once the master is up again More generally custom sounds are not copied back This includes recordings Here s the list of limitations that are more relevant on an administrator standpoint n the case a DHCP server is running on the master node then when the master is down phones won t be able to get a new DHCP lease so it is advised not to restart the phones The master status is up or down there s no middle status This mean that if Asterisk is crashed the XiVO is still up and the failover will NOT happen 1 10 6 Berofos Integration Berofos Integration XiVO offers the possibility to integrate a berofos failover switch within a HA cluster This is useful if you have one or more ISDN lines i e T1 E1 or TO lines that you want to use whatever the state of your XiVO HA cluster To use a berofos within your XiVO HA installation you need to properly configure both your berofos and your XiVOs then the berofos will automatically switch your ISDN lines from your master node to your slave node if your master goes down and vice versa when it comes back up You can also use a Berofos failover switch to secure the ISDN provider lines when installing a XiVO in front of an existing PBX The goal of this configuration is to mitigate the consequences of an outage of the XiVO with this equipment the ISDN provider links could be switched to the PBX directly if the XiVO goes down 266 Chapter 1 Table of Contents XiVO doc Docume
534. um Daemon should perform a VACUUM ANA LYZE automatically after 1 minute This command marks memory as reusable but does not actually free disk space which is fine if your disk is not getting full In the case when xivo purge db hasn t run for a long time e g upgrading to 15 11 or when days fo keep is decreased some administrator may want to perform a VACUUM FULL to recover disk space Warning VACUUM FULL will require a service interruption This may take several hours depending on the size of purged database 76 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 You need to xivo service stop sudo u postgres psql asterisk c VACUUM FULL xivo service start Archive Plugins In the case you want to keep archives of the logs removed by xivo purge db you may install plugins to xivo purge db that will be run before the purge XiVO does not provide any archive plugin You will need to develop plugins for your own need If you want to share your plugins please open a pull request Archive Plugins for Developers Each plugin is a Python callable function or class constructor that takes a dictionary of configuration as ar gument The keys of this dictionary are the keys taken from the configuration file This allows you to add plugin specific configuration in etc xivo purge db conf d There is an example plugin in the xivo purge db git repo Example Archive name sa
535. umber to search Albert Dupond B r nice Martin 4 ac Claire Tremblay at B r nice Martin c 40 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Holding your mouse cursor on the person or phone icon will display more details about the person and its phone Double clicking on it will call the person if its phone is activated Right clicking on it will display the list of possible actions Dragging and dropping it on another person icon will make the dragged user call the dropped user Possible actions available through right click are Call Hangup Chat Intercept call Transfer a call to this user Cancel a transfer Invite to a conference room The available actions may differ depending on your current phone situation available busy in a conference room and on the actions allowed in your CTI profile Configuration You can modify the display of contacts within the XLet Go in the menu XiVO Client gt Con figure tab Functions sub tab Contacts You get two options The maximum number of contacts displayed The number of columns used to display the contacts A value of 0 will automatically display the contacts with the maximum number of columns allowed by the width of the window Transfers Many transfers scenarios are supported from the XiVO contact xlet Blind and attended tranfers can be done by right clicking a contact Important To be able t
536. update command is used to register to the status updates of a list of user Once registered to a user s status the client will receive all User status update events for the registered users This command should be sent when a user is displayed in the people xlet to be able to update the presence status icon The Unregister user status update command should be used to stop receiving updates Client gt Server class register user status update user ids xivo uuido uasereidl xivo uuid user id2 1 12 Contributors 407 XiVO doc Documentation Release 15 13 or xivo uuid user idn commandid lt commandid gt Unregister user status update The unregister user status update command is used to unregister from the status updates of a list of user Once unregistered the client will stop receiving the User status update events for the specified users Client gt Server class unregister user status update user ids xivo uuid agent id1 lt xivo uuid gt agent id2 7 lt xivo uuid gt lt agent idn gt commandid lt commandid gt User status update The user_status_update event is received when the presence of a user changes To receive this event the user must first register to the event for a specified user using the Register user status update command To stop receiving th
537. ur PRI card 1 you must check if you need to follow one of the Specific configuration sections below 2 then if you have another type of card to configure you can go back to the configure your card section 3 if you have configured all your card you have to configure the DAHDI interconnections in the web interface Specific configuration Multiple PRI cards and sync cable If you have several PRI cards in your server you should link them with a synchronization cable to share the exact same clock To do this you need to use the coding wheel on the Digium cards to give them an order of recognition in DAHDI Asterisk see Digium telephony cards support daisy chain the cards with a sync cable see Digium telephony cards support load the DAHDI module with the t imingcable 1 option Create etc modprobe d xivo timingcable conf file and insert the line options DAHDI MODULE NAME timingcable 1 Where DAHDI MODULE NAME is the DAHDI module name of your card e g wet4xxp for a TE205P Analog card configuration Limitations XiVO does not support hardware echocanceller on the TDM400 card Users of TDM400 card willing to setup an echocanceller will have to use a software echocanceller like OSLEC 158 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Verifications Verify that one of the wctdm wctdm24xxp module is uncommented in etc dahdi modules depending on the card
538. urs 1 8 Administration 209 XiVO doc Documentation Release 15 13 1 editing etc xivo asterisk xivo_globals conf file and setting XIVO_FWD_SCHEDULE_OUT_ISDAto 1 2 reloading the asterisk dialplan with an asterisk rx dialplan reload 1 8 30 Sound Files Add Sounds Files On a fresh install only en_US and fr_Fr sounds are installed Canadian French and German are available too To install Canadian French sounds you have to execute the following command in the cli root xivo apt get install asterisk sounds wav fr ca xivo sounds fr ca To install German sounds you have to execute the following command in the cli root xivo apt get install asterisk sounds wav de de xivo sounds de d Now you may select the newly installed language for yours users Convert Your Wav File Asterisk will read natively WAV files encoded in wav 8kHz 16 bits mono The following command will return the encoding format of the file file file RIFF little endian data WAVE audio Microsoft PCM 16 bit mono 8000 Hz The following command will re encode the input file with the correct parameters for asterisk and write into the output file sox input file b 16 c 1 r 8000 t wavpcm output file 1 8 31 Switchboard This page describes the configuration needed to have a switchboard on your XiVO Overview Switchboard functionality is
539. use the PhoneNumber namespace baselib src phonenumber h to do that it contains routines for recog nition extraction of phone numbers that way you don t have to parse manually These subroutines are pretty basic for the moment if you need want to improve them feel free to do it Retrieving CTI server infos Informations are synchronized from the server to the BaseEngine when the client connects It is stored in BaseEngine in lists It is stored in a format close to the one used to transmit it so you can see the CTI protocol definition for further documentation Each list contains objects of different type These types are channel user phone trunk agent queue group meetme voicemail queuemember parking Each type corresponds to a class derived from XInfo e g channel infos are stored in ChannelInfo objects The basic attributes of all objects are 3 strings the IPBX ID the XiVO object ID and the extended ID of the object which is the two previous attributes linked with a Listen to IPBX events If you want your XLet to receive IPBX CTI events you can do so by inheriting the IPBXListener interface You must specify which type of events you want to listen This depends of the implemented functions in the CTI server You can register to listen these events by calling the IPBXListener method registerListener xxx For now xxx the event type can take take the values chitchat history
540. user self firstname lastname number user User user firstname firstname user lastname lastname user number number return user def assert users ar qual expected user actual user self assertEquals expected user firstname actual user firstname self assertEquals expected user lastname actual user lastname self assertEquals expected user number actual user number def test create user self expected self prepare expected user Bob Marley 4185551234 user create user Bob Marley 4185551234 self assert users ar qual expected user Exceptions Exceptions should not be used for flow control Raise exceptions only for edge cases or when something that isn t usually expected happens Bad Example def is user available user if user available return True else raise Exception User isn t available try is user available user except Exception disable user user Good Example 1 12 Contributors 379 XiVO doc Documentation Release 15 13 def is_user_available user if user available return True else return False if not is_user_available user disable_user user Avoid throwing Exception Use one of Python s built in Exceptions or create your own custom Exception A list of exceptions is available on the Python documentation website Bad Example def get_user userid user
541. utomatically after this timeout Services IPBX Services IPBX Extensions General the option Hangup must be set to 0 if you want to use xO to abort attended transfer Directory Overview The goal of the directory xlet is to allow the user to search through XiVO users directory entries and arbitrary numbers to be able to transfer calls to these destinations Directo 100 Name Number Location C Alice 1001 Qu bec A B b 1002 Carl s 1003 Dave 1004 100 Usage The list of entries in the xlet is searched using the top field Entries are filtered by column content The entry list will initally appear as empty If the current search term is a valid number it will be displayed in the result list with no name to allow transfer to numbers that are not currently in the phonebook or configured on the XiVO Legend Users available E Users ringing Users talking E 42 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Users Mobile phone External contacts 1 Current search not a contact 44 Known issues Typing enter while the focus is on a directory entry will have the same behavior as clicking on the transfer button on the Switchboard xlet This unexpected behavior will be fixed when we implement other actions to the directory xlet Phonebook Phonebook searches are triggered after the user has entered 3 characters R
542. utoprov1411400365 Plugins Management Get the Plugin Manager The plugin manager links to the following resources The srv install relation links to the plugin manager installation service This installation service permits installing uninstalling plugins The pg plugins relation links to the list of plugins The pg reload relation links to the plugin reload service Query GET provd pg mgr Example request GET provd pg mgr HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json links href provd pg mgr install rel sry install href provd pg_mgr plugins rel pg plugins href provd pg_mgr reload rel pg reload List Plugins List the installed plugins If you want to install uninstall plugins you need to go trough the plugin installation service Query GET provd pg mgr plugins 1 11 and SDK 341 XiVO doc Documentation Release 15 13 Example request GET provd pg_mgr plugins HTTP 1 1 Host xivoserver Accept application vnd proformatique provd json Example response HTTP 1 1 200 OK Content Type application vnd proformatique provd json plugins Xivo aastra 3 3 1 SP2 Links href provd pg mgr plugins xivo aastr
543. vice is a switchboard template id string ID of the device template All de vices using a device template will have a certain number of common parameters preconfigured for the device Example id A4120c212cff5006c0c158f373ff006078tf7 ip 10 0 0 1 nac OOS 00s 00002 sn null vendor Aastra model 6757i version 3 2 2 pilugrnm xirvo aastra 3 2 2 9P description null status configured options switchboard template id defaultconfigdevice qms so 1 11 and SDK 285 XiVO doc Documentation Release 15 13 rel devices href https xivoserver 1l 1 devices 412c212cff500cc158f373f 00e078 77 Device list Query GET 1 1 devices Parameters order Sort devices using the specified field e g mac Allowed fields ip mac plugin model vendor version direction asc or desc Sort list in ascending asc or descending desc order limit total number of devices to show in the list skip number of devices to skip over before starting the list search Search devices Only devices with a field containing the search term will be listed Error Error message Description code 400 Invalid parameters limit must be a positive the limit parameter must be a number number Errors 400 Invalid parameters skip must be a positive the skip parameter must be a number nu
544. vidual target address when sending EAPOL frames with driver wired This is the most common mechanism used in wired authentication but it also requires that the port is only used by one station use_pae_group_addr 1 f44 Integrated EAP server EEE EEE EE HEE HEE AE HEHE HEE ET HEE EH HEE HEE EH EE EE EEE EEE Optionally hostapd can be configured to use an integrated EAP server to process EAP authentication locally without need for an external RADIUS server This functionality can be used both as a local authentication server for IEEE 802 1X EAPOL and as a RADIUS server for other devices Use integrated EAP server instead of external RADIUS authentication server This is also needed if hostapd is configured to act as a RADIUS authentication server eap_server 0 Path for EAP server user database ap_user_file etc hostapd eap_user CA certificate PEM or DER file for EAP TLS PEAP TTLS ca_cert etc hostapd ca pem Server certificate PEM or DER file for EAP TLS PEAP TTLS server_cert etc hostapd server pem Private key matching with the server certificate for EAP TLS PEAP TTLS This may point to the same file as server_cert if both certificate and key are included a single file PKCS 12 PFX file p12 pfx can also be used by commenting out server cert and specifying the PFX file as the private key private key etc hostapd server prv
545. w locks txt Note Debugging freeze without this information is usually a lot more difficult Optionally other information that can be interesting the output of asterisk rx core show channels the verbose log of asterisk just before the freeze Recompiling Asterisk It s relatively straightforward to recompile the asterisk version of your XiVO with the DEBUG_THREADS and DONT OPTIMIZE flag which make debugging an asterisk problem easier The steps are 1 Uncomment deb src line for the sources sed i s deb src deb src etc apt sources list d xivox 2 Fetch the asterisk source package mkdir p ast rebuild cd ast rebuild apt get update apt get install build essential apt get source asterisk 3 Install the build dependencies apt get build dep asterisk 4 Enable the DEBUG THREADS and DONT OPTIMIZE flag cd asterisk source folder vim debian rules 5 Update the changelog by appending debugl in the package version vim debian changelog 6 Rebuild the asterisk binary packages dpkg buildpackage us uc This will create a couple of deb files in the parent directory which you can install via dpkg 368 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Running Asterisk under Valgrind 1 Install valgrind apt get install valgrind 2 Recompile asterisk with the
546. will work out of the box in Safari and other web browsers after installing the client tel links will open FaceTime after installing the client To make the XiVO Client the default application to open tel URLs in Safari 1 Open the FaceTime application 2 Connect using your apple account 3 Open the FaceTime preferences 4 Change the Default for calls entry to xivoclient app Note The te1 URL works out of the box in versions of mac osx before 10 10 Windows XiVO Client is associated with callto and tel upon installation Installing other applications afterward could end up overriding these associations Starting with Windows Vista it is possible to configure these associa tions via the Default Programs Users can access Default Programs from Control Panel or directly from the Start menu The following popups might appear when you open a callto ortel link for the first time in Internet Explorer 52 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 XiVO Client Configuration User Features Administration Advanced Server 192 168 2 1 Port 5003 Backup server Port 5003 1 5 XiVO Client 53 XiVO doc Documentation Release 15 13 Preferences Blocked Apple ID dev amp avencall com Enable this account You can be reached for FaceTime at dav avencall com Ringtone Opening Default Default for calls 5 xivoclient app Sign Qut Details
547. wing to automate this LANG is the new language find name pro xec sed i S TRANSLATIONS N ROOT DIR MV i18n N N en ts NOMnTI 1 12 Contributors 455 XiVO doc Documentation Release 15 13 To actually create the files you will have to use the translation managing script But first you must tell the script about your new locale Edit the utils translations sh file and add your locale to the LOCALES variable Then you can run the script make pulltr Embed the translation files For each project previously edited you should have a corresponding qrc file These resource files list all files that will be embedded in the XiVO Client binaries You should then add the corresponding translation files like below lt file gt obj xivoclient_fr qm lt file gt This embeds the French translation of the xivoclient module corresponding to the translation file above The path is changed to ob because the qm file will be generated from the ts file You can use a command like the following to automate this LANG is the new language find name qrc xec sed i s N lt file gt obj _fr qm lt file gt 0 n 1 lt file gt 2 Display the new locale You have to edit the source file xivoclient src configwidget cpp and add the entry corresponding to your locale in the locale choosing combobox 1 13 Quality assurance 1 13 1 Testing architec
548. work Displays network interfaces and corresponding network traffic Read only Memory Displays Physical and swap memory usage Read only Other Services System CPU Name 00 git Percent User System Wait Operating system Linux MEN 66 30 54 10 9 90 2 30 Kernel version 3 2 0 4 686 pae IP address 10330550 Lr DNS address 10 33 2551 Interface Received Transmitted Error Drop Uptime 3 day s 05 44 09 lo 222 30 MiB 222 30 MiB 0 0 Load average 7 0 65 0 73 0 51 cun Lm m a 2 40 63 MiB 61 63 0 0 Device Partition Percent Free Used Total data system EE 61 70 0 37921 6138 0 data var 5252 0 16835 20540 sene p Percent Free Used Buffers Cached Total Physical memory EE 55 54 9 70 MiB 218 25 MiB 31 25 KiB 138 56 MiB 366 54 MiB Swap partition NIIT 8 80 872 83 MiB 84 20 MiB 957 03 MiB Other services Process Status Uptime CPU Memory Action asterisk Running 1 day s 02 41 40 0 20 3 85 14 10 MiB eoo data system Accessible 2 data var Accessible n isc dhcp server Running 1 day s 05 42 38 0 00 EE 0 32 1 16 MiB eoe ntpd Running 1 day s 05 42 32 0 00 0 33 1 19 MiB eoo rabbitmq Running 1 day s 02 41 49 0 00 EE 2 17 7 95 MiB eo xivo agent Running 1 day s 02 41 30 0 00 3 87 14 18 MiB eoo xivo agid Running 1 day s 02 41 36 0 00 mmm 193 7 06 MiB eoe xivo ami Running 1 day s 02 41 33
549. xivo auth conf d Default configuration file etc xivo auth config yml The configuration file may be used as an example for supported configuration file values See also Configuration priority xivo ctid The configuration is done in the configuration directory The configuration file should not be modified because it will be overridden by upgrades Default configuration directory etc xivo ctid conf d e Default configuration file etc xivo ctid config yml The configuration file may be used as an example for supported configuration file values See Configuration priority xivo ring conf Path etc xivo asterisk xivo ring conf Purpose This file can be used to change the ringtone played by the phone depending on the origin of the call Warning Note that this feature has not been tested for all phones and all call flows This page describes how you can customize this file but does not intend to list all validated call flows or phones This file xivo_ring conf consists of profiles of configuration some examples for different brands are already included aastra snom etc one section named number where you apply the profile to an extension or a context etc Here is the process you should follow if you want to use customize this feature 1 Create a new profile e g myprofile aastra 2 Change the phonet ype accordingly in our example myprofile aastra phonetype aastra 3
550. xt page 104 Chapter 1 Table of Contents XiVO doc Documentation Release 15 13 Table 1 5 continued from previous page 370 710 715 720 D725 760 870 Group interception Listen to online calls Directory access Filtering Boss Secretary M lt lt lt amp Transfers Functions Blind transfer Indirect transfer lt lt a K a K TT TT TTE Forwards Functions Disable all forwarding Enable Disable forwarding on no answer Enable Disable forwarding on busy Enable Disable forwarding unconditional ZIR ZI lt x lt IS Voicemail Functions Enable voicemail with supervision function Reach the voicemail K K K K K Delete messages from voicemail pu x lt A Agent Functions Connect Disconnect a static agent Connect a static agent Disconnect a static agent x x lt lt l l Parking Functions Parking Parking position Paging Functions Paging Supported expansion modules Snom Vision for Snom 7xx series and Snom 8xx series Snom D7 for Snom 7xx series Note For some models
551. y POST 1 1 lines_sip Input Field Re Description quired callerid no Caller id that appears on a phone when calling String must be formatted as Firstname Lastname lt number gt including quotes Default null context yes Context used to emit a call device_slot yes Line s position on the device provision no Numeric code used to provision a phone Default autogenerated ing_extension secret no SIP account password Default autogenerated username no SIP account username Default autogenerated Errors Error code Error message Description 400 error while creating Line lt explanation gt See explanation for more details 400 Invalid parameters context lt context gt does not exist 400 Invalid parameters device_slot must be numeric Use a positive number for the device slot Example request 1 11 and SDK 303 XiVO doc Documentation Release 15 13 POST 1 1 lines_sip HTTP 1 1 Host xivoserver Accept application json Content Type application json context default device slot 1 Example response HTTP 1 1 201 Created Location 1 1 lines sip 1 Content Type application json idm 21 context default username abcdef secret secret password provisioning extension 123456 device slot 1 callerid null links iq rel ines sip href https xivoserver 1 1 lines_
552. yml etc xivo agentd config yml Archives Archived Upgrade Notes 2014 14 24 Consult the 14 24 Roadmap The following security vulnerability has been fixed Particularly the headers Accept and XIVO 2014 01 Queues and groups permit callers to make unwanted calls 14 23 Consult the 14 23 Roadmap The waiting calls logged agents ratio queue diversion scenario has been renamed to number of waiting calls per logged agents A new community section was added to the official documentation for all user contributed documentation 14 22 Consult the 14 22 Roadmap The sheet event Dial on queues is now only sent to the ringing agent The sheet is also sent a little later during the call when the ringing agent is known 1 4 Upgrading 21 XiVO doc Documentation Release 15 13 14 21 Consult the 14 21 Roadmap The confd REST API is now accessible via HTTPS on port 9486 and via HTTP on port 9487 localhost only These ports are replacing the 50051 and 50050 ports respectively It will still be possible to access the confd REST API via the 50051 and 50050 ports for the next year but you are advised to update your confd REST API clients as soon as possible The old unsupported ami proxy is now replaced by an ami proxy built in xivo ctid You must uninstall the old ami proxy before activating the built in version See troubleshooting xivo ctid to learn how to activate 14 20 Consult the 14 2
553. ype of the old interface will automatically be changed to the data type Configuring a physical interface In this example we ll add and configure the eth network interface on our XiVO First we see there s already an unconfigured network interface named eth1 on our system Consauragion E Miterface MN address Iype Address Gateway VLANID Acton gt emo 08 00 27 ea b0 75 Static 192 168 32 137 192 168 32 254 sers Entities ehi 08 00 27 29 b7 e9 Data Directories en __Web Services Access EIC UBRO Certificates Network Enable gt Not apply Interfaces EEE T E EAEE EE E Listing the network interfaces To add and configure it we click on the small plus button next to it and we get to this page Configure physical interface In our case since we want to configure this interface with static information i e not via DHCP we fill the following fields Configure physical interface Note that since our ethO network interface already has a default gateway we do not enter information in the Default gateway field for our 1 interface Once we click on Save the XiVO will put the Apply network configuration button in bold To reconfigure the given network interface with the new information you click on it
Download Pdf Manuals
Related Search
Related Contents
取扱説明書 - Sony 1. 安全上の注意 20 Soya Drury 全ページ一括表示(PDFファイル:10062KB) Valueline VLCB60300B30 USB cable Visual SmartBrowser User`s Manual (NT Version) Garmin C90A/GT Airplane Flight Manual Supplement ASUS X750LN-TY012H Copyright © All rights reserved.
Failed to retrieve file