在内部,FreeSWITCH通过使用swig 工具来支持多种开发语言,
现在已知支持的语言有C、Perl、PHP、Python、Ruby、Lua、Java、Tcl
以及由Managed支持的.Net平台语言,如C#、VB.NET等。FreeSWITCH源代码中的swig脚本和程序已被转换成各种语言的接口了,因而开发者不需要安装swig工具就可以使用。
在此,记录使用**C#**语言开发的流程。
源代码中有一个项目例子,winFailToBan项目。
1.引用FreeSWITCH.Managed.dll.
2.实现IAppPlugin接口
namespace MyTest
{
public class SampleApp : IAppPlugin
{
// example class for a dialplan APP just implment the run method
public void Run(AppContext context)
{
var s = context.Session;
var args = context.Arguments;
// Do something with them here
}
}
}
3.编译生成dll文件。
4.将生成的dll复制到mod目录下managed文件夹下,默认不存在该文件夹,需自己手动创建。
或直接发布dll到managed目录。
5.加载managed的模块,执行load mod_managed
或者在modules.conf.xml中添加
6.default.xml中添加路由
<extension name="mytest">
<condition field="destination_number" e

本文介绍了如何在FreeSWITCH中使用C#进行嵌入式脚本开发,包括引用FreeSWITCH.Managed.dll,实现IAppPlugin接口,编译生成dll并放置到指定目录,以及配置加载和路由设置。通过这些步骤,可以利用C#语言在FreeSWITCH中开发自定义功能。

4984

被折叠的 条评论
为什么被折叠?



