Asterisk - The Open Source Telephony Project GIT-master-f36a736
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 <jparker@digium.com>
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 */
34void 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 * \return \ref stasis_topic for system level changes
41 * \retval NULL on error
42 */
43struct 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 * \return \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 */
134int ast_stasis_system_init(void);
135
136#endif /* _ASTERISK_STASIS_SYSTEM_H */
jack_status_t status
Definition: app_jack.c:146
Stasis Message Bus API. See Stasis Message Bus API for detailed documentation.
struct stasis_message_type * ast_cc_monitorfailed_type(void)
A stasis_message_type for CCSS Monitor Failed 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.
struct stasis_message_type * ast_cc_recallcomplete_type(void)
A stasis_message_type for CCSS Recall Complete messages.
struct stasis_message_type * ast_system_registry_type(void)
A stasis_message_type for outbound registration.
struct stasis_message_type * ast_cc_callerrecalling_type(void)
A stasis_message_type for CCSS Caller Recalling messages.
struct stasis_message_type * ast_cluster_discovery_type(void)
A stasis_message_type for Cluster discovery.
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_failure_type(void)
A stasis_message_type for CCSS Failure 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_cc_available_type(void)
A stasis_message_type for CCSS Available messages.
struct stasis_message_type * ast_cc_requestacknowledged_type(void)
A stasis_message_type for CCSS Request Acknowledged messages.
struct stasis_message_type * ast_network_change_type(void)
A stasis_message_type for network changes.
struct stasis_message_type * ast_cc_callerstartmonitoring_type(void)
A stasis_message_type for CCSS Caller Start Monitoring messages.
struct stasis_message_type * ast_cc_offertimerstart_type(void)
A stasis_message_type for CCSS Offer Timer Start messages.
int ast_stasis_system_init(void)
Initialize the stasis system topic and message types.
struct stasis_message_type * ast_cc_requested_type(void)
A stasis_message_type for CCSS Requested messages.