Phones - XML Configuration 4.26.0+
Account: Child Element of <appconfig> for hotdesking applications
Appscreen: Application Child Element of <appconfig> for appscreen application
Phone Menu: Application Child Elements of <appconfig> for phone menu application
Contacts: Settings Child Elements <appconfig> for contacts application
Display Rules: Child Element of <appconfig> for contacts application
Status: Settings Child Elements of <appconfig> for Status application
Hot Desking: Application Child Elements of <appconfig> for hotdesking application
XML Configuration
This section describes the formatting and options available when creating XML-based configuration files for provisioning Sangoma phones. Users choosing this method of configuration forgo use of the DPMA, and instead are provisioning phones for use with Asterisk versions that do not support the DPMA.
The configuration elements provided in this section are subject to change between Sangoma Phone firmware releases.
In the model column, as of Jan 27, 2022, if "3.x" is referenced, it applies to p3po-a only. These options will not be available on P310/P315 once it is upgraded to 4.x (p3po). If "4.x" is referenced, it applies to p3po (currently P320, P325, P330, P370), it will apply to P310 and P315 once those are upgraded.
This gives us some shorthand so we don't have to list every model, every time, for now, for the internal document.
Setting Elements
Each <setting> element represents at least an id and value pair of attributes. Some <setting> tags may have additional attributes.
General (Login)
Option | Values | Description | Models |
|---|---|---|---|
config_server_url | The URL of the DPMA / Switchvox config server in the format: or:
[protocol://][user:password@]server[:port][/path] | For phones attached to DPMA or Switchvox, contains the URL path to the config server. Transport type is dependent upon model and firmware version. sip:proxy is a literal. Specifies the URL string that the Sangoma phone's cURL application will call in order to retrieve the phone's configuration file. No default. | All |
pbx_credentials | value as string | For Switchvox-connected phones only, specifies the set of credentials used by an application when the use_pbx_credentials appconfig parameter is true. This should be omitted for phones connecting to something other than Switchvox. No default. | All |
login_password | Integer, e.g. 789 | Sets the Admin Password for logging into Web UI or Admin Settings Section on Phone Menu. Defaults to 789 | All |
send_mac_with_useragent | boolean | If 1, the phone will send its MAC address long with its Model and Firmware version in any cURL User-Agent requests that it makes. Defaults to 0. | All |
use_secure_labels | boolean | If 1, the phone will replace the config fetch URL with "Server" on boot and will disguise user and password inputs on Bootconfig Server URL entry screen with * characters. Defaults to 1. | All |
General (Time)
Option | Values | Description | Models |
|---|---|---|---|
time_zone | Timezone String, e.g. America/Chicago | Sets the time zone for the phone. Defaults to America/Los_Angeles | All |
time_source | "ntp" | Sets the time source for the phone. Currently, the only option is "ntp" Defaults to ntp. | Ignored on all |
ntp_server | Hostname or IP address, e.g. | Sets the NTP server to which the phone will synchronize itself. Defaults to | All |
ntp_resync | Seconds as integer, e.g. 86400 | Sets the interval between NTP synchronization. Defaults to 86400. | All |
ntp_prefer_option42 | boolean | If 1, the phone will prefer and use an IPv4 address, not host name, NTP server, first server only and not multiple servers, as provided by DHCP Option 42. If 0, the phone will ignore DHCP Option 42. Defaults to 1. | All |
General (SIP)
Option | Values | Description | Models |
|---|---|---|---|
accept_local_calls | any / host | Sets whether to accept calls from any source or only from hosts to which the phone is registered. Defaults to any. | All |
call_rejection_code_dnd | "486" | SIP response code to give when the DND status functionality is enabled. You can set any appropriate resonse code here. e.g., 480, 486, and 603. Defaults to 486 | 4.x (4_14_0) |
call_rejection_code_ignore | "603" | SIP response code to give when the user wishes to ignore an incoming call. You can set any appropriate response code here. e.g., 486, and 603. Defaults to 603 | 4.x (4_14_0) |
compact_sip_headers | boolean, Defaults to 0 | If enabled, causes the phone to utilize the compact form of SIP headers, rather than the expanded form, as well as causing the phone not to enumerate the statically defined codec payload types | All |
transport_udp_enabled | boolean | If 1, enables UDP SIP transport. If 0, disables UDP SIP transport. Defaults to 1 | All |
transport_udp_port | Valid integer for ports (1-65535) | Sets the local UDP SIP port. Defaults to 5060 | All |
transport_tcp_enabled | boolean | If 1, enables TCP SIP transport. If 0, disables TCP SIP transport. Defaults to 1 | All |
transport_tcp_port | Valid integer for ports (1-65535 ) | Sets the local TCP SIP port. Defaults to 5060 | All |
transport_tls_allowed | boolean | If 1, enables TLS SIP transport. If 0, disables TLS SIP transport. Defaults to 1 | All |
transport_tls_port | Valid integer for ports (1-65535) | Sets the local TLS SIP port. Defaults to 5061 | All |
enable_ice | boolean, defaults to 0 | If enabled, ICE candidates will be gathered | None |
stunaddr | string, defaults to | Sets the address of the STUN server to be used. Address is in the format | None |
tls_allow_wildcard_certs | boolean, defaults to 1 | If enabled, SIP TLS signaling will accept a wildcard certificate as valid, contrary to RFC 5922 section 7.2 | All |
udp_ka_interval | integer, in seconds | Sets the UDP keep alive interval, at which the phone will send CR-LF to the registered server. Defaults to 0, never. | All |
Preferences (Idle Screen)
Option | Values | Description | Models |
|---|---|---|---|
logo_file | value as "factory" or "user" | Sets the idle screen logo. value defaults to factory. path defaults to "/factory_asterisk.png" and should be "/user_image.png" for custom 320x132 pixels for P310 and P315 | All |
wallpaper_file | value as "factory" or "user" | Sets the wallpaper value defaults to factory. path defaults to "/factory_wallpaper.png" and should be "/user_wallpaper.png" for custom 320x240 pixels for P310 and P315
| 4.x currently |
display_mc_notification | boolean | If 1, enables display of missed calls. If 0, disables display of missed calls. Defaults to 1 | All |
display_pickup_notification | boolean | If 1, enables display of pickup notifications. If 0, disables display of pickup notifications. Defaults to 1. | None |
prefer_dialpad_over_incoming | boolean | If 1, the phone will keep the dial pad in the foreground during transfer operations, deferring new incoming calls received while in the transfer state to the background | None |
hide_completed_elsewhere | boolean | If 1, the phone to not register a call, missed or otherwise, when receiving RFC 3326 "Call completed elsewhere" SIP Reason. If 0, all calls that are canceled from the remote side before answer by the local phone will show as missed. Defaults to 0. | P310, P315 |
small_clock | boolean | If 1, the phone will display a small time and date on the idle screen. If 0, the regular, large format clock will be displayed on the idle screen. Defaults to 0. | 3.x currently |
idle_company_text | string | When set, the phone will display this string in its status bar while idle and no other status notification icons are active. No default. | All except P370 |
idle_return_timer | integer | Sets the time, in seconds, at which the phone will return from an app or menu screen back to the home screen, if the phone is idle for the specified duration. Defaults to 120. | All except P370 |
Preferences (Display)
Option | Values | Description | Models |
|---|---|---|---|
brightness | integer (1-10) | Sets the LCD screen brightness Defaults to 5 | All |
contrast | integer (0-10) | Sets the LCD screen contrast Defaults to 5 | P310, P315 (Not applicable) Other models TBD |
enable_check_sync | boolean | If 1, the phone will perform a reconfigure when sent a check-sync SIP NOTIFY Event from the server to which it is registered. This option is affected by the accept_calls_option. When the accept_any_calls option is set to "host," only check-sync Events from registered hosts will be acted upon. When the accept_any_calls option is set to "any," any check-sync Event from any host will be acted upon. If 0, the phone will ignore check-sync events. Defaults to 1. | All |
dim_backlight | boolean | If 1, the screen will dim after the backlight timeout has been reached and phone is otherwise idle. If 0, the phone will not dim the screen. Defaults to 1 | All |
backlight_timeout | integer (0-3200) | Time, in seconds, before backlight is set to backlight_dim_level while phone is idle; setting to 0 disables backlight timeout. Defaults to 0 | All |
backlight_dim_level | integer (0-10) | Brightness level dims to when when dim_backlight is true. Defaults to 2 | All |
blf_page_return_timeout | integer (0-60) | Time, in seconds, that elapses before the phone will return to its first page of rapid dial favorites. Defaults to 0 (never return). | P310, P315 (Not applicable) P320, P325, P330 P370 (TBD) |
default_fontsize | integer (10-14) | Sets the default font size for the phone. Caution should be exercised when using this option as larger sizes will cause labels to overrun their allowed space. | P310, P315 (Not applicable but possibly implemented) Not implemented in 4.x |
Preferences (Localization)
Option | Values | Description | Models |
|---|---|---|---|
locale | de_DE, en_AU, en_CA, en_GB, en_NZ, en_US, es_ES, es_MX, fr_BE, fr_CA, fr_FR, it_IT, nl_BE, nl_NL, pt_BR, pt_PT, ru_RU, cs_CZ | Specifies the locale used by the phone. Defaults to en_US. | All |
time_short_format | an ICU date/time pattern | Sets the time format used by the phone when displaying the small clock. This setting is normally controlled by the phone's configured locale. Defaults to h:mm a | All |
date_short_format |
Return to Documentation Home | Sangoma Support