Author Topic: HA in Genesys SDK 7.2  (Read 8082 times)

s.kulku

  • Guest
HA in Genesys SDK 7.2
« on: June 11, 2007, 07:33:23 AM »
Hello fellow Genesys pros:

in my daily struggle with Genesys SDK 7.2 I ran into a minor obstacle that seems to suck the very essence of life from me that involves two t-servers in HA mode. I am expected to connect to both of these tservers from the same client, but for some inexplicable and downward evil reason, when I connect to backup, my protocol.open() does not return and is just waiting there!

backup t-server log shows that client is connected and you get EventLinkConnected sent to it, but this event never gets back to the client! When two of t-servers in HA mode, should client use two protocols to connect to both of them. And if so, should both protocol.open() calls return or should the protocol to the backup tserver hang because it is in backup mode?

Please tell me if I am not making any sense.

Offline René

  • Administrator
  • Hero Member
  • *****
  • Posts: 1832
  • Karma: 62
Re: HA in Genesys SDK 7.2
« Reply #1 on: June 11, 2007, 09:20:25 AM »
  • Best Answer
  • Hello,

    I think I've written it already as a response to similar post - Genesys libraries handle HA internally so it's not necessary to open connection to backup TServer in your code. And obviously it doesn't work...

    Try following - Open connection to primary TServer only. Use some network tool (http://www.microsoft.com/technet/sysinternals/Networking/TcpView.mspx or http://www.nirsoft.net/utils/cports.html) and check the connections opened by your application. You'll find that your application has connected to backup TServer automatically.

    René

    Offline victor

    • Administrator
    • Hero Member
    • *****
    • Posts: 1416
    • Karma: 18
    Re: HA in Genesys SDK 7.2
    « Reply #2 on: June 12, 2007, 06:55:26 AM »
  • Best Answer
  • The biggest problem with HA implementation using Genesys t-lib/SDK is that it is very poorly designed. Even though the idea to allow for easy maintenance is simply great, the problem is that user has no control over it. My main complaints with HA is that:

    1. there is no event to notify client that TServers were switched. You do not get EventServedRoleChanged or anything when you either kill TServer or switch them over. ActiveX/tlib/SDK switches over to the backup server without notifying anyone!

    2. when you connect to t-server in "backup mode", it does not tell you that it IS in backup via ServerRole like it should.

    3. TServer retrieves its HA backup from CME and uses EventLinkConnected command to pass its information within host-0 attribute. The problem is that host-0 attribute is passed as a HOSTNAME and not IP, meaning that you need to make sure that all your serves have DNS or at least HOSTS files with the proper HOSTNAMES and IPs.

    I bet you that your client cannot resolve the hostname of backup t-server and this is why it is freezing. Try pinging the value of host-0 and if it times out, modify your hosts file - that should fix it!

    Good luck!

    Offline René

    • Administrator
    • Hero Member
    • *****
    • Posts: 1832
    • Karma: 62
    Re: HA in Genesys SDK 7.2
    « Reply #3 on: June 12, 2007, 09:56:20 AM »
  • Best Answer
  • Victor,

    Are you talking about ActiveX T-Lib or Platform SDK 7.2? I know there were issues related to HA support in ActiveX T-Lib but I hope it's solved in Platform SDK 7.2. Am I naive? ;)

    René

    s.kulku

    • Guest
    [SOLVED] HA in Genesys SDK 7.2
    « Reply #4 on: June 13, 2007, 01:48:29 AM »
  • Best Answer
  • Vic! Thank you!!! adding hostname to HOSTS file solved it!!!

    Thank you!!!!

    fywang2

    • Guest
    Re: HA in Genesys SDK 7.2
    « Reply #5 on: June 15, 2007, 03:13:01 PM »
  • Best Answer
  • Victor,

    What is the process among primary TServer, standby TServer and Genji in softphone applet?

    1.When the primary TServer fails, it would send a MESSAGE to Genji in softphone for notice to switch the connection to standby TServer. What is the content and format of this MESSAGE above?

    2.Which class/method of Genji would receive the MESSAGE of notice to switch the connection to standby TServer? When it receive,how does Genji do to to switch the connection to standby TServer?

    I want to know the principle and how does it implement by java code in Genji.

    Thank you in advance!