Hello all!
While trying to add code in Yate to set some important parameters - for the
telephony business - I noticed my changes are overwritten by OpenH323 /
H323Plus.
I reimplemented H323Connection::OnSendSignalSetup() and changed the Q.931
fields in setupPDU. Unfortunately the following code (in h323.cxx) undoes my
changes:
if (!OnSendSignalSetup(setupPDU))
return EndedByNoAccept;
// Do this again (was done when PDU was constructed) in case
// OnSendSignalSetup() changed something.
setupPDU.SetQ931Fields(*this, TRUE);
setupPDU.GetQ931().GetCalledPartyNumber(remotePartyNumber);
Is there any solid reason why setupPDU.SetQ931Fields(*this, TRUE) is called?
Its default parameters are overwriting the type, plan, presentation and
screening of the numbers. I also need to set separate type of number on caller
and called party numbers.
My plan is to patch OpenH323 / H323Plus to delete the extra SetQ931Fields().
Do you see any unintended consequences of such a change?
Regards,
Paul Chitescu