pjsip: Add rtp_timeout and rtp_timeout_hold endpoint options.

This change adds support for the 'rtp_timeout' and 'rtp_timeout_hold'
endpoint options. These allow the channel to be hung up if RTP
is not received from the remote endpoint for a specified number of
seconds.

ASTERISK-25259 #close

Change-Id: I3f39daaa7da2596b5022737b77799d16204175b9
This commit is contained in:
Joshua Colp
2015-07-18 13:16:10 -03:00
parent a105461f9e
commit 309dd2a409
12 changed files with 147 additions and 8 deletions

View File

@@ -192,6 +192,8 @@ struct ast_rtp_instance {
char channel_uniqueid[AST_MAX_UNIQUEID];
/*! Time of last packet sent */
time_t last_tx;
/*! Time of last packet received */
time_t last_rx;
};
/*! List of RTP engines that are currently registered */
@@ -2209,7 +2211,6 @@ int ast_rtp_engine_init()
return 0;
}
time_t ast_rtp_instance_get_last_tx(const struct ast_rtp_instance *rtp)
{
return rtp->last_tx;
@@ -2219,3 +2220,13 @@ void ast_rtp_instance_set_last_tx(struct ast_rtp_instance *rtp, time_t time)
{
rtp->last_tx = time;
}
time_t ast_rtp_instance_get_last_rx(const struct ast_rtp_instance *rtp)
{
return rtp->last_rx;
}
void ast_rtp_instance_set_last_rx(struct ast_rtp_instance *rtp, time_t time)
{
rtp->last_rx = time;
}