Evgeniy Khramtsov wrote:
> I'm just wondering why transactionlayer doesn't "pass to core" incoming 
> CANCEL requests which match against existing INVITE-transaction? This 
> means that yxa application never knows about cancelling the INVITE it 
> has received.

 From src/transactionlayer/servertransaction.erl (module documentation) :

%%% The application should 'adopt' the server transaction process, and 

%%% then tell it what response(s) to send. 


%%% After adopting a server transaction, the application can get the 

%%% following signals from the server transaction : 


%%%    {servertransaction_cancelled, Pid, ExtraHeaders} - the 

%%%       transaction layer has received a CANCEL matching this server 

%%%       transaction. 

%%%         Pid          = pid() of server transaction 

%%%         ExtraHeaders = list() of {Key, ValueList} tuples - headers 

%%%                        from the CANCEL request that should be 

%%%                        passed on to any downstream entitys

Having the transactionlayer "pass to core" the CANCEL requests doesn't 
seem like the right thing to do, since the YXA app doesn't really have a 
say in the matter - the client has already decided to cancel the INVITE.

If you "adopt" the INVITE server transaction, you will get an 
{servertransaction_cancelled, ...} signal though so that you know the 
INVITE was cancelled.


Yxa-devel mailing list

Reply via email to