Page 1 of 1

How to enable Early Media?

Posted: Fri Jan 13, 2017 10:47 pm
by Annemesski
Hello, I'm use H323plus v-1.26.5 with PTLib v-2.12.8 in my SCADA program for establishing phone communicate between dispatcher and abonents via intercom devices. I taken 'simple' sample from H323plus package for that.

My truble is as follow: when I call to some intercom device I taking one-way communication with it. 'Simple' is report about open logical channels to sending and to recieving, but recieving channel is not reachable and i'm not hearing abonent on intercom device, but abonent can hear me. When i use other program (Abto "H323 VoIP SDK") connection established normaly and i have two-way communication.

I'm examine ethernet traffic and detect so different between 'Simple' and 'Abto' connection:
- When 'Abto' is establishing connection with intercom it is sending SETUP message with "OpenLogicalChannel", "MasterSlaveDetermination" and "TerminalCapabilitySet" to remote party, further 'Abto' receive CallProceeding message and Alerting message with "terminalCapabilitySet", "terminalCapabilitySetAck" and "MasterSlaveDeterminationAck" on next step 'Abto' sending "empty terminalCapabilitySetAck MasterSlaveDeterminationAck" but remote party sending CONNECT message after that.
- When 'Simple' is establishing connection with intercom CONNECT message recieving before "empty terminalCapabilitySetAck MasterSlaveDeterminationAck".

In my research I came to the conclusion what 'Abto' use Early Media Mode but I can't find how to enable this method in 'Simple'.

PS: thanks to all who is answer and great sorry for my bad english.

Re: How to enable Early Media?

Posted: Mon Jan 16, 2017 10:17 am
by willamowius
I think what you are loking for is

DisableH245inSetup(false);
DisableFastStart(false);

Take a look at SimpleH323EndPoint::Initialise() in the sample application.

Regards,
Jan

Re: How to enable Early Media?

Posted: Mon Jan 16, 2017 11:46 am
by Annemesski
That is was, but I'm found this immediately, if I'm give DisableH245inSetup(true) the 'Simple' is not reporting about started receiving logical channel. Disabling or enabling FastStart procedure is not changing anything, but in 'Abto' FastStart is enabled (have a OpenLogicalChannel field in SETUP message) and I'm enabling it's too.

I'm not sure about Early Media, but I'll tryed modify almost parameters in H323Endpoint and sty here still.

I think what something is missing in SETUP message for the logical channel opening correctly.

Re: How to enable Early Media?

Posted: Tue Jan 17, 2017 1:58 pm
by Annemesski
Now I'm detect more with PTrace (-t option for "Simple").

I working with two types of intercom devisces: MS Windows based and some *nix based. Windows based intercom do not sending ALERTING signal and 'Simple' is opening recieving logical channel, further it's opening sending logical channel and only after that reporting: "in call with %remotepartyName%" and it's work correct ('Simple' is not call OnAlert() method). But *nix based intercom is sending ALERTING and 'Simple' is opening sending logical channel first and further reporting: "in call with %remotepartyName%" and only after that opening recieving logical channel and I take one-way communication.

Re: How to enable Early Media?

Posted: Thu Nov 23, 2017 3:57 pm
by ErasmoFor
willamowius wrote:
Mon Jan 16, 2017 10:17 am
I think what you are loking for is

DisableH245inSetup(false);
DisableFastStart(false);

Take a look at SimpleH323EndPoint::Initialise() in the sample application.

Regards,
Jan
Works like a charm. Thanks for the info, Jan.