Added support for Digium D-Series phones. (#4229)

This commit is contained in:
Bryan Redeagle 2019-06-02 11:01:54 -05:00 committed by FusionPBX
parent fde876e434
commit 9e0826ab3c
21 changed files with 1085 additions and 109 deletions

View File

@ -6,7 +6,7 @@
$apps[$x]['category'] = "Switch";
$apps[$x]['subcategory'] = "";
$apps[$x]['version'] = "1.0";
$apps[$x]['license'] = "Mozilla Public License 1.1";
$apps[$x]['license'] = "Mozilla Public License 1.1";
$apps[$x]['url'] = "http://www.fusionpbx.com";
$apps[$x]['description']['en-us'] = "Devices for provisioning.";
$apps[$x]['description']['ar-eg'] = "";
@ -641,7 +641,7 @@
$apps[$x]['db'][$y]['fields'][$z]['name'] = "device_key_icon";
$apps[$x]['db'][$y]['fields'][$z]['type'] = "text";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "ICON Name.";
$y++;
$apps[$x]['db'][$y]['table']['name'] = "v_device_profiles";
$apps[$x]['db'][$y]['table']['parent'] = "";
@ -2929,6 +2929,20 @@
$vendors[$y]['uuid'] = "9ec868f0-8c18-42f1-8eb0-8e80b10891c2";
$vendors[$y]['name'] = "digium";
$z=0;
$vendors[$y]['functions'][$z]['uuid'] = "279141ad-473f-48d2-b1f2-331565411dc4";
$vendors[$y]['functions'][$z]['label'] = "label-speed_dial";
$vendors[$y]['functions'][$z]['name'] = "speed_dial";
$vendors[$y]['functions'][$z]['value'] = "speed_dial";
$vendors[$y]['functions'][$z]['groups'][] = "superadmin";
$vendors[$y]['functions'][$z]['groups'][] = "admin";
$z++;
$vendors[$y]['functions'][$z]['uuid'] = "8a76f8d9-8fa6-445c-8b92-4dcfae09b54d";
$vendors[$y]['functions'][$z]['label'] = "label-blf";
$vendors[$y]['functions'][$z]['name'] = "blf";
$vendors[$y]['functions'][$z]['value'] = "blf";
$vendors[$y]['functions'][$z]['groups'][] = "superadmin";
$vendors[$y]['functions'][$z]['groups'][] = "admin";
$z++;
//panasonic
$y++;
$vendors[$y]['uuid'] = "86cd5298-3599-4254-9ce5-ce84a31a3596";

View File

@ -85,6 +85,16 @@
end
end
--digium
if (vendor == "digium") then
if (command == "reboot") then
event:addHeader('event-string', 'check-sync');
end
if (command == "check_sync") then
event:addHeader('event-string', 'check-sync');
end
end
--fanvil
if (vendor == "fanvil") then
if (command == "reboot") then

View File

@ -0,0 +1,47 @@
<phonebooks>
<contacts group_name="Default" id="0">
{foreach $contacts as $row}
<contact
id="{$row@index}"
prefix=""
first_name="{$row.contact_name_given}"
second_name=""
last_name="{$row.contact_name_family}"
suffix=""
contact_type="sip"
organization="{$row.contact_organization}"
job_title=""
location=""
notes=""
account_id="{if $row.phone_number != ""}{$row.phone_number}{else}{$row.phone_extension}{/if}"
>
<actions>
{if $row.phone_number != ""}
<action id="primary" dial="{$row.phone_extension}" label="Extension" name="Dial" />
<action id="send_to_vm" dial="*99{$row.phone_extension}" label="Voicemail" name="Dial Voicemail"></action>
{else}
<action id="primary" dial="{$row.phone_number}" label="Extension" name="Dial" />
{/if}
</actions>
</contact>
{/foreach}
{foreach $keys["line"] as $row}
<contact
id="sd-{$row.device_key_id}"
prefix=""
first_name=""
second_name=""
last_name="{$row.device_key_label}"
contact_type="sip"
account_id="{$row.device_key_value}"
{if $row.device_key_type == "blf"}
subscribe_to="sip:{$row.device_key_value}@{foreach $lines as $l}{$row.server_address}{break}{/foreach}"
{/if}
>
<actions>
<action id="primary" dial="{$row.device_key_value}" dial_prefix="" label="Extension" name="Dial" />
</actions>
</contact>
{/foreach}
</contacts>
</phonebooks>

View File

@ -0,0 +1,20 @@
<config>
<smart_blf>
<blf_items>
{foreach $keys["line"] as $row}
<blf_item location="main" index="{$row.device_key_id}" paging="1" contact_id="sd-{$row.device_key_id}">
<behaviors>
<behavior phone_state="idle" press_action="primary" press_function="dial" />
<behavior phone_state="connected" press_action="primary" press_function="transfer" />
</behaviors>
<indicators>
<indicator target_status="all" led_color="green" led_state="on" />
<indicator target_status="ringing" led_color="red" led_state="fast" />
<indicator target_status="on_the_phone" led_color="red" led_state="on" />
<indicator target_status="hold" led_color="red" led_state="slow" />
</indicators>
</blf_item>
{/foreach}
</blf_items>
</smart_blf>
</config>

View File

@ -0,0 +1,108 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="{$admin_password}" />
<setting id="send_mac_with_useragent" value="1" />
<setting id="use_secure_labels" value="0" />
<setting id="time_zone" value="{if isset($digium_time_zone)}{$digium_time_zone}{else}America/Los_Angeles{/if}" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="{if isset($digium_ntp_server)}{$digium_ntp_server}{else}0.digium.pool.ntp.org{/if}" />
<setting id="ntp_resync" value="86400" />
<setting id="ntp_prefer_option42" value="1" /> <!-- Not D80 -->
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="udp_ka_interval" value="0"/>
<setting id="logo_file" value="factory" path="/factory_asterisk.png" />
<setting id="display_mc_notification" value="1" />
<setting id="display_pickup_notification" value="1" />
<setting id="hide_completed_elsewhere" value="1" />
<setting id="idle_company_text" value="{if isset($digium_idle_company_text)}{$digium_idle_company_text}{else}FusionPBX{/if}" />
<setting id="brightness" value="5" />
<setting id="contrast" value="5" /> <!-- Not D6X or D80 -->
<setting id="enable_check_sync" value="1"/>
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="blf_page_return_timeout" value="0" />
<setting id="default_fontsize" value="11" /> <!-- Not D6X or D80 -->
<setting id="locale" value="{if isset($digium_locale)}{$digium_locale}{else}en_US{/if}"/>
<setting id="ringer_volume" value="5" />
<setting id="lock_ringing_volume" value="0" /> <!-- Not D80 -->
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="ehs" value="{if isset($digium_ehs)}{$digium_ehs}{else}auto{/if}" />
<setting id="call_control_checkx" value="0" />
<setting id="contacts_max_subscriptions" value="40" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="network_enable_dhcp" value="1" />
<setting id="allow_insecure_ssl" value="1" />
<setting id="network_ipv6_enabled" value="0"/>
<setting id="network_ipv6_preferred" value="0"/>
<setting id="network_vlan_discovery_mode" value="LLDP" />
<setting id="lan_port_mode" value="auto" />
<setting id="pc_port_mode" value="auto" />
<setting id="log_level" value="debug" /> <!-- Not D80 -->
<setting id="enable_logging" value="0" /> <!-- Not D80 -->
<setting id="log_server" value="" /> <!-- Not D80 -->
<setting id="log_port" value="" /> <!-- Not D80 -->
<setting id="web_ui_enabled" value="1" /> <!-- Not D80 -->
<setting id="sip_qos" value="3" />
<setting id="rtp_qos" value="6" />
<setting id="pc_qos" value="" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<setting id="in_switchvox_environment" value="0" />
<setting id="allow_app_dev" value="0" />
<setting id="8021x_passthrough" value="0"/>
<setting id="8021x_eapol_on_disconnect" value="0"/>
<setting id="8021x_method" value=""/>
<setting id="8021x_identity" value=""/>
<setting id="8021x_anonymous_identity" value=""/>
<setting id="8021x_password" value=""/>
<setting id="8021x_client_cert" value=""/>
<setting id="8021x_client_key" value=""/>
<setting id="8021x_debug" value="" />
<setting id="network_default_enable_openvpn" value="0" />
<!-- setting id="openvpn_inline_config" url="https://user:password@server.example.com/vpn/client.ovpn" value="1" md5="abc123" /-->
<accounts>
{foreach $lines as $row}
<account
server_uuid="{$row.line_number-1}" index="{$row.line_number-1}" status="{if $row.enabled}1{else}0{/if}" register="1"
account_id="{$row.user_id}" username="{$row.user_id}" authname="{$row.auth_id}" password="{$row.password}" passcode="{$row.password}"
line_label="{$row.display_name}" caller_id="{$row.display_name}" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3"
visual_voicemail="0" voicemail="*97" needMwiSubscription="1"
outbound_proxy="{$row.outbound_proxy}" outbound_port="{$row.sip_port}"
plar_number="" ring_type="normal" subscription_extension="{$row.user_id}" conflict="replace">
<host_primary server="{$row.server_address}" port="{$row.sip_port}" transport="{$row.sip_transport}" media_encryption="" reregister="300" retry="25" />
<!--<host_alternate server="10.1.2.3" port="5060" transport="udp" media_encryption="" reregister="300" retry="25" />-->
<permission id="use_voicemail" value="1" />
<permission id="send_to_voicemail" value="1" />
<permission id="ignore_calls" value="1" />
</account>{if $row@index eq 5}{break}{/if}
{/foreach}
</accounts>
<contacts url="https://{$domain_name}{$project_path}/app/provision/{$mac}-contacts.cfg" id="internal" />
<smart_blf>
<blf_items url="https://{$domain_name}{$project_path}/app/provision/{$mac}-smartblf.cfg" />
</smart_blf>
<!--firmwares>
<firmware model="D40" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D40_firmware.eff" />
<firmware model="D45" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D45_firmware.eff" />
<firmware model="D50" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D50_firmware.eff" />
<firmware model="D60" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D60_firmware.eff" />
<firmware model="D62" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D62_firmware.eff" />
<firmware model="D65" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D65_firmware.eff" />
<firmware model="D70" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D70_firmware.eff" />
<firmware model="D80" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D80_firmware.eff" />
<firmware model="EXP100" version="2.0.5.1" url="http://10.10.4.11/firmware/EXP100-2051.rom" />
</firmwares-->
</config>

View File

@ -1,107 +0,0 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="789" />
<setting id="time_zone" value="America/Los_Angeles" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="" />
<setting id="ntp_resync" value="86400" />
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="logo_file" value="user" path="/user_image.png" url="https://server.example.com/mylogo.png" md5="126cd744583eeea1ab7e44ed8af3d39c" />
<setting id="display_mc_notification" value="1" />
<setting id="brightness" value="10" />
<setting id="contrast" value="10" />
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="ringer_volume" value="5" />
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="default_ringtone" value="Digium" />
<setting id="active_ringtone" value="Digium" />
<setting id="headset_answer" value="0" />
<setting id="desi_strip_enable" value="1" />
<setting id="enable_blf_on_unused_line_keys" value="0" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="network_enable_dhcp" value="1" />
<setting id="network_static_ip_address" value="" />
<setting id="network_subnet_mask" value="" />
<setting id="network_default_gateway" value="" />
<setting id="network_domain_name" value="" />
<setting id="network_primary_dns_server" value="" />
<setting id="network_secondary_dns_server" value="" />
<setting id="network_vlan_discovery_mode" value="NONE" network="10.10.0.0/16" />
<setting id="network_vlan_qos" value="0" />
<setting id="network_vlan_id" value="44" />
<setting id="log_level" value="debug" />
<setting id="enable_logging" value="0" />
<setting id="log_server" value="10.1.2.3" />
<setting id="log_port" value="514" />
<setting id="web_ui_enabled" value="1" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<contacts url="https://server.example.com/myfile.xml" id="internal" md5="abcd123" />
<accounts>
<account index="1" status="1" register="1" account_id="1000" username="1000" authname="1000" password="USER-PASSWORD" passcode="USER-PASSWORD" line_label="USER-LINE-NAME" caller_id="CNAM" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3" visual_voicemail="0" voicemail="sip:*97@SERVER-IP-OR-DOMAIN" outbound_proxy="" outbound_port="5060" conflict="replace">
<host_primary server="SERVER IP" port="5060" transport="udp" reregister="3600" retry="25" num_retries="5" />
<permission id="record_own_calls" value="0" />
</account>
</accounts>
<codecs>
<codec id="PCMU" priority="255" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
<codec id="PCMA" priority="13" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
<codec id="G722" priority="11" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
<codec id="G726-32" priority="7" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
<codec id="G729" priority="4" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
<codec id="L16" priority="2" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1" />
<codec id="L16-256" priority="1" packetization="20" jitter_min="0" jitter_max="0" jitter_target="0" enabled="1"/>
</codecs>
<ringtones>
<tones>
<tone id="Alarm" display="Alarm" type="phone"/>
<tone id="Chimes" display="Chimes" type="phone"/>
<tone id="Digium" display="Digium" type="phone"/>
<tone id="GuitarStrum" display="Guitar Strum" type="phone"/>
<tone id="Jingle" display="Jingle" type="phone"/>
<tone id="Office" display="Office" type="phone"/>
<tone id="Office2" display="Office 2" type="phone"/>
<tone id="RotaryPhone" display="Rotary Phone" type="phone"/>
<tone id="SteelDrum" display="Steel Drum" type="phone"/>
<tone id="Techno" display="Techno" type="phone"/>
<tone id="Theme" display="Theme" type="phone"/>
<tone id="Tweedle" display="Tweedle" type="phone"/>
<tone id="Twinkle" display="Twinkle" type="phone"/>
<tone id="Vibe" display="Vibe" type="phone"/>
</tones>
<alerts>
<alert alert_info="normal" ringtone_id="Digium" ring_type="normal" />
<alert alert_info="ring-answer" ringtone_id="Digium" ring_type="ring-answer" />
<alert alert_info="intercom" ringtone_id="" ring_type="answer" />
<alert alert_info="visual" ringtone_id="" ring_type="visual" />
</alerts>
</ringtones>
<appconfig id="appscreen">
<application id="contacts" />
</appconfig>
<appconfig id="contacts">
<settings can_transfer_vm="0" />
</appconfig>
<firmwares>
<firmware model="D50" version="1_0_3_45441" url="http://10.10.4.11/firmware/1_0_3_45441_D50_firmware.eff" />
<firmware model="D70" version="1_0_3_45441" url="http://10.10.4.11/firmware/1_0_3_45441_D70_firmware.eff" />
<firmware model="D40" version="1_0_3_45441" url="http://10.10.4.11/firmware/1_0_3_45441_D40_firmware.eff" />
</firmwares>
<public_firmwares>
<public_firmware model="D50" version="1_0_3_45441" url="http://firmware.example.com/1_0_3_45441_D50_firmware.eff" />
<public_firmware model="D70" version="1_0_3_45441" url="http://firmware.example.com/1_0_3_45441_D70_firmware.eff" />
<public_firmware model="D40" version="1_0_3_45441" url="http://firmware.example.com/1_0_3_45441_D40_firmware.eff" />
</public_firmwares>
</config>

View File

@ -0,0 +1,47 @@
<phonebooks>
<contacts group_name="Default" id="0">
{foreach $contacts as $row}
<contact
id="{$row@index}"
prefix=""
first_name="{$row.contact_name_given}"
second_name=""
last_name="{$row.contact_name_family}"
suffix=""
contact_type="sip"
organization="{$row.contact_organization}"
job_title=""
location=""
notes=""
account_id="{if $row.phone_number != ""}{$row.phone_number}{else}{$row.phone_extension}{/if}"
>
<actions>
{if $row.phone_number != ""}
<action id="primary" dial="{$row.phone_extension}" label="Extension" name="Dial" />
<action id="send_to_vm" dial="*99{$row.phone_extension}" label="Voicemail" name="Dial Voicemail"></action>
{else}
<action id="primary" dial="{$row.phone_number}" label="Extension" name="Dial" />
{/if}
</actions>
</contact>
{/foreach}
{foreach $keys["line"] as $row}
<contact
id="sd-{$row.device_key_id}"
prefix=""
first_name=""
second_name=""
last_name="{$row.device_key_label}"
contact_type="sip"
account_id="{$row.device_key_value}"
{if $row.device_key_type == "blf"}
subscribe_to="sip:{$row.device_key_value}@{foreach $lines as $l}{$row.server_address}{break}{/foreach}"
{/if}
>
<actions>
<action id="primary" dial="{$row.device_key_value}" dial_prefix="" label="Extension" name="Dial" />
</actions>
</contact>
{/foreach}
</contacts>
</phonebooks>

View File

@ -0,0 +1,20 @@
<config>
<smart_blf>
<blf_items>
{foreach $keys["line"] as $row}
<blf_item location="side" index="{$row.device_key_id-1}" paging="1" contact_id="sd-{$row.device_key_id}">
<behaviors>
<behavior phone_state="idle" press_action="primary" press_function="dial" />
<behavior phone_state="connected" press_action="primary" press_function="transfer" />
</behaviors>
<indicators>
<indicator target_status="all" led_color="green" led_state="on" />
<indicator target_status="ringing" led_color="red" led_state="fast" />
<indicator target_status="on_the_phone" led_color="red" led_state="on" />
<indicator target_status="hold" led_color="red" led_state="slow" />
</indicators>
</blf_item>
{/foreach}
</blf_items>
</smart_blf>
</config>

View File

@ -0,0 +1,109 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="{$admin_password}" />
<setting id="send_mac_with_useragent" value="1" />
<setting id="use_secure_labels" value="0" />
<setting id="time_zone" value="{if isset($digium_time_zone)}{$digium_time_zone}{else}America/Los_Angeles{/if}" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="{if isset($digium_ntp_server)}{$digium_ntp_server}{else}0.digium.pool.ntp.org{/if}" />
<setting id="ntp_resync" value="86400" />
<setting id="ntp_prefer_option42" value="1" /> <!-- Not D80 -->
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="udp_ka_interval" value="0"/>
<setting id="logo_file" value="factory" path="/factory_asterisk.png" />
<setting id="display_mc_notification" value="1" />
<setting id="display_pickup_notification" value="1" />
<setting id="hide_completed_elsewhere" value="1" />
<setting id="idle_company_text" value="{if isset($digium_idle_company_text)}{$digium_idle_company_text}{else}FusionPBX{/if}" />
<setting id="brightness" value="5" />
<setting id="contrast" value="5" /> <!-- Not D6X or D80 -->
<setting id="enable_check_sync" value="1"/>
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="blf_page_return_timeout" value="0" />
<setting id="default_fontsize" value="11" /> <!-- Not D6X or D80 -->
<setting id="locale" value="{if isset($digium_locale)}{$digium_locale}{else}en_US{/if}"/>
<setting id="ringer_volume" value="5" />
<setting id="lock_ringing_volume" value="0" /> <!-- Not D80 -->
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="ehs" value="{if isset($digium_ehs)}{$digium_ehs}{else}auto{/if}" />
<setting id="call_control_checkx" value="0" />
<setting id="enable_blf_on_unused_line_keys" value="0" /> <!-- Only D50 & D70 -->
<setting id="contacts_max_subscriptions" value="40" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="network_enable_dhcp" value="1" />
<setting id="allow_insecure_ssl" value="1" />
<setting id="network_ipv6_enabled" value="0"/>
<setting id="network_ipv6_preferred" value="0"/>
<setting id="network_vlan_discovery_mode" value="LLDP" />
<setting id="lan_port_mode" value="auto" />
<setting id="pc_port_mode" value="auto" />
<setting id="log_level" value="debug" /> <!-- Not D80 -->
<setting id="enable_logging" value="0" /> <!-- Not D80 -->
<setting id="log_server" value="" /> <!-- Not D80 -->
<setting id="log_port" value="" /> <!-- Not D80 -->
<setting id="web_ui_enabled" value="1" /> <!-- Not D80 -->
<setting id="sip_qos" value="3" />
<setting id="rtp_qos" value="6" />
<setting id="pc_qos" value="" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<setting id="in_switchvox_environment" value="0" />
<setting id="allow_app_dev" value="0" />
<setting id="8021x_passthrough" value="0"/>
<setting id="8021x_eapol_on_disconnect" value="0"/>
<setting id="8021x_method" value=""/>
<setting id="8021x_identity" value=""/>
<setting id="8021x_anonymous_identity" value=""/>
<setting id="8021x_password" value=""/>
<setting id="8021x_client_cert" value=""/>
<setting id="8021x_client_key" value=""/>
<setting id="8021x_debug" value="" />
<setting id="network_default_enable_openvpn" value="0" />
<!-- setting id="openvpn_inline_config" url="https://user:password@server.example.com/vpn/client.ovpn" value="1" md5="abc123" /-->
<accounts>
{foreach $lines as $row}
<account
server_uuid="{$row.line_number-1}" index="{$row.line_number-1}" status="{if $row.enabled}1{else}0{/if}" register="1"
account_id="{$row.user_id}" username="{$row.user_id}" authname="{$row.auth_id}" password="{$row.password}" passcode="{$row.password}"
line_label="{$row.display_name}" caller_id="{$row.display_name}" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3"
visual_voicemail="0" voicemail="*97" needMwiSubscription="1"
outbound_proxy="{$row.outbound_proxy}" outbound_port="{$row.sip_port}"
plar_number="" ring_type="normal" subscription_extension="{$row.user_id}" conflict="replace">
<host_primary server="{$row.server_address}" port="{$row.sip_port}" transport="{$row.sip_transport}" media_encryption="" reregister="300" retry="25" />
<!--<host_alternate server="10.1.2.3" port="5060" transport="udp" media_encryption="" reregister="300" retry="25" />-->
<permission id="use_voicemail" value="1" />
<permission id="send_to_voicemail" value="1" />
<permission id="ignore_calls" value="1" />
</account>{if $row@index eq 5}{break}{/if}
{/foreach}
</accounts>
<contacts url="https://{$domain_name}{$project_path}/app/provision/{$mac}-contacts.cfg" id="internal" />
<smart_blf>
<blf_items url="https://{$domain_name}{$project_path}/app/provision/{$mac}-smartblf.cfg" />
</smart_blf>
<!--firmwares>
<firmware model="D40" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D40_firmware.eff" />
<firmware model="D45" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D45_firmware.eff" />
<firmware model="D50" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D50_firmware.eff" />
<firmware model="D60" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D60_firmware.eff" />
<firmware model="D62" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D62_firmware.eff" />
<firmware model="D65" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D65_firmware.eff" />
<firmware model="D70" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D70_firmware.eff" />
<firmware model="D80" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D80_firmware.eff" />
<firmware model="EXP100" version="2.0.5.1" url="http://10.10.4.11/firmware/EXP100-2051.rom" />
</firmwares-->
</config>

View File

@ -0,0 +1,47 @@
<phonebooks>
<contacts group_name="Default" id="0">
{foreach $contacts as $row}
<contact
id="{$row@index}"
prefix=""
first_name="{$row.contact_name_given}"
second_name=""
last_name="{$row.contact_name_family}"
suffix=""
contact_type="sip"
organization="{$row.contact_organization}"
job_title=""
location=""
notes=""
account_id="{if $row.phone_number != ""}{$row.phone_number}{else}{$row.phone_extension}{/if}"
>
<actions>
{if $row.phone_number != ""}
<action id="primary" dial="{$row.phone_extension}" label="Extension" name="Dial" />
<action id="send_to_vm" dial="*99{$row.phone_extension}" label="Voicemail" name="Dial Voicemail"></action>
{else}
<action id="primary" dial="{$row.phone_number}" label="Extension" name="Dial" />
{/if}
</actions>
</contact>
{/foreach}
{foreach $keys["line"] as $row}
<contact
id="sd-{$row.device_key_id}"
prefix=""
first_name=""
second_name=""
last_name="{$row.device_key_label}"
contact_type="sip"
account_id="{$row.device_key_value}"
{if $row.device_key_type == "blf"}
subscribe_to="sip:{$row.device_key_value}@{foreach $lines as $l}{$row.server_address}{break}{/foreach}"
{/if}
>
<actions>
<action id="primary" dial="{$row.device_key_value}" dial_prefix="" label="Extension" name="Dial" />
</actions>
</contact>
{/foreach}
</contacts>
</phonebooks>

View File

@ -0,0 +1,20 @@
<config>
<smart_blf>
<blf_items>
{foreach $keys["line"] as $row}
<blf_item location="main" index="{$row.device_key_id}" paging="1" contact_id="sd-{$row.device_key_id}">
<behaviors>
<behavior phone_state="idle" press_action="primary" press_function="dial" />
<behavior phone_state="connected" press_action="primary" press_function="transfer" />
</behaviors>
<indicators>
<indicator target_status="all" led_color="green" led_state="on" />
<indicator target_status="ringing" led_color="red" led_state="fast" />
<indicator target_status="on_the_phone" led_color="red" led_state="on" />
<indicator target_status="hold" led_color="red" led_state="slow" />
</indicators>
</blf_item>
{/foreach}
</blf_items>
</smart_blf>
</config>

View File

@ -0,0 +1,110 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="{$admin_password}" />
<setting id="send_mac_with_useragent" value="1" />
<setting id="use_secure_labels" value="0" />
<setting id="time_zone" value="{if isset($digium_time_zone)}{$digium_time_zone}{else}America/Los_Angeles{/if}" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="{if isset($digium_ntp_server)}{$digium_ntp_server}{else}0.digium.pool.ntp.org{/if}" />
<setting id="ntp_resync" value="86400" />
<setting id="ntp_prefer_option42" value="1" /> <!-- Not D80 -->
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="transport_tls_allowed" value="1" /> <!-- D6X Phones Only -->
<setting id="transport_tls_port" value="5061" /> <!-- D6X Phones Only -->
<setting id="udp_ka_interval" value="0"/>
<setting id="logo_file" value="factory" path="/factory_asterisk.png" />
<setting id="wallpaper_file" value="factory" path="/factory_wallpaper.png" /> <!-- D6X Phones Only -->
<setting id="display_mc_notification" value="1" />
<setting id="display_pickup_notification" value="1" />
<setting id="hide_completed_elsewhere" value="1" />
<setting id="small_clock" value="0" /> <!-- D6X Phones Only -->
<setting id="idle_company_text" value="{if isset($digium_idle_company_text)}{$digium_idle_company_text}{else}FusionPBX{/if}" />
<setting id="brightness" value="5" />
<setting id="enable_check_sync" value="1"/>
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="blf_page_return_timeout" value="0" />
<setting id="locale" value="{if isset($digium_locale)}{$digium_locale}{else}en_US{/if}"/>
<setting id="ringer_volume" value="5" />
<setting id="lock_ringing_volume" value="0" /> <!-- Not D80 -->
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="ehs" value="{if isset($digium_ehs)}{$digium_ehs}{else}auto{/if}" />
<setting id="call_control_checkx" value="0" />
<setting id="contacts_max_subscriptions" value="40" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="network_enable_dhcp" value="1" />
<setting id="allow_insecure_ssl" value="1" />
<setting id="network_ipv6_enabled" value="0"/>
<setting id="network_ipv6_preferred" value="0"/>
<setting id="network_vlan_discovery_mode" value="LLDP" />
<setting id="lan_port_mode" value="auto" />
<setting id="pc_port_mode" value="auto" />
<setting id="log_level" value="debug" /> <!-- Not D80 -->
<setting id="enable_logging" value="0" /> <!-- Not D80 -->
<setting id="log_server" value="" /> <!-- Not D80 -->
<setting id="log_port" value="" /> <!-- Not D80 -->
<setting id="web_ui_enabled" value="1" /> <!-- Not D80 -->
<setting id="sip_qos" value="3" />
<setting id="rtp_qos" value="6" />
<setting id="pc_qos" value="" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<setting id="in_switchvox_environment" value="0" />
<setting id="allow_app_dev" value="0" />
<setting id="8021x_passthrough" value="0"/>
<setting id="8021x_eapol_on_disconnect" value="0"/>
<setting id="8021x_method" value=""/>
<setting id="8021x_identity" value=""/>
<setting id="8021x_anonymous_identity" value=""/>
<setting id="8021x_password" value=""/>
<setting id="8021x_client_cert" value=""/>
<setting id="8021x_client_key" value=""/>
<setting id="8021x_debug" value="" />
<setting id="network_default_enable_openvpn" value="0" />
<!-- setting id="openvpn_inline_config" url="https://user:password@server.example.com/vpn/client.ovpn" value="1" md5="abc123" /-->
<accounts>
{foreach $lines as $row}
<account
server_uuid="{$row.line_number-1}" index="{$row.line_number-1}" status="{if $row.enabled}1{else}0{/if}" register="1"
account_id="{$row.user_id}" username="{$row.user_id}" authname="{$row.auth_id}" password="{$row.password}" passcode="{$row.password}"
line_label="{$row.display_name}" caller_id="{$row.display_name}" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3"
visual_voicemail="0" voicemail="*97" needMwiSubscription="1"
outbound_proxy="{$row.outbound_proxy}" outbound_port="{$row.sip_port}"
plar_number="" ring_type="normal" subscription_extension="{$row.user_id}" conflict="replace">
<host_primary server="{$row.server_address}" port="{$row.sip_port}" transport="{$row.sip_transport}" media_encryption="" reregister="300" retry="25" />
<!--<host_alternate server="10.1.2.3" port="5060" transport="udp" media_encryption="" reregister="300" retry="25" />-->
<permission id="use_voicemail" value="1" />
<permission id="send_to_voicemail" value="1" />
<permission id="ignore_calls" value="1" />
</account>{if $row@index eq 5}{break}{/if}
{/foreach}
</accounts>
<contacts url="https://{$domain_name}{$project_path}/app/provision/{$mac}-contacts.cfg" id="internal" />
<smart_blf>
<blf_items url="https://{$domain_name}{$project_path}/app/provision/{$mac}-smartblf.cfg" />
</smart_blf>
<!--firmwares>
<firmware model="D40" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D40_firmware.eff" />
<firmware model="D45" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D45_firmware.eff" />
<firmware model="D50" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D50_firmware.eff" />
<firmware model="D60" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D60_firmware.eff" />
<firmware model="D62" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D62_firmware.eff" />
<firmware model="D65" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D65_firmware.eff" />
<firmware model="D70" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D70_firmware.eff" />
<firmware model="D80" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D80_firmware.eff" />
<firmware model="EXP100" version="2.0.5.1" url="http://10.10.4.11/firmware/EXP100-2051.rom" />
</firmwares-->
</config>

View File

@ -0,0 +1,47 @@
<phonebooks>
<contacts group_name="Default" id="0">
{foreach $contacts as $row}
<contact
id="{$row@index}"
prefix=""
first_name="{$row.contact_name_given}"
second_name=""
last_name="{$row.contact_name_family}"
suffix=""
contact_type="sip"
organization="{$row.contact_organization}"
job_title=""
location=""
notes=""
account_id="{if $row.phone_number != ""}{$row.phone_number}{else}{$row.phone_extension}{/if}"
>
<actions>
{if $row.phone_number != ""}
<action id="primary" dial="{$row.phone_extension}" label="Extension" name="Dial" />
<action id="send_to_vm" dial="*99{$row.phone_extension}" label="Voicemail" name="Dial Voicemail"></action>
{else}
<action id="primary" dial="{$row.phone_number}" label="Extension" name="Dial" />
{/if}
</actions>
</contact>
{/foreach}
{foreach $keys["line"] as $row}
<contact
id="sd-{$row.device_key_id}"
prefix=""
first_name=""
second_name=""
last_name="{$row.device_key_label}"
contact_type="sip"
account_id="{$row.device_key_value}"
{if $row.device_key_type == "blf"}
subscribe_to="sip:{$row.device_key_value}@{foreach $lines as $l}{$row.server_address}{break}{/foreach}"
{/if}
>
<actions>
<action id="primary" dial="{$row.device_key_value}" dial_prefix="" label="Extension" name="Dial" />
</actions>
</contact>
{/foreach}
</contacts>
</phonebooks>

View File

@ -0,0 +1,20 @@
<config>
<smart_blf>
<blf_items>
{foreach $keys["line"] as $row}
<blf_item location="main" index="{$row.device_key_id}" paging="1" contact_id="sd-{$row.device_key_id}">
<behaviors>
<behavior phone_state="idle" press_action="primary" press_function="dial" />
<behavior phone_state="connected" press_action="primary" press_function="transfer" />
</behaviors>
<indicators>
<indicator target_status="all" led_color="green" led_state="on" />
<indicator target_status="ringing" led_color="red" led_state="fast" />
<indicator target_status="on_the_phone" led_color="red" led_state="on" />
<indicator target_status="hold" led_color="red" led_state="slow" />
</indicators>
</blf_item>
{/foreach}
</blf_items>
</smart_blf>
</config>

View File

@ -0,0 +1,110 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="{$admin_password}" />
<setting id="send_mac_with_useragent" value="1" />
<setting id="use_secure_labels" value="0" />
<setting id="time_zone" value="{if isset($digium_time_zone)}{$digium_time_zone}{else}America/Los_Angeles{/if}" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="{if isset($digium_ntp_server)}{$digium_ntp_server}{else}0.digium.pool.ntp.org{/if}" />
<setting id="ntp_resync" value="86400" />
<setting id="ntp_prefer_option42" value="1" /> <!-- Not D80 -->
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="transport_tls_allowed" value="1" /> <!-- D6X Phones Only -->
<setting id="transport_tls_port" value="5061" /> <!-- D6X Phones Only -->
<setting id="udp_ka_interval" value="0"/>
<setting id="logo_file" value="factory" path="/factory_asterisk.png" />
<setting id="wallpaper_file" value="factory" path="/factory_wallpaper.png" /> <!-- D6X Phones Only -->
<setting id="display_mc_notification" value="1" />
<setting id="display_pickup_notification" value="1" />
<setting id="hide_completed_elsewhere" value="1" />
<setting id="small_clock" value="0" /> <!-- D6X Phones Only -->
<setting id="idle_company_text" value="{if isset($digium_idle_company_text)}{$digium_idle_company_text}{else}FusionPBX{/if}" />
<setting id="brightness" value="5" />
<setting id="enable_check_sync" value="1"/>
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="blf_page_return_timeout" value="0" />
<setting id="locale" value="{if isset($digium_locale)}{$digium_locale}{else}en_US{/if}"/>
<setting id="ringer_volume" value="5" />
<setting id="lock_ringing_volume" value="0" /> <!-- Not D80 -->
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="ehs" value="{if isset($digium_ehs)}{$digium_ehs}{else}auto{/if}" />
<setting id="call_control_checkx" value="0" />
<setting id="contacts_max_subscriptions" value="40" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="network_enable_dhcp" value="1" />
<setting id="allow_insecure_ssl" value="1" />
<setting id="network_ipv6_enabled" value="0"/>
<setting id="network_ipv6_preferred" value="0"/>
<setting id="network_vlan_discovery_mode" value="LLDP" />
<setting id="lan_port_mode" value="auto" />
<setting id="pc_port_mode" value="auto" />
<setting id="log_level" value="debug" /> <!-- Not D80 -->
<setting id="enable_logging" value="0" /> <!-- Not D80 -->
<setting id="log_server" value="" /> <!-- Not D80 -->
<setting id="log_port" value="" /> <!-- Not D80 -->
<setting id="web_ui_enabled" value="1" /> <!-- Not D80 -->
<setting id="sip_qos" value="3" />
<setting id="rtp_qos" value="6" />
<setting id="pc_qos" value="" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<setting id="in_switchvox_environment" value="0" />
<setting id="allow_app_dev" value="0" />
<setting id="8021x_passthrough" value="0"/>
<setting id="8021x_eapol_on_disconnect" value="0"/>
<setting id="8021x_method" value=""/>
<setting id="8021x_identity" value=""/>
<setting id="8021x_anonymous_identity" value=""/>
<setting id="8021x_password" value=""/>
<setting id="8021x_client_cert" value=""/>
<setting id="8021x_client_key" value=""/>
<setting id="8021x_debug" value="" />
<setting id="network_default_enable_openvpn" value="0" />
<!-- setting id="openvpn_inline_config" url="https://user:password@server.example.com/vpn/client.ovpn" value="1" md5="abc123" /-->
<accounts>
{foreach $lines as $row}
<account
server_uuid="{$row.line_number-1}" index="{$row.line_number-1}" status="{if $row.enabled}1{else}0{/if}" register="1"
account_id="{$row.user_id}" username="{$row.user_id}" authname="{$row.auth_id}" password="{$row.password}" passcode="{$row.password}"
line_label="{$row.display_name}" caller_id="{$row.display_name}" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3"
visual_voicemail="0" voicemail="*97" needMwiSubscription="1"
outbound_proxy="{$row.outbound_proxy}" outbound_port="{$row.sip_port}"
plar_number="" ring_type="normal" subscription_extension="{$row.user_id}" conflict="replace">
<host_primary server="{$row.server_address}" port="{$row.sip_port}" transport="{$row.sip_transport}" media_encryption="" reregister="300" retry="25" />
<!--<host_alternate server="10.1.2.3" port="5060" transport="udp" media_encryption="" reregister="300" retry="25" />-->
<permission id="use_voicemail" value="1" />
<permission id="send_to_voicemail" value="1" />
<permission id="ignore_calls" value="1" />
</account>{if $row@index eq 5}{break}{/if}
{/foreach}
</accounts>
<contacts url="https://{$domain_name}{$project_path}/app/provision/{$mac}-contacts.cfg" id="internal" />
<smart_blf>
<blf_items url="https://{$domain_name}{$project_path}/app/provision/{$mac}-smartblf.cfg" />
</smart_blf>
<!--firmwares>
<firmware model="D40" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D40_firmware.eff" />
<firmware model="D45" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D45_firmware.eff" />
<firmware model="D50" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D50_firmware.eff" />
<firmware model="D60" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D60_firmware.eff" />
<firmware model="D62" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D62_firmware.eff" />
<firmware model="D65" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D65_firmware.eff" />
<firmware model="D70" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D70_firmware.eff" />
<firmware model="D80" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D80_firmware.eff" />
<firmware model="EXP100" version="2.0.5.1" url="http://10.10.4.11/firmware/EXP100-2051.rom" />
</firmwares-->
</config>

View File

@ -0,0 +1,47 @@
<phonebooks>
<contacts group_name="Default" id="0">
{foreach $contacts as $row}
<contact
id="{$row@index}"
prefix=""
first_name="{$row.contact_name_given}"
second_name=""
last_name="{$row.contact_name_family}"
suffix=""
contact_type="sip"
organization="{$row.contact_organization}"
job_title=""
location=""
notes=""
account_id="{if $row.phone_number != ""}{$row.phone_number}{else}{$row.phone_extension}{/if}"
>
<actions>
{if $row.phone_number != ""}
<action id="primary" dial="{$row.phone_extension}" label="Extension" name="Dial" />
<action id="send_to_vm" dial="*99{$row.phone_extension}" label="Voicemail" name="Dial Voicemail"></action>
{else}
<action id="primary" dial="{$row.phone_number}" label="Extension" name="Dial" />
{/if}
</actions>
</contact>
{/foreach}
{foreach $keys["line"] as $row}
<contact
id="sd-{$row.device_key_id}"
prefix=""
first_name=""
second_name=""
last_name="{$row.device_key_label}"
contact_type="sip"
account_id="{$row.device_key_value}"
{if $row.device_key_type == "blf"}
subscribe_to="sip:{$row.device_key_value}@{foreach $lines as $l}{$row.server_address}{break}{/foreach}"
{/if}
>
<actions>
<action id="primary" dial="{$row.device_key_value}" dial_prefix="" label="Extension" name="Dial" />
</actions>
</contact>
{/foreach}
</contacts>
</phonebooks>

View File

@ -0,0 +1,20 @@
<config>
<smart_blf>
<blf_items>
{foreach $keys["line"] as $row}
<blf_item location="main" index="{$row.device_key_id}" paging="1" contact_id="sd-{$row.device_key_id}">
<behaviors>
<behavior phone_state="idle" press_action="primary" press_function="dial" />
<behavior phone_state="connected" press_action="primary" press_function="transfer" />
</behaviors>
<indicators>
<indicator target_status="all" led_color="green" led_state="on" />
<indicator target_status="ringing" led_color="red" led_state="fast" />
<indicator target_status="on_the_phone" led_color="red" led_state="on" />
<indicator target_status="hold" led_color="red" led_state="slow" />
</indicators>
</blf_item>
{/foreach}
</blf_items>
</smart_blf>
</config>

View File

@ -0,0 +1,111 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="{$admin_password}" />
<setting id="send_mac_with_useragent" value="1" />
<setting id="use_secure_labels" value="0" />
<setting id="time_zone" value="{if isset($digium_time_zone)}{$digium_time_zone}{else}America/Los_Angeles{/if}" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="{if isset($digium_ntp_server)}{$digium_ntp_server}{else}0.digium.pool.ntp.org{/if}" />
<setting id="ntp_resync" value="86400" />
<setting id="ntp_prefer_option42" value="1" /> <!-- Not D80 -->
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="transport_tls_allowed" value="1" /> <!-- D6X Phones Only -->
<setting id="transport_tls_port" value="5061" /> <!-- D6X Phones Only -->
<setting id="udp_ka_interval" value="0"/>
<setting id="logo_file" value="factory" path="/factory_asterisk.png" />
<setting id="wallpaper_file" value="factory" path="/factory_wallpaper.png" /> <!-- D6X Phones Only -->
<setting id="display_mc_notification" value="1" />
<setting id="display_pickup_notification" value="1" />
<setting id="hide_completed_elsewhere" value="1" />
<setting id="small_clock" value="0" /> <!-- D6X Phones Only -->
<setting id="idle_company_text" value="{if isset($digium_idle_company_text)}{$digium_idle_company_text}{else}FusionPBX{/if}" />
<setting id="brightness" value="5" />
<setting id="enable_check_sync" value="1"/>
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="blf_page_return_timeout" value="0" />
<setting id="locale" value="{if isset($digium_locale)}{$digium_locale}{else}en_US{/if}"/>
<setting id="ringer_volume" value="5" />
<setting id="lock_ringing_volume" value="0" /> <!-- Not D80 -->
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="ehs" value="{if isset($digium_ehs)}{$digium_ehs}{else}auto{/if}" />
<setting id="call_control_checkx" value="0" />
<setting id="contacts_max_subscriptions" value="40" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="expansion_enable" value="0" type="EXP100" /> <!-- Only D65 -->
<setting id="network_enable_dhcp" value="1" />
<setting id="allow_insecure_ssl" value="1" />
<setting id="network_ipv6_enabled" value="0"/>
<setting id="network_ipv6_preferred" value="0"/>
<setting id="network_vlan_discovery_mode" value="LLDP" />
<setting id="lan_port_mode" value="auto" />
<setting id="pc_port_mode" value="auto" />
<setting id="log_level" value="debug" /> <!-- Not D80 -->
<setting id="enable_logging" value="0" /> <!-- Not D80 -->
<setting id="log_server" value="" /> <!-- Not D80 -->
<setting id="log_port" value="" /> <!-- Not D80 -->
<setting id="web_ui_enabled" value="1" /> <!-- Not D80 -->
<setting id="sip_qos" value="3" />
<setting id="rtp_qos" value="6" />
<setting id="pc_qos" value="" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<setting id="in_switchvox_environment" value="0" />
<setting id="allow_app_dev" value="0" />
<setting id="8021x_passthrough" value="0"/>
<setting id="8021x_eapol_on_disconnect" value="0"/>
<setting id="8021x_method" value=""/>
<setting id="8021x_identity" value=""/>
<setting id="8021x_anonymous_identity" value=""/>
<setting id="8021x_password" value=""/>
<setting id="8021x_client_cert" value=""/>
<setting id="8021x_client_key" value=""/>
<setting id="8021x_debug" value="" />
<setting id="network_default_enable_openvpn" value="0" />
<!-- setting id="openvpn_inline_config" url="https://user:password@server.example.com/vpn/client.ovpn" value="1" md5="abc123" /-->
<accounts>
{foreach $lines as $row}
<account
server_uuid="{$row.line_number-1}" index="{$row.line_number-1}" status="{if $row.enabled}1{else}0{/if}" register="1"
account_id="{$row.user_id}" username="{$row.user_id}" authname="{$row.auth_id}" password="{$row.password}" passcode="{$row.password}"
line_label="{$row.display_name}" caller_id="{$row.display_name}" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3"
visual_voicemail="0" voicemail="*97" needMwiSubscription="1"
outbound_proxy="{$row.outbound_proxy}" outbound_port="{$row.sip_port}"
plar_number="" ring_type="normal" subscription_extension="{$row.user_id}" conflict="replace">
<host_primary server="{$row.server_address}" port="{$row.sip_port}" transport="{$row.sip_transport}" media_encryption="" reregister="300" retry="25" />
<!--<host_alternate server="10.1.2.3" port="5060" transport="udp" media_encryption="" reregister="300" retry="25" />-->
<permission id="use_voicemail" value="1" />
<permission id="send_to_voicemail" value="1" />
<permission id="ignore_calls" value="1" />
</account>{if $row@index eq 5}{break}{/if}
{/foreach}
</accounts>
<contacts url="https://{$domain_name}{$project_path}/app/provision/{$mac}-contacts.cfg" id="internal" />
<smart_blf>
<blf_items url="https://{$domain_name}{$project_path}/app/provision/{$mac}-smartblf.cfg" />
</smart_blf>
<!--firmwares>
<firmware model="D40" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D40_firmware.eff" />
<firmware model="D45" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D45_firmware.eff" />
<firmware model="D50" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D50_firmware.eff" />
<firmware model="D60" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D60_firmware.eff" />
<firmware model="D62" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D62_firmware.eff" />
<firmware model="D65" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D65_firmware.eff" />
<firmware model="D70" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D70_firmware.eff" />
<firmware model="D80" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D80_firmware.eff" />
<firmware model="EXP100" version="2.0.5.1" url="http://10.10.4.11/firmware/EXP100-2051.rom" />
</firmwares-->
</config>

View File

@ -0,0 +1,47 @@
<phonebooks>
<contacts group_name="Default" id="0">
{foreach $contacts as $row}
<contact
id="{$row@index}"
prefix=""
first_name="{$row.contact_name_given}"
second_name=""
last_name="{$row.contact_name_family}"
suffix=""
contact_type="sip"
organization="{$row.contact_organization}"
job_title=""
location=""
notes=""
account_id="{if $row.phone_number != ""}{$row.phone_number}{else}{$row.phone_extension}{/if}"
>
<actions>
{if $row.phone_number != ""}
<action id="primary" dial="{$row.phone_extension}" label="Extension" name="Dial" />
<action id="send_to_vm" dial="*99{$row.phone_extension}" label="Voicemail" name="Dial Voicemail"></action>
{else}
<action id="primary" dial="{$row.phone_number}" label="Extension" name="Dial" />
{/if}
</actions>
</contact>
{/foreach}
{foreach $keys["line"] as $row}
<contact
id="sd-{$row.device_key_id}"
prefix=""
first_name=""
second_name=""
last_name="{$row.device_key_label}"
contact_type="sip"
account_id="{$row.device_key_value}"
{if $row.device_key_type == "blf"}
subscribe_to="sip:{$row.device_key_value}@{foreach $lines as $l}{$row.server_address}{break}{/foreach}"
{/if}
>
<actions>
<action id="primary" dial="{$row.device_key_value}" dial_prefix="" label="Extension" name="Dial" />
</actions>
</contact>
{/foreach}
</contacts>
</phonebooks>

View File

@ -0,0 +1,20 @@
<config>
<smart_blf>
<blf_items>
{foreach $keys["line"] as $row}
<blf_item location="side" index="{$row.device_key_id-1}" paging="1" contact_id="sd-{$row.device_key_id}">
<behaviors>
<behavior phone_state="idle" press_action="primary" press_function="dial" />
<behavior phone_state="connected" press_action="primary" press_function="transfer" />
</behaviors>
<indicators>
<indicator target_status="all" led_color="green" led_state="on" />
<indicator target_status="ringing" led_color="red" led_state="fast" />
<indicator target_status="on_the_phone" led_color="red" led_state="on" />
<indicator target_status="hold" led_color="red" led_state="slow" />
</indicators>
</blf_item>
{/foreach}
</blf_items>
</smart_blf>
</config>

View File

@ -0,0 +1,109 @@
<?xml version="1.0" ?>
<config>
<setting id="login_password" value="{$admin_password}" />
<setting id="send_mac_with_useragent" value="1" />
<setting id="use_secure_labels" value="0" />
<setting id="time_zone" value="{if isset($digium_time_zone)}{$digium_time_zone}{else}America/Los_Angeles{/if}" />
<setting id="time_source" value="ntp" />
<setting id="ntp_server" value="{if isset($digium_ntp_server)}{$digium_ntp_server}{else}0.digium.pool.ntp.org{/if}" />
<setting id="ntp_resync" value="86400" />
<setting id="ntp_prefer_option42" value="1" /> <!-- Not D80 -->
<setting id="accept_local_calls" value="any" />
<setting id="transport_udp_enabled" value="1" />
<setting id="transport_udp_port" value="5060" />
<setting id="transport_tcp_enabled" value="1" />
<setting id="transport_tcp_port" value="5060" />
<setting id="udp_ka_interval" value="0"/>
<setting id="logo_file" value="factory" path="/factory_asterisk.png" />
<setting id="display_mc_notification" value="1" />
<setting id="display_pickup_notification" value="1" />
<setting id="hide_completed_elsewhere" value="1" />
<setting id="idle_company_text" value="{if isset($digium_idle_company_text)}{$digium_idle_company_text}{else}FusionPBX{/if}" />
<setting id="brightness" value="5" />
<setting id="contrast" value="5" /> <!-- Not D6X or D80 -->
<setting id="enable_check_sync" value="1"/>
<setting id="dim_backlight" value="1" />
<setting id="backlight_timeout" value="30" />
<setting id="backlight_dim_level" value="2" />
<setting id="blf_page_return_timeout" value="0" />
<setting id="default_fontsize" value="11" /> <!-- Not D6X or D80 -->
<setting id="locale" value="{if isset($digium_locale)}{$digium_locale}{else}en_US{/if}"/>
<setting id="ringer_volume" value="5" />
<setting id="lock_ringing_volume" value="0" /> <!-- Not D80 -->
<setting id="speaker_volume" value="5" />
<setting id="handset_volume" value="5" />
<setting id="headset_volume" value="5" />
<setting id="reset_call_volume" value="0" />
<setting id="ehs" value="{if isset($digium_ehs)}{$digium_ehs}{else}auto{/if}" />
<setting id="call_control_checkx" value="0" />
<setting id="enable_blf_on_unused_line_keys" value="0" /> <!-- Only D50 & D70 -->
<setting id="contacts_max_subscriptions" value="40" />
<setting id="name_format" value="first_last" />
<setting id="blf_contact_group" value="Default" />
<setting id="network_enable_dhcp" value="1" />
<setting id="allow_insecure_ssl" value="1" />
<setting id="network_ipv6_enabled" value="0"/>
<setting id="network_ipv6_preferred" value="0"/>
<setting id="network_vlan_discovery_mode" value="LLDP" />
<setting id="lan_port_mode" value="auto" />
<setting id="pc_port_mode" value="auto" />
<setting id="log_level" value="debug" /> <!-- Not D80 -->
<setting id="enable_logging" value="0" /> <!-- Not D80 -->
<setting id="log_server" value="" /> <!-- Not D80 -->
<setting id="log_port" value="" /> <!-- Not D80 -->
<setting id="web_ui_enabled" value="1" /> <!-- Not D80 -->
<setting id="sip_qos" value="3" />
<setting id="rtp_qos" value="6" />
<setting id="pc_qos" value="" />
<setting id="sip_dscp" value="24" />
<setting id="rtp_dscp" value="46" />
<setting id="in_switchvox_environment" value="0" />
<setting id="allow_app_dev" value="0" />
<setting id="8021x_passthrough" value="0"/>
<setting id="8021x_eapol_on_disconnect" value="0"/>
<setting id="8021x_method" value=""/>
<setting id="8021x_identity" value=""/>
<setting id="8021x_anonymous_identity" value=""/>
<setting id="8021x_password" value=""/>
<setting id="8021x_client_cert" value=""/>
<setting id="8021x_client_key" value=""/>
<setting id="8021x_debug" value="" />
<setting id="network_default_enable_openvpn" value="0" />
<!-- setting id="openvpn_inline_config" url="https://user:password@server.example.com/vpn/client.ovpn" value="1" md5="abc123" /-->
<accounts>
{foreach $lines as $row}
<account
server_uuid="{$row.line_number-1}" index="{$row.line_number-1}" status="{if $row.enabled}1{else}0{/if}" register="1"
account_id="{$row.user_id}" username="{$row.user_id}" authname="{$row.auth_id}" password="{$row.password}" passcode="{$row.password}"
line_label="{$row.display_name}" caller_id="{$row.display_name}" dial_plan="[0-8]xxxxx|911|9411|9611|9011xxx.T3|91xxxxxxxxxx|9[2-9]xxxxxx|*xx.T3|[0-8]xx.T3"
visual_voicemail="0" voicemail="*97" needMwiSubscription="1"
outbound_proxy="{$row.outbound_proxy}" outbound_port="{$row.sip_port}"
plar_number="" ring_type="normal" subscription_extension="{$row.user_id}" conflict="replace">
<host_primary server="{$row.server_address}" port="{$row.sip_port}" transport="{$row.sip_transport}" media_encryption="" reregister="300" retry="25" />
<!--<host_alternate server="10.1.2.3" port="5060" transport="udp" media_encryption="" reregister="300" retry="25" />-->
<permission id="use_voicemail" value="1" />
<permission id="send_to_voicemail" value="1" />
<permission id="ignore_calls" value="1" />
</account>{if $row@index eq 5}{break}{/if}
{/foreach}
</accounts>
<contacts url="https://{$domain_name}{$project_path}/app/provision/{$mac}-contacts.cfg" id="internal" />
<smart_blf>
<blf_items url="https://{$domain_name}{$project_path}/app/provision/{$mac}-smartblf.cfg" />
</smart_blf>
<!--firmwares>
<firmware model="D40" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D40_firmware.eff" />
<firmware model="D45" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D45_firmware.eff" />
<firmware model="D50" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D50_firmware.eff" />
<firmware model="D60" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D60_firmware.eff" />
<firmware model="D62" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D62_firmware.eff" />
<firmware model="D65" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D65_firmware.eff" />
<firmware model="D70" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D70_firmware.eff" />
<firmware model="D80" version="2_8_0" url="http://10.10.4.11/firmware/2_8_0_D80_firmware.eff" />
<firmware model="EXP100" version="2.0.5.1" url="http://10.10.4.11/firmware/EXP100-2051.rom" />
</firmwares-->
</config>