A SIP:INVITE message is received by the emulator and the MSIPConnectionObserver::IncomingRequest (CSIPServerTransaction *aTransaction) method is invoked.
In turn I send a 200 OK message back to the server as follows:
The problem is that the Contact attribute is missing from the 200 OK. The server receives the message, reports an error indicating the missing contact attribute and fails to send the ACK back to the emulator.
I investigated the Chipflip app and the 200 OK messages all seem to contain the contact attirbute!
The transaction needs to be associated with the dialog that was initially created.
USe CSIPInviteDialogAssoc (transaction) to get the context of the dialog.
Let me know how you go.