Asterisk学习资料:http://blog.chinaunix.net/u1/45185/showart_433228.html
Asterisk的text转化为语言配置http://blog.csdn.net/southflow/archive/2009/10/10/4651526.aspx
asterisk使用之Channel Variables (通道变量) http://blog.chinaunix.net/u2/74590/showart_2186999.html
Asterisk Development Team http://www.asterisk.org/astdocs/asterisk.html
1.asterisk 代接电话 **+号码,可代接指定号码上正在响铃的电话。
2.Web-MeetMe install on Fedora:http://hi.baidu.com/xiaoun001/blog/item/9be2810a92a68f36b1351d8e.html
3.MEETME如何发起会议主动邀请?
在MEETME中,现在的模式是分机主动进入,如何能够通过WEB主动来邀请其他人进入呢?
可以用自动外呼的方式实现吧,把接通后的操作转到meetme的content就行了
我这有个简单的例子 http://www.52city.cn/zxdc.asp
调用后台的呼叫生成程序
<?php
if(!($callerid=="")){
if (!(!(ereg("^[0-9]{8}$", $callerid) || ereg("^13[0-9]{9}$", $callerid) || ereg("^15[0-
9]{9}$", $callerid)) || ($callerid[0]=="0")))
{
$tmpfname = tempnam( "/tmp", "webcall" );
$fp = fopen($tmpfname, "w");
fwrite($fp,"Channel: shd/g0/".$callerid."/n");
fwrite($fp,"Callerid: ".$callerid."/n");
fwrite($fp,"MaxRetries: 5/nRetryTime: 30/nWaitTime: 45/nContext: webcall/nExtens
ion: s/nPriority: 1");
fclose($fp);
$dstname = tempnam( "/var/spool/asterisk/outgoing/","webcall" );
copy($tmpfname,$dstname);
unlink($tmpfname);
echo("0呼叫创建成功!");
}else{
echo("1号码错误!");
}
}else{
echo("2号码空!");
}
?>
对应的 content
[webcall]
exten => s,1,DigitTimeout,5
exten => s,2,ResponseTimeout,10
exten => s,3,Answer
exten => s,4,Wait(1)
exten => s,5,Background(work-welcome)
exten => s,6,Goto(from-pstn,s,1)
exten => h,1,Macro(hangupcall,)
其中的 exten => s,6,Goto(from-pstn,s,1) 就可以改成跳转到加入会议的代码
4. 电话转接的两种方式:盲转接(Blind Transfer) 和指定转接(Attended Transfer)
http://www.asteriskcn.com/index.php?q=content/%E7%94%B5%E8%AF%9D%E8%BD%AC%E6%8E%A5%E7%9A%84%E4%B8%A4%E7%A7%8D%E6%96%B9%E5%BC%8F
电话转接有分两种方式:
盲转接(Blind Transfer) - 操作过程
3000拨打3001,3001接通后,然后将3000通话转接至 3002,分机 3001 立即与3000断线,分机 3002 会响铃,接起分机后3002可与3000通话,若3002未接起,响铃完毕后,3000 通话即断线。
指定转接(Attended Transfer) - 操作过程
3000拨打3001,3001接通后,将3000通话转接至3002,分机3002 会响铃,接起后与3001 通话作转接的确认,若 3002 要接3000通话,3001 可直接挂断,若 3002 不接3000通话,3002 直接挂断,3000回到与 3001 通话。
这两个 feature 算是基本的操作,系统默认多半时候是开启,不过要是无法正常操作,可以检查下述配置文件:
features.conf,若是其他套件,请自行更换为其他的相关档。
blindxfer=##
atxfer=*2
配置文件定义了转接的特殊代码,例如 一般转接为 ##、指定转接为 *2。
电话操作转接方式为:
转接代码+转接的目的分机号,例如 ##3002,或 *2 3002,操作时要注意两位数转接代码的按钮时间间隔,太快或太慢都可能无法有效启用转接,不过,这个间隔可以透过参数调整来提高系统的辨识度。
以下是features.conf的配置参数:
;transferdigittimeout => 3 ; Number of seconds to wait between digits when transferring a call
; (default is 3 seconds)
;xfersound = beep ; to indicate an attended transfer is complete
;xferfailsound = beeperr ; to indicate a failed transfer
;featuredigittimeout = 1000 ; Max time (ms) between digits for
; feature activation (default is 1000 ms)
;atxfernoanswertimeout = 15 ; Timeout for answer on attended transfer default is 15 seconds.
;atxferdropcall = no ; If someone does an attended transfer, then hangs up before the transferred
; caller is connected, then by default, the system will try to call back the
; person that did the transfer. If this is set to "yes", the callback will
; not be attempted and the transfer will just fail.
;atxferloopdelay = 10 ; Number of seconds to sleep between retries (if atxferdropcall = no)
;atxfercallbackretries = 2 ; Number of times to attempt to send the call back to the transferer.
; By default, this is 2.
5.可管理的电话会议系统开发从入门到精通:http://www.ctiforum.com/factory/f09_07/www.openvox.cn/openvox10_0202.htm
6 .Asterisk目录及配置文件 【转】http://blog.csdn.net/huichengongzi/archive/2009/11/20/4840631.aspx
/etc/asterisk/ Asterisk主目录,包含其它关于Asterisk的配置文件; *zaptel.conf这个配置文件放在/etc,因为其它软件也可以使用Zaptel这个硬件及其驱动,所以不是放在/etc/asterisk里.
/usr/lib/asterisk/modules/ 这个目录包含所有可以加载Asterisk模块(应用程序/编辑器/格式和有用通道),在Asterisk启运时会加载这些模块(可以编辑modules.conf).
/var/lib/asterisk/ 比较重要的是astdb文件与agi-bin目录; astdb包含Asterisk当地数据库信息.
sounds/ 所有声音提示的文件在里面,包括Asterisk原代码中的sounds.txt文件
mohmp3/ 如果配置了音乐保持,应用程序会在这个目录下查找mp3(用CBR从文件中去除身份标签).
keys/ 使用公钥和私钥系统认证与一个由RSA数字签名形成的一对等连接.公钥和私钥的扩展名分别为.pub和.key
firmware/ 这个目录含了很多Asterisk相兼容的设备固件,它只有iax/这个子目录,其中有Digium的IAXy的二进制固件镜像.
images/ 只有在较多的支持并且利用图解式的图像设备被发布,这个目录将会与相应的目录有更大的关联.
/var/lib/asterisk/agi-bin agi-bin包含所有脚本,可以通过许多已经建立的AGI应用程序与Asterisk连接.
/var/spool/asterisk
outgoing/
gcall/
tmp/
voicemail/
================配置文件================
/etc/asterisk/asterisk.conf 主要配置文件,
/etc/zaptel.conf 硬件接口的基本层. 修改这个配置文件要用modprobe装载Linux Kernel使用模块.
/etc/asterisk/zapata.conf 为硬件配置Asterisk的接口.
/etc/asterisk/extensions.conf 拨号方案.
/etc/asterisk/sip.conf SIP协议配置文件
/etc/asterisk/iax.conf 呼入和呼出IAX通道
/etc/asterisk/extensions.conf 拨号方案配置文件
/etc/asterisk/moduprobe.conf 加载模块配置文件
7.Feature Code
Asterisk 內建了許多很好用的電話操作功能,這些統稱為 Feature Codes,以下將列出比較常用的功能操作碼。
《來電轉接》
啟動來電轉接 *72
關閉來電轉接 *73
語音關閉來電轉接 *74
啟動忙線轉接 *90
關閉忙線轉接 *91
語音關閉忙線轉接 *92
啟動未接來電轉接 *52
關閉未接來電轉接 *53
《系統服務》
Echo Test *43
查詢你的分機號碼 *65
語音報時 *60
《語音信箱》
聽取目前分機的語音信箱 *97
聽取其他分機的語音信箱 *98
給分機留言 *<分機號>
《其他》
電話喚醒(Wakeup/Morning Call) *62
通話轉接(Blind Transfer) ##<目的分機號>
通話指定轉接(Attended Transfer) *2
三方通話 用戶 A 與用戶 B 通話中,用戶 A 按 Flash/Hook 鍵保留 B 的通話,用戶 A 話筒出現 Tone 音,接著撥用戶 C 分機,用戶 A 再按 Flash/Hook 鍵,完成三方通話。
來電代接 **<分機號>
來電群組代接 *8
Powered by Zoundry Raven