分类:Asterisk

asterisk sip配置说明

1. 介绍extensions.conf中使用sip设备的语法是SIP/devicename,devicename名在下一节中说明。如果用户在Internet上,可以使用SIP/username@domain形式,同时不要忘记打开DNSSRV功能。如果定义了一个SIP代理,可以使用SIP/proxyhostname/user或者SIP/user@prox...…

阅读全文 »

DTMF三种模式(SIPINFO,RFC2833,INBAND)

1、DTMF(双音多频)定义:由高频音和低频音的两个正弦波合成表示数字按键(0~9*#ABCD)。2、SIP中检测DTMF数据的方法:SIPINFO、RFC2833、INBAND1)SIPINFO为带外检测方式,通过SIP信令通道传输DTMF数据。没有统一的实现标准,目前以CiscoSIPINFO为标准,通过SIPINFO包中的signal字段识别DTMF按键。注意当DTMF为“*”...…

阅读全文 »

Asterisk manager API(AMI)

Asterisk控制接口(AMI)允许管理客户端程序连接到一个asterisk实例并且可以通过TCP/IP流发送命令或读取事件。这在试图跟踪asterisk的状态或其中的电话客户端状态时很有用,AMI说明了客户端基于的一般(可能是动态的)规则。一种简单的"key:value"协议用于已连接的管理客户端和asteriskPBX之间的信息传递。每行都用回车换行(/r/n)来结束。...…

阅读全文 »

asterisk 的三方通话

1001呼1002 ,1002接通,1001按*00后1001,1002进入会议,接着按要拨打的1003,以#结束。这是1001和1003建立通话但, 1001按*11把1003加入会议,实现了三方通话。注意:在sip.conf的号码定义时一定要把允许的编码在你asterisk自带的编码模块中,否则出错extensions.conf[default]&n...…

阅读全文 »

Asterisk 函数

Asterisk的拨号计划命令,翻译自http://knowledge.daletripp.com/wiki/view/Asterisk+-+documentation+of+application+commands网上有个《asteriskapp命令中文翻译》,版本比较老,内容更像是软件翻译的。我参考了下,并根据knowledge.daletripp.com现有新版本做了些修正。由于内容很多名词比较专业,翻译的不够完整,英文...…

阅读全文 »

Asterisk 1.8 sip 协议栈分析

分析路线sipsock_read->parse_request->find_call->handle_inconming->handle_request_方法名。。。。协议栈初始化:load_module()函数加载SIP配置信息,解析sip.conf挂载到全局变量中。首先初始化user,peer,register全局链表(1.6版本中已经改为hash存储估计性能提高...…

阅读全文 »

Asterisk Kernel 分析-channel

从内核的角度去分析问题时,弄清楚呼叫流程是非常关键的,只有理清了呼叫流程,才能从流程的各个环节细节中分析出问题所在。Asterisk所有功能都是基于函数调用的模式,呼叫流程也不例外。因此如何从一团乱麻似的内核函数调用中理出函数调用执行路线,是解读呼叫流程的关键。所有呼叫都跟astersisk的channel有关。这路通话都包含一个incoming连接和一个outbound连接。每个电话都是通过对应...…

阅读全文 »

Asterisk文件AMI接口

Asterisk控制接口(AMI)允许管理客户端程序连接到一个asterisk实例并且可以通过TCP/IP流发送命令或读取事件。这在试图跟踪asterisk的状态或其中的电话客户端状态时很有用,AMI说明了客户端基于的一般(可能是动态的)规则。一种简单的"key:value"协议用于已连接的管理客户端和asteriskPBX之间的信息传递。每行都用回车换行(\r\n)来结束。...…

阅读全文 »

Asterisk PHP AGI DEMO

使用phpagi程序可以非常容易的实现IVR菜单,外部数据库访问,呼叫控制。等功能。首先准备环境,测试帐号两个sip帐号和一个iax2帐号sip.conf[1001]username=1001type=friendaccountcode=1001secret=1001qualify=noport=5060nat=yeshost=dynamicdtmfmode...…

阅读全文 »

Asterisk 内核简介

Asterisk是一个开源的pbx系统,在公开的资料中,很难找到asterisk内核系统的详细描述。因此,很有必要写一篇内核框架的描述文档,作为内部培训文档,相互学习提高。本文主要从三个层面来描述asterisk内核,即asterisk内核模块、内核启动过程、基本呼叫流程。一、 asterisk内核模块Asterisk由内部核心和外围动态可加载模块组成。内部核心由以下六个部分组成:PBX...…

阅读全文 »

标准Asterisk通道变量

在asterisk中,定义了许多变量,或是有些变量能够被其读取。下面给出了它们的列表。在每一个application的帮助文档中,你可以获得更多的信息。所有这些变量都是大写的。被*标记的变量是内建函数,不能在拨号方案中被设置,只能被读取。对这些变量的赋值将被忽略。${CDR(accountcode)} *Accountcode(ifspecif...…

阅读全文 »

开源的PHP AGI 库:PHPAGI

如果想使用PHP语言进行高级AGI编程,可以用PHPAGI库。你当然可以直接用PHP来写,但通过PHPAGI库它可以大大简化你AGI开发的过程。官方网址:http://knowledge.daletripp.com/开发文档:http://knowledge.daletripp.com/phpagi2/docs/目前最新版本是2.14,下载中提供了两个包,分别是phpagi-2.14.tgz和phpa...…

阅读全文 »