summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVinícius de Jesus <viniciusdjesus@hotmail.com>2016-04-04 11:23:55 -0300
committerTed Trask <ttrask01@yahoo.com>2016-04-06 19:46:00 +0000
commit3e38d01b353823358c8163f30f9124f837b1658b (patch)
tree086001d8ea08ad4e893ab7c625490c50141a4ae3
parentda2ef49a6d7b006ac8ed30c9ddf9d114fd803d5a (diff)
downloadacf-provisioning-3e38d01b353823358c8163f30f9124f837b1658b.tar.bz2
acf-provisioning-3e38d01b353823358c8163f30f9124f837b1658b.tar.xz
Add Cyberdata Device parameters
Signed-off-by: Ted Trask <ttrask01@yahoo.com>
-rw-r--r--config/templates/cyberdata-template.lua33
-rw-r--r--provisioning-scripts.lua55
-rwxr-xr-xupgradeprovisioning33
3 files changed, 117 insertions, 4 deletions
diff --git a/config/templates/cyberdata-template.lua b/config/templates/cyberdata-template.lua
index 11206ba..3d3f0b8 100644
--- a/config/templates/cyberdata-template.lua
+++ b/config/templates/cyberdata-template.lua
@@ -28,6 +28,17 @@ local function setValue(xmlobj, name, value)
end
end
+local function yesno(xmlobj, name, value)
+ if value ~= nil then
+ if (value == false) then
+ value = "No"
+ elseif (value == true) then
+ value = "Yes"
+ end
+ setValue(xmlobj, ''..name..'', ''..value..'')
+ end
+end
+
-- Load the initial config
local init_cfg
local res, err = pcall(function()
@@ -51,8 +62,30 @@ if values.reg1 then
setValue(sipsettings, "SIPAuthPassword", values.reg1.password)
setValue(sipsettings, "DialoutExtension0", values.reg1.hotlinedestination)
setValue(sipsettings, "DialoutID0", values.reg1.callerid)
+
+end
+
+-- <DeviceSettings>
+
+if values.device then
+ local DeviceSettings = findOrAppendSection(init_cfg, "DeviceSettings")
+ setValue(DeviceSettings, "SpeakerVolume", values.device.cyberspeakervolume)
+ setValue(DeviceSettings, "AdminPassword", values.device.adminpassword)
+ setValue(DeviceSettings, "RingVolume", values.device.cyberringvolume)
+ setValue(DeviceSettings, "MicGain", values.device.cybermicgain)
+ yesno (DeviceSettings, "ActivateRelayWithDTMF", values.device.activaterelaywithdtmf)
+ setValue(DeviceSettings, "DTMFActivationCode", values.device.dtmfactivationcode)
+ setValue(DeviceSettings, "DTMFActivationDuration", values.device.dtmfactivationduration)
+ yesno (DeviceSettings, "ActivateRelayDuringRing", values.device.activaterelayduringring)
+ yesno (DeviceSettings, "ActivateRelayDuringCall", values.device.activaterelayduringcall)
end
+-- <ButtonSettings>
+
+if values.device then
+ local ButtonSettings = findOrAppendSection(init_cfg, "ButtonSettings")
+ yesno (ButtonSettings, "PlayToneWhileRelayActive", values.device.playtonewhilerelayactive)
+end
-- <ClockSettings>
diff --git a/provisioning-scripts.lua b/provisioning-scripts.lua
index d3c2fb5..a95e83d 100644
--- a/provisioning-scripts.lua
+++ b/provisioning-scripts.lua
@@ -484,6 +484,16 @@ mymodule.param_groups_to_params = {
"INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='registrar'), null, true)",
"INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='sntpserver'), null, false)",
"INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='timezone'), null, false)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='adminpassword'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='activaterelaywithdtmf'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='dtmfactivationcode'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='dtmfactivationduration'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='playtonewhilerelayactive'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='activaterelayduringring'), null, true)",
+ "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='activaterelayduringcall'), null, true)",
"INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='Grandstream Device'), (SELECT param_id FROM provisioning_params WHERE name='template'), '/etc/provisioning/templates/grandstream-template.lua', false)",
"INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='Grandstream Device'), (SELECT param_id FROM provisioning_params WHERE name='mac'), null, true)",
"INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='Grandstream Device'), (SELECT param_id FROM provisioning_params WHERE name='registrar'), null, false)",
@@ -1105,8 +1115,16 @@ mymodule.provisioning_params = {
"INSERT INTO provisioning_params VALUES(default, 'displaylang', 'select', 'Display screen language', 'Check if your phone supports the selected language', '', '15', '', null)",
"INSERT INTO provisioning_params VALUES(default, 'algoringvol', 'select', 'Ring Volume (Algo)', '', '5', '16', '', null)",
"INSERT INTO provisioning_params VALUES(default, 'algopagevol', 'select', 'Page Volume (Algo)', '', '5', '17', '', null)",
- "INSERT INTO provisioning_params values(default, 'algospkmode', 'select', 'Speaker Mode (Algo)', '', '0', '18', '', null)";
-
+ "INSERT INTO provisioning_params values(default, 'algospkmode', 'select', 'Speaker Mode (Algo)', '', '0', '18', '', null)",
+ "INSERT INTO provisioning_params values(default, 'cyberspeakervolume', 'select', 'Speaker Volume (CyberData)', '', '4', '19', '', null)",
+ "INSERT INTO provisioning_params values(default, 'cyberringvolume', 'select', 'Ring Volume (CyberData)', '', '4', '20', '', null)",
+ "INSERT INTO provisioning_params values(default, 'cybermicgain', 'select', 'Microphone Gain (CyberData)', '', '4', '21', '', null)",
+ "INSERT INTO provisioning_params values(default, 'activaterelaywithdtmf', 'boolean', 'Activate Relay with DTMF Enable', '', 'true', '22', '', null)",
+ "INSERT INTO provisioning_params values(default, 'dtmfactivationcode', 'text', 'Relay DTMF Activation Code', '', '321', '23', '^[*#0-9]*$', E'local value, functions, params = ...\nif value ~= \'\' then\nlocal len = string.len(value)\n if len >= 26 then\n return value, \'Maximum 25 digits\'\n end\nend\nreturn value')",
+ "INSERT INTO provisioning_params values(default, 'dtmfactivationduration', 'text', 'Relay DTMF Activation Duration', 'Value in seconds', '2', '24', '^%d*$', E'local value, functions, params = ...\nif value ~= \'\' then\nlocal len = string.len(value)\n if len >= 6 then\n return value, \'Maximum 5 digits\'\n end\nend\nreturn value')",
+ "INSERT INTO provisioning_params values(default, 'playtonewhilerelayactive', 'boolean', 'Relay Activation Tone Enable', '', 'true', '25', '', null)",
+ "INSERT INTO provisioning_params values(default, 'activaterelayduringring', 'boolean', 'Activate Relay During Ring Enable', '', 'false', '26', '', null)",
+ "INSERT INTO provisioning_params values(default, 'activaterelayduringcall', 'boolean', 'Activate Relay While Call Active Enable', '', 'false', '27', '', null)",
"INSERT INTO provisioning_params VALUES(default, 'extension', 'text', 'Extension', '', '', '101', '^%d*$', null)",
"INSERT INTO provisioning_params VALUES(default, 'password', 'text', 'Password', '', '', '102', '', null)",
"INSERT INTO provisioning_params VALUES(default, 'forwardnoanswerenable', 'boolean', 'Forward on No-answer Enable', '', 'false', '103', '', null)",
@@ -1139,7 +1157,7 @@ mymodule.provisioning_params = {
"INSERT INTO provisioning_params VALUES(default, 'softkey8', 'boolean', 'Soft Key 8 Enable', '', 'false', '308', '', null)",
"INSERT INTO provisioning_params VALUES(default, 'softkey9', 'boolean', 'Soft Key 9 Enable', '', 'false', '309', '', null)",
"INSERT INTO provisioning_params VALUES(default, 'softkey10', 'boolean', 'Soft Key 10 Enable', '', 'false', '310', '', null)",
- "INSERT INTO provisioning_params VALUES(default, 'databaseversion', 'text', 'Provisioning Database Version', 'Do not edit or delete!', '8', '999', '', null)"
+ "INSERT INTO provisioning_params VALUES(default, 'databaseversion', 'text', 'Provisioning Database Version', 'Do not edit or delete!', '9', '999', '', null)",
}
-- All of the (non-default) parameter values for all devices are stored here
@@ -1283,7 +1301,36 @@ mymodule.provisioning_options = {
"INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='algospkmode'), 'External', '1', '1')",
"INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='algospkmode'), 'Internal', '2', '2')",
"INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='algospkmode'), 'Disabled', '3', '3')",
-
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '0', '0', '0')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '1', '1', '1')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '2', '2', '2')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '3', '3', '3')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '4', '4', '4')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '5', '5', '5')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '6', '6', '6')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '7', '7', '7')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '8', '8', '8')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '9', '9', '9')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '0', '0', '0')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '1', '1', '1')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '2', '2', '2')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '3', '3', '3')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '4', '4', '4')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '5', '5', '5')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '6', '6', '6')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '7', '7', '7')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '8', '8', '8')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '9', '9', '9')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '0', '0', '0')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '1', '1', '1')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '2', '2', '2')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '3', '3', '3')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '4', '4', '4')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '5', '5', '5')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '6', '6', '6')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '7', '7', '7')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '8', '8', '8')",
+ "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '9', '9', '9')",
}
-- List of getfile requests
diff --git a/upgradeprovisioning b/upgradeprovisioning
index ecca00e..92ea343 100755
--- a/upgradeprovisioning
+++ b/upgradeprovisioning
@@ -568,4 +568,37 @@ if [ "$version" -lt "8" ]; then
psql -U postgres -c "UPDATE provisioning_params SET value='8' WHERE name='databaseversion'" provisioning
fi
+if [ "$version" -lt "9" ]; then
+ echo "Upgrading to database version 9"
+
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'cyberspeakervolume', 'select', 'Speaker Volume (CyberData)', '', '4', '19', '', null)" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'cyberringvolume', 'select', 'Ring Volume (CyberData)', '', '4', '20', '', null)" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'cybermicgain', 'select', 'Microphone Gain (CyberData)', '', '4', '21', '', null)" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'activaterelaywithdtmf', 'boolean', 'Activate Relay with DTMF Enable', '', 'true', '22', '', null)" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'dtmfactivationcode', 'text', 'Relay DTMF Activation Code', '', '321', '23', '^[*#0-9]*$', E'local value, functions, params = ...\nif value ~= \'\' then\nlocal len = string.len(value)\n if len >= 26 then\n return value, \'Maximum 25 digits\'\n end\nend\nreturn value')" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'dtmfactivationduration', 'text', 'Relay DTMF Activation Duration', 'Value in seconds', '2', '24', '^%d*$', E'local value, functions, params = ...\nif value ~= \'\' then\nlocal len = string.len(value)\n if len >= 6 then\n return value, \'Maximum 5 digits\'\n end\nend\nreturn value')" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'playtonewhilerelayactive', 'boolean', 'Relay Activation Tone Enable', '', 'true', '25', '', null)" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'activaterelayduringring', 'boolean', 'Activate Relay During Ring Enable', '', 'false', '26', '', null)" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_params values(default, 'activaterelayduringcall', 'boolean', 'Activate Relay While Call Active Enable', '', 'false', '27', '', null)" provisioning
+
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='adminpassword'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='activaterelaywithdtmf'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='dtmfactivationcode'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='dtmfactivationduration'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='playtonewhilerelayactive'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='activaterelayduringring'), null, true)" provisioning
+ psql -U postgres -c "INSERT INTO param_groups_to_params VALUES((SELECT group_id FROM provisioning_groups WHERE label='CyberData Device'), (SELECT param_id FROM provisioning_params WHERE name='activaterelayduringcall'), null, true)" provisioning
+
+ for a in $(seq 0 9); do
+ psql -U postgres -c "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberspeakervolume'), '$a', '$a', '$a')" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cyberringvolume'), '$a', '$a', '$a')" provisioning
+ psql -U postgres -c "INSERT INTO provisioning_options VALUES((SELECT param_id FROM provisioning_params WHERE name='cybermicgain'), '$a', '$a', '$a')" provisioning
+ done
+
+ # database
+ psql -U postgres -c "UPDATE provisioning_params SET value='9' WHERE name='databaseversion'" provisioning
+fi
exit 0