At 12:55 PM 3/23/2004, Klaus Darilion wrote:
Hi!
If ser relays an INVITE transaction stateful (t_relay), it automatically sends a
provisional response (100 trying) back to the caller. When t_relay()ing non-INVITE
requests (e.g. BYE), there will no (100 trying) produced. Any special reason for this?
RFC3261. (I have to admit though I am not 100% convinced leaving 100 out from
non-INVITEs was a great buy.)
So if the request timeouts (no repsonse within 500ms),
both - ser and the callers UA - will retransmit the request.
My way to solve this would be:
...
if ((method!="INVITE") && (method!="ACK"))
sl_send_reply("100", "trying...");
t_relay()
...
I'm not aware of a practical harm of doing so.
Another possibility would be to relay non-INVITE
requests stateless. Any comments/suggestions on this?
I have been thinking of that too, just to avoid memory consumption.
Fine as long as you don't need statful functionality such as
accounting.
-jiri