• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

[原]FreeSWITCH中的lua操作小结

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

lua中设置当前通道变量:
方法一:
session:setVariable("fullName", "xxxxx");--需判断session是否为空
方法二:
local uuid =getUUID(callerid);
local res=api:executeString("uuid_setvar ".. uuid .." fullName ".."xxxxxxx")
该处设置的变量可以是通道中本没有的变量,设置完了后,在其他地方就可以引用该变量。

lua中设置全局通道变量(在vars.xml中设置)
local ucall_ip = api:executeString("global_setvar qt_ucall_ip_port 192.168.0.32:9090");

获取当前的通道变量
local callee_num=session:getVariable("qt_ucall_callee");

获取全局通道变量
local ucall_ip = api:executeString("global_getvar qt_ucall_ip_port");

获取当前会话uuid
session:get_uuid()

获取当前路径
--USwitch的当前安装目录
syspath = tostring(api:execute("global_getvar", "base_dir"));

使用uuid_transfer将当前对话的两个号码同时转入会议中
local trf1="uuid_transfer " .. guestuuid .. " -both " .. conferenceNum;
OutputConsoleLog("info" , scriptname ..": try to get guestNum to conference,command is{"..trf1.."}");
api:executeString(trf1);

外呼方法总结:
originate user/11103 139316095XX
originate sofia/external/139316095XX@192.168.2.34 &playback(calloutmusic/welcometoyou.mp3)
originate loopback/139316095XX &playback(calloutmusic/20110126164156.mp3)

在lua脚本中放一段录音
session:streamFile("notonduty.wav");

判断会话是否已建立
session:ready()==true

挂断当前会话
session:hangup();

将当前会话休眠一段时间
session:sleep(5000);

发起http请求
local http = require("socket.http");
--发起http请求,并获取返回结果
local e = http.request(url);

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
自写vim插件ldoc.vim,提供智能的lua注释代码补全发布时间:2022-07-22
下一篇:
纯lua实现Base64加密与解密发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap