diff --git a/endpoint/base.php b/endpoint/base.php index 429ab060..cab56481 100755 --- a/endpoint/base.php +++ b/endpoint/base.php @@ -847,7 +847,7 @@ class Provisioner_Globals { * @param String $filename Name of the file: eg aastra.cfg * @return String, data of that file: eg # This file intentionally left blank! */ - function dynamic_global_files($file, $provisioner_path='/tmp/', $web_path='/') { + public static function dynamic_global_files($file, $provisioner_path='/tmp/', $web_path='/') { if (preg_match("/y[0]{11}[1-7].cfg/i", $file)) { $file = 'y000000000000.cfg'; } diff --git a/endpoint/snom/3xx820m3/family_data.json b/endpoint/snom/3xx820m3/family_data.json index b42bf8a1..69fe51b3 100755 --- a/endpoint/snom/3xx820m3/family_data.json +++ b/endpoint/snom/3xx820m3/family_data.json @@ -75,6 +75,21 @@ "functionkeys.json", "speed_dials.json" ] + }, + { + "model":"D375", + "lines":"12", + "id":"5", + "firmware":"snomD375?*.bin", + "template_data": + [ + "line_options.json", + "template_data.json", + "action_urls.json", + "keys.json", + "functionkeys.json", + "speed_dials.json" + ] } ] } diff --git a/endpoint/snom/3xx820m3/general.xml b/endpoint/snom/3xx820m3/general.xml index 937e9f20..ac601c33 100755 --- a/endpoint/snom/3xx820m3/general.xml +++ b/endpoint/snom/3xx820m3/general.xml @@ -27,9 +27,9 @@ on intercom_connect_type_handsfree on - 999 112 + {$keyboard_lock_emergency} on - English + {$language} PhoneHasMailboxMessage off 70 diff --git a/endpoint/snom/3xx820m3/snom$model-$mac.htm b/endpoint/snom/3xx820m3/snom$model-$mac.htm index eb5a647f..857b1dea 100755 --- a/endpoint/snom/3xx820m3/snom$model-$mac.htm +++ b/endpoint/snom/3xx820m3/snom$model-$mac.htm @@ -33,6 +33,7 @@ {$admin_mode_password} {$admin_mode_password} {$dateformat} + {$dialnumber_us_format} {$defaultringer} {$provisioning_type}://{$server.ip.1}/{$mac}_firmware.xml {$http_user} diff --git a/endpoint/snom/3xx820m3/snom$model.htm b/endpoint/snom/3xx820m3/snom$model.htm index a4d91e37..9cd98e18 100755 --- a/endpoint/snom/3xx820m3/snom$model.htm +++ b/endpoint/snom/3xx820m3/snom$model.htm @@ -2,4 +2,5 @@ + diff --git a/endpoint/snom/3xx820m3/snom-$mac.htm b/endpoint/snom/3xx820m3/snom-$mac.htm index eb5a647f..a1d39221 100755 --- a/endpoint/snom/3xx820m3/snom-$mac.htm +++ b/endpoint/snom/3xx820m3/snom-$mac.htm @@ -33,6 +33,8 @@ {$admin_mode_password} {$admin_mode_password} {$dateformat} + {$dialnumber_us_format} + {$language} {$defaultringer} {$provisioning_type}://{$server.ip.1}/{$mac}_firmware.xml {$http_user} diff --git a/endpoint/snom/3xx820m3/template_data.json b/endpoint/snom/3xx820m3/template_data.json index d6708a21..eba4bddf 100755 --- a/endpoint/snom/3xx820m3/template_data.json +++ b/endpoint/snom/3xx820m3/template_data.json @@ -103,6 +103,34 @@ } ] }, + { + "variable":"$keyboard_lock_emergency", + "default_value":"999 112", + "description":"Emergency numbers that can be dialled on locked keyboard", + "type":"input" + }, + { + "variable":"$extra_phonebook", + "default_value":"", + "description":"URL to fetch systemwide phonebook from", + "type":"input" + }, + { + "variable":"$dialnumber_us_format", + "default_value":"off", + "description":"Format phone numbers like in US when in US timezone", + "type":"radio", + "data":[ + { + "text":"On", + "value":"on" + }, + { + "text":"Off", + "value":"off" + } + ] + }, { "variable":"$tone_scheme", "default_value":"USA", @@ -182,6 +210,102 @@ "value":"USA" } ] + }, + { + "variable":"$language", + "default_value":"English", + "description":"Phone Language", + "type":"list", + "data":[ + { + "text":"Arabic", + "value":"Arabic" + }, + { + "text":"Bosnian", + "value":"Bosanski" + }, + { + "text":"Catalan", + "value":"Catalan" + }, + { + "text":"Croatian", + "value":"Hrvatski" + }, + { + "text":"Dansk", + "value":"Dansk" + }, + { + "text":"Nederlands", + "value":"Nederlands" + }, + { + "text":"English", + "value":"English" + }, + { + "text":"English(UK)", + "value":"English(UK)" + }, + { + "text":"Estonian", + "value":"Estonian" + }, + { + "text":"Finnish", + "value":"Suomi" + }, + { + "text":"French", + "value":"Francais" + }, + { + "text":"German", + "value":"Deutsch" + }, + { + "text":"Hebrew", + "value":"Hebrew" + }, + { + "text":"Hungarian", + "value":"Hungarian" + }, + { + "text":"Italian", + "value":"Italiano" + }, + { + "text":"Norwegian", + "value":"Norsk" + }, + { + "text":"Polish", + "value":"Polski" + }, + { + "text":"Russian", + "value":"Russian" + }, + { + "text":"Slovak", + "value":"Slovencina" + }, + { + "text":"Slovenian", + "value":"Slovenian" + }, + { + "text":"Swedish", + "value":"Svenska" + }, + { + "text":"Turkish", + "value":"Turkce" + } + ] } ] } diff --git a/endpoint/snom/3xxEM/family_data.json b/endpoint/snom/3xxEM/family_data.json index 922e48e0..cc7da548 100755 --- a/endpoint/snom/3xxEM/family_data.json +++ b/endpoint/snom/3xxEM/family_data.json @@ -64,6 +64,22 @@ "sidecar.json", "speed_dials.json" ] + }, + { + "model":"D375", + "lines":"12", + "id":"4", + "firmware":"snomD375?*.bin", + "template_data": + [ + "line_options.json", + "template_data.json", + "action_urls.json", + "keys.json", + "functionkeys.json", + "sidecar.json", + "speed_dials.json" + ] } ] } diff --git a/endpoint/snom/3xxEM/general.xml b/endpoint/snom/3xxEM/general.xml index eac65967..2025ac4f 100755 --- a/endpoint/snom/3xxEM/general.xml +++ b/endpoint/snom/3xxEM/general.xml @@ -27,7 +27,7 @@ on intercom_connect_type_handsfree on - 999 112 + {$keyboard_lock_emergency} on English PhoneHasMailboxMessage diff --git a/endpoint/snom/3xxEM/snom$model-$mac.htm b/endpoint/snom/3xxEM/snom$model-$mac.htm index eb5a647f..a01638fb 100755 --- a/endpoint/snom/3xxEM/snom$model-$mac.htm +++ b/endpoint/snom/3xxEM/snom$model-$mac.htm @@ -33,6 +33,7 @@ {$admin_mode_password} {$admin_mode_password} {$dateformat} + off {$defaultringer} {$provisioning_type}://{$server.ip.1}/{$mac}_firmware.xml {$http_user} diff --git a/endpoint/snom/3xxEM/snom$model.htm b/endpoint/snom/3xxEM/snom$model.htm index a4d91e37..9cd98e18 100755 --- a/endpoint/snom/3xxEM/snom$model.htm +++ b/endpoint/snom/3xxEM/snom$model.htm @@ -2,4 +2,5 @@ + diff --git a/endpoint/snom/3xxEM/snom-$mac.htm b/endpoint/snom/3xxEM/snom-$mac.htm index 0bc64d8f..e55fce63 100755 --- a/endpoint/snom/3xxEM/snom-$mac.htm +++ b/endpoint/snom/3xxEM/snom-$mac.htm @@ -33,6 +33,8 @@ {$admin_mode_password} {$admin_mode_password} {$dateformat} + {$dialnumber_us_format} + {$web_language} {$defaultringer} {$provisioning_type}://{$provisioning_path}/{$mac}_firmware.xml {$http_user} diff --git a/endpoint/snom/3xxEM/template_data.json b/endpoint/snom/3xxEM/template_data.json index d6708a21..a697553c 100755 --- a/endpoint/snom/3xxEM/template_data.json +++ b/endpoint/snom/3xxEM/template_data.json @@ -103,6 +103,34 @@ } ] }, + { + "variable":"$keyboard_lock_emergency", + "default_value":"999 112", + "description":"Emergency numbers that can be dialled on locked keyboard", + "type":"input" + }, + { + "variable":"$extra_phonebook", + "default_value":"", + "description":"URL to fetch systemwide phonebook from", + "type":"input" + }, + { + "variable":"$dialnumber_us_format", + "default_value":"off", + "description":"Format phone numbers like in US when in US timezone", + "type":"radio", + "data":[ + { + "text":"On", + "value":"on" + }, + { + "text":"Off", + "value":"off" + } + ] + }, { "variable":"$tone_scheme", "default_value":"USA", @@ -182,6 +210,102 @@ "value":"USA" } ] + }, + { + "variable":"$web_language", + "default_value":"English", + "description":"Dialtone", + "type":"list", + "data":[ + { + "text":"Arabic", + "value":"Arabic" + }, + { + "text":"Bosnian", + "value":"Bosanski" + }, + { + "text":"Catalan", + "value":"Catalan" + }, + { + "text":"Croatian", + "value":"Hrvatski" + }, + { + "text":"Dansk", + "value":"Dansk" + }, + { + "text":"Nederlands", + "value":"Nederlands" + }, + { + "text":"English", + "value":"English" + }, + { + "text":"English(UK)", + "value":"English(UK)" + }, + { + "text":"Estonian", + "value":"Estonian" + }, + { + "text":"Finnish", + "value":"Suomi" + }, + { + "text":"French", + "value":"Francais" + }, + { + "text":"German", + "value":"Deutsch" + }, + { + "text":"Hebrew", + "value":"Hebrew" + }, + { + "text":"Hungarian", + "value":"Hungarian" + }, + { + "text":"Italian", + "value":"Italiano" + }, + { + "text":"Norwegian", + "value":"Norsk" + }, + { + "text":"Polish", + "value":"Polski" + }, + { + "text":"Russian", + "value":"Russian" + }, + { + "text":"Slovak", + "value":"Slovencina" + }, + { + "text":"Slovenian", + "value":"Slovenian" + }, + { + "text":"Swedish", + "value":"Svenska" + }, + { + "text":"Turkish", + "value":"Turkce" + } + ] } ] } diff --git a/endpoint/snom/Cxxx/$model.cfg b/endpoint/snom/Cxxx/$model.cfg new file mode 100755 index 00000000..0018bdee --- /dev/null +++ b/endpoint/snom/Cxxx/$model.cfg @@ -0,0 +1 @@ +provisioning.firmware_url = {$provisioning_type}://{$provisioning_path}/{$firmware} diff --git a/endpoint/snom/Cxxx/$model_$mac.cfg b/endpoint/snom/Cxxx/$model_$mac.cfg new file mode 100755 index 00000000..bc4b1b0c --- /dev/null +++ b/endpoint/snom/Cxxx/$model_$mac.cfg @@ -0,0 +1,45 @@ +time_date.date_format = DD.MM.YY +time_date.24hr_clock = {$time_24_format} +time_date.ntp_dhcp_option = 0 +time_date.ntp_server = 1 +time_date.ntp_server_addr = {$network_time_server} +time_date.ntp_server_update_interval = 1000 +time_date.timezone_dhcp_option = 0 +time_date.selected_timezone = {$time_zone_name} +profile.admin.access_password = {$admin_mode_password} +profile.user.access_password = {$user_mode_password} +user_pref.language = {$lang} +user_pref.web_language = {$lang} +{line_loop}user_pref.account.{$line}.ringer = {$lineringer}{/line_loop} +{line_loop}sip_account.{$line}.sip_account_enable = 1 +sip_account.{$line}.label = {$realname} +sip_account.{$line}.display_name = {$realname} +sip_account.{$line}.user_id = {$username} +sip_account.{$line}.authentication_name = {$username} +sip_account.{$line}.authentication_access_password = {$secret} +sip_account.{$line}.primary_sip_server_address = {$server_host} +sip_account.{$line}.primary_registration_server_address = {$server_host} +sip_account.{$line}.primary_outbound_proxy_server_address = {$outbound_host} +sip_account.{$line}.unregister_after_reboot_enable = 0 +sip_account.{$line}.registration_retry_time = 10 +sip_account.{$line}.mwi_subscription_expires = {$user_expiry} +sip_account.{$line}.primary_registration_expires = {$user_expiry} +sip_account.{$line}.access_code_dnd_on = *78 +sip_account.{$line}.access_code_dnd_off = *79 +sip_account.{$line}.access_code_cfa_on = *72 +sip_account.{$line}.access_code_cfa_off = *73 +sip_account.{$line}.access_code_cfna_on = *52 +sip_account.{$line}.access_code_cfna_off = *53 +sip_account.{$line}.access_code_cfb_on = *90 +sip_account.{$line}.access_code_cfb_off = *91 +sip_account.{$line}.access_code_call_waiting_on = *70 +sip_account.{$line}.access_code_call_waiting_off = *71 +sip_account.{$line}.access_code_group_call_pickup = *8 +sip_account.{$line}.access_code_direct_call_pickup = ** +sip_account.{$line}.codec_priority.1 = {$codec1_name} +sip_account.{$line}.codec_priority.2 = {$codec2_name} +sip_account.{$line}.codec_priority.3 = {$codec3_name} +sip_account.{$line}.codec_priority.4 = {$codec4_name} +sip_account.{$line}.codec_priority.5 = {$codec5_name} +{/line_loop}{loop_speeddial1}speed_dial.{$number}.number = {$value} +{/loop_speeddial1} diff --git a/endpoint/snom/Cxxx/family_data.json b/endpoint/snom/Cxxx/family_data.json new file mode 100755 index 00000000..38c8c112 --- /dev/null +++ b/endpoint/snom/Cxxx/family_data.json @@ -0,0 +1,34 @@ +{ + "data": + { + "name":"Snom Cxxx Model", + "id":"5", + "directory":"Cxxx", + "firmware_ver":"", + "firmware_pkg":"NULL", + "firmware_md5sum":"", + "description":"Server + Password Settings", + "configuration_files":"$model_$mac.cfg,$model.cfg", + "changelog":"", + "provisioning_types": + [ + "tftp", + "http" + ], + "model_list": + [ + { + "model":"C520-WiMi", + "lines":"4", + "id":"1", + "firmware":"C520-WiMi-*.img", + "template_data": + [ + "line_options.json", + "template_data.json", + "speed_dials.json" + ] + } + ] + } +} diff --git a/endpoint/snom/Cxxx/line_options.json b/endpoint/snom/Cxxx/line_options.json new file mode 100755 index 00000000..1ecb8362 --- /dev/null +++ b/endpoint/snom/Cxxx/line_options.json @@ -0,0 +1,290 @@ +{ + "template_data": + { + "category": + [ + { + "name":"lines", + "subcategory": + [ + { + "name":"basic", + "item": + [ + { + "description":"Line Options", + "type":"loop_line_options", + "data": + { + "item": + [ + { + "variable":"$server_host", + "default_value":"{$server.ip.{$count}}", + "description":"Registrar", + "type":"input" + }, + { + "variable":"$outbound_host", + "default_value":"{$server.ip.{$count}}", + "description":"Outbound Proxy", + "type":"input" + }, + { + "variable":"$realname", + "default_value":"{$displayname.line.{$count}}", + "description":"Real Name (Display Name)", + "type":"input" + }, + { + "type":"break" + }, + { + "variable":"$voicemail_extension", + "default_value":"", + "description":"Voicemail", + "type":"radio", + "data": + [ + { + "text":"Yes", + "value":"*97" + }, + { + "text":"No", + "value":"" + } + ] + }, + { + "variable":"$lineringer", + "default_value":"Ringer1", + "description":"Ringtone for this line", + "type":"list", + "data": + [ + { + "text":"Ringer1", + "value":"1" + }, + { + "text":"Ringer2", + "value":"2" + }, + { + "text":"Ringer3", + "value":"3" + }, + { + "text":"Ringer4", + "value":"4" + }, + { + "text":"Ringer5", + "value":"5" + }, + { + "text":"Ringer6", + "value":"6" + }, + { + "text":"Ringer7", + "value":"7" + }, + { + "text":"Ringer8", + "value":"8" + }, + { + "text":"Ringer9", + "value":"9" + }, + { + "text":"Ringer10", + "value":"10" + } + ] + }, + { + "type":"break" + }, + { + "description":"Codec 1", + "default_value":"g711u", + "variable":"$codec1_name", + "type":"list", + "data": + [ + { + "text":"g711µ", + "value":"g711u" + }, + { + "text":"g711a", + "value":"g711a" + }, + { + "text":"GSM", + "value":"g729" + }, + { + "text":"g726", + "value":"g726" + }, + { + "text":"g722", + "value":"g722" + } + ] + }, + { + "description":"Codec 2", + "default_value":"g711a", + "variable":"$codec2_name", + "type":"list", + "data": + [ + { + "text":"none", + "value":"none" + }, + { + "text":"g711µ", + "value":"g711u" + }, + { + "text":"g711a", + "value":"g711a" + }, + { + "text":"GSM", + "value":"g729" + }, + { + "text":"g726", + "value":"g726" + }, + { + "text":"g722", + "value":"g722" + } + ] + }, + { + "description":"Codec 3", + "default_value":"g729", + "variable":"$codec3_name", + "type":"list", + "data": + [ + { + "text":"none", + "value":"none" + }, + { + "text":"g711µ", + "value":"g711u" + }, + { + "text":"g711a", + "value":"g711a" + }, + { + "text":"GSM", + "value":"g729" + }, + { + "text":"g726", + "value":"g726" + }, + { + "text":"g722", + "value":"g722" + } + ] + }, + { + "description":"Codec 4", + "default_value":"g726", + "variable":"$codec4_name", + "type":"list", + "data": + [ + { + "text":"none", + "value":"none" + }, + { + "text":"g711µ", + "value":"g711u" + }, + { + "text":"g711a", + "value":"g711a" + }, + { + "text":"GSM", + "value":"g729" + }, + { + "text":"g726", + "value":"g726" + }, + { + "text":"g722", + "value":"g722" + } + ] + }, + { + "description":"Codec 5", + "default_value":"g722", + "variable":"$codec5_name", + "type":"list", + "data": + [ + { + "text":"none", + "value":"none" + }, + { + "text":"g711µ", + "value":"g711u" + }, + { + "text":"g711a", + "value":"g711a" + }, + { + "text":"GSM", + "value":"g729" + }, + { + "text":"g726", + "value":"g726" + }, + { + "text":"g722", + "value":"g722" + } + ] + }, + { + "type":"break" + }, + { + "variable":"$user_expiry", + "default_value":"3600", + "description":"Proposed Expiry (s):", + "type":"input" + } + ] + } + } + ] + } + ] + } + ] + } +} diff --git a/endpoint/snom/Cxxx/phone.php b/endpoint/snom/Cxxx/phone.php new file mode 100755 index 00000000..739a7c5e --- /dev/null +++ b/endpoint/snom/Cxxx/phone.php @@ -0,0 +1,17 @@ +DateTimeZone)) $this->settings['time_zone_name'] = $this->DateTimeZone->getName(); + } +} diff --git a/endpoint/snom/Cxxx/speed_dials.json b/endpoint/snom/Cxxx/speed_dials.json new file mode 100755 index 00000000..91f64573 --- /dev/null +++ b/endpoint/snom/Cxxx/speed_dials.json @@ -0,0 +1,32 @@ +{ + "template_data":{ + "category":[ + { + "name":"Speed Dials", + "subcategory":[ + { + "name":"Speed Dials", + "item":[ + { + "description":"Speed Dial (1-9)", + "type":"loop", + "loop_start":"0", + "loop_end":"9", + "data":{ + "item":[ + { + "variable":"$speeddial1_value", + "default_value":"", + "description":"Speed Dial {$count} Value", + "type":"input" + } + ] + } + } + ] + } + ] + } + ] + } +} diff --git a/endpoint/snom/Cxxx/template_data.json b/endpoint/snom/Cxxx/template_data.json new file mode 100755 index 00000000..f3608052 --- /dev/null +++ b/endpoint/snom/Cxxx/template_data.json @@ -0,0 +1,70 @@ +{ + "template_data":{ + "category":[ + { + "name":"General Settings", + "subcategory":[ + { + "name":"General Settings", + "item":[ + { + "variable":"$firmware", + "default_value":"", + "description":"Firmware", + "type":"input" + }, + { + "variable":"$user_mode_password", + "default_value":"snom", + "description":"Phone Web Interface Password", + "type":"input" + }, + { + "variable":"$admin_mode_password", + "default_value":"1234", + "description":"Admin Mode Password (Digits ONLY)", + "type":"input" + }, + { + "variable":"$lang", + "default_value":"en", + "description":"Phone user interface language", + "type":"list", + "data":[ + { + "text":"English", + "value":"en" + }, + { + "text":"Español", + "value":"es" + }, + { + "text":"Francais", + "value":"fr" + } + ] + }, + { + "variable":"$time_24_format", + "default_value":"1", + "description":"Time Format", + "type":"list", + "data":[ + { + "text":"AM\/PM", + "value":"0" + }, + { + "text":"24 hour", + "value":"1" + } + ] + } + ] + } + ] + } + ] + } +} diff --git a/endpoint/snom/brand_data.json b/endpoint/snom/brand_data.json index 0d42da3a..95905de1 100755 --- a/endpoint/snom/brand_data.json +++ b/endpoint/snom/brand_data.json @@ -6,11 +6,11 @@ "brand_id": "6", "package": "snom.tgz", "md5sum": "dce6737850378430f14a28494b037693", - "last_modified": 1395183811, + "last_modified": 1607889054, "family_list": [ { "id": "1", - "name": "Snom 3xx Models [300, 320, 360, 370]", + "name": "Snom 3xx Models [300, 320, 360, 370, D375]", "directory": "3xx820m3", "description": "Server + Password Settings, htm File Fixes", "changelog": "", @@ -18,7 +18,7 @@ }, { "id": "4", - "name": "Snom 3xx Models EM [320, 360, 370 with Expansion Module]", + "name": "Snom 3xx Models EM [320, 360, 370, D375 with Expansion Module]", "directory": "3xxEM", "description": "Server + Password Settings, htm File Fixes", "changelog": "", @@ -26,7 +26,7 @@ }, { "id": "3", - "name": "Snom 7xx Models [710, 715, 720, 760]", + "name": "Snom 7xx Models [710, 715, 720, 725, 760]", "directory": "7xx", "description": "Server + Password Settings, htm File Fixes", "changelog": "", @@ -39,6 +39,14 @@ "description": "Server + Password Settings, htm File Fixes", "changelog": "", "last_modified": null + }, + { + "id": "5", + "name": "Snom Cxxx Models [C520-WiMi]", + "directory": "Cxxx", + "description": "Server + Password Settings, htm File Fixes", + "changelog": "", + "last_modified": null } ], "oui_list": [ @@ -47,4 +55,4 @@ "changelog": "PACKAGER: " } } -} +} \ No newline at end of file