ForwardOnFacility fails to properly forward call

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I may have stumbled upon a bug with how the ForwardOnFacility=1 (in RoutedMode section of INI) works in proxy mode.

The topology is as follows:
EP1 registered to GK1
EP2 registered to proxy GK2

The scenario is as follows:
-EP2 dials EP1 by IP address
-EP1 responds with routeCallToGatekeeper (GK1)
-GK2 releases call to EP1 with facilityCallDeflection
-GK2 sends call setup to GK1 which excludes any information about EP1

The problem is that when GK2 sends the call setup to GK1 is sets the destCallSignalAddress to its own IP address. Therefore GK1 sends the call setup back to GK2 which then releases the call. From comparing a packet capture of EP2 performing the same scenario as above but WITHOUT registering to GK2 then the destCallSignalAddress is set to the IP address EP1. 

Is this a bug?

Andrew

-----Original Message-----
From: Andrew Struiksma [mailto:astruiksma@xxxxxxxxx] 
Sent: Tuesday, November 03, 2009 4:35 PM
To: 'GNU Gatekeeper Users'
Subject: Re:  facility: routeCallToGatekeeper

Thanks for the tip, Jan. I added that in and now I'm getting closer but it still fails. Here is the output after GnuGK receives the routeCallToGatekeeper message:

  q931pdu = {
    protocolDiscriminator = 8
    callReference = 11255
    from = originator
    messageType = ReleaseComplete
    IE: Cause - Normal call clearing = {
      80 90                                              ..
 
  }
  h225pdu = {
    h323_uu_pdu = {
      h323_message_body = releaseComplete {
        protocolIdentifier = 0.0.8.2250.0.2
        reason = facilityCallDeflection <<null>>
        callIdentifier = {
          guid =  16 octets {
            02 87 73 ab cb a1 0f 1c  3f 20 92 63 60 19 de bf   ..s.....? .c`...
          }
        }
      }
      h245Tunneling = false
    }
  }

Then it attempts to forward the call to the alternate IP:

2009/11/03 16:04:48.509 3       ProxyChannel.cxx(3958)  Q931    Connect to xx.xx.206.20:1720 from 168.99.78.136:20002 successful
2009/11/03 16:04:48.522 4           yasocket.cxx(904)   TCPSrv  Accept request on xx.xx.78.136:1720
2009/11/03 16:04:48.523 3       ProxyChannel.cxx(958)   Q931s   Received: Setup CRV=11255 from xx.xx.206.20:39049

After the call setup, this error appears and the call is dropped:

2009/11/03 16:04:48.525 2       ProxyChannel.cxx(1821)  Q931s   Warning: socket (xx.xx.206.20:39049) already attached for callid 02 87 73 ab cb a1 0f 1c 3f 20 92 63 60 19 de bf
2009/11/03 16:04:48.525 2             RasTbl.cxx(3538)  CDR     ignore not connected call

I'm not sure how to interpret these results. Am I still missing a switch that would enable a call to be forwarded to an alternate IP?

Andrew

-----Original Message-----
From: Jan Willamowius [mailto:jan@xxxxxxxxxxxxxx] 
Sent: Monday, November 02, 2009 10:57 AM
To: openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Subject: Re:  facility: routeCallToGatekeeper

Hi,

Andrew, you can set

[RoutedMode]
ForwardOnFacility=1

Regards,
Jan


Andrew Struiksma wrote:
> Here are some snippets of what I'm getting in the trace file as the call setup begins:
> 
> 2009/11/02 08:49:17.672 3       ProxyChannel.cxx(958)   Q931d   Received: Facility CRV=5010 from xxx.xxx.240.100:1720
> 2009/11/02 08:49:17.673 4       ProxyChannel.cxx(901)   Q931    Received: {
>   q931pdu = {
>     protocolDiscriminator = 8
>     callReference = 5010
>     from = destination
>     messageType = Facility
>     IE: Facility = {
> 
>     }
>   }
>   h225pdu = {
>     h323_uu_pdu = {
>       h323_message_body = facility {
>         protocolIdentifier = 0.0.8.2250.0.3
>         alternativeAddress = ipAddress {
>           ip =  4 octets {
>             xx xx ce 14                                        D...
>           }
>           port = 1720
>         }
>         reason = routeCallToGatekeeper <<null>>
>         multipleCalls = false
>         maintainConnection = true
>         destinationInfo = {
>           mc = false
>           undefinedNode = false
>         }
>       }
>       h245Tunneling = false
>     }
>   }
> }
> 2009/11/02 08:49:17.675 3       ProxyChannel.cxx(958)   Q931d   Received: ReleaseComplete CRV=5010 from xx.xx.240.100:1720
> 2009/11/02 08:49:17.676 4       ProxyChannel.cxx(901)   Q931    Received: {
>   q931pdu = {
>     protocolDiscriminator = 8
>     callReference = 5010
>     from = destination
>     messageType = ReleaseComplete
>     IE: Cause - Normal call clearing = {
>       80 90                                              ..
>     }
>   }
>   h225pdu = {
>     h323_uu_pdu = {
>       h323_message_body = releaseComplete {
>         protocolIdentifier = 0.0.8.2250.0.4
>         screeningIndicator = userProvidedVerifiedAndFailed
>       }
>       h245Tunneling = false
>     }
>   }
> }
> 
> When I try making this same call while not registered to GnuGK then the end point automatically redials using the alternativeAddress. Is it possible to get GnuGK to dial the alternativeAddress? I have attached my INI.
> 
> Thanks!
> 
> Andrew


-- 
Jan Willamowius, jan@xxxxxxxxxxxxxx, http://www.gnugk.org/

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________________

Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_name=openh323gk-users
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________________

Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_name=openh323gk-users
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/

Attachment: gnugk.ini
Description: gnugk.ini

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________________

Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_name=openh323gk-users
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/

[Index of Archives]     [SIP]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [ISDN Cause Codes]     [Yosemite News]

  Powered by Linux