[OpenSER-Users] Problem matching GTALK with Openser

isetien001 at ikasle.ehu.es isetien001 at ikasle.ehu.es
Wed Jul 25 11:55:34 CEST 2007


This the ngrep output for port 5060:

Thanks, Izortze.


b001948:/# ngrep -q port 5060
interface: eth0 (158.227.64.0/255.255.255.0)
filter: (ip or ip6) and ( port 5060 )

T 158.227.64.136:4774 -> 158.227.64.88:5060 [AP]
  ..CONNECT www.google.com:443 HTTP/1.0..User-Agent: Google Talk..Host:
www.g
  oogle.com..Content-Length: 0..Proxy-Connection: Keep-Alive....

T 158.227.64.136:4775 -> 158.227.64.88:5060 [AP]
  CONNECT www.google.com:443 HTTP/1.0..User-Agent: Google Talk..Host:
www.goo
  gle.com..Content-Length: 0..Proxy-Connection: Keep-Alive....

T 158.227.64.136:4776 -> 158.227.64.88:5060 [AP]
  CONNECT www.google.com:443 HTTP/1.0..User-Agent: Google Talk..Host:
www.goo
  gle.com..Content-Length: 0..Proxy-Connection: Keep-Alive....

U 158.227.64.89:5060 -> 158.227.64.88:5060
  OPTIONS sip:158.227.64.88:5060 SIP/2.0..v: SIP/2.0/UDP
158.227.64.89;branch
  =z9hG4bK9ee34059000033de46a71b7e000053fe000021a0;rport..f: "leire"
<sip:ego
  itz at 158.227.64.88:5060>;tag=4188483e47ac..t:
<sip:158.227.64.88:5060>..i: 4
  8E3C59DDA91499AA6F503FAFAECF74A0x9ee34059..CSeq: 1
OPTIONS..Max-Forwards: 7
  0..User-Agent: SJphone/1.65.377a (SJ Labs)..l: 0....

U 158.227.64.88:5060 -> 158.227.64.89:5060
  SIP/2.0 404 Not Found..v: SIP/2.0/UDP
158.227.64.89;branch=z9hG4bK9ee340590
  00033de46a71b7e000053fe000021a0;rport=5060..f: "leire"
<sip:egoitz at 158.227.
  64.88:5060>;tag=4188483e47ac..t:
<sip:158.227.64.88:5060>;tag=329cfeaa6ded0
  39da25ff8cbb8668bd2.27d7..i:
48E3C59DDA91499AA6F503FAFAECF74A0x9ee34059..CS
  eq: 1 OPTIONS..Server: OpenSER (1.2.1-notls (i386/linux))..Content-Length:
  0....

U 158.227.64.90:49152 -> 158.227.64.88:5060
  ..



> Hi!
> 
> I have configure GTALK to connect to a Proxy at startup, that is my SIP
> proxy, with it's IP direcction and on port 5060.
> 
> I'm working with the ngrep output, as soon as I get it I'll send you.
> 
> Thanks!
> 
> 
> > Hello,
> > 
> > it seems that a HTTP request get's to OpenSER. Can you send ngrep
output 
> > on port 5060?
> > 
> > What are the configuration options for gtalk?
> > 
> > Daniel
> > 
> > 
> > On 07/24/07 14:59, isetien001 at ikasle.ehu.es wrote:
> > > Hi!
> > >
> > > I have load the XMPP module to my openser configuration to integrate
> > > GTALK in my SIP system designed with Openser. 
> > >
> > > The XMPP module works in the 'component' mode. I have added the server
> > > Jabberd 2 to my system and I have checked that it works correctly with
> > > different Jabber clients.
> > >
> > > When I start Openser and try to connect GTALK to it I get the
following
> > > error:
> > >
> > > 10(8016) ERROR:parse_first_line: error parsing the method
> > > 10(8016) ERROR:parse_first_line: bad message
> > > 10(8016) ERROR: parse_msg: message=<CONNECT www.google.com:443
HTTP/1.0
> > > User-Agent: Google Talk
> > > Host: www.google.com
> > > Content-Length: 0
> > > Proxy-Connection: Keep-Alive
> > >
> > >   
> > > 10(8016) ERROR: receive_msg: parse_msg failed
> > > 10(8016) ERROR: receive_msg: no via found in request
> > > 10(8016) ERROR: receive_msg: no via found in request
> > >
> > > Any idea of what it's wrong? 
> > >
> > > Thanks in advance!
> > >
> > > Izortze.
> > >
> > > P.D= This is my openser.cfg file:
> > >
> > >
> > > $Id: openser.cfg 1676 2007-02-21 13:16:34Z bogdan_iancu $
> > > #
> > > # simple quick-start config script
> > > # Please refer to the Core CookBook at
> > > http://www.openser.org/dokuwiki/doku.php
> > > # for a explanation of possible statements, functions and parameters.
> > > #
> > >
> > > # ----------- global configuration parameters ------------------------
> > >
> > > debug=3            # debug level (cmd line: -dddddddddd)
> > >
> > > fork=yes
> > > #log_stderror=no    # (cmd line: -E)
> > > children=4
> > >
> > > # Uncomment these lines to enter debugging mode
> > > #fork=no
> > > log_stderror=yes
> > > #
> > > check_via=no
> > > rev_dns=no
> > > dns=no
> > > port=5060
> > > #fifo='/tmp/openser_fifo'
> > >
> > > # uncomment the following lines for TLS support
> > > #disable_tls = 0
> > > #listen = tls:your_IP:5061
> > > #tls_verify_server = 1
> > > #tls_verify_client = 1
> > > #tls_require_client_certificate = 0
> > > #tls_method = TLSv1
> > > #tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
> > > #tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
> > > #tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"
> > >
> > > # ------------------ module loading ----------------------------------
> > >
> > > #set module path
> > > mpath="/usr/local/lib/openser/modules/"
> > >
> > > # Uncomment this if you want to use SQL database
> > > loadmodule "mysql.so"
> > >
> > > loadmodule "sl.so"
> > > loadmodule "tm.so"
> > > loadmodule "rr.so"
> > > loadmodule "maxfwd.so"
> > > loadmodule "usrloc.so"
> > > loadmodule "registrar.so"
> > > loadmodule "textops.so"
> > > loadmodule "mi_fifo.so"
> > >
> > > loadmodule "xmpp.so"
> > >
> > >
> > > # Uncomment this if you want digest authentication
> > > # mysql.so must be loaded !
> > > #loadmodule "auth.so"
> > > #loadmodule "auth_db.so"
> > >
> > > # ----------------- setting module-specific parameters ---------------
> > >
> > > # -- mi_fifo params --
> > >
> > > modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")
> > >
> > > # -- usrloc params --
> > >
> > > #modparam("usrloc", "db_mode",   0)
> > >
> > > # Uncomment this if you want to use SQL database
> > > # for persistent storage and comment the previous line
> > > modparam("usrloc", "db_mode", 2)
> > > # -- auth params --
> > > # Uncomment if you are using auth module
> > > #
> > > #modparam("auth_db", "calculate_ha1", yes)
> > > #
> > > # If you set "calculate_ha1" parameter to yes (which true in this
> config),
> > > # uncomment also the following parameter)
> > > #
> > > #modparam("auth_db", "password_column", "password")
> > >
> > > # -- rr params --
> > > # add value to ;lr param to make some broken UAs happy
> > > modparam("rr", "enable_full_lr", 1)
> > >
> > >
> > > #-- xmpp module parameters --
> > >
> > > modparam("xmpp","backend","component")
> > > modparam("xmpp","domain_separator","*")
> > > modparam("xmpp","gateway_domain","b001948.bi.ehu.es")
> > > modparam("xmpp","xmpp_domain","b001948.bi.ehu.es")
> > > modparam("xmpp","xmpp_password","secret")
> > > modparam("xmpp","xmpp_host","b001948.bi.ehu.es")
> > >
> > >
> > > # -------------------------  request routing logic -------------------
> > >
> > > # main routing logic
> > >
> > > route{
> > >
> > >         # initial sanity checks -- messages with
> > >         # max_forwards==0, or excessively long requests
> > >         if (!mf_process_maxfwd_header("10")) {
> > >                 sl_send_reply("483","Too Many Hops");
> > >                 exit;
> > >         };
> > >        if (msg:len >=  2048 ) {
> > >                 sl_send_reply("513", "Message too big");
> > >                 exit;
> > >         };
> > >
> > >        # filter XMPP destinations
> > >       if (uri =~ "sip:.+\*b001948.bi.ehu.es at b001948.bi.ehu.es") {
> > >                # absorb retransmissions
> > >                if (!t_newtran()) {
> > >                                sl_reply_error();
> > >                                    exit;
> > >                }
> > >                # handle IM
> > >                if (is_method("MESSAGE")) {
> > >                            log("message to XMPP: from <$fu> to
> <$ru>\n");
> > >                         if (xmpp_send_message()) {
> > >                         sl_send_reply("202", "Accepted");
> > >                         } else {
> > >                         sl_send_reply("404", "Not found");
> > >                         }
> > >                         exit;
> > >                }
> > >                # unsupported type of SIP message
> > >                log("message to XMPP: method <$rm> not supported
yet\n");
> > >                sl_send_reply("503", "Service unavailable");
> > >                exit;
> > >        }
> > >
> > >
> > > else {
> > >
> > >
> > >         # we record-route all messages -- to make sure that
> > >                 # subsequent messages will go through our proxy;
that's
> > >                 # particularly good if upstream and downstream
entities
> > >                 # use different transport protocol
> > >                 if (!method=="REGISTER")
> > >                         record_route();
> > >                 # subsequent messages withing a dialog should take the
> > >                 # path determined by record-routing
> > >                 if (loose_route()) {
> > >                         # mark routing logic in request
> > >                         append_hf("P-hint: rr-enforced\r\n");
> > >                         route(1);
> > >                 };
> > >
> > >                 if (!uri==myself) {
> > >                         # mark routing logic in request
> > >                         append_hf("P-hint: outbound\r\n");
> > >                         # if you have some interdomain connections
> via TLS
> > >                         #if(uri=~"@tls_domain1.net") {
> > >                         #       t_relay("tls:domain1.net");
> > >                         #       exit;
> > >                         #} else if(uri=~"@tls_domain2.net") {
> > >                         #       t_relay("tls:domain2.net");
> > >                         #       exit;
> > >                         #}
> > >                         route(1);
> > >                 };
> > >
> > >                 # if the request is for other domain use UsrLoc
> > >                 # (in case, it does not work, use the following
command
> > >                 # with proper names and addresses in it)
> > >                 if (uri==myself) {
> > >
> > >                         if (method=="REGISTER") {
> > >
> > >                                 # Uncomment this if you want to use
> > > digest authentication
> > >                                 #if (!www_authorize("openser.org",
> > > "subscriber")) {
> > >                                 #       www_challenge("openser.org",
> "0");
> > >                                 #       exit;
> > >                                 #};
> > >
> > >                                 save("location");
> > >                                exit;
> > >                         };
> > >
> > >                         lookup("aliases");
> > >                         if (!uri==myself) {
> > >                                 append_hf("P-hint: outbound
alias\r\n");
> > >                                 route(1);
> > >                         };
> > >
> > >                         # native SIP destinations are handled
using our
> > > USRLOC DB
> > >                         if (!lookup("location")) {
> > >                                 sl_send_reply("404", "Not Found");
> > >                                 exit;
> > >                         };
> > >                         append_hf("P-hint: usrloc applied\r\n");
> > >                 };
> > >
> > >         route(1);
> > >        };
> > >
> > > }
> > > route[1] {
> > >         # send it out now; use stateful forwarding as it works
reliably
> > >         # even for UDP2TCP
> > >         if (!t_relay()) {
> > >                 sl_reply_error();
> > >         };
> > >         exit;
> > > }
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > Users mailing list
> > > Users at openser.org
> > > http://openser.org/cgi-bin/mailman/listinfo/users
> > >
> > >   
> > 
> 
> 
> 
> _______________________________________________
> Users mailing list
> Users at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
> 
> 






More information about the Users mailing list