Board logo

標題: CM Phone在Asterisk不能打出和打入,何解?(切底解决!!!) [打印本頁]

作者: 角色    時間: 2012-10-2 00:11     標題: CM Phone在Asterisk不能打出和打入,何解?(切底解决!!!)

本帖最後由 角色 於 2012-10-2 11:04 編輯

*****************************************************
打出打入不成功,主要是Asterisk与Huawei的Switch沟通上出了问题。

Huawei Softswitch要求SIP Client有silenceSupp, 但是Asterisk default是不支持silenceSupp,那么Huawei Softswitch一看到对方不support “silenceSupp”, 那么就跟Asterisk say "BYE“, 所以大家就遇到一接通后就断线问题。

Asterisk 的debug log
a=silenceSuppff - - - - (这句是有Asterisk 产生出来的)

解决方法就是在asterisk.conf加入下面的句子:

[options]
internal_timing = yes

CLI: core restart gracefully, 不能sip reload。
*****************************************************
注册问题已经解决好了,留下来的问题就是不能打出和打入问题。

在论坛里有三位CHings能在Asterisk注册,打出打入CM Phone,我估计可能你们的Asterisk本身不是default安装(就是加上很多的packages),而我的Asterisk including Asterisk-GUI都是standard的,有很多packages我都没有安装,所以大家的Asterisk servers是有分别,具体在哪里呢?

打出问题:503 Out of Service

打入问题:一接通,过早发出Bye
作者: 角色    時間: 2012-10-2 01:05

打入问题,简单来说,UAC给ACK,UAS就给BYE,详细看下面的log

<--- SIP read from UDP:202.0.179.3:5060 --->
ACK sip:8523501xxxx5@116.49.xx.xxx:5228;user=phone SIP/2.0
From: <sip:9633xxxx@202.0.179.3;user=phone>;tag=1e34b2a7
To: <sip:8523501xxxx@116.49.xx.xxx;user=phone>;tag=as07c48d45
CSeq: 1 ACK
Call-ID: e5786bab02d2d37eecedc2740d24a68d@sx3000
Via: SIP/2.0/UDP 202.0.179.3:5060;branch=z9hG4bK9bdc45f6b
Max-Forwards: 70
Content-Length: 0

<------------->
--- (8 headers 0 lines) ---

<--- SIP read from UDP:202.0.179.3:5060 --->
BYE sip:8523501xxxx@116.49.xx.xxx:5228;user=phone SIP/2.0
From: <sip:9633xxxx@202.0.179.3;user=phone>;tag=1e34b2a7
To: <sip:8523501xxxx5@116.49.xx.xxx;user=phone>;tag=as07c48d45
CSeq: 2 BYE
Call-ID: e5786bab02d2d37eecedc2740d24a68d@sx3000
Via: SIP/2.0/UDP 202.0.179.3:5060;branch=z9hG4bKca82118bb
Reason: Q.850;cause="100";text="unknown"
Max-Forwards: 70
Content-Length: 0

有关资料:
http://asteriskpbx.ru/display/Asterisk/HuaweiSoftX3000
作者: 角色    時間: 2012-10-2 01:29

本帖最後由 角色 於 2012-10-2 10:42 編輯

Solution:

就是在asterisk.conf
[options]
internal_timing = yes

原因可以看上面的link或者看下面:

0007.png

Other reference:
http://forum.voxilla.com/threads ... e-supp-enable.6572/
https://issues.asterisk.org/jira/browse/ASTERISK-6493

圖片附件: 0007.png (2012-10-2 01:29, 25.52 KB) / 下載次數 1269
http://telecom-cafe.com/forum/attachment.php?aid=1500&k=8e7b20eee92b95b6da67c7a8b4e5103f&t=1739744119&sid=AaYCq1


作者: ckleea    時間: 2012-10-2 10:11

You are right. It works in Asterisk 11 Beta as well
作者: 角色    時間: 2012-10-2 10:20

But it does not work for Asterisk 1.4.22。

加了那一句,然后出现
v=0
o=root 2559 2559 IN IP4 116.49.xx.xxx
s=session
c=IN IP4 116.49.xx.xxx
t=0 0
m=audio 10348 RTP/AVP 0 8 97
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:97 telephone-event/8000
a=fmtp:97 0-16
a=silenceSuppff - - - -
a=ptime:20
a=sendrecv
作者: 雯雯    時間: 2012-10-2 10:25

回復 5# 角色

咁即係IP0x用唔到?
作者: 角色    時間: 2012-10-2 10:33

本帖最後由 角色 於 2012-10-2 10:36 編輯

回復 6# 雯雯

因为我没有Asterisk 1.4.22的source code,所以不知道用settings把下面的句子删掉?

我要慢慢看在哪里可以hide了下面的string:
  1. a=silenceSupp:off - - - -
複製代碼

作者: 角色    時間: 2012-10-2 10:33

回復 6# 雯雯

你试过怎样?先是否能注册?
作者: bubblestar    時間: 2012-10-2 12:24

我剛看過角色兄在2009年QNAP forum 講如何在TS-119 安裝Asterisk 時,在步驟第12 的 make samples 一項,已很清楚地它顯示了 echo ";internal_timing = yes" ;


http://forum.qnap.com/viewtopic.php?p=230735
作者: 角色    時間: 2012-10-2 13:19

回復 9# bubblestar

这个选项之前根本不知道有这样的用途。
作者: bubblestar    時間: 2012-10-2 13:43

剛查過自己的ATOM PC Asterisk 是沒有 enable internal_timing = yes, 但仍可順利使用.
作者: 角色    時間: 2012-10-2 13:54

回復 11# bubblestar

估计可能你安装了很多packages,然后在系统set好,不需要这个setting。
作者: 角色    時間: 2012-10-2 16:44

回復 6# 雯雯

你是否试过你在IP-04上,是否能注册和拨打成功呢?
作者: 雯雯    時間: 2012-10-2 16:53

回復 13# 角色

你們的新方法我仲未在IP04上試, 因為睇你們好像不太順利. 不過如果我在IP04上用唔到我仲可以放落Synology NAS個Asterisk, 又或者繼續維持現狀放在OBi110.
作者: 角色    時間: 2012-10-2 16:57

回復 14# 雯雯

在IP-01用Switchfin,ck和bubblestar CHings试过是可以用,不知道你的IP-04是否已经upgrade了Switchfin呢?
作者: 雯雯    時間: 2012-10-2 17:02

回復 15# 角色

我部IP04依然用原廠firmware, upgrade到Switchfin太大工程了, 我部IP04不容有失!
作者: 角色    時間: 2012-10-2 17:06

雯雯小师妹,你是怎样用你那一台IP-04呢?
作者: 雯雯    時間: 2012-10-2 17:21

回復 17# 角色

我部IP04主要是3個FXO ports分別駁了PCCW PSTN、Skype ATA和HGC PSTN (+0088), Linksys SPA400又冇辦法完全代替IP04. 雖然我有2B+PCCW Mobile作為後備方案, 但是停得太長時間始終不太好! (亦幸好我有2B+PCCW Mobile作為後備方案, 早兩星期有1日香港老家停了1整日天, 我是發現network唔通打電話回去問家人才知道停電. 只是VPN我沒有做後備方案, 所以當時1整日我都冇VPN用. 不過當時如果我真的要用VPN的話可以問各位暫時借用一下, 又或者俾錢買個VPN日account.)
作者: 角色    時間: 2012-10-2 17:57

回復 18# 雯雯

如果不是雯雯小师妹描述你的IP-04的用途,真的要不容有失。

SPA4000听说你不能选哪一条Trunk打出,所以使用上有limitation。

不过你现在有很多种选择,Synology的Asterisk + Asterisk-GUI,你的QNAP也可以安装Asterisk + Asterisk-GUI。现在很多问题都已经决定好,主要看你往哪一个方向走,ComNet Phone,还是HKBN 2b呢?
作者: 雯雯    時間: 2012-10-2 18:23

回復 19# 角色

主要就是那3條trunk, 所以香港我不得不繼續用IP04, 香港部Synology NAS既Asterisk只能作為IP04既臨時後備方案 (之前試過有一、兩日因為香港network出現問題導致IP02不穩定, 差點就轉了用NAS的Asterisk+OBi110臨時頂替). 我也有想過將2B放落Asterisk, 但是2B有個功能係手機可以同時響, 如果放了落Asterisk這個功能便會失效, 所以我只將2B作為後備方案之一. 現在唯有寄望可以將CMPhone放落Asterisk, 這樣我香港部OBi110便可以放回GV.
作者: 角色    時間: 2012-10-2 18:37

我的2b,安装在QNAP TS-119,而我的手机一样可以同时响,没有像你那样的问题。其实IP-04真的不错,起码可以接外面4条Trunks,可以直接转到别的Asterisk又可以,看你怎样整合所有资源。
作者: 雯雯    時間: 2012-10-2 19:31

本帖最後由 雯雯 於 2012-10-2 22:58 編輯

回復 21# 角色

剛才做了個test, 知道點解我的不會同時響, 因為我的入了Voice Menu. 我的Voice Menu如下:
  1. include=default
  2. exten=s,1,NoOp(PCCW)
  3. exten=s,2,Answer()
  4. exten=s,3,GotoIfTime(08:30-22:59,*,*,*?5)
  5. exten=s,4,GotoIfTime(23:00-08:29,*,*,*?6)
  6. exten=s,5,Dial(IAX2/5003&SIP/5006&SIP/5007&SIP/**26XXXXXXX@obitrunk,,r)
  7. exten=s,6,Dial(IAX2/5003&SIP/5006&SIP/5007,,r)
  8. exten=s,7,Hangup()
複製代碼

作者: 角色    時間: 2012-10-2 20:25

其实,你不要answer那么快,那么就两边响!
作者: 雯雯    時間: 2012-10-2 20:39

本帖最後由 雯雯 於 2012-10-2 22:58 編輯

回復 23# 角色

剛剛又做了個test, 唔answer既話唔識響.
作者: 角色    時間: 2012-10-2 21:03

其实2b是这样,如果没有SIP Client answers,那么所有SIP Clients都一起响。如果你一answers,那么其他SIP Clients就停止响。
作者: 雯雯    時間: 2012-10-2 23:17

回復 25# 角色

如果我將Voice Menu改為如下就會唔識收線:
  1. include=default
  2. exten=s,1,NoOp(PCCW)
  3. exten=s,2,GotoIfTime(08:30-22:59,*,*,*?4)
  4. exten=s,3,GotoIfTime(23:00-08:29,*,*,*?5)
  5. exten=s,4,Dial(IAX2/5003&SIP/5006&SIP/5007&SIP/**26XXXXXXX@obitrunk,,r)
  6. exten=s,5,Dial(IAX2/5003&SIP/5006&SIP/5007,,r)
  7. exten=s,6,Hangup()
複製代碼

作者: 角色    時間: 2012-10-2 23:20

回復 26# 雯雯

应该lines 04,05合成一个Dial Command,应该会收线。
作者: 雯雯    時間: 2012-10-2 23:27

回復 27# 角色

試了合成都係唔識收線, 手機都會跟住一齊繼續響, 除非開頭落個answer落去.
作者: 角色    時間: 2012-10-3 13:46

回復 28# 雯雯

雯雯,你可以保持最初的settings,但是要Wait(3)多一点 (Wait 3 seconds),那么你手机会先响,如果你在一段时间内部接的话,那么Asterisk就会Answer the incoming call。
作者: 雯雯    時間: 2012-10-3 14:28

回復 29# 角色

我唔想手機先響. 今日試來試去將2B放落Asterisk始終都係註冊不到! 放落OBi110就冇事.
作者: bubblestar    時間: 2012-10-3 15:39

回復 28# 雯雯


   
用Answer() 其實沒有問題的,至於唔識收線,係因為你沒有指定響幾耐停止。例如:

exten=s,4,Dial(IAX2/5003&SIP/5006&SIP/5007&SIP/**26XXXXXXX@obitrunk,30,r)

exten=s,5,Dial(IAX2/5003&SIP/5006&SIP/5007,30,r)

紅色highlight 的是響鈴時間的控制參數,30 代表響 30秒,可自行輸入自己喜歡響鈴時間。因為你沒有設定時間,所以電話會一直響下去。
作者: 雯雯    時間: 2012-10-3 15:56

回復 31# bubblestar

試過指定了時間都唔得, 用了answer的話2B其他飛線號碼就唔會同時響. 不過想想如果用2B唔識收線都無所謂, 因為到最後如果都沒有接聽都係會落o左去手提個voicemail/秘書台, 但係其他PSTN就一定要set answer.
作者: bubblestar    時間: 2012-10-3 16:48

本帖最後由 bubblestar 於 2012-10-3 16:51 編輯

回復 32# 雯雯

你的情況是先分辨時間,才指派哪組電話響鈴,因為接電話前其實Asterisk 係先要做一些工作。

這個做法,好類似我之前用同一條線收FAX/電話時,是先要讓Asterisk辦認toning 訊號一樣,最初FAX永遠收不到的,因為每次我的電話接得太快,後來我調動過次序,再加了Wait(3-5)秒,就可以分辨出來電者是FAX抑或是一般電話,從而可以飛往不同地方處理。

基本上我沒有對你的extension code 作大改動,只是調動了次序,你試試是否可行,我以前都改了很多次coding不同次序,才找到一個最好的方案。
  1. include=default
  2. exten=s,1,NoOp(PCCW)
  3. exten=s,2,GotoIfTime(08:30-22:59,*,*,*?4)
  4. exten=s,3,GotoIfTime(23:00-08:29,*,*,*?7)
  5. exten=s,4,Answer()
  6. exten=s,5,Dial(IAX2/5003&SIP/5006&SIP/5007&SIP/**26XXXXXXX@obitrunk,30,r)
  7. exten=s,6,Hangup()
  8. exten=s,7,Answer()
  9. exten=s,8,Dial(IAX2/5003&SIP/5006&SIP/5007,30,r)
  10. exten=s,9,Hangup()
複製代碼
改完記得做一次 dialplan reload 才測試,否則可能無效。
作者: 雯雯    時間: 2012-10-3 20:44

回復 33# bubblestar

試了都係一樣. 不過目前最重要係將2B放落去Asterisk!
作者: 雯雯    時間: 2012-10-4 08:12

有冇人可以幫o下我2B在Asterisk無法註冊既問題?
作者: 角色    時間: 2012-10-4 08:56

回復 35# 雯雯

我们可爱的小师妹,如果你不介意,今晚我来帮帮你吧!
作者: 雯雯    時間: 2012-10-4 09:13

回復 36# 角色

剛剛在router set了port forward, 2B在Asterisk註冊到了, 但是不能打出和打入!
作者: scottlio    時間: 2012-10-4 09:23

cmphone 要router port forward 嗎?不知我的cmphone 是否沒有port forward 所以reg 唔到?
作者: scottlio    時間: 2012-10-4 09:28

我之前連大陸的sip phone 都reg 唔到,原因是nas dns server 問題現在大陸的sip phone 已reg 到香港的asterisk (BY PPTP VPN),但係香港的windows xp VPN 去香港屋企後都係reg 唔到
http://www.telecom-cafe.com/foru ... =4799&pid=25707
作者: 雯雯    時間: 2012-10-4 10:39

不過令我覺得最奇怪既係將2B放落OBi110和之前將NWT放落Asterisk都不用set port forward, 現在要set port forward反而令我覺得不安全!
作者: bubblestar    時間: 2012-10-4 10:55

這是以前記錄在ATCOM IP01 原廠GUI 所註冊HKBN 2b 帳號設定

2b_Reg.png



再用Putty進入IP01裡的Linux系統,用editor把下面的hostnames放入/etc/hosts裡

203.80.89.135   s2hkbntel.net s21.hkbntel.net

圖片附件: 2b_Reg.png (2012-10-4 10:55, 54.58 KB) / 下載次數 1127
http://telecom-cafe.com/forum/attachment.php?aid=1512&k=02961f142dcf6e807903e0d1238a88b4&t=1739744119&sid=AaYCq1


作者: 雯雯    時間: 2012-10-4 11:05

回復 41# bubblestar

現在是2B註冊到了, 但是不能打出和打入!
作者: bubblestar    時間: 2012-10-4 11:12

回復 42# 雯雯


     
跟其它sip trunk一樣,要同時設定outgoing dialing plan 及 incoming dialing plan,最後,要勾選Dial Plan 以便開放使用權給你的註冊USER 使用。 都做了嗎?
作者: 雯雯    時間: 2012-10-4 11:20

回復 43# bubblestar

都做了. 另外還有個問題就係SIP users能否set為只允許內網註冊使用? 試過轉了bindport的話2B又註冊唔到.
作者: bubblestar    時間: 2012-10-4 11:35

本帖最後由 bubblestar 於 2012-10-4 11:44 編輯

回復 44# 雯雯


   
第一個問題是可以的,也有幾種辦法。

可以在sip.conf (IP01/IP04 是在users.conf) 設定 permit/deny 以允許/限制網內外USER使用

permit=<ipaddress>/<network mask>
deny=<ipaddress>/<network mask>

Examples:
deny=192.168.40.38/255.255.255.255
Denies traffic from this IP address

permit=192.168.40.0/255.255.255.0
Allows traffic from this network

http://www.voip-info.org/wiki/view/Asterisk+sip+permit-deny-mask

另外,也可以建立一個新Dial Plan (IP01/IP04 只是剔剔剔),例如 6001 和 6002 的新dial Plan 叫做 inter-com,那麼edit user 6001/6002,選擇inter-com 便是了。
作者: bubblestar    時間: 2012-10-4 11:42

回復 44# 雯雯


   
第二個問題

可能我有誤會了。 再講過,如果條sip trunk 或 Asterisk Server係自己的設立的,你可以自由bind port; 如果條sip trunk 係由VoIP Provider 提供的,便不可以改port,2b 係用5060 的,唔可以改。
作者: 雯雯    時間: 2012-10-4 11:48

回復 46# bubblestar

我在2B的setting裏set了port=5060, 但係如果我改了Asterisk SIP bindport 2B也會註冊唔到. Anyway在extensions加permit已經解決了我這個問題, 現在就剩下2B不能打出和打入!
作者: bubblestar    時間: 2012-10-4 11:53

回復 46# bubblestar


   

哈哈! 老老實實,聽說雯雯有幾條2b 線,究竟現在到底在香港同一網絡下,是否已經有註冊了的2b而又能打出打入呢? 我咁樣問,是因為你背後的network devices 有多少,設定如何或多少2b 已註冊了,可能也影響到要怎樣設定去避duplication發生的。

只是希望了解一下,以便呢度的師兄替你給出好的意見。
作者: bubblestar    時間: 2012-10-4 12:08

回復 47# 雯雯


   
我不是用port forward 的, 我是在Router 用Open Ports,只設定了UDP 5070 及 UDP 12000-13000 及 IP01 的local IP 192.x.x.x;
原本想capture 圖片PM 給你看,但唔識在PM插入圖片。
作者: 雯雯    時間: 2012-10-4 12:15

回復 48# bubblestar

我只有1條2B, 但係我有兩條CMPhone, 我在set 2B的時候已經disable了OBi110的CMPhone.
作者: 雯雯    時間: 2012-10-4 12:16

回復 49# bubblestar

我也是用Open Ports, 但是我只是open了5060. 差D唔記得你同我一樣用Vigor 3200n!
作者: bubblestar    時間: 2012-10-4 12:29

我 Open Ports 的 UDP5070 是指 IP01 的 sip port,如果你改,你在IP04 sip setting 裡也要同時改。但Vigor 3200n 無需對 2b 做任何設定的,2b 在 IP0x 裡用番default 5060 即可。
作者: 雯雯    時間: 2012-10-4 12:38

回復 52# bubblestar

我的就係好奇怪! 不在3200n open port 5060給IP04 2B就會註冊唔到. 現在就是2B不能打出和打入的問題了!
作者: 角色    時間: 2012-10-4 13:37

回復 52# bubblestar

你买了Vigor 3200N?
作者: bubblestar    時間: 2012-10-4 13:37

大陸會唔會有條2b 經VPN virtaul 香港同一network 註冊?
作者: bubblestar    時間: 2012-10-4 13:39

回復 54# 角色


   
很久了,雯雯相讓。
作者: 角色    時間: 2012-10-4 13:40

回復 52# bubblestar

在我的QNAP TS-269 Pro的Asterisk-GUI,我用5228 port,也可以注册HKBN 2b,和成功打出打入PSTN电话。
作者: 角色    時間: 2012-10-4 13:41

回復 56# bubblestar

看来我都走宝了!
作者: 雯雯    時間: 2012-10-4 14:08

回復 55# bubblestar

唔會, 因為大陸經常停電和網速慢, 所以我沒有在大陸部Asterisk set任何VSP, 大陸部Asterisk作用只係將SIP轉為IAX. 所有後備方案我都只是set了在手提電話上, 需要時才開個App來用.
作者: 雯雯    時間: 2012-10-4 16:03

本帖最後由 雯雯 於 2012-10-4 16:05 編輯
回復  雯雯


   
第一個問題是可以的,也有幾種辦法。

可以在sip.conf (IP01/IP04 是在users.conf) 設 ...
bubblestar 發表於 2012-10-4 11:35


想問IAX extensions是否也可以加permit? 因為如果到最後都係解決唔到2B在IP04不能打出和打入的話, 我就會將2B放落NAS的Asterisk, 然後直插1條寬頻落NAS直出, 改為由NAS的Asterisk做主力.
作者: bubblestar    時間: 2012-10-4 17:18

回復 60# 雯雯


    可以!
作者: ckleea    時間: 2012-10-4 17:55

sometimes if you are running dual wan, you need to enable both inbound and outbound rules so that the same IP is used for the connection. If not, you may encounter, outbound for VOIP registration is from IP1 but on return from the VOIP server, it enters via IP2.

This is the trick I use before to deal with 2B registration
作者: 角色    時間: 2012-10-4 19:40

回復 37# 雯雯

你的问题是否已经解决好呢?
作者: 雯雯    時間: 2012-10-4 21:10

回復 63# 角色

未解決! 最後方案都唔得, 因為NAS不能直插寬頻.
作者: 角色    時間: 2012-10-4 21:36

回復 64# 雯雯

明白!
作者: 雯雯    時間: 2012-10-4 21:59

回復 65# 角色

將2B setting放落去NAS的Asterisk, 結果跟IP04一樣!
作者: 角色    時間: 2012-10-4 22:01

那么是怎样呢?
作者: 雯雯    時間: 2012-10-4 22:13

回復 67# 角色

部NAS是由相同IP range的另1部Vigor 3200n派的IP, 結果都係跟IP04一樣要set port forward才註冊到, 打不出亦打不入!
作者: 角色    時間: 2012-10-4 22:28

打不出是RTP的entire,你Asterisk里面的rtp.conf是否有适当的对应。
作者: ckleea    時間: 2012-10-4 22:29

需要對對清楚 in and out IP 同 Port
作者: 角色    時間: 2012-10-4 22:47

回復 70# ckleea

看看我们的小师妹,你多幸福!有那么多的哥们来帮你!
作者: 雯雯    時間: 2012-10-4 22:54

回復 69# 角色

有對應RTP, 是10000-20000.
作者: 雯雯    時間: 2012-10-4 22:55

回復 70# ckleea

有對清楚 in and out IP 同 Port.
作者: 雯雯    時間: 2012-10-4 22:55

回復 71# 角色

嘻嘻! Thanks all!
作者: bubblestar    時間: 2012-10-4 23:06

回復 68# 雯雯


   
不知有沒有關係,我的Server全部不用Router DHCP 派IP,而是用Static IP 及 bind MAC,所以來回都不怕攪亂。
作者: 雯雯    時間: 2012-10-4 23:33

回復 75# bubblestar

我是用DHCP + bind MAC, 因為怕自己隨時唔覺意改了IP range就麻煩了!
作者: 角色    時間: 2012-10-5 06:55

回復 75# bubblestar

我的NAS全用static IP,所以从来不会搞错。
作者: 雯雯    時間: 2012-10-9 23:04

回復 1# 角色

原來台灣遠傳速博070跟CMPhone一樣:
http://www.osslab.com.tw/index.p ... _%E8%A8%AD%E5%AE%9A
作者: 角色    時間: 2012-10-9 23:21

回復 78# 雯雯

根据你说的信息没有错,它也Huawei Softswitch的产品。
作者: 角色    時間: 2013-3-18 21:42

Push一下,因为有member需要用到。




歡迎光臨 電訊茶室 (http://telecom-cafe.com/forum/) Powered by Discuz! 7.2