Hello,
is there a way to add a Retry-After header to a 503 response i'm sending out using t_reply?
Use case: t_relay creates an internal 408 on timeout. From failure-route, i want to pass it upstream as 503 with retry-after header. Changing the reply to 503 using t_reply works, but how to add the header?
The reply obviously doens't pass through any reply_route.
On Thursday 27 November 2008, Alex Hermann wrote:
is there a way to add a Retry-After header to a 503 response i'm sending out using t_reply?
Use case: t_relay creates an internal 408 on timeout. From failure-route, i want to pass it upstream as 503 with retry-after header. Changing the reply to 503 using t_reply works, but how to add the header?
The reply obviously doens't pass through any reply_route.
Hi Alex,
have you tried using append_to_reply("Retry-After: 120\n"); before the sl_send_reply or t_reply?
Cheers,
Henning
On Thursday 27 November 2008, Henning Westerholt wrote:
On Thursday 27 November 2008, Alex Hermann wrote:
is there a way to add a Retry-After header to a 503 response i'm sending out using t_reply?
Use case: t_relay creates an internal 408 on timeout. From failure-route, i want to pass it upstream as 503 with retry-after header. Changing the reply to 503 using t_reply works, but how to add the header?
The reply obviously doens't pass through any reply_route.
Hi Alex,
have you tried using append_to_reply("Retry-After: 120\n"); before the sl_send_reply or t_reply?
Well, as it is marked to not be usable from failure route I hadn't considered it.
The following fragment seems to work, so I'll assume it is safe to call append_to_reply from failure_route itself. Attached (tested) patch does this, please apply.
<failure route> if (t_local_replied("all")) { route(78); t_reply("503", "Service Unavailable"); }
route[78] { append_to_reply("Retry-After: 53\r\n"); return; }
On 11/27/08 16:49, Alex Hermann wrote:
On Thursday 27 November 2008, Henning Westerholt wrote:
On Thursday 27 November 2008, Alex Hermann wrote:
is there a way to add a Retry-After header to a 503 response i'm sending out using t_reply?
Use case: t_relay creates an internal 408 on timeout. From failure-route, i want to pass it upstream as 503 with retry-after header. Changing the reply to 503 using t_reply works, but how to add the header?
The reply obviously doens't pass through any reply_route.
Hi Alex,
have you tried using append_to_reply("Retry-After: 120\n"); before the sl_send_reply or t_reply?
Well, as it is marked to not be usable from failure route I hadn't considered it.
The following fragment seems to work, so I'll assume it is safe to call append_to_reply from failure_route itself.
yes, it is safe. It is important to understand that this operation affects replies generated from request by kamailio, not the ones that pass through -- one can use append_hf() in onreply_route to add headers to these kind of replies.
I will apply the patch, thanks.
Cheers, Daniel
Attached (tested) patch does this, please apply.
<failure route> if (t_local_replied("all")) { route(78); t_reply("503", "Service Unavailable"); }
route[78] { append_to_reply("Retry-After: 53\r\n"); return; }
Users mailing list Users@lists.kamailio.org http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
On Thursday 27 November 2008, Daniel-Constantin Mierla wrote:
[..] The following fragment seems to work, so I'll assume it is safe to call append_to_reply from failure_route itself.
yes, it is safe. It is important to understand that this operation affects replies generated from request by kamailio, not the ones that pass through -- one can use append_hf() in onreply_route to add headers to these kind of replies.
I will apply the patch, thanks.
Thank you Daniel,
Henning