[asterisk-commits] russell: branch russell/events r103657 - in /team/russell/events: configs/ in...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Feb 13 09:32:01 CST 2008


Author: russell
Date: Wed Feb 13 09:32:00 2008
New Revision: 103657

URL: http://svn.digium.com/view/asterisk?view=rev&rev=103657
Log:
 - Enable device state as a supported event type in res_ais
 - update res_ais for API changes to let it compile again

Modified:
    team/russell/events/configs/ais.conf.sample
    team/russell/events/include/asterisk/utils.h
    team/russell/events/main/netsock.c
    team/russell/events/res/ais/clm.c
    team/russell/events/res/ais/evt.c
    team/russell/events/res/ais/lck.c
    team/russell/events/res/res_eventtest.c

Modified: team/russell/events/configs/ais.conf.sample
URL: http://svn.digium.com/view/asterisk/team/russell/events/configs/ais.conf.sample?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/configs/ais.conf.sample (original)
+++ team/russell/events/configs/ais.conf.sample Wed Feb 13 09:32:00 2008
@@ -38,7 +38,7 @@
 ; from other nodes in the event channel by using the subscribe_event directive.
 ;    subscribe_event=mwi
 ;
-; Supported event types include: mwi
+; Supported event types include: mwi, device_state
 ;
 
 ;

Modified: team/russell/events/include/asterisk/utils.h
URL: http://svn.digium.com/view/asterisk/team/russell/events/include/asterisk/utils.h?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/include/asterisk/utils.h (original)
+++ team/russell/events/include/asterisk/utils.h Wed Feb 13 09:32:00 2008
@@ -672,6 +672,6 @@
 
 int ast_str_to_eid(struct ast_eid *eid, const char *s);
 
-int ast_eid_cmp(struct ast_eid *eid1, struct ast_eid *eid2);
+int ast_eid_cmp(const struct ast_eid *eid1, const struct ast_eid *eid2);
 
 #endif /* _ASTERISK_UTILS_H */

Modified: team/russell/events/main/netsock.c
URL: http://svn.digium.com/view/asterisk/team/russell/events/main/netsock.c?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/main/netsock.c (original)
+++ team/russell/events/main/netsock.c Wed Feb 13 09:32:00 2008
@@ -286,7 +286,7 @@
 	return 0;
 }
 
-int ast_eid_cmp(struct ast_eid *eid1, struct ast_eid *eid2)
+int ast_eid_cmp(const struct ast_eid *eid1, const struct ast_eid *eid2)
 {
 	return memcmp(eid1, eid2, sizeof(*eid1));
 }

Modified: team/russell/events/res/ais/clm.c
URL: http://svn.digium.com/view/asterisk/team/russell/events/res/ais/clm.c?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/res/ais/clm.c (original)
+++ team/russell/events/res/ais/clm.c Wed Feb 13 09:32:00 2008
@@ -129,7 +129,7 @@
 }
 
 static struct ast_cli_entry ais_cli[] = {
-	NEW_CLI(ais_clm_show_members, "List current members of the cluster"),
+	AST_CLI_DEFINE(ais_clm_show_members, "List current members of the cluster"),
 };
 
 int ast_ais_clm_load_module(void)

Modified: team/russell/events/res/ais/evt.c
URL: http://svn.digium.com/view/asterisk/team/russell/events/res/ais/evt.c?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/res/ais/evt.c (original)
+++ team/russell/events/res/ais/evt.c Wed Feb 13 09:32:00 2008
@@ -64,15 +64,12 @@
 	const char *str;
 	enum ast_event_type type;
 } supported_event_types[] = {
-	{ "mwi", AST_EVENT_MWI },	
+	{ "mwi", AST_EVENT_MWI },
+	{ "device_state", AST_EVENT_DEVICE_STATE_CHANGE },
 };
 
 /*! Used to provide unique id's to egress subscriptions */
 static int unique_id;
-
-/*! \brief This server's unique entity ID */
-static struct ast_eid g_eid;
-static char g_eid_str[32];
 
 struct subscribe_event {
 	AST_LIST_ENTRY(subscribe_event) entry;
@@ -109,6 +106,8 @@
 
 static void queue_event(struct ast_event *ast_event)
 {
+	enum ast_event_type type;
+
 	/*! 
 	 * \todo This hack macks me sad.  I need to come up with a better way to
 	 *       figure out whether an event should be cached or not, and what
@@ -120,10 +119,17 @@
 	 *       have it be the job of the event publishers.
 	 */
 
-	if (ast_event_get_type(ast_event) == AST_EVENT_MWI) {
+	type = ast_event_get_type(ast_event);
+
+	if (type == AST_EVENT_MWI) {
 		ast_event_queue_and_cache(ast_event,
 			AST_EVENT_IE_MAILBOX, AST_EVENT_IE_PLTYPE_STR,
 			AST_EVENT_IE_CONTEXT, AST_EVENT_IE_PLTYPE_STR,
+			AST_EVENT_IE_END);
+	} else if (type == AST_EVENT_DEVICE_STATE_CHANGE) {
+		ast_event_queue_and_cache(ast_event,
+			AST_EVENT_IE_DEVICE, AST_EVENT_IE_PLTYPE_STR,
+			AST_EVENT_IE_EID, AST_EVENT_IE_PLTYPE_RAW,
 			AST_EVENT_IE_END);
 	} else {
 		ast_event_queue(ast_event);
@@ -309,7 +315,7 @@
 }
 
 static struct ast_cli_entry ais_cli[] = {
-	NEW_CLI(ais_evt_show_event_channels, "Show configured event channels"),
+	AST_CLI_DEFINE(ais_evt_show_event_channels, "Show configured event channels"),
 };
 
 static void add_publish_event(struct event_channel *event_channel, const char *event_type)
@@ -546,8 +552,6 @@
 {
 	SaAisErrorT ais_res;
 
-	ast_eid_to_str(g_eid_str, sizeof(g_eid_str), &g_eid);
-
 	ais_res = saEvtInitialize(&evt_handle, &evt_callbacks, &ais_version);
 	if (ais_res != SA_AIS_OK) {
 		ast_log(LOG_ERROR, "Could not initialize eventing service: %s\n",

Modified: team/russell/events/res/ais/lck.c
URL: http://svn.digium.com/view/asterisk/team/russell/events/res/ais/lck.c?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/res/ais/lck.c (original)
+++ team/russell/events/res/ais/lck.c Wed Feb 13 09:32:00 2008
@@ -48,6 +48,7 @@
 #include "asterisk/app.h"
 #include "asterisk/astobj2.h"
 #include "asterisk/strings.h"
+#include "asterisk/channel.h"
 
 SaLckHandleT lck_handle;
 

Modified: team/russell/events/res/res_eventtest.c
URL: http://svn.digium.com/view/asterisk/team/russell/events/res/res_eventtest.c?view=diff&rev=103657&r1=103656&r2=103657
==============================================================================
--- team/russell/events/res/res_eventtest.c (original)
+++ team/russell/events/res/res_eventtest.c Wed Feb 13 09:32:00 2008
@@ -156,8 +156,8 @@
 }
 
 static struct ast_cli_entry cli_commands[] = {
-	NEW_CLI(event_gen, "Generate a test event"),
-	NEW_CLI(event_get_cached, "Get an event from the cache"),
+	AST_CLI_DEFINE(event_gen, "Generate a test event"),
+	AST_CLI_DEFINE(event_get_cached, "Get an event from the cache"),
 };
 
 static int load_module(void)




More information about the asterisk-commits mailing list