1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
<%
local values = ...
local function xml_elem(t,v,p,i)
local elem = t
if i == nil then
if v == true then
io.write('<'..elem..' perm="'..p..'">on</'..elem..'>\n')
elseif v == false then
io.write('<'..elem..' perm="'..p..'">off</'..elem..'>\n')
else
io.write('<'..elem..' perm="'..p..'">'..tostring(v)..'</'..elem..'>\n')
end
else
if v == true then
io.write('<'..elem..' idx="'..i..'" perm="'..p..'">on</'..elem..'>\n')
elseif v == false then
io.write('<'..elem..' idx="'..i..'" perm="'..p..'">off</'..elem..'>\n')
else
io.write('<'..elem..' idx="'..i..'" perm="'..p..'">'..tostring(v)..'</'..elem..'>\n')
end
end
end
%>
<?xml version="1.0" encoding="utf-8"?>
<settings>
<phone-settings>
<admin_mode_password perm="R"><% io.write(values.device.adminpassword) %></admin_mode_password>
<% xml_elem('eth_pc',values.device.pcportenable,'R') %>
<http_pass perm="R"><% io.write(values.device.adminpassword) %></http_pass>
<http_user perm="R">admin</http_user>
<ntp_server perm="RW"><% io.write(values.device.sntpserver) %></ntp_server>
<!--<timezone perm="RW">ITA+1</timezone> http://wiki.snom.com/Settings/timezone -->
<!--<tone_scheme perm="RW">ITA</tone_scheme> http://wiki.snom.com/wiki/index.php/Settings/tone_scheme -->
<%
for pg, pg_t in pairs(values) do
-- Is it of the form regX ?
local num = string.match(pg, 'reg(%d+)')
if num then
if pg_t.extension ~= "" then
xml_elem('user_active', 'on', 'RW', num )
xml_elem('record_dialed_calls', pg_t.callhistoryenable, 'R', num)
xml_elem('record_missed_calls', pg_t.callhistoryenable, 'R', num)
xml_elem('record_received_calls', pg_t.callhistoryenable, 'R', num)
-- SNOMs do not support per-line forwarding
xml_elem('redirect_allways',pg_t.forwardallenable,'RW')
xml_elem('redirect_number',pg_t.forwardall,'RW')
xml_elem('redirect_on_busy',pg_t.forwardbusyenable,'RW')
xml_elem('redirect_busy_number',pg_t.forwardbusy,'RW')
xml_elem('redirect_on_timeout',pg_t.forwardnoanswerenable,'RW')
xml_elem('redirect_time_number',pg_t.forwardnoanswer,'RW')
xml_elem('user_host', values.device.registrar, 'R', num )
xml_elem('user_moh', 'sip:'..values.device.musiconhold, 'R', num)
xml_elem('user_name', pg_t.extension, 'R', num)
xml_elem('user_outbound', values.device.registrar, 'R', num)
xml_elem('user_pass', pg_t.password, 'R', num)
-- Caller ID string
if string.len(pg_t.callerid) == 0 then
xml_elem( 'user_realname', pg_t.extension,'R', num)
else
xml_elem( 'user_realname', pg_t.callerid,'R', num)
end
end
end
end
%>
</phone-settings>
</settings>
|