2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Asterisk  - -  An  open  source  telephony  toolkit . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Copyright  ( C )  2012  -  2013 ,  Digium ,  Inc . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  David  M .  Lee ,  II  < dlee @ digium . com > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  See  http : //www.asterisk.org for more information about
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  the  Asterisk  project .  Please  do  not  directly  contact 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  any  of  the  maintainers  of  this  project  for  assistance ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  the  project  provides  a  web  site ,  mailing  lists  and  IRC 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  channels  for  your  use . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  This  program  is  free  software ,  distributed  under  the  terms  of 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  the  GNU  General  Public  License  Version  2.  See  the  LICENSE  file 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  at  the  top  of  the  source  tree . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*! \file
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Generated  file  -  declares  stubs  to  be  implemented  in 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-27 23:11:02 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  res / ari / resource_events . c 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  WebSocket  resource 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ author  David  M .  Lee ,  II  < dlee @ digium . com > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  ! ! ! ! !                                DO  NOT  EDIT                         ! ! ! ! ! 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  This  file  is  generated  by  a  mustache  template .  Please  see  the  original 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-27 23:11:02 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  template  in  rest - api - templates / ari_resource . h . mustache 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifndef _ASTERISK_RESOURCE_EVENTS_H 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define _ASTERISK_RESOURCE_EVENTS_H 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-27 23:11:02 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "asterisk/ari.h" 
  
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_events_event_websocket() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_events_event_websocket_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Array of Applications to subscribe to. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-08-02 14:36:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * * app ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Length of app array. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-08-02 14:36:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									size_t  app_count ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Parsing context for app. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-08-02 14:36:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									char  * app_parse ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-09-04 12:25:07 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Subscribe to all Asterisk events. If provided, the applications listed will be subscribed to all events, effectively disabling the application specific subscriptions. Default is 'false'. */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									int  subscribe_all ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2015-05-17 20:36:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-07-31 11:27:23 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  WebSocket  connection  for  events . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ retval   0  success 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ retval  - 1  error 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  ast_ari_websocket_events_event_websocket_init ( void ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-08-18 15:07:49 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  WebSocket  connection  for  events . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ return  Nothing 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_websocket_events_event_websocket_dtor ( void ) ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-05-17 20:36:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  WebSocket  connection  for  events . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  ser  HTTP  TCP / TLS  Server  Session 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
									
										
										
										
											2015-07-31 11:27:23 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  \ param  session_id  The  id  of  the  current  session . 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-17 20:36:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ retval  0  success 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ retval  non - zero  error 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2015-07-31 11:27:23 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  ast_ari_websocket_events_event_websocket_attempted ( struct  ast_tcptls_session_instance  * ser ,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_variable  * headers ,  struct  ast_ari_events_event_websocket_args  * args ,  const  char  * session_id ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-17 20:36:41 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  WebSocket  connection  for  events . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-03 16:32:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  \ param  session  ARI  WebSocket . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters . 
							 
						 
					
						
							
								
									
										
										
										
											2015-07-31 11:27:23 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  \ param  session_id  The  id  of  the  current  session . 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2015-07-31 11:27:23 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_websocket_events_event_websocket_established ( struct  ast_ari_websocket_session  * session ,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_variable  * headers ,  struct  ast_ari_events_event_websocket_args  * args ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-05-22 16:09:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_events_user_event() */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  ast_ari_events_user_event_args  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! Event name */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * event_name ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! The name of the application that will receive this event */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * application ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! Array of URI for event source (channel:{channelId}, bridge:{bridgeId}, endpoint:{tech}/{resource}, deviceState:{deviceName} */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * * source ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! Length of source array. */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									size_t  source_count ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! Parsing context for source. */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									char  * source_parse ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-03 16:14:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The "variables" key in the body object holds custom key/value pairs to add to the user event. Ex. { "variables": { "key": "value" } } */ 
							 
						 
					
						
							
								
									
										
										
										
											2014-05-22 16:09:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  ast_json  * variables ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / events / user / { eventName } . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  body  The  JSON  body  from  which  to  parse  parameters . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  args  The  args  structure  to  parse  into . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ retval  zero  on  success 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ retval  non - zero  on  failure 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								int  ast_ari_events_user_event_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_events_user_event_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Generate  a  user  event . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_events_user_event ( struct  ast_variable  * headers ,  struct  ast_ari_events_user_event_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif  /* _ASTERISK_RESOURCE_EVENTS_H */