Douglas Garstang
2005-Dec-15 10:38 UTC
[Asterisk-Users] Shutting down Asterisk when not in RTP Stream
I'm very confused about something. I have two phones that have reinvited and have an RTP session open. I confirmed this by running ngrep on the Asterisk box. Asterisk still shows the calls on the console. *CLI> sip show channels Peer User/ANR Call ID Seq (Tx/Rx) Form Hold Last Message 192.168.10.125 a00090201 45dfabad1bd 00103/00000 ulaw No Tx: ACK 192.168.10.4 a00090101 ca3279d8-3e 00102/00001 ulaw No Tx: ACK When I shut asterisk down, the call terminates. I don't understand that. If Asterisk isn't in the RTP path, how can shutting it down terminate an active call? Don't know if it's relevant, but the 192.168.10.4 is an OpenSER box. Thanks. Doug.
Douglas Garstang
2005-Dec-15 10:46 UTC
[Asterisk-Users] Shutting down Asterisk when not in RTP Stream
Grrrr! Asterisk sends a BYE to the phone when it gets shut down. What a pain. Eventhough it isn't in the RTP path, it must keep track of it's current call state, and when you shut it down, terminate all those calls. Reason I am trying this is that I've had asterisk core dump on me a few times, and I'd like to be able to restart it without losing calls in progress. Doug. -----Original Message----- From: Douglas Garstang Sent: Thursday, December 15, 2005 10:38 AM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: [Asterisk-Users] Shutting down Asterisk when not in RTP Stream I'm very confused about something. I have two phones that have reinvited and have an RTP session open. I confirmed this by running ngrep on the Asterisk box. Asterisk still shows the calls on the console. *CLI> sip show channels Peer User/ANR Call ID Seq (Tx/Rx) Form Hold Last Message 192.168.10.125 a00090201 45dfabad1bd 00103/00000 ulaw No Tx: ACK 192.168.10.4 a00090101 ca3279d8-3e 00102/00001 ulaw No Tx: ACK When I shut asterisk down, the call terminates. I don't understand that. If Asterisk isn't in the RTP path, how can shutting it down terminate an active call? Don't know if it's relevant, but the 192.168.10.4 is an OpenSER box. Thanks. Doug. _______________________________________________ --Bandwidth and Colocation provided by Easynews.com -- Asterisk-Users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Diyanat Ali
2005-Dec-15 11:13 UTC
[Asterisk-Users] Shutting down Asterisk when not in RTP Stream
Do you have 't' or 'T' in the Dial Application? Diyanat>From: "Douglas Garstang" <dgarstang@oneeighty.com> >Reply-To: Asterisk Users Mailing List - Non-Commercial >Discussion<asterisk-users@lists.digium.com> >To: "Asterisk Users Mailing List - Non-Commercial >Discussion"<asterisk-users@lists.digium.com> >Subject: [Asterisk-Users] Shutting down Asterisk when not in RTP Stream >Date: Thu, 15 Dec 2005 10:38:22 -0700 >MIME-Version: 1.0 > >I'm very confused about something. > >I have two phones that have reinvited and have an RTP session open. I >confirmed this by running ngrep on the Asterisk box. Asterisk still shows >the calls on the console. > >*CLI> sip show channels >Peer User/ANR Call ID Seq (Tx/Rx) Form Hold Last >Message >192.168.10.125 a00090201 45dfabad1bd 00103/00000 ulaw No Tx: >ACK >192.168.10.4 a00090101 ca3279d8-3e 00102/00001 ulaw No Tx: >ACK > >When I shut asterisk down, the call terminates. I don't understand that. If >Asterisk isn't in the RTP path, how can shutting it down terminate an >active call? > >Don't know if it's relevant, but the 192.168.10.4 is an OpenSER box. > >Thanks. >Doug. >_______________________________________________ >--Bandwidth and Colocation provided by Easynews.com -- > >Asterisk-Users mailing list >To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users
Douglas Garstang
2005-Dec-15 12:02 UTC
[Asterisk-Users] Shutting down Asterisk when not in RTP Stream
Nope. If I did, then the phones wouldn't reinvite. -----Original Message----- From: Diyanat Ali [mailto:diyanat@hotmail.com] Sent: Thursday, December 15, 2005 11:14 AM To: asterisk-users@lists.digium.com Subject: RE: [Asterisk-Users] Shutting down Asterisk when not in RTP Stream Do you have 't' or 'T' in the Dial Application? Diyanat>From: "Douglas Garstang" <dgarstang@oneeighty.com> >Reply-To: Asterisk Users Mailing List - Non-Commercial >Discussion<asterisk-users@lists.digium.com> >To: "Asterisk Users Mailing List - Non-Commercial >Discussion"<asterisk-users@lists.digium.com> >Subject: [Asterisk-Users] Shutting down Asterisk when not in RTP Stream >Date: Thu, 15 Dec 2005 10:38:22 -0700 >MIME-Version: 1.0 > >I'm very confused about something. > >I have two phones that have reinvited and have an RTP session open. I >confirmed this by running ngrep on the Asterisk box. Asterisk still shows >the calls on the console. > >*CLI> sip show channels >Peer User/ANR Call ID Seq (Tx/Rx) Form Hold Last >Message >192.168.10.125 a00090201 45dfabad1bd 00103/00000 ulaw No Tx: >ACK >192.168.10.4 a00090101 ca3279d8-3e 00102/00001 ulaw No Tx: >ACK > >When I shut asterisk down, the call terminates. I don't understand that. If >Asterisk isn't in the RTP path, how can shutting it down terminate an >active call? > >Don't know if it's relevant, but the 192.168.10.4 is an OpenSER box. > >Thanks. >Doug. >_______________________________________________ >--Bandwidth and Colocation provided by Easynews.com -- > >Asterisk-Users mailing list >To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users_______________________________________________ --Bandwidth and Colocation provided by Easynews.com -- Asterisk-Users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Douglas Garstang
2005-Dec-18 09:37 UTC
[Asterisk-Users] Shutting down Asterisk when not in RTP Stream
Hi Tyler. We're registering users with OpenSER, which also routes the calls to a series of Asterisk systems. The really tricky part is allowing different phones entering through different Asterisk systems to reach other. Currently, the solution is to, upon registration from phones, issue a forward() command in OpenSER to forward the registration to every Asterisk system. In this way, every Asterisk box knows about every phone and it doesn't matter which Asterisk system takes the call. It's not a perfect solution though. When OpenSER sends the forward() request to Asterisk, it also sends back the 'Trying' and 'Ok' messages to the phones (We're using Polycom's). The phones don't seem to have a problem with these extraneous messages.... so far. A better solution would have been to use t_replicate() in OpenSER, which absorbs these messages, but you can only call t_replicate once. We may still end up sending all calls BACK through OpenSER again to terminate the call, as it knows the location of all the phones as well. This is easy from a simple dial plan perspective, but I'm not sure yet how some of the more advanced Asterisk features such as hints and ACD Queues will work when specifying @proxy for their location. I'd prefer to leave OpenSER out of the equation though. Just trying to get it to do failure_route() etc to Asterisk is a huge pain considering the docs on it are soooo bad. Oh yeah.... check out the use of failure_route with t_relay() when sending calls to Asterisk in a redundant fashion. It seems to be working well so far. Failover is very fast. I also saw a post on the OpenSER list last night saying that the dispatcher (which we had looked at before) now supports failure_route too. We liked it initially because it can load balance on call-id and give you a roughly even call distribution. Don't try using realtime either.... it's hard to believe but you can't use it for sharing a common contact database between Asterisk systems. Digium have admitted to this. Doug. -----Original Message----- From: Tyler [mailto:tyler@unixgod.net] Sent: Fri 12/16/2005 2:13 PM To: Douglas Garstang Cc: Subject: [Asterisk-Users] Shutting down Asterisk when not in RTP Stream Doug, I've been reading a lot of your posts on the Asterisk list and the OpenSER list. You seem to be in the same situation I am in. I need to get a highly-availably and scalable solution up and running. I know Asterisk very well and am learning OpenSER now. What sort of high availability solution do you have running right now with OpenSER and asterisk? Do your users register to OpenSER or are you forwarding registrations? Just thought I'd throw you a couple questions as you seem to be fighting in the trenches right now and may be able to offer me a few "do it this way" tips to save me some time ;-) Thanks again, tf. -- Tyler <tyler@unixgod.net>