mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Manager: Short circuit AMI message processing.
Improve AMI message processing performance if there are no consumers listening for the messages. We now skip creating the AMI event message text strings. Change-Id: I7b22fc5ec4e500d00635c1a467aa8ea68a1bb2b3
This commit is contained in:
@@ -416,14 +416,14 @@ const struct timeval *stasis_message_timestamp(const struct stasis_message *msg)
|
||||
* May return \c NULL, to indicate no representation. The returned object should
|
||||
* be ast_json_unref()'ed.
|
||||
*
|
||||
* \param message Message to convert to JSON string.
|
||||
* \param msg Message to convert to JSON string.
|
||||
* \param sanitize Snapshot sanitization callback.
|
||||
*
|
||||
* \return Newly allocated string with JSON message.
|
||||
* \return \c NULL on error.
|
||||
* \return \c NULL if JSON format is not supported.
|
||||
*/
|
||||
struct ast_json *stasis_message_to_json(struct stasis_message *message, struct stasis_message_sanitizer *sanitize);
|
||||
struct ast_json *stasis_message_to_json(struct stasis_message *msg, struct stasis_message_sanitizer *sanitize);
|
||||
|
||||
/*!
|
||||
* \brief Build the AMI representation of the message.
|
||||
@@ -431,12 +431,21 @@ struct ast_json *stasis_message_to_json(struct stasis_message *message, struct s
|
||||
* May return \c NULL, to indicate no representation. The returned object should
|
||||
* be ao2_cleanup()'ed.
|
||||
*
|
||||
* \param message Message to convert to AMI.
|
||||
* \param msg Message to convert to AMI.
|
||||
* \return \c NULL on error.
|
||||
* \return \c NULL if AMI format is not supported.
|
||||
*/
|
||||
struct ast_manager_event_blob *stasis_message_to_ami(
|
||||
struct stasis_message *message);
|
||||
struct ast_manager_event_blob *stasis_message_to_ami(struct stasis_message *msg);
|
||||
|
||||
/*!
|
||||
* \brief Determine if the given message can be converted to AMI.
|
||||
*
|
||||
* \param msg Message to see if can be converted to AMI.
|
||||
*
|
||||
* \retval 0 Cannot be converted
|
||||
* \retval non-zero Can be converted
|
||||
*/
|
||||
int stasis_message_can_be_ami(struct stasis_message *msg);
|
||||
|
||||
/*!
|
||||
* \brief Build the \ref AstGenericEvents representation of the message.
|
||||
@@ -444,12 +453,11 @@ struct ast_manager_event_blob *stasis_message_to_ami(
|
||||
* May return \c NULL, to indicate no representation. The returned object should
|
||||
* be disposed of via \ref ast_event_destroy.
|
||||
*
|
||||
* \param message Message to convert to AMI.
|
||||
* \param msg Message to convert to AMI.
|
||||
* \return \c NULL on error.
|
||||
* \return \c NULL if AMI format is not supported.
|
||||
*/
|
||||
struct ast_event *stasis_message_to_event(
|
||||
struct stasis_message *message);
|
||||
struct ast_event *stasis_message_to_event(struct stasis_message *msg);
|
||||
|
||||
/*! @} */
|
||||
|
||||
|
Reference in New Issue
Block a user