[Kamailio-Users] Fwd: dialog info + Grandstreams = freezing
David
kamailio.org at spam.lublink.net
Wed Aug 12 15:24:14 CEST 2009
Hello,
Yes, I am tracking both legs. Because, if a call comes in on a DID,
Asterisk decides which extension to ring and it's the second leg which
needs to be tracked, whereas if it is an outbound call to a PRI, it's
the first leg that should be tracked because the second leg doesn't make
it through Kamailio ( for now ).
So you think my problem is because I am tracking both legs? I thought of
this last night as well, I'll have a look today or tomorrow and will
post my results.
David
Daniel-Constantin Mierla wrote:
> .. fwd to list ... reply all button mismatch ...
>
> ---------- Forwarded message ----------
> From: *Daniel-Constantin Mierla* <miconda at gmail.com
> <mailto:miconda at gmail.com>>
> Date: Wed, Aug 12, 2009 at 9:20 AM
> Subject: Re: [Kamailio-Users] dialog info + Grandstreams = freezing
> To: David <kamailio.org <http://kamailio.org>@spam.lublink.net
> <http://spam.lublink.net>>
>
>
> Hello,
>
> On Tue, Aug 11, 2009 at 2:18 PM, David <kamailio.org
> <http://kamailio.org>@spam.lublink.net <http://spam.lublink.net>> wrote:
>
> Hey,
>
> I am not good at diagrams, but here goes :
>
>
> [ Asterisk] [ Asterisk ] ================> [ MySQL ]
> / \ / \
> [ Kamailio ] ============/\
> / \ / \ / \
> [ Extension ] [ Extension ] [ Extension ]
>
> Here is a simple flow :
>
> 1. Extension 1 is plugged in
> 2. It registers to Kamailio and Kamailio stores to Location
> 3. Extension 1 subscribes to all the other extensions
> 4. Kamailio calls handle_publish() and t_release()
> 5. Extension 1 dials '102'
> 6. Kamailio receives the INVITE chooses an asterisk server and
> relays the INVITE ( t_relay )
> 7. Asterisk does some checking, starts monitor ( if needed ) and
> some other stuff
> 8. Asterisk sends INVITE to Kamailio for testspace.102
> 9. Kamailio finds testspace.102 in database and forwards INVITE to
> the appropriate extension
> 10. Extension replies 'OK'
> 11. Kamailio, using reply-route, sends it back to asterisk
> 12. Asterisk bridges the call with 101
> 13. Asterisk sends an OK back through Kamailio to Extension 1.
> 14. Asterisk tries to reinvite the audio ( if not monitoring )
> 15. Audio bypasses Asterisk, but the SIP still is making the full
> trip.
>
> Does this answer your question?
>
>
> Do you do call tracking with dialog for both legs (inbond: phone to
> asterisk; outbound: asterisk to phone)? You should do it for one,
> outbound is the best, in case asterisk auto-answers the inbound leg.
>
> Cheers,
> Daniel
>
>
>
> David
>
>
>
> Daniel-Constantin Mierla wrote:
>
> Hello,
>
> I am using the module with snom 370 and works ok. The BLF is
> on for Polycoms but they do not implement the call pickup
> properly (they have direct call pickup as far as I could get).
>
> Please take latest kamailio 1.5 from svn branch 1.5 as there
> were committed some updates (maybe they don't affect you,
> being mainly to rls, but is better to have the latest stable
> so we refer to same source code).
>
> What would be good is to have a diagram of the signaling,
> since you say there are lot of messages sent around.
> http://callflow.sourceforge.net/
>
> Cheers,
> Daniel
>
>
> On 11.08.2009 5:03 Uhr, David wrote:
>
> Hello,
>
> I am having this problem on kamailio 1.5.2-tls compiled on
> Ubuntu 8.04, 1.5.1-tls ( compiled with no tls ) on Ubuntu
> 8.04 and with OpenSIPS 1.5.2-tls compilde on Ubuntu 8.04
>
> I am trying to setup presence_dialoginfo with my
> Grandstreams, Snom and Linksys. I have a 4 phones on the
> server.
>
> 101 - Linksys SPA962 ( 6.1.5a )
> 102 - Grandstream GXP2020 ( 1.2.1.4 )
> 103 - Grandstream GXP2000 ( 1.2.1.4 )
> 104 - Grandstream GXP2000 ( 1.1.6.46 )
> 105 - Snom 360 ( 7.3.23 )
>
> My Kamailio deals with registrations, NAT and BLF
> everything else is sent to one of two asterisk boxes. I
> use the dispatcher module for this. This means that when I
> call one extension to the other, both call legs from
> asterisk are going through Kamailio as separate calls. But
> to divide my customers, the usernames are different from
> the URL that the user types. For example the customer
> dials '101' but it is changed to testspace.101 when it
> comes back from asterisk. So Kamailio would have two calls
> in the event that 101 dials 102.
>
> sip:testspace.101 at myserver to 102 ( this is sent to asterisk )
> sip:testspace.101 at myserver to testspace.102 ( this is
> coming back from asterisk )
>
> Something is horribly wrong. I have the following problems :
>
> 1. If 102 calls 103, when 103 answers both phones hang for
> about 2 minutes
> 2. If 105 calls 101, 101 BLF comes back to the inactive
> state ( green on the Linksys and dark on the Snom), but
> the orange light stays on on the Snom and it thinks the
> call is still active ( the light is on, but the call is over )
> 3. If any extension calls any extension and I try a call
> pickup, it fails. It looks like the Linksys is sending a
> NOTIFY to pickup the call ( I thought it was supposed to
> send an invite... ? )
>
> Looking at the logs it looks like Kamailio is sending out
> so many NOTIFYs that it is crashing the Grandstreams, and
> causing the Snom to act funny.
>
> Here are some experts from my config file :
>
> root at kamailio-dev:/etc/kamailio# grep dialog *
> kamailio.cfg:# * avp value for dialogs is still not correct
> kamailio.cfg:loadmodule "dialog.so"
> kamailio.cfg:loadmodule "presence_dialoginfo.so"
> kamailio.cfg:loadmodule "pua_dialoginfo.so"
> kamailio.cfg:#modparam("pua_dialoginfo",
> "include_localremote", 0)
> kamailio.cfg:#modparam("pua_dialoginfo", "include_tags", 0)
> kamailio.cfg:#modparam("pua_dialoginfo", "include_callid", 0)
> kamailio.cfg:modparam("dialog", "dlg_flag", 4)
> kamailio.cfg:modparam("dialog", "db_mode", 1)
> kamailio.cfg:modparam("dialog", "timeout_avp",
> "$avp(i:10)") # I still haven't figured out how to set
> $avp(i:10)
> kamailio.cfg:modparam("pua_dialoginfo",
> "override_lifetime", 300)
> kamailio.cfg:modparam("presence_dialoginfo",
> "force_single_dialog", 1)
> kamailio.cfg:modparam("pua_dialoginfo", "caller_confirmed", 1)
> kamailio.cfg:modparam("auth_db|usrloc|acc|domain|avpops|presence|presence_xml|pua|dialog",
> "db_url",
> kamailio.cfg:# Flag 4 = Mark the current request for a dialog
> kamailio.cfg: # sequential request withing a
> dialog should
>
> the set flag looks like this :
> if ( ds_is_from_list() )
> {
> xlog("L_INFO", "Coming from asterisk");
> if ( is_method("INVITE"))
> {
> setflag(4);
> }
> }
>
> So the dialog flag is only set for the leg coming back
> from asterisk.
>
> When a notify comes in :
>
> if(is_method("NOTIFY") )
> {
> if (! t_newtran())
> {
> sl_reply_error();
> exit;
> };
>
> t_reply("200", "OK");
> t_release();
> exit ;
> }
>
> Publish and subscribe are like this :
>
>
> if( is_method("PUBLISH") || is_method("SUBSCRIBE") )
> {
> route(5);
> exit;
> }
>
> route[5]
> {
> # absorb retransmissions
> if (! t_newtran())
> {
> xlog("L_INFO", "Ignoring PUBLISH/SUBSCRIBE on
> retransmition - M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n");
> sl_reply_error();
> exit;
> };
>
> append_to_reply("Contact: <sip:myserver.tld:5060>\r\n");
>
> if(is_method("PUBLISH"))
> {
> handle_publish();
> t_release();
>
> } else if( is_method("SUBSCRIBE")) {
> handle_subscribe();
> t_release();
> }
> else
> {
> }
>
> exit;
> }
>
> I also have NAT checking for those telephones where stun
> isn't enough. Before I reach
> publish/subscribe/invite/notify, I also call setbflag()
> and sometimes call fix_nated_contact(). Additionnally, I
> have a block if code before my presence stuff if (
> has_totag() && loose_route()) { t_relay(); }.
>
> If sip.conf:canreinvite=yes, the grandstreams freeze so
> long that the server times out, and the BLFs get really
> messed up. if sip:canreinvite=no the grandstreams only
> freeze for about 30 seconds.
>
> Obviously I am doing something wrong, but despite having
> searched google for endless hours, and poured over
> documentation, I can not seem to find what I did wrong.
>
> I would really appreciate if someone could shed light on
> my problem.
>
> I am having this problem on kamailio 1.5.2-tls compiled on
> Ubuntu 8.04, 1.5.1-tls ( compiled with no tls ) on Ubuntu
> 8.04 and with OpenSIPS 1.5.2-tls compilde on Ubuntu 8.04
>
> Thanks,
>
> David
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org <mailto:Users at lists.kamailio.org>
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
>
>
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org <mailto:Users at lists.kamailio.org>
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
>
>
>
> --
> Daniel-Constantin Mierla
> http://www.asipto.com
>
>
>
> --
> Daniel-Constantin Mierla
> http://www.asipto.com
> ------------------------------------------------------------------------
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
More information about the Users
mailing list