Asterisk - The Open Source Telephony Project  18.5.0
stasis_system.h
Go to the documentation of this file.
1 /*
2  * Asterisk -- An open source telephony toolkit.
3  *
4  * Copyright (C) 2013, Digium, Inc.
5  *
6  * Jason Parker <[email protected]>
7  *
8  * See http://www.asterisk.org for more information about
9  * the Asterisk project. Please do not directly contact
10  * any of the maintainers of this project for assistance;
11  * the project provides a web site, mailing lists and IRC
12  * channels for your use.
13  *
14  * This program is free software, distributed under the terms of
15  * the GNU General Public License Version 2. See the LICENSE file
16  * at the top of the source tree.
17  */
18 
19 #ifndef _ASTERISK_STASIS_SYSTEM_H
20 #define _ASTERISK_STASIS_SYSTEM_H
21 
22 #include "asterisk/stasis.h"
23 
24 /*!
25  * \since 12
26  * \brief Publish a channel driver outgoing registration message
27  *
28  * \param channeltype The channel driver that published the message
29  * \param username The username that was used to register
30  * \param domain The domain that was used to register
31  * \param status The result of the registration
32  * \param cause The reason for the result
33  */
34 void ast_system_publish_registry(const char *channeltype, const char *username, const char *domain, const char *status, const char *cause);
35 
36 /*!
37  * \since 12
38  * \brief A \ref stasis topic which publishes messages regarding system changes
39  *
40  * \retval \ref stasis_topic for system level changes
41  * \retval NULL on error
42  */
43 struct stasis_topic *ast_system_topic(void);
44 
45 /*!
46  * \since 12
47  * \brief A \ref stasis_message_type for network changes
48  *
49  * \retval NULL on error
50  * \retval \ref stasis_message_type for network changes
51  *
52  * \note Messages of this type should always be issued on and expected from
53  * the \ref ast_system_topic \ref stasis topic
54  */
56 
57 /*!
58  * \brief A \ref stasis_message_type for outbound registration.
59  * \since 12
60  */
62 
63 /*!
64  * \brief A \ref stasis_message_type for CCSS Available messages.
65  * \since 12
66  */
68 
69 /*!
70  * \brief A \ref stasis_message_type for CCSS Offer Timer Start messages.
71  * \since 12
72  */
74 
75 /*!
76  * \brief A \ref stasis_message_type for CCSS Requested messages.
77  * \since 12
78  */
80 
81 /*!
82  * \brief A \ref stasis_message_type for CCSS Request Acknowledged messages.
83  * \since 12
84  */
86 
87 /*!
88  * \brief A \ref stasis_message_type for CCSS Caller Stop Monitoring messages.
89  * \since 12
90  */
92 
93 /*!
94  * \brief A \ref stasis_message_type for CCSS Caller Start Monitoring messages.
95  * \since 12
96  */
98 
99 /*!
100  * \brief A \ref stasis_message_type for CCSS Caller Recalling messages.
101  * \since 12
102  */
104 
105 /*!
106  * \brief A \ref stasis_message_type for CCSS Recall Complete messages.
107  * \since 12
108  */
110 
111 /*!
112  * \brief A \ref stasis_message_type for CCSS Failure messages.
113  * \since 12
114  */
116 
117 /*!
118  * \brief A \ref stasis_message_type for CCSS Monitor Failed messages.
119  * \since 12
120  */
122 
123 /*!
124  * \brief A \ref stasis_message_type for Cluster discovery
125  * \since 13.11.0
126  */
128 
129 /*!
130  * \brief Initialize the stasis system topic and message types
131  * \retval 0 on success
132  * \retval -1 on failure
133  */
134 int ast_stasis_system_init(void);
135 
136 #endif /* _ASTERISK_STASIS_SYSTEM_H */
struct stasis_message_type * ast_cc_callerstartmonitoring_type(void)
A stasis_message_type for CCSS Caller Start Monitoring messages.
int ast_stasis_system_init(void)
Initialize the stasis system topic and message types.
Stasis Message Bus API. See Stasis Message Bus API for detailed documentation.
struct stasis_message_type * ast_network_change_type(void)
A stasis_message_type for network changes.
struct stasis_message_type * ast_cc_callerrecalling_type(void)
A stasis_message_type for CCSS Caller Recalling messages.
Domain data structure.
Definition: sip.h:888
struct stasis_message_type * ast_cc_failure_type(void)
A stasis_message_type for CCSS Failure messages.
struct stasis_message_type * ast_cc_monitorfailed_type(void)
A stasis_message_type for CCSS Monitor Failed messages.
struct stasis_message_type * ast_cc_offertimerstart_type(void)
A stasis_message_type for CCSS Offer Timer Start messages.
struct stasis_message_type * ast_cc_callerstopmonitoring_type(void)
A stasis_message_type for CCSS Caller Stop Monitoring messages.
struct stasis_message_type * ast_system_registry_type(void)
A stasis_message_type for outbound registration.
struct stasis_topic * ast_system_topic(void)
A Stasis Message Bus API topic which publishes messages regarding system changes. ...
struct stasis_message_type * ast_cc_recallcomplete_type(void)
A stasis_message_type for CCSS Recall Complete messages.
struct stasis_message_type * ast_cluster_discovery_type(void)
A stasis_message_type for Cluster discovery.
struct stasis_message_type * ast_cc_requested_type(void)
A stasis_message_type for CCSS Requested messages.
struct stasis_message_type * ast_cc_requestacknowledged_type(void)
A stasis_message_type for CCSS Request Acknowledged messages.
struct stasis_message_type * ast_cc_available_type(void)
A stasis_message_type for CCSS Available messages.
void ast_system_publish_registry(const char *channeltype, const char *username, const char *domain, const char *status, const char *cause)
Publish a channel driver outgoing registration message.
jack_status_t status
Definition: app_jack.c:146