mod_cluechoo
这个模块是个很好玩的模块。很多人对此很好奇,不知道它有什么用。实际上,它真没什么用。用当比较流行的一句网络流行语说就是:『然而它并没有什么卵用』。
从名字看,不知道该模块是干什么的,而Wiki上对它的介绍也就只有一句话:mod_cluechoo
implements Toyoda Masashi’s famous Steam Locomotive (SL) command for
FreeSWITCH。即,该模块在FreeSWITCH中实现了Toyoda
Masashi的蒸汽机车命令。那么,该蒸汽机车又到底是什么东东呢?
说来话长,通过搜索引擎,我们找到了这个页面: http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/index_e.html
。在UNIX系统上有一个ls
命令,但有时候容易输错,成了sl
,便会提示命令错误。而该蒸汽机车实现了一个sl
命令,即蒸汽机车(Steam
Locomotive)的英文缩写。实际上,该程序只是一个小小的玩笑,没什么实际用处。
该程序手册上对SL的介绍是这样的:SL (Steam Locomotive) runs across your
terminal when you type “sl” as you meant to type “ls”. It’s just a joke
command, and not usefull at all. Put the binary to
/usr/local/bin.
那么,不管有用没用,在FreeSWITCH中怎么玩呢?
该模块是默认编译和加载的,在FreeSWITCH控制台上重新加载一下该模块,便可以从日志中看出一些信息:
freeswitch> reload mod_cluechoo
[CONSOLE] switch_loadable_module.c:1464 Successfully Loaded `mod_cluechoo`]
[NOTICE] switch_loadable_module.c:269 Adding Application 'cluechoo'
[NOTICE] switch_loadable_module.c:315 Adding API Function 'cluechoo'
从上面的日志中可以看出,该模块实现了一个cluechoo App,以及一个cluechoo API。如果对App和API是什么东东不了解的同学可以参考第节。
接着在命令控制台上输入以下命令,便会看到一辆小火车开过,如图:
freeswitch> cluechoo
那么App怎么使用呢?构造如下的Dialplan,拨打cluechoo试一试。
extension name="cluechoo">
<condition field="destination_number" expression="^cluechoo$">
<action application="answer" data=""/>
<action application="cluechoo" data=""/>
<condition>
</extension> </
有兴趣的同学也可以看一看其源代码实现,挺有趣的哟 :) 。