diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c index c0e9e63e3a..77eba21384 100644 --- a/res/res_rtp_asterisk.c +++ b/res/res_rtp_asterisk.c @@ -6042,6 +6042,10 @@ static void ast_rtp_remote_address_set(struct ast_rtp_instance *instance, struct rtp->rtcp->local_addr_str = ast_strdup(ast_sockaddr_stringify(&local)); } + /* Need to reset the DTMF last sequence number and the timestamp of the last END packet */ + rtp->last_seqno = 0; + rtp->last_end_timestamp = 0; + if (strictrtp && rtp->strict_rtp_state != STRICT_RTP_OPEN && !ast_sockaddr_isnull(addr) && ast_sockaddr_cmp(addr, &rtp->strict_rtp_address)) { /* We only need to learn a new strict source address if we've been told the source is