summaryrefslogtreecommitdiffstats
path: root/provisioning-scripts.lua
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2011-06-09 06:45:30 +0000
committerTed Trask <ttrask01@yahoo.com>2011-06-09 06:45:30 +0000
commit4512d2436bbb338900520cae66a762f9ab00d545 (patch)
tree85db409dedc752022fe8c3d4b3fc598f1a3efd04 /provisioning-scripts.lua
parent70190e54e41ce5c64bf895e18492df1c4f83ab2f (diff)
downloadacf-provisioning-4512d2436bbb338900520cae66a762f9ab00d545.tar.bz2
acf-provisioning-4512d2436bbb338900520cae66a762f9ab00d545.tar.xz
Added lua validate code into provisioning_params table, added example for mac address
Diffstat (limited to 'provisioning-scripts.lua')
-rwxr-xr-xprovisioning-scripts.lua56
1 files changed, 28 insertions, 28 deletions
diff --git a/provisioning-scripts.lua b/provisioning-scripts.lua
index 2f16a19..4200e8b 100755
--- a/provisioning-scripts.lua
+++ b/provisioning-scripts.lua
@@ -522,36 +522,36 @@ param_groups_to_params = {
-- List of each parameter used in any way for any device - mostly for how to display
provisioning_params = {
- "CREATE TABLE provisioning_params (param_id SERIAL PRIMARY KEY, name VARCHAR(255) UNIQUE, type VARCHAR(255), label VARCHAR(255), descr VARCHAR(255), value VARCHAR(255), seq INTEGER, regexp VARCHAR(255))",
+ "CREATE TABLE provisioning_params (param_id SERIAL PRIMARY KEY, name VARCHAR(255) UNIQUE, type VARCHAR(255), label VARCHAR(255), descr VARCHAR(255), value VARCHAR(255), seq INTEGER, regexp VARCHAR(255), validate text)",
"CREATE INDEX params_name_idx ON provisioning_params (name)",
- "INSERT INTO provisioning_params VALUES(default, 'mac', 'text', 'MAC Address', 'Capitalized hex digits with no puncuation', '', '1', '^[0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]$')",
- "INSERT INTO provisioning_params VALUES(default, 'template', 'select', 'Template', '', '', '2', '')",
- "INSERT INTO provisioning_params VALUES(default, 'registrar', 'text', 'SIP Registrar', '', '', '3', '')",
- "INSERT INTO provisioning_params VALUES(default, 'digitmap', 'text', 'Digit Map', 'Phone dial pattern based on section 2.1.5 of RFC 3435, plus a comma to turn dialtone back on', '', '4', '^[*#0-9xT|,.%[%]-]*$')",
- "INSERT INTO provisioning_params VALUES(default, 'digitmaptimeout', 'text', 'Digit Map Timeout', 'Timeout in seconds for each segment of digit map (separated by \'|\')', '', '5', '^[0-9|]*$')",
- "INSERT INTO provisioning_params VALUES(default, 'sntpserver', 'text', 'SNTP Server', '', '', '6', '')",
- "INSERT INTO provisioning_params VALUES(default, 'timezone', 'text', 'Posix Time Zone', 'See the expanded form (no colon) of TZ variable at http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html', '', '7', '^%a+[+-]?%d+')",
- "INSERT INTO provisioning_params VALUES(default, 'musiconhold', 'text', 'Music-on-hold URI', '', '', '8', '')",
- "INSERT INTO provisioning_params VALUES(default, 'homepage', 'text', 'Browser Homepage', '', '', '9', '')",
- "INSERT INTO provisioning_params VALUES(default, 'adminpassword', 'text', 'Administration Password', '', '', '10', '')",
- "INSERT INTO provisioning_params VALUES(default, 'pcportenable', 'boolean', 'PC Ethernet Port Enable', '', 'true', '11', '')",
- "INSERT INTO provisioning_params VALUES(default, 'urldialingenable', 'boolean', 'URL Dialing Enable', '', 'false', '12', '')",
+ "INSERT INTO provisioning_params VALUES(default, 'mac', 'text', 'MAC Address', 'Capitalized hex digits with no puncuation', '', '1', '^%x%x%x%x%x%x%x%x%x%x%x%x$', 'local value, functions, params = ...\nvalue = string.upper(value)\nlocal others = functions.getselectresponse(\"SELECT count(*) FROM provisioning_values WHERE param_id=\\'\"..params.value.device.value.mac.param_id..\"\\' AND device_id!=\\'\"..params.value.device_id.value..\"\\' AND value=\\'\"..value..\"\\'\")\nif tonumber(others[1].count) > 0 then\n\treturn value, \"MAC Address must be unique\"\nend\nreturn value')",
+ "INSERT INTO provisioning_params VALUES(default, 'template', 'select', 'Template', '', '', '2', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'registrar', 'text', 'SIP Registrar', '', '', '3', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'digitmap', 'text', 'Digit Map', 'Phone dial pattern based on section 2.1.5 of RFC 3435, plus a comma to turn dialtone back on', '', '4', '^[*#0-9xT|,.%[%]-]*$', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'digitmaptimeout', 'text', 'Digit Map Timeout', 'Timeout in seconds for each segment of digit map (separated by \\'|\\')', '', '5', '^[0-9|]*$', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'sntpserver', 'text', 'SNTP Server', '', '', '6', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'timezone', 'text', 'Posix Time Zone', 'See the expanded form (no colon) of TZ variable at http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html', '', '7', '^%a+[+-]?%d+', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'musiconhold', 'text', 'Music-on-hold URI', '', '', '8', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'homepage', 'text', 'Browser Homepage', '', '', '9', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'adminpassword', 'text', 'Administration Password', '', '', '10', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'pcportenable', 'boolean', 'PC Ethernet Port Enable', '', 'true', '11', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'urldialingenable', 'boolean', 'URL Dialing Enable', '', 'false', '12', '', null)",
- "INSERT INTO provisioning_params VALUES(default, 'extension', 'text', 'Extension', '', '', '101', '^%d*$')",
- "INSERT INTO provisioning_params VALUES(default, 'password', 'text', 'Password', '', '', '102', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwardnoanswerenable', 'boolean', 'Forward on No-answer Enable', '', 'false', '103', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwardnoanswer', 'text', 'Forward on No-answer Destination', 'Callers will be transferred to this extension when you don''t answer after 20 seconds', '', '104', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwardbusyenable', 'boolean', 'Forward on Busy Enable', '', 'false', '105', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwardbusy', 'text', 'Forward on Busy Destination', 'Callers will be transferred to this extension when the line is busy', '', '106', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwardallenable', 'boolean', 'Forward All Calls Enable', '', 'false', '107', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwardall', 'text', 'Forward All Calls Destination', 'All calls will be transferred to this extension', '', '108', '')",
- "INSERT INTO provisioning_params VALUES(default, 'callerid', 'text', 'Caller ID String', '', '', '109', '')",
- "INSERT INTO provisioning_params VALUES(default, 'forwarding', 'boolean', 'Forwarding Enable', '', 'true', '201', '')",
- "INSERT INTO provisioning_params VALUES(default, 'hotlineenable', 'boolean', 'Hotline Enable', '', 'false', '202', '')",
- "INSERT INTO provisioning_params VALUES(default, 'hotlinedestination', 'text', 'Hotline Destination', '', '', '203', '')",
- "INSERT INTO provisioning_params VALUES(default, 'callhistoryenable', 'boolean', 'Call History Enable', '', 'true', '204', '')",
- "INSERT INTO provisioning_params VALUES(default, 'callwaitingenable', 'boolean', 'Call Waiting Enable', '', 'true', '205', '')",
- "INSERT INTO provisioning_params VALUES(default, 'speeddialenable', 'boolean', 'Speed Dial Enable', '', 'true', '206', '')",
+ "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)",
+ "INSERT INTO provisioning_params VALUES(default, 'forwardnoanswer', 'text', 'Forward on No-answer Destination', 'Callers will be transferred to this extension when you don''t answer after 20 seconds', '', '104', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'forwardbusyenable', 'boolean', 'Forward on Busy Enable', '', 'false', '105', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'forwardbusy', 'text', 'Forward on Busy Destination', 'Callers will be transferred to this extension when the line is busy', '', '106', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'forwardallenable', 'boolean', 'Forward All Calls Enable', '', 'false', '107', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'forwardall', 'text', 'Forward All Calls Destination', 'All calls will be transferred to this extension', '', '108', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'callerid', 'text', 'Caller ID String', '', '', '109', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'forwarding', 'boolean', 'Forwarding Enable', '', 'true', '201', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'hotlineenable', 'boolean', 'Hotline Enable', '', 'false', '202', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'hotlinedestination', 'text', 'Hotline Destination', '', '', '203', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'callhistoryenable', 'boolean', 'Call History Enable', '', 'true', '204', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'callwaitingenable', 'boolean', 'Call Waiting Enable', '', 'true', '205', '', null)",
+ "INSERT INTO provisioning_params VALUES(default, 'speeddialenable', 'boolean', 'Speed Dial Enable', '', 'true', '206', '', null)",
}
-- All of the (non-default) parameter values for all devices are stored here