32 #if defined(__cplusplus) || defined(c_plusplus) 141 #define AST_CEL_EVENT_RECORD_VERSION 2 286 const char *userdefevname,
struct ast_json *
extra,
const char *peer_str);
317 #if defined(__cplusplus) || defined(c_plusplus) const char * account_code
the last channel with the given linkedid is retired
const char * caller_id_name
Helper struct for getting the fields out of a CEL event.
Main Channel structure associated with a channel.
const char * user_defined_name
int ast_cel_backend_register(const char *name, ast_cel_backend_cb backend_callback)
Register a CEL backend.
const char * application_data
const char * application_name
A local channel optimization occurred.
Structure representing a snapshot of channel state.
static char date_format[6]
unsigned int ast_cel_check_enabled(void)
Check to see if CEL is enabled.
#define AST_DECLARE_STRING_FIELDS(field_list)
Declare the fields needed in a structure.
const char * caller_id_num
struct ast_event * ast_cel_create_event_with_time(struct ast_channel_snapshot *snapshot, enum ast_cel_event_type event_type, const struct timeval *event_time, const char *userdefevname, struct ast_json *extra, const char *peer_str)
Allocate and populate a CEL event structure.
const char * ast_cel_get_type_name(enum ast_cel_event_type type)
Get the name of a CEL event type.
void ast_cel_set_config(struct ast_cel_general_config *config)
Set the current CEL configuration.
void(* ast_cel_backend_cb)(struct ast_event *event)
CEL backend callback.
#define AST_STRING_FIELD(name)
Declare a string field.
uint32_t version
struct ABI version
hangup terminates connection
int ast_cel_backend_unregister(const char *name)
Unregister a CEL backend.
enum ast_cel_event_type event_type
const char * caller_id_rdnis
struct ao2_container * apps
struct ast_cel_general_config * ast_cel_get_config(void)
Obtain the current CEL configuration.
struct ast_channel * ast_cel_fabricate_channel_from_event(const struct ast_event *event)
Create a fake channel from data in a CEL event.
const char * caller_id_ani
const char * peer_account
A structure to hold CEL global configuration options.
struct stasis_topic * ast_cel_topic(void)
Get the CEL topic.
enum ast_cel_event_type ast_cel_str_to_event_type(const char *name)
Get the event type from a string.
void * ast_cel_general_config_alloc(void)
Allocate a CEL configuration object.
A ringing phone is answered.
Abstract JSON element (object, array, string, int, ...).
a user-defined event, the event name field should be set
ast_cel_event_type
CEL event types.
const char * caller_id_dnid
const char * channel_name
struct ast_event * ast_cel_create_event(struct ast_channel_snapshot *snapshot, enum ast_cel_event_type event_type, const char *userdefevname, struct ast_json *extra, const char *peer_str)
Allocate and populate a CEL event structure.
struct timeval event_time
a directed pickup was performed on this channel
this call was forwarded somewhere else
void ast_cel_publish_event(struct ast_channel *chan, enum ast_cel_event_type event_type, struct ast_json *blob)
Publish a CEL event.
int ast_cel_fill_record(const struct ast_event *event, struct ast_cel_event_record *r)
Fill in an ast_cel_event_record from a CEL event.