Enhance - provision aastra 9133i (#2787)

provision aastra 9133i based phones (480i 480i CT, 9112i, 9133i)
leverage smarty include to common parts
have device_edit ignore 'include' folders
.htaccess's RewriteRule operates relative to it's dir so anchoring to ^provision is correct even for where fusion is on a sub folder
This commit is contained in:
Mafoo 2017-09-01 16:35:22 +01:00 committed by FusionPBX
parent 0c60d475a4
commit a3745a2d11
13 changed files with 240 additions and 3 deletions

View File

@ -35,6 +35,9 @@ RewriteRule ^provision/([A-Fa-f0-9]{12})-directory.xml$
RewriteRule ^.*/([0-9]{1,11})_Extern.xml$ app/provision/?ext=$1&file={$mac}_extern.xml [QSA]
RewriteRule ^.*/([0-9]{1,11})_Phonebook.xml$ app/provision/?ext=$1&file={$mac}_phonebook.xml [QSA]
#Aastra
RewriteRule ^provision/aastra.cfg$ app/provision/index.php?file=aastra.cfg [QSA]
Options -Indexes
#PHP settings

View File

@ -682,7 +682,8 @@
$template_dir = $device->get_template_dir();
echo "<select id='device_template' name='device_template' class='formfld'>\n";
echo "<option value=''></option>\n";
echo "<option value=''>".$text['label-disable']."</option>\n";
echo "<option value='' disabled='disabled'>====</option>\n";
if (is_dir($template_dir)) {
$templates = scandir($template_dir);
@ -696,11 +697,14 @@
foreach($templates_sub as $dir_sub) {
if($file_sub != '.' && $dir_sub != '..' && $dir_sub[0] != '.') {
if(is_dir($template_dir . '/' . $dir .'/'. $dir_sub)) {
if($dir_sub == 'include') {
continue;
}
if ($device_template == $dir."/".$dir_sub) {
echo "<option value='".$dir."/".$dir_sub."' selected='selected'>".$dir."/".$dir_sub."</option>\n";
echo "<option value='".$dir."/".$dir_sub."' selected='selected'>".$dir_sub."</option>\n";
}
else {
echo "<option value='".$dir."/".$dir_sub."'>".$dir."/".$dir_sub."</option>\n";
echo "<option value='".$dir."/".$dir_sub."'>".$dir_sub."</option>\n";
}
}
}

View File

@ -0,0 +1,5 @@
# #################
# Reference Documenation
# #################
# http://miteldocs.com/cps/rde/aadownload/?proj=prod&dl_type=asset&dl_mode=1&dl_id=6425&hash=03e866dd58bfcca3c58ffaa67162d53a&fpart=_P06_XML&dsproject=aastra
# note: This file must contain something or the phone will not then grab the {$mac}.cfg

View File

@ -0,0 +1,15 @@
# #################
# Reference Documenation
# #################
# http://miteldocs.com/cps/rde/aadownload/?proj=prod&dl_type=asset&dl_mode=1&dl_id=6425&hash=03e866dd58bfcca3c58ffaa67162d53a&fpart=_P06_XML&dsproject=aastra
{include file='../include/general'}
{include file='../include/network'}
{include file='../include/provision'}
{include file='../include/sip'}
{include file='../include/keys'}

View File

@ -0,0 +1,5 @@
# #################
# Reference Documenation
# #################
# http://miteldocs.com/cps/rde/aadownload/?proj=prod&dl_type=asset&dl_mode=1&dl_id=6425&hash=03e866dd58bfcca3c58ffaa67162d53a&fpart=_P06_XML&dsproject=aastra
# note: This file must contain something or the phone will not then grab the {$mac}.cfg

View File

@ -0,0 +1,15 @@
# #################
# Reference Documenation
# #################
# http://miteldocs.com/cps/rde/aadownload/?proj=prod&dl_type=asset&dl_mode=1&dl_id=6425&hash=03e866dd58bfcca3c58ffaa67162d53a&fpart=_P06_XML&dsproject=aastra
{include file='../include/general'}
{include file='../include/network'}
{include file='../include/provision'}
{include file='../include/sip'}
{include file='../include/keys'}

View File

@ -0,0 +1,5 @@
# #################
# Reference Documenation
# #################
# http://miteldocs.com/cps/rde/aadownload/?proj=prod&dl_type=asset&dl_mode=1&dl_id=6425&hash=03e866dd58bfcca3c58ffaa67162d53a&fpart=_P06_XML&dsproject=aastra
# note: This file must contain something or the phone will not then grab the {$mac}.cfg

View File

@ -0,0 +1,15 @@
# #################
# Reference Documenation
# #################
# http://miteldocs.com/cps/rde/aadownload/?proj=prod&dl_type=asset&dl_mode=1&dl_id=6425&hash=03e866dd58bfcca3c58ffaa67162d53a&fpart=_P06_XML&dsproject=aastra
{include file='../include/general'}
{include file='../include/network'}
{include file='../include/provision'}
{include file='../include/sip'}
{include file='../include/keys'}

View File

@ -0,0 +1,35 @@
# #################
# General settings
# #################
# === passwords and access control ===
{if isset($admin_password)}admin password: {$admin_password}{"\n"}{/if} # 22222 is the default
#user password: 123 # default is blank
#web interface enabled: 1 # Enable/Disable Web UI
#options password enabled: 1 # default is 0 == not protected
#options simple menu: 1 # default is 0 == full options menu
tone set: UK # Australia, Europe (generic tones), France, Germany, Italy, UK, US (also used in Canada)
# === display date and time ===
time format: 0 # 1 for 24 hr format
date format: 3 # 0 == WWW MMM DD, 1 == DD-MMM-YY, 2 == YYYY-MM-DD, see reference for others
time zone name: GB-London # Check reference for list of named time zones on page A-27, or set offset below
time zone code: GMT # Check reference for list of named time zones on page A-27, or set offset below
#time zone minutes: 300 # Offset in minutes from GMT, 300 = GMT-5 = Eastern Standard Time, -120 = GMT+2 = Eastern European Time
dst config: 3 # Day Light Savings, 0 == off, 1 == 30 min summertime, 2 == 1 hr summertime, 3 (default) == automatic
dst minutes: 60 # amount of time to offset the clock in minutes
dst start relative date: 1 # Specifies how to interpret the start day, month, and week parameters, 0 - absolute, 1 - relative
dst end relative date: 1 # Specifies how to interpret the end day, month, and week parameters, 0 - absolute, 1 - relative
dst start month: {$daylight_savings_start_month}
{if isset($daylight_savings_start_day)}dst start week: {math equation="( x / 7 ) + 1" x=$daylight_savings_start_day format="%d"}{"\n"}{/if}
{if isset($daylight_savings_start_weekday)}dst start day: {math equation= "( x + 1 ) % 7" x=$daylight_savings_start_weekday}{"\n"}{/if}
dst start hour: {$daylight_savings_start_time}
dst end month: {$daylight_savings_stop_month}
{if isset($daylight_savings_stop_day)}dst end week: {math equation="( x / 7 ) + 1" x=$daylight_savings_stop_day format="%d"}{"\n"}{/if}
{if isset($daylight_savings_stop_weekday)}dst end day: {math equation= "( x + 1 ) % 7" x=$daylight_savings_stop_weekday}{"\n"}{/if}
dst end hour: {$daylight_savings_stop_time}
# === display backlight ===
backlight mode: 1 # 0 == off, 1 == auto to turn off after period of inactivity
#bl on time: 600 # time in seconds before backlight turns off if in auto

View File

@ -0,0 +1,50 @@
# #################
# Key assignment types blf, blfxfer, park, speeddial, dnd
# #################
{foreach $keys["line"] as $row}
topsoftkey{$row.device_key_id} type: {$row.device_key_type}
topsoftkey{$row.device_key_id} line: {$row.device_key_line}
topsoftkey{$row.device_key_id} value: {$row.device_key_value}
topsoftkey{$row.device_key_id} label: {$row.device_key_label}
{/foreach}
{foreach $keys["memory"] as $row}
softkey{$row.device_key_id} type: {$row.device_key_type}
softkey{$row.device_key_id} line: {$row.device_key_line}
softkey{$row.device_key_id} value: {$row.device_key_value}
softkey{$row.device_key_id} label: {$row.device_key_label}
{/foreach}
{foreach $keys["programmable"] as $row}
prgkey{$row.device_key_id} type: {$row.device_key_type}
prgkey{$row.device_key_id} line: {$row.device_key_line}
prgkey{$row.device_key_id} value: {$row.device_key_value}
{/foreach}
{foreach $keys["expansion"] as $row}
{if $row.device_key_category == "expansion" && $row.device_key_id <= 60}
expmod1 key{$row.device_key_id} type: {$row.device_key_type}
expmod1 key{$row.device_key_id} line: {$row.device_key_line}
expmod1 key{$row.device_key_id} value: {$row.device_key_value}
expmod1 key{$row.device_key_id} label: {$row.device_key_label}
{elseif $row.device_key_category == "expansion" && $row.device_key_id <= 120}
expmod2 key{$row.device_key_id-60} type: {$row.device_key_type}
expmod2 key{$row.device_key_id-60} line: {$row.device_key_line}
expmod2 key{$row.device_key_id-60} value: {$row.device_key_value}
expmod2 key{$row.device_key_id-60} label: {$row.device_key_label}
{elseif $row.device_key_category == "expansion" && $row.device_key_id <= 180}
expmod3 key{$row.device_key_id-120} type: {$row.device_key_type}
expmod3 key{$row.device_key_id-120} line: {$row.device_key_line}
expmod3 key{$row.device_key_id-120} value: {$row.device_key_value}
expmod3 key{$row.device_key_id-120} label: {$row.device_key_label}
{elseif $row.device_key_category == "expansion"}
expmod4 key{$row.device_key_id-180} type: {$row.device_key_type}
expmod4 key{$row.device_key_id-180} line: {$row.device_key_line}
expmod4 key{$row.device_key_id-180} value: {$row.device_key_value}
expmod4 key{$row.device_key_id-180} label: {$row.device_key_label}
{/if}
{/foreach}

View File

@ -0,0 +1,20 @@
# #################
# Network Settings
# #################
# === IP network settings ===
# dhcp: 1
# ip: 192.168.1.100
# subnet mask: 255.255.255.0
# default gateway: 192.168.1.1
{if isset($dns_server_primary)}dns1: {$dns_server_primary}{"\n"}{/if}
{if isset($dns_server_secondary)}dns2: {$dns_server_secondary}{"\n"}{/if}
# === NTP time server settings ===
time server disabled: 0 # 0 == enable time server 1 = disable time server
time server1: {$ntp_server_primary}
time server2: {$ntp_server_secondary}
# === Advanced Network Settings ===
upnp manager: 0 # Enable/Disable Universal Plug and Play
lldp: 0 # Enable/Disable Link-Layer Discovery Protocol

View File

@ -0,0 +1,25 @@
# #################
# Provisioning Settings
# #################
# phone looks for configuration files in aastra.cfg followed by <MAC>.cfg, e.g. "00085D1610DE.cfg"
# HTTPS, TFTP and FTP also supported
download protocol: HTTP
# === HTTP Provisioning Settings ===
http server: {$domain_name}
#http port: 80
http path: /provision
# === FTP Provisioning Settings ===
#ftp server: {$domain_name}
#ftp username: {$ftp_auth_username}
#ftp password: {$ftp_auth_password}
# === TFTP Provisioning Settings ===
#tftp server: {$domain_name}
#tftp path: /provision/{$domain_name}
# === Provisioning Sync Settings ===
# Example below is for resyncing config (but not firmware) nightly at 2am
auto resync mode: 1
auto resync time: 02:00

View File

@ -0,0 +1,40 @@
# #################
# SIP settings
# #################
# === Global ===
# most can be overridden per line; see below
sip vmail: {$voicemail_number} # Voice Mail Extenstion
sip transport protocol: 1 # 0 - UDP and TCP; 1 - UDP; 2 - TCP
sip use basic codecs: 1 # 0 - Disable; 1 - Enable
sip customized codec: payload=0;ptime=20;silsupp=off,payload=8;ptime=20;silsup=off #see page A-59
sip out-of-band dtmf: 1 # 0 - Disable; 1 - Enable
sip dtmf method: 1 # 0 - RTP; 1 - SIP INFO; 2 - BOTH
# #################
# SIP settings - per-line
# #################
{foreach $lines as $row}
sip line{$row.line_number} screen name: {$row.display_name}
sip line{$row.line_number} user name: {$row.user_id} # used in SIP URI
sip line{$row.line_number} password: {$row.password}
sip line{$row.line_number} auth name: {$row.user_id} # used in Authorization header field of SIP REGISTER request
sip line{$row.line_number} registrar ip: {$row.server_address}
{if isset($row.sip_port) }
sip line{$row.line_number} registrar port: {$row.sip_port}
{else}
sip line{$row.line_number} registrar port: {$line_sip_port}
{/if}
sip line{$row.line_number} proxy ip: {$row.server_address}
{if isset($row.sip_port) }
sip line{$row.line_number} proxy port: {$row.sip_port}
{else}
sip line{$row.line_number} proxy port: {$line_sip_port}
{/if}
{if isset($row.register_expires) }
sip line{$row.line_number} registration period: {$row.register_expires} # requested registration period, defaults to 0
{else}
sip line{$row.line_number} registration period: {$line_register_expires} # requested registration period, defaults to 0
{/if}
{/foreach}