mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2026-01-07 04:03:49 +00:00
Update dtmf_handler.lua
This commit is contained in:
committed by
GitHub
parent
fc96e3ae77
commit
908e7f67d6
@@ -1,37 +1,15 @@
|
||||
require "resources.functions.split";
|
||||
require "resources.functions.trim";
|
||||
|
||||
local s = event:serialize("xml")
|
||||
local name = event:getHeader("Event-Name")
|
||||
--local s = event:serialize("xml")
|
||||
--local name = event:getHeader("Event-Name")
|
||||
--freeswitch.consoleLog("NOTICE", "Got event! " .. name)
|
||||
|
||||
--freeswitch.consoleLog("NOTICE", "Serial!\n" .. s)
|
||||
|
||||
|
||||
local name = event:getHeader("Event-Name");
|
||||
local channel_state = event:getHeader("Channel-State") or '[nil]';
|
||||
local original_channel_state = event:getHeader("Original-Channel-Call-State") or '[nil]';
|
||||
local channel_name = event:getHeader("Channel-Name") or '[nil]';
|
||||
local channel_call_uuid = event:getHeader("Channel-Call-UUID");
|
||||
local call_uuid = event:getHeader("Caller-Unique-ID");
|
||||
local channel_timestamp = event:getHeader("Event-Date-Timestamp");
|
||||
local body = event:getBody();
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] event-name " .. name);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] original-channel-state " .. original_channel_state);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] channel-state " .. channel_state);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] channel-name " .. channel_name);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] channel-call-uuid " .. channel_call_uuid);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] channel_timestamp " .. channel_timestamp);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] body " .. body);
|
||||
local dtmf_value = event:getHeader("DTMF-Digit");
|
||||
|
||||
session = freeswitch.Session(channel_call_uuid);
|
||||
local v = split(body,"\n",true);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] type: " .. v[1]);
|
||||
--freeswitch.consoleLog("NOTICE", "[dtmf_handler] type: " .. v[2]);
|
||||
local vv = split(v[1],'=',true);
|
||||
local dtmf_value = trim(vv[2]);
|
||||
freeswitch.consoleLog("NOTICE", "[dtmf_handler] DTMF value: " .. dtmf_value);
|
||||
local session = freeswitch.Session(call_uuid);
|
||||
local history = channel_timestamp .. ':' .. dtmf_value .. "\n";
|
||||
session:execute("push", "dtmf_history="..history);
|
||||
|
||||
-- lua.conf.xml
|
||||
-- <hook event="RECV_INFO" script="dtmf_handler.lua"/>
|
||||
-- <hook event="DTMF" script="dtmf_handler.lua"/>
|
||||
|
||||
Reference in New Issue
Block a user