API Event的作用为:产生新事件
目录浏览:
event:addbody
作用:该事件用于创建自定义事件
--Create Custom event custom_msg = "dial_record_id: " .. dial_record_id .. "\n" .. "call_disposition: " .. Disposition .. "\n" .. "campaign_number: " .. Campaign .. "\n" .. "called_number: " .. dial_num .."\n" ; local e = freeswitch.Event("custom", "dial::dial-result");
e:addBody(custom_msg); e:fire();
|
可以在body中添加任意多的事件。在这个范例中,添加了四个事件
event:addHeader
作用:新增一个头域
event:delHeader
作用:删除一个头域
event:fire
local event = freeswitch.Event("message_waiting"); event:addHeader("MWI-Messages-Waiting", "no"); event:addHeader("MWI-Message-Account", "sip:1000@10.0.1.100"); event:addHeader("Sofia-Profile", "internal"); event:fire(); |
event:getBody
作用:获得body的内容
event:getHeader
作用:用于generic API的调用
|
这也可以用在dialplan.lua中,用来获得一些相关的信息
|
event:getType
作用:获得事件的类型
event:serialize
作用:将所有的Headers变量打印到console界面
-- Print as text io.write(params:serialize()); io.write(params:serialize("text"));
-- Print as JSON io.write(params:serialize("json")); |
也可以将它们当做一个“info”消息显示
|
event:setPriority
作用:设置事件的优先级
event:fire(Sending an Event发送一个事件,即生效一个事件)
利用“luarun”来执行这段代码,还可以触发注册手机上的消息指示器的开关
local event = freeswitch.Event("message_waiting"); event:addHeader("MWI-Messages-Waiting", "no"); event:addHeader("MWI-Message-Account", "sip:1002@10.0.1.100"); event:fire(); |
翻译出处:https://freeswitch.org/confluence/display/FREESWITCH/mod_lua
注:译者翻译能力有限,欢迎指明