Show pagesourceOld revisionsBacklinksAdd to bookExport to PDFODT exportBack to top Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer Reddit TeamsRecent ChangesSend via e-MailPrintPermalink × Book Creator Add this page to your book Book Creator Remove this page from your book Manage book(0 page(s)) Help Call forwarding in Auerswald PBX (lua) Example: LUA Template Call forwarding in Auerswald PBX call_fwd_in_pbx.xml <?xml version="1.0" encoding="UTF-8"?><templates> <!-- switch the call forwarding for not responding within the PBX on or off parameter: identity parameter: target: call forwarding target --> <template name="@string/call_forwarding_no_response_title"> <keyConfiguration> <lua> <code> local valid = false local active = false local on = "*61*" local off = "#61#" local userpath = "/identities/identity["..identity.."]/" local host = config.get(userpath .. "host") local user = config.get(userpath .. "username") local function updateLed() if valid then if active then key:setLed( "green" ) else key:setLed( "off" ) end else key:setLed( "red", true ) end end local unescape = function(url) return url:gsub("%%(%x%x)", function(x) return string.char(tonumber(x, 16)) end ) end local function check_sub(data, uri, handle) local x = xml.eval(data) local test_uri_on = "sip:"..on..target.."#"..user.."@"..host if unescape(uri) == test_uri_on and x ~= nil then for _,dlg in ipairs(x) do state = dlg:find("state") if state and state[1] == "trying" then active = true elseif state and state[1] == "terminated" then active = false end end end updateLed() end local function check_valid() if identity =="" or target=="" then valid = false else valid = true end end local function sub() sip.subscribe(on..target.."#"..user,"0",identity,check_sub) end function onKeyUp() if active and valid then sip.invite(off.."#"..user) elseif valid then sip.invite(on..target.."#"..user) end end check_valid() updateLed() sub() </code> <params> <!-- These parameters are available by name within the lua-script (code-section). Their value is passed from the parameters-section (see below) --> <param name="identity"/> <param name="target"/> </params> </lua> </keyConfiguration> <parameters> <!-- entered by user in phone-UI or on website when configuring this key-function. Will then be passed as value to the lua-scripts params-section. --> <parameter name="@string/identity"> <path>//param[@name="identity"]/value</path> </parameter> <parameter name="@string/target"> <path>//param[@name="target"]/value</path> </parameter> </parameters> </template></templates> en/products/comfortel-d-series/developer/keys/templates/examples/call_fwd_in_pbx.txt Last modified: 22.03.2022 13:15by hoehne