答案 0 :(得分:1)
Thoughtprov几乎拥有它。 话虽如此,我强烈建议您现在花点时间在线阅读“The Asterisk Book”。
http://the-asterisk-book.com/1.6/
......关于SIP中继和与PSTN通话的章节在: http://the-asterisk-book.com/1.6/minimale-telefonanlage.html#min-anlage-festnetz
使用Asterisk这是一个非常基本但功能强大的PBX的很好的演练。
答案 1 :(得分:0)
你应该设置trunk,这样你就可以定义匹配该提供者的parameters(即编解码器,dtmf),并指定一个上下文。如果没有显式上下文,呼叫将转发到默认上下文。要解决多个地址,您可以使用config templates将配置保持在最低限度。使用所有必需的中继参数定义中继模板,然后继承每个IP的中继设置。
sip.conf中多个地址的示例trunk
[provider1](!) type=peer` dtmfmode=rfc2833 insecure=invite,port context=inbound disallow=all allow=ulaw qualify=no [provider1A](provider1) host=1.1.1.1 [provider1B](provider1) host=1.1.1.2 [provider1C](provider1) host=1.1.1.3
最后,您需要确定正在使用的DNIS。当呼叫到达时,它将使中继与正确的IP地址匹配,然后使用模板中定义的上下文将其转发到拨号方案。该上下文需要具有与DNIS匹配的拨号模式,以便您可以确定如何路由呼叫。如果您不知道DNIS,可以通过在控制台上应用详细输出或读取日志文件来确定它。如果您没有捕获所有模式匹配,您将看到关于“已拒绝,因为在上下文中找不到扩展名”的输出。无论扩展名是什么,都是您需要匹配的模式。