diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 310cd29384..b28c0eed92 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -10918,7 +10918,7 @@ static int respprep(struct sip_request *resp, struct sip_pvt *p, const char *msg
 		add_header(resp, "Session-Expires", se_hdr);
 	}
 
-	if (msg[0] == '2' && (p->method == SIP_SUBSCRIBE || p->method == SIP_REGISTER)) {
+	if (msg[0] == '2' && (p->method == SIP_SUBSCRIBE || p->method == SIP_REGISTER || p->method == SIP_PUBLISH)) {
 		/* For registration responses, we also need expiry and
 		   contact info */
 		char tmp[256];