Summary: | ASTERISK-01625: None ring back - h323. | ||
Reporter: | smmerf (smmerf) | Labels: | |
Date Opened: | 2004-05-14 19:06:52 | Date Closed: | 2008-01-15 14:54:53.000-0600 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Core/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | When we make call from client h323 -> GW h323 like cisco 26xx via h323 -> Asterisk -> SIP UA, then client h323 dont receive ring back, even in extension.conf is by Dial(...|r). Why, becouse asterisk when we calling then asterisk send only information on 5060 - "180 Ringing" - and next h323 dont know that is H.225 Call Proceeding. Asterisk must sending "183 Session Progress" then h323 will know about H. 225 Call Proceeding. When we doing call like this: client h323 -> GW h323 like cisco -> first asterisk -> second asterisk -> SIP UA then all is fine, and ring back is ok by client h323. Problem is only when we doing call from H323 to SIP ! From Client SIP -> asterisk -> H323 GW -> Client h323 ALL IS OK. ****** ADDITIONAL INFORMATION ****** h323.conf [general] port=1720 bindaddr=bind_ip tos=lowdelay [myownclient] type=user host=my_ip context=myclient sip.conf [general] port=5060 bindaddr=bind_ip tos=lowdelay [xtenlite] type=friend context=xten nat=yes host=dynamic canreinvite=no qualify=no extension.conf exten=>123,1,SetCallerID,321 exten=>123,2,Dial(SIP/123@other_ip|60|r) or exten=>123,1,Answer exten=>123,2,Riging exten=>123,3,Dial(SIP/123@other_ip|60|r) | ||
Comments: | By: smmerf (smmerf) 2004-05-14 19:18:55 driver: chan_h323 ver: Asterisk CVS-HEAD-05/15/04-00:28:21 By: jerjer (jerjer) 2004-05-15 01:02:20 To be clear...are you talking about an inbound H.323 call from an endpoint? Then Asterisk makes an outbound SIP call? By: smmerf (smmerf) 2004-05-15 04:00:49 yes. inbound h323 outbound by sip. you are right. edited on: 05-15-04 09:46 By: jerjer (jerjer) 2004-05-16 03:13:10 cvs update...tell me if this fixed the problem By: smmerf (smmerf) 2004-05-16 06:44:04 I`ll try fix tomorrow. I give You answer about it. For now - many thanks JJ. By: smmerf (smmerf) 2004-05-17 09:36:25 #make update and install: Errors compile chan_h323.c --- chan_h323.c: In function `oh323_indicate': chan_h323.c:600: error: syntax error before '<<' token chan_h323.c:607: error: syntax error before '==' token chan_h323.c:596: warning: unused variable `p' chan_h323.c: At top level: chan_h323.c:617: error: syntax error before '(' token chan_h323.c:625: error: syntax error before '(' token make[1]: *** [chan_h323.o] Error 1 make[1]: Leaving directory `/usr/src/asterisk/channels' make: *** [subdirs] Error 1 --- By: smmerf (smmerf) 2004-05-17 10:03:30 I do update again. Now is good. Still none ring back into client h323: 1)port 1720 - h323 GW to asterisk TCP 11505 > 1720 [SYN] ... TCP 1720 > 11505 [SYN, ACK] ... TCP 11505 > 1720 [ACK] ... Q.931 SETUP[Short Frame] TCP 1720 > 11505 [ACK] ... TCP 11505 > 1720 [ACK] ... TCP 1720 > 11505 [ACK] ... H.225.0 CS: callProceeding H.225.0 CS: alerting OpenLogicalChannel TCP 11505 > 1720 [ACK] ... H.245 CS: empty TerminalCapabilitySet ... ... 2)port 5060 - asterisk to end point sip. Request: INVITE sip: .... Status: 100 Trying Status: 180 Ringing ... ... Request: CANCEL Status: 487 Request Terminated By: smmerf (smmerf) 2004-05-18 09:28:36 Hallo JJ, Problem is the same with protocol SIP. When: client h323 doing call to -> h323/SIP GW (Cisco) -> asterisk by SIP [ inbound, outbound SIP] -> SIP UA the same is none ring. Why ? becouse when SIP UA receive invite, he answer "180 Ringing" to Asterisk, then Asterisk dont translate this to "183 Session Progress" !, only repeat event "180 Ringing" to Cisco Gateway. By: Paul Cadach (pcadach) 2004-05-19 12:35:05 H.323's "CALL PROCEEDING" message is equal to SIP's "180 Ringing", while H.323's "PROGRESS" looks like "183 Session Progress" for SIP. ISDN network designed to not open voice path until remote party is answered the call, so all call progress tones must be generated locally by calling endpoint. Also, H.323/ISDN have "Progress" information element to indicate that remote (or intermediate) party wants to bring up reverse voice path to bypass some informational voice messages (phrases like "Called number is not exists"). So, I think this is not a bug, but regular ISDN-compliant interworking. By: smmerf (smmerf) 2004-05-19 20:49:44 Dear PCadach, You have absolutely right ! :) Its normaly conversation between two points. But not now. Look this: 1) Plan A:Outgoing we doing call from SIP UA -> (SIP asterisk h323) -> Cisco H323 -> PSTN see h225 what doing: - Q.931 SETUP[Short Frame] - H.225.0 CS: callProceeding OpenLogicalChannel (waiting for respond from PSTN) - H.225.0 CS: progress - H.225.0 CS: alerting in this moment chan translate this information to SIP, and sending information to SIP UA 183 Session Progress and then we hearing ring back. Right. 2) Plan B:Incoming PSTN -> Cisco H323 -> (H323 Asterisk SIP) -> SIP UA see h225 what doing: Q.931 SETUP[Short Frame] H.225.0 CS: callProceeding H.225.0 CS: alerting OpenLogicalChannel (thats all) in the same time chan translate this to SIP 180 Ringing, but asterisk dont know what doing next. Asterisk dont send any information to Cisco, and cisco dont doing progress and dont resending this to PSTN. I hope I hope Am i right. We must doing somethink like that, send to remote GW information from asterisk: H.225.0 CS: progress (by SIP 183 Session Progress) Solution with Cisco progress_indication setup 1 or 3 is ok, but only between h323 > asterisk > H323 ... or somethink like that. If im wrong, please correct me. By: Paul Cadach (pcadach) 2004-05-19 22:49:29 For incoming call alerting message should be generated by remote end-point, in your case - SIP UA. If SIP UA answerts to INVITE with "180 Ringing" then it WILL NOT provide any information in-band. So, noone will pass any PROGRESS message (or ALERTING with PI=8) to PSTN. But if you received SETUP packet from PSTN with PI=3 (i.e. call not end-to-end ISDN) Asterisk MUST provide ringback tones independedly on how remote endpoint it does (i.e. if remote endpoint allows to generate progress tones in-band, than one must be used, otherwise PSTN part must listen tones generated by Asterisk internally). As I know generating and analyzing of progress indicator field is not supported by now at chan_h323. By: jerjer (jerjer) 2004-05-19 23:05:52 > As I know generating and > analyzing of progress indicator field is not supported by now at chan_h323. What needs to be done to support this? Can you supply a diff -u? By: smmerf (smmerf) 2004-05-19 23:09:30 Dear PCadach, Many thanks for more information, about this. As you know my SIP-UA only respond "180". So the best solution to resolve all problems will be set PI=3 in Cisco and doing add source in to chanh323 :) thx again. :) By: Mark Spencer (markster) 2004-05-20 02:39:11 So is this resolved now? By: jerjer (jerjer) 2004-05-20 02:41:14 it will when cvs lets me commit By: jerjer (jerjer) 2004-05-20 02:58:54 fixed in cvs. By: sdolloff (sdolloff) 2004-06-08 12:01:21 Reminder sent to JerJer Since you cannot use progress_ind on Cisco gateways running SIP this issue is not resolved. Since upgrading to the latest CVS, ISDN callers do not hear ringback. I am using an AS5350 communicating via SIP to asterisk. I have tried using both the tone ringback alert-no-PI in the pots dial-peer and voice call send-alert to no avail. By: Digium Subversion (svnbot) 2008-01-15 14:54:53.000-0600 Repository: asterisk Revision: 2976 U trunk/channels/chan_h323.c ------------------------------------------------------------------------ r2976 | jeremy | 2008-01-15 14:54:53 -0600 (Tue, 15 Jan 2008) | 2 lines try to enable ringback on H.323->SIP calls (bug ASTERISK-1625) and clean up code a lil bit ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=2976 |