Revision
16772
Author
sathieu
Date
2010-02-24 06:01:21 -0600 (Wed, 24 Feb 2010)

Log Message

Skinny: Milestone 8: Miscellaneous (handle HeadsetStatusMessage)

Modified Paths

Diff

Modified: freeswitch/trunk/src/mod/endpoints/mod_skinny/mod_skinny.c (16771 => 16772)


--- freeswitch/trunk/src/mod/endpoints/mod_skinny/mod_skinny.c	2010-02-24 12:01:13 UTC (rev 16771)
+++ freeswitch/trunk/src/mod/endpoints/mod_skinny/mod_skinny.c	2010-02-24 12:01:21 UTC (rev 16772)
@@ -179,9 +179,10 @@
 	uint32_t maxStreams;
 };
 
-/* IpPortMessage */
+/* PortMessage */
 #define PORT_MESSAGE 0x0002
 
+/* SpeedDialStatReqMessage */
 #define SPEED_DIAL_STAT_REQ_MESSAGE 0x000A
 struct speed_dial_stat_req_message {
 	uint32_t number;
@@ -203,6 +204,7 @@
 /* ButtonTemplateReqMessage */
 #define BUTTON_TEMPLATE_REQ_MESSAGE 0x000E
 
+/* CapabilitiesResMessage */
 #define CAPABILITIES_RES_MESSAGE 0x0010
 struct capabilities_res_message {
 	uint32_t count;
@@ -227,6 +229,13 @@
 /* SoftKeyTemplateReqMessage */
 #define SOFT_KEY_TEMPLATE_REQ_MESSAGE 0x0028
 
+/* HeadsetStatusMessage */
+#define HEADSET_STATUS_MESSAGE 0x002B
+struct headset_status_message {
+	uint32_t mode;
+};
+
+
 /* RegisterAvailableLinesMessage */
 #define REGISTER_AVAILABLE_LINES_MESSAGE 0x002D
 struct register_available_lines_message {
@@ -323,6 +332,7 @@
 
 union skinny_data {
 	struct register_message reg;
+	struct headset_status_message headset_status;
 	struct register_available_lines_message reg_lines;
 	struct register_ack_message reg_ack;
 	struct speed_dial_stat_req_message speed_dial_req;
@@ -1346,6 +1356,14 @@
 	return status;
 }
 
+static switch_status_t skinny_headset_status_message(listener_t *listener, skinny_message_t *request)
+{
+	skinny_check_data_length(request, sizeof(request->data.headset_status));
+	
+	/* Nothing to do */
+	return SWITCH_STATUS_SUCCESS;
+}
+
 static switch_status_t skinny_handle_capabilities_response(listener_t *listener, skinny_message_t *request)
 {
 	char *sql;
@@ -1693,6 +1711,8 @@
 			return skinny_handle_alarm(listener, request);
 		case REGISTER_MESSAGE:
 			return skinny_handle_register(listener, request);
+		case HEADSET_STATUS_MESSAGE:
+			return skinny_headset_status_message(listener, request);
 		case CAPABILITIES_RES_MESSAGE:
 			return skinny_handle_capabilities_response(listener, request);
 		case PORT_MESSAGE: