mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-14 08:31:02 +00:00
Merge "res_pjsip/AMI: add contact.updated event" into 13
This commit is contained in:
2
CHANGES
2
CHANGES
@@ -14,6 +14,8 @@
|
|||||||
|
|
||||||
res_pjsip
|
res_pjsip
|
||||||
------------------
|
------------------
|
||||||
|
* Added new status Updated to AMI event ContactStatus on update registration
|
||||||
|
|
||||||
* Added "reg_server" to contacts.
|
* Added "reg_server" to contacts.
|
||||||
If the Asterisk system name is set in asterisk.conf, it will be stored
|
If the Asterisk system name is set in asterisk.conf, it will be stored
|
||||||
into the "reg_server" field in the ps_contacts table to facilitate
|
into the "reg_server" field in the ps_contacts table to facilitate
|
||||||
|
@@ -263,6 +263,7 @@ enum ast_sip_contact_status_type {
|
|||||||
UNKNOWN,
|
UNKNOWN,
|
||||||
CREATED,
|
CREATED,
|
||||||
REMOVED,
|
REMOVED,
|
||||||
|
UPDATED,
|
||||||
};
|
};
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@@ -42,6 +42,7 @@ static const char *status_map [] = {
|
|||||||
[UNKNOWN] = "Unknown",
|
[UNKNOWN] = "Unknown",
|
||||||
[CREATED] = "Created",
|
[CREATED] = "Created",
|
||||||
[REMOVED] = "Removed",
|
[REMOVED] = "Removed",
|
||||||
|
[UPDATED] = "Updated",
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char *short_status_map [] = {
|
static const char *short_status_map [] = {
|
||||||
@@ -50,6 +51,7 @@ static const char *short_status_map [] = {
|
|||||||
[UNKNOWN] = "Unknown",
|
[UNKNOWN] = "Unknown",
|
||||||
[CREATED] = "Created",
|
[CREATED] = "Created",
|
||||||
[REMOVED] = "Removed",
|
[REMOVED] = "Removed",
|
||||||
|
[UPDATED] = "Updated",
|
||||||
};
|
};
|
||||||
|
|
||||||
const char *ast_sip_get_contact_status_label(const enum ast_sip_contact_status_type status)
|
const char *ast_sip_get_contact_status_label(const enum ast_sip_contact_status_type status)
|
||||||
@@ -541,6 +543,16 @@ static void contact_created(const void *obj)
|
|||||||
qualify_and_schedule((struct ast_sip_contact *) obj);
|
qualify_and_schedule((struct ast_sip_contact *) obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \internal
|
||||||
|
* \brief A contact has been updated.
|
||||||
|
*/
|
||||||
|
static void contact_updated(const void *obj)
|
||||||
|
{
|
||||||
|
update_contact_status((struct ast_sip_contact *) obj, UPDATED);
|
||||||
|
qualify_and_schedule((struct ast_sip_contact *) obj);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \internal
|
* \internal
|
||||||
* \brief A contact has been deleted remove status tracking.
|
* \brief A contact has been deleted remove status tracking.
|
||||||
@@ -567,7 +579,8 @@ static void contact_deleted(const void *obj)
|
|||||||
|
|
||||||
static const struct ast_sorcery_observer contact_observer = {
|
static const struct ast_sorcery_observer contact_observer = {
|
||||||
.created = contact_created,
|
.created = contact_created,
|
||||||
.deleted = contact_deleted
|
.deleted = contact_deleted,
|
||||||
|
.updated = contact_updated
|
||||||
};
|
};
|
||||||
|
|
||||||
static pj_bool_t options_start(void)
|
static pj_bool_t options_start(void)
|
||||||
|
Reference in New Issue
Block a user