在FS的二次开发过程中,通道变量扮演极其重要的角色。那么,有没有办法实时获取通道变量的值呢?
FS提供了一个app,叫info,可以在dialplan时获取通道变量信息。
用法
用于当前leg:
<action application="info"/>
用于bleg:
<action application="set" data="bridge_pre_execute_bleg_app=info"/>
用在lua脚本中:
session1:execute("info","notice");
输入类似以下内容:
CLI实时获取通道变量
上述方法,是在编码中嵌入的,调试时,需要实时获取,怎么办呢?
其实很简单,利用uuid_broadcast这个API,调用info这个APP就行了。
依上例,假设channel uuid为88888,那么,在CLI上执行下面命令,输出的内容和上面的拨号方案内容是一样一样的。
uuid_broadcast 88888 info::
需要注意的是:INFO输出的名字和变量名不同相同的,它们之间的映射关系可以从下面链接中查找:
https://freeswitch.org/confluence/display/FREESWITCH/Channel+Variables