一、我的设置
昨天有人说用Gizmo5打不通,今天sipsorcery.com一直进不去。这两个都是自装网络电话最常使用的免费服务。我在上上个周末装上网络电话,到星期三就遇到Gizmo5只能打出、不能打进的问题,就立即意识到免费服务的可靠性是个大问题。其实解决这个问题的方法并不复杂,就是简单地增加一条并行的线路。我现在是采用这样的设置(SPA1001):
外来电话接入:
GV-->IPkall-->ATA line1 (用DDNS fwd)
↓
G5-->ATA line2
这里从GV的号码打入,信号分两路到我的电话上,而每条线路只经过一个中间环节,所以是最简短的线路。这样两路中只要有一路是通的,电话就能打进来。只有在两路都不通的时候,电话才打不进来。两路都不通的几率比只用一路的小多了。例如,假设在一分钟内每条线路不通的几率都是百分之一(0.01),那么两条线路都不通的几率就是0.01*0.01=0.0001,也就是说是万分之一。
有人可能会问,这样两条线都会响铃,会不会有问题呢?我试过,这没有问题。实际上ATA既然有两条线,那么它的设计就自然能够处理两条线同时来电话的问题。我这样设置,IPkall这一路总是先到,而G5这一路总是后到,这可以从铃声判断(每条线的铃声不一样),也可从G5的通话记录查看(那里总是no answer)。当你拿起电话的时候,你接的就是先到的那一路,而google voice就会把另一路断掉。如果你接得快,有时会听到象call waiting那样的声音,这是因为google voice还没有把另一条线断掉。
电话打出:
ATA line1-->nonoh (主线)
ATA line2-->G5 (备用线)
这样设置之后,打进来有两条互相独立的线路,打出去也是两条互相独立的线路,就会非常可靠。
二、PAP2T怎么设置
假设line1 上还是接的nonoh,外来电话接入可以这样:
GV-->IPkall-->ATA line1 (用DDNS fwd)
↓
G5-->nonoh-->ATA line1 【注:后来测试这一路实际不通,换成GV-->IPkall-->ATA line1 能通,但有时音质不好 12/22/2009】
由于PAP2T一个电话只能控制一条线,所以这里两条打入的线都送到line1上。这里的第二条打入的线路经过了nonoh,这样就多了一个中间环节,为什么不也用DDNS fwd绕开nonoh直接进入ATA?因为我们不想两条打入的线都依赖于DDNS,否则DDNS一出问题,两条线都不通了。同样地,因为ATA有call waiting的功能,所以你不用担心两路电话同时进来的问题。
设置的关键是要保持打入的线路一直畅通,因为你不知道别人什么时候给你打电话;打出的线路有一条也就可以,因为你自己知道什么时候打电话,万一不通你可以用别的方法,比如打手机或者从计算机上拨号。
三、讨论
1.提高可靠性的关键是增加一条独立的并行线路。对于每一条线路来说,中间经过的环节越少越好。在这个前提下,每个人可以根据自己所使用的ATA的特点和voip providers的情况进行不同的设置。
2.这样是否滥用免费资源?
我看到ipkall的论坛上有人说ipkall之所以能提供免费的电话号码,是因为他们从经过他们线路的电话中可以得到一丁点报酬。所以他们希望你多打他们的电话号码。反之如果你用得很少,如果一个月不用,他们就收回电话号码。依照同样的道理,用gizmo5打入他们也不会亏。不过因为从google接入的电话太多了,gizmo5不时堵塞,所以只是用它作备用就比较合适。当然如果gizmo5的线上总是no answer,他们得不到任何收益,就有滥用的嫌疑,其实为了补偿这点,在其账号里放入一定的钱,真正用gizmo5作打出的备用就好了。
3.为什么不用sipsorcery?
一方面由于用DDNS fwd就能很方便地进行电话的多路接入,另一方面现在的ATA本身功能就很强,所以一般情况下打入的线路用不着sipsorcery。很多人用sipsorcery主要是用google voice 免费打美国。不过nonoh本身提供四个月免费打中国和美国,四个月之后剩下的10欧元打两、三个月应该没问题,这样一年最多花三十美元,已经很便宜了,如果只是为了方便打电话,就不用麻烦到sipsorcery上去折腾,有人有时间和兴趣去玩那又是另一回事。当然多一道环节就多一点出问题的几率这是另一方面的原因。
有的稍复杂一点的设置,比如象fitwxc讲的国内亲友免费打美国的方法,还是需要用sipsorcery。但是如果用DDNS fwd的方法,也就不需要把sipsorcery注册到你的ATA上。