安装完asterisk 配置sip.conf文件
[8001]
type=friend
username=8001
accountcode=8001
secret=8001
context=from-exten-sip
;followed advance settings
host=dynamic
nat=yes
qualify=2000
canreinvite=no
callgroup=0,
pickupgroup=0,
setvar=
call-limit=1
说明:(1)type:sip的类型。格式:type =user|peer|friend 。
peer用于认证呼出呼叫,如果想要一个用户(extension)中有多个电话,定义可以呼叫两个SIP peer 的extension。user用于认证呼入呼叫,用户通过上下文鉴定到达服务器。friend用于认证呼入呼出,相当于(peer+user)。
(2)username :格式:username =<username[@realm]>。如果Asterisk接受来自远程SIP的SIP INVITE请求的客户端,这字段指定验证的用户名。
(3)accountcode:格式:accountcode =<string>。此字段,是用来填充“accountcode“领域的CDR(呼叫详细记录)。
(4)secret:用于认证的密码。如果Asterisk是作为一个SIP代理服务器,那么这个SIP客户端必须使用此密码登录(一个共享密码)。如果Asterisk是一个SIP客户端作为一个远程SIP的SIP INVITE的服务器要求身份验证,那么这个字段是用来验证该Asterisk的SIP协议提请发送到远程SIP服务器。
(5)context:格式:context = <context_name>定义了指令的地点,用于控制电话的权限,以及如何处理此号码的呼入呼叫。如果类型为用户,上下文定义呼入呼叫使用。如果类型为节点,上下文定义呼出呼叫使用。如果类型为friend通过SIP实体定义呼入和呼出所使用的上下文。
(6)host:格式:host =dynamic|hostname|IPAddr。host参数指定了用户的主机名或SIP端点IP地址。配置host=dynamic将要求号码注册,可以让Asterisk知道如何找到电话。
(7)nat:格式:nat =yes|no。这个变量改变了Asterisk的防火墙后面客户端的行为。配置nat=yes,强迫Asterisk忽略号码的联系信息,使用收到的包的地址信息。
(8)qualify:格式:qualify =yes|no|milliseconds。检查客户端是否可到达,我们可以监视Asterisk服务器和电话之间的延时,使用qualify=yes,确认远端设备是否可达。qualify=yes可以用于监视任何远端设备,包括其它的Asterisk服务器。默认情况是Asterisk认为时延在2,000 ms (2 seconds)以内的设备可达。你可以配置Asterisk判断对端是否可达的时间,通过将yes替换为毫秒。
(9)canreinvite:格式:canreinvite =update|yes|no|nonat。在SIP协议,邀请用于发起呼叫,重定向媒体。在初始邀请后相同对话中发起的任何邀请都被视作重邀请(reinvite)。配置canreinvite=no让Asterisk媒体通道经过自己,而不允许RTP信息直接在端点之间传送。Asterisk在以下的任何情况下都不会发起重邀请:如果客户端的任何一方配置为canreinvite=no;如果客户端不能协商编码,Asterisk需要执行语音编码转换;如果客户端的任何一方配置为nat=yes;如果Asterisk在呼叫中需要监听双音多频(DTMF)音(用于呼叫前转或者其他功能)。配置canreinvite=yes“允许RTP媒体直接” 。canreinvite = nonat“允许reinvite当本地,否认reinvite当NAT” 。配置canreinvite=update“使用UPDATE,而不是邀请” 。配置canreinvite = nonat“更新时使用的地方,否认当NAT” 。
(10)callgroup:格式:callgroup =num1,num2-num3。定义了此分机的电话组。
(11)pickupgroup:同组可以接电话,按*8应用。
(12)setvar:格式:setvar = variable=value。通道变量被设置为从该节点/用户的所有通话
(13)call-limit :格式call-limit = number 。同时呼叫的数量
2. 此外除了自动生成的配置还有其他的配置
(1)allow:格式:allow =<codec>。按优先级的顺序允许编解码器。
(2)disallow :格式:disallow =all。不允许这个peer或用户定义的所有编解码器。
(3)allowguest :格式:allowguest = yes|no 。拒绝或允许来电。
(4)amaflags:分类的CDR记录。选择是默认情况下,省略,计费,文件。
(5)astdb:向Asterisk 的数据库里插入值。
(6)auth :格式:auth =<authname>。
(7)callerid :格式:callerid = <string>。当没有可用信息时使用call ID信息
(8)busylevel:格式:busylevel= number。同时通话的数量,直到用户/同行正忙
(9)callingpres:格式:callingpres =number|descriptive_text。设置电话的来电显示,有效描述的值是allowed_not_screened, allowed_passed_screen, allowed_failed_screen,allowed,prohib_not_screened,prohib_passed_screen, prohib_failed_screen, prohib, and unavailable.
(10)?cid_number :格式:cid_number = <string>。设置对外显示的字符串
(11)defaultip:格式defaultip =Dotted.Quad.IP.Addr。默认的IP地址,如果客户端指定host=dynamic。如果客户端没有使用任何其他的IP地址注册使用此项。只适用于type=peer
(12)directrtpsetup:格式directrtpsetup =yes|no。类似canreinvite,可以马上把媒体传递给像SIP代理器的另一方。
(13)dtmfmode:格式:dtmfmode =inband|info|rfc2833。客户如何对DTMF信令处理。默认rfc2833。配置dtmfmode = rfc2833,允许在呼叫中监听双音多频(DTMF)音(用于呼叫前转或者其他功能)
(14)fromuser :格式:fromuser =<from_ID>。指定用户输入“from”来代替$CALLERID(number)。
(15)???fromdomain:格式:fromdomain = <domain>。
(16)fullcontac:格式:fullcontact = <sip:uri_contact>。 SIP URI的联系,实时同行。只适用于实时同行
(17)fullname :格式:fullname = "FullName"。设置对外来电显示(姓名)。
(18)incominglimitand outgoinglimit:格式:incominglimitand outgoinglimit = Number。限制同时呼叫SIP客户端的数量,仅仅适用于type=peer。
(19)insecure: very|yes|no|invite|port 。指定如何处理与peers的连接。
(20)language:这对于一个在Asterisk SIP帐户配置选项指定语言设置为这个客户端使用。通过使用此设置,您可能会得到本地化的声音在为不同的用户不同的语言提示。
(21)mailbox:格式 mailbox =mailbox。语音信箱。
(22)musicclass:在musiconhold.conf指定的类
(23)musiconhold:保持音乐。
(24)subscribemwi:指示Asterisk 在等待信息的时候不要发送NOITFY信息。确定Asterisk如何通知SIP客户端关于语音信箱的信息
(25) permit, deny , mask格式:permit=<ipaddress>/<network mask> deny=<ipaddress>/<network mask>
IP地址和网络限制。允许或限制到达某些特定的网络。
(26)port:SIP端口的客户端
(27)progressinband:格式:progressinband =never|no|yes。
(28)promiscredir :格式:promiscredir = yes|no。是否允许支持302重定向。
(29)regseconds :格式:regseconds = seconds。SIP注册的秒数。
(30)sendrpid:格式:sendrpid =yes|no。确定是否发送Remote-Party-IDSIP header
(31)subscribecontext:格式:subscribecontext =<context_name>。为SIP SUBSCRIBE设置特殊的context
(32) trunkname:为中继定义一个名字
(33)trustrpid:格式:trustrpid =yes|no。设置Remote-Party-IDSIP header是否被信任。
(34)vmexten :格式vmexten = <string>拨号规则扩展到邮箱