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_channels . c 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Channel  resources 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_CHANNELS_H 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define _ASTERISK_RESOURCE_CHANNELS_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_channels_list() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_list_args  {  
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
									
										
										
										
											2013-10-16 14:02:06 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  \ brief  List  all  active  channels  in  Asterisk . 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_list ( struct  ast_variable  * headers ,  struct  ast_ari_channels_list_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_originate() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_originate_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Endpoint to call. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * endpoint ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The extension to dial after the endpoint answers. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * extension ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The context to dial after the endpoint answers. If omitted, uses 'default'. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * context ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The priority to dial after the endpoint answers. If omitted, uses 1. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-28 16:23:24 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									long  priority ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The label to dial after the endpoint answers. Will supersede 'priority' if provided. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-07 18:53:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * label ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The application that is subscribed to the originated channel. When the channel is answered, it will be passed to this Stasis application. Mutually exclusive with 'context', 'extension', 'priority', and 'label'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-28 16:23:24 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The application arguments to pass to the Stasis application provided by 'app'. Mutually exclusive with 'context', 'extension', 'priority', and 'label'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-28 16:23:24 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app_args ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! CallerID to use when dialing the endpoint or extension. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-07 18:39:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * caller_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Timeout (in seconds) before giving up dialing, or -1 for no timeout. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-07 18:39:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  timeout ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-03 16:14:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The "variables" key in the body object holds variable key/value pairs to set on the channel on creation. Other keys in the body object are interpreted as query parameters. Ex. { "endpoint": "SIP/Alice", "variables": { "CALLERID(name)": "Alice" } } */ 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  ast_json  * variables ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The unique id to assign the channel on creation. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The unique id to assign the second channel when using local channels. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * other_channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-12-09 15:44:05 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The unique id of the channel which is originating this one. */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * originator ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-08-02 12:55:36 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The format name capability list to use if originator is not specified. Ex. "ulaw,slin16".  Format names can be found with "core show codecs". */ 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-27 13:49:42 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * formats ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_originate_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_originate_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Create  a  new  channel  ( originate ) . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-19 14:45:14 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  The  new  channel  is  created  immediately  and  a  snapshot  of  it  returned .  If  a  Stasis  application  is  provided  it  will  be  automatically  subscribed  to  the  originated  channel  for  further  events  and  updates . 
							 
						 
					
						
							
								
									
										
										
										
											2013-09-09 19:09:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_originate ( struct  ast_variable  * headers ,  struct  ast_ari_channels_originate_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_get() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_get_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Channel  details . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_get ( struct  ast_variable  * headers ,  struct  ast_ari_channels_get_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_originate_with_id() */  
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_originate_with_id_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The unique id to assign the channel on creation. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Endpoint to call. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * endpoint ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The extension to dial after the endpoint answers. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * extension ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The context to dial after the endpoint answers. If omitted, uses 'default'. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * context ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The priority to dial after the endpoint answers. If omitted, uses 1. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									long  priority ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The label to dial after the endpoint answers. Will supersede 'priority' if provided. Mutually exclusive with 'app'. */ 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-07 18:53:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * label ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The application that is subscribed to the originated channel. When the channel is answered, it will be passed to this Stasis application. Mutually exclusive with 'context', 'extension', 'priority', and 'label'. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The application arguments to pass to the Stasis application provided by 'app'. Mutually exclusive with 'context', 'extension', 'priority', and 'label'. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app_args ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! CallerID to use when dialing the endpoint or extension. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * caller_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Timeout (in seconds) before giving up dialing, or -1 for no timeout. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  timeout ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-03 16:14:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The "variables" key in the body object holds variable key/value pairs to set on the channel on creation. Other keys in the body object are interpreted as query parameters. Ex. { "endpoint": "SIP/Alice", "variables": { "CALLERID(name)": "Alice" } } */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									struct  ast_json  * variables ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The unique id to assign the second channel when using local channels. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * other_channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-12-09 15:44:05 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The unique id of the channel which is originating this one. */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * originator ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-08-02 12:55:36 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The format name capability list to use if originator is not specified. Ex. "ulaw,slin16".  Format names can be found with "core show codecs". */ 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-27 13:49:42 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * formats ; 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_originate_with_id_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_originate_with_id_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Create  a  new  channel  ( originate  with  id ) . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  The  new  channel  is  created  immediately  and  a  snapshot  of  it  returned .  If  a  Stasis  application  is  provided  it  will  be  automatically  subscribed  to  the  originated  channel  for  further  events  and  updates . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_originate_with_id ( struct  ast_variable  * headers ,  struct  ast_ari_channels_originate_with_id_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_hangup() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_hangup_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Reason for hanging up the channel */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * reason ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_hangup_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_hangup_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Delete  ( i . e .  hangup )  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_hangup ( struct  ast_variable  * headers ,  struct  ast_ari_channels_hangup_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_continue_in_dialplan() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_continue_in_dialplan_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The context to continue to. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-26 19:29:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * context ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The extension to continue to. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-26 19:29:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * extension ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The priority to continue to. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-26 19:29:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  priority ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-07 18:53:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The label to continue to - will supersede 'priority' if both are provided. */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * label ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / continue . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_continue_in_dialplan_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_continue_in_dialplan_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Exit  application ;  continue  execution  in  the  dialplan . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_continue_in_dialplan ( struct  ast_variable  * headers ,  struct  ast_ari_channels_continue_in_dialplan_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
											 
										
											
												ARI/PJSIP: Add the ability to redirect (transfer) a channel in a Stasis app
This patch adds a new feature to ARI to redirect a channel to another server,
and fixes a few bugs in PJSIP's handling of the Transfer dialplan
application/ARI redirect capability.
*New Feature*
A new operation has been added to the ARI channels resource, redirect. With
this, a channel in a Stasis application can be redirected to another endpoint
of the same underlying channel technology.
*Bug fixes*
In the process of writing this new feature, two bugs were fixed in the PJSIP
stack:
(1) The existing .transfer channel callback had the limitation that it could
    only transfer channels to a SIP URI, i.e., you had to pass
    'PJSIP/sip:foo@my_provider.com' to the dialplan application. While this is
    still supported, it is somewhat unintuitive - particularly in a world full
    of endpoints. As such, we now also support specifying the PJSIP endpoint to
    transfer to.
(2) res_pjsip_multihomed was, unfortunately, trying to 'help' a 302 redirect by
    updating its Contact header. Alas, that resulted in the forwarding
    destination set by the dialplan application/ARI resource/whatever being
    rewritten with very incorrect information. Hence, we now don't bother
    updating an outgoing response if it is a 302. Since this took a looong time
    to find, some additional debug statements have been added to those modules
    that update the Contact headers.
Review: https://reviewboard.asterisk.org/r/4316/
ASTERISK-24015 #close
Reported by: Private Name
ASTERISK-24703 #close
Reported by: Matt Jordan
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@431717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2015-02-12 20:32:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_redirect() */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  ast_ari_channels_redirect_args  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									/*! The endpoint to redirect the channel to */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									const  char  * endpoint ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / redirect . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_redirect_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_redirect_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Redirect  the  channel  to  a  different  location . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_redirect ( struct  ast_variable  * headers ,  struct  ast_ari_channels_redirect_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_answer() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_answer_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Answer  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_answer ( struct  ast_variable  * headers ,  struct  ast_ari_channels_answer_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_ring() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_ring_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Indicate  ringing  to  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_ring ( struct  ast_variable  * headers ,  struct  ast_ari_channels_ring_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_ring_stop() */  
						 
					
						
							
								
									
										
										
										
											2013-11-13 23:11:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_ring_stop_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-13 23:11:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Stop  ringing  indication  on  a  channel  if  locally  generated . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_ring_stop ( struct  ast_variable  * headers ,  struct  ast_ari_channels_ring_stop_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_send_dtmf() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_send_dtmf_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! DTMF To send. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * dtmf ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Amount of time to wait before DTMF digits (specified in milliseconds) start. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  before ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Amount of time in between DTMF digits (specified in milliseconds). */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  between ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Length of each DTMF digit (specified in milliseconds). */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  duration ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Amount of time to wait after DTMF digits (specified in milliseconds) end. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  after ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / dtmf . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_send_dtmf_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_send_dtmf_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-01 14:38:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Send  provided  DTMF  to  a  given  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_send_dtmf ( struct  ast_variable  * headers ,  struct  ast_ari_channels_send_dtmf_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_mute() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_mute_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Direction in which to mute audio */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * direction ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / mute . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_mute_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_mute_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Mute  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_mute ( struct  ast_variable  * headers ,  struct  ast_ari_channels_mute_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_unmute() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_unmute_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Direction in which to unmute audio */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * direction ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / mute . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_unmute_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_unmute_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Unmute  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_unmute ( struct  ast_variable  * headers ,  struct  ast_ari_channels_unmute_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_hold() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_hold_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Hold  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_hold ( struct  ast_variable  * headers ,  struct  ast_ari_channels_hold_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_unhold() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_unhold_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Remove  a  channel  from  hold . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_unhold ( struct  ast_variable  * headers ,  struct  ast_ari_channels_unhold_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_start_moh() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_start_moh_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-19 19:40:27 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Music on hold class to use */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-19 19:40:27 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * moh_class ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / moh . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_start_moh_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_start_moh_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-19 19:40:27 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Play  music  on  hold  to  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-21 15:56:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Using  media  operations  such  as  / play  on  a  channel  playing  MOH  in  this  manner  will  suspend  MOH  without  resuming  automatically .  If  continuing  music  on  hold  is  desired ,  the  stasis  application  must  reinitiate  music  on  hold . 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-19 19:40:27 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_start_moh ( struct  ast_variable  * headers ,  struct  ast_ari_channels_start_moh_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_stop_moh() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_stop_moh_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-19 19:40:27 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Stop  playing  music  on  hold  to  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_stop_moh ( struct  ast_variable  * headers ,  struct  ast_ari_channels_stop_moh_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_start_silence() */  
						 
					
						
							
								
									
										
										
										
											2013-11-21 15:56:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_start_silence_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-21 15:56:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Play  silence  to  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Using  media  operations  such  as  / play  on  a  channel  playing  silence  in  this  manner  will  suspend  silence  without  resuming  automatically . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_start_silence ( struct  ast_variable  * headers ,  struct  ast_ari_channels_start_silence_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_stop_silence() */  
						 
					
						
							
								
									
										
										
										
											2013-11-21 15:56:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_stop_silence_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-21 15:56:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Stop  playing  silence  to  a  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_stop_silence ( struct  ast_variable  * headers ,  struct  ast_ari_channels_stop_silence_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_play() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_play_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Media's URI to play. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * media ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! For sounds, selects language for sound. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-05-23 20:11:35 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * lang ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Number of media to skip before playing. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-05-23 20:21:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  offsetms ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Number of milliseconds to skip for forward/reverse operations. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-05-23 20:21:16 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  skipms ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Playback ID. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * playback_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / play . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_play_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_play_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Start  playback  of  media . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2014-04-17 21:57:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  The  media  URI  may  be  any  of  a  number  of  URI ' s .  Currently  sound : ,  recording : ,  number : ,  digits : ,  characters : ,  and  tone :  URI ' s  are  supported .  This  operation  creates  a  playback  resource  that  can  be  used  to  control  the  playback  of  media  ( pause ,  rewind ,  fast  forward ,  etc . ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_play ( struct  ast_variable  * headers ,  struct  ast_ari_channels_play_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_play_with_id() */  
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_play_with_id_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Playback ID. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * playback_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Media's URI to play. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * media ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! For sounds, selects language for sound. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * lang ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Number of media to skip before playing. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  offsetms ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Number of milliseconds to skip for forward/reverse operations. */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									int  skipms ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / play / { playbackId } . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_play_with_id_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_play_with_id_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Start  playback  of  media  and  specify  the  playbackId . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-27 17:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  The  media  URI  may  be  any  of  a  number  of  URI ' s .  Currently  sound : ,  recording : ,  number : ,  digits : ,  characters : ,  and  tone :  URI ' s  are  supported .  This  operation  creates  a  playback  resource  that  can  be  used  to  control  the  playback  of  media  ( pause ,  rewind ,  fast  forward ,  etc . ) 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_play_with_id ( struct  ast_variable  * headers ,  struct  ast_ari_channels_play_with_id_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_record() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_record_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Recording's filename */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * name ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Format to encode audio in */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * format ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Maximum duration of the recording, in seconds. 0 for no limit */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									int  max_duration_seconds ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Maximum duration of silence, in seconds. 0 for no limit */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									int  max_silence_seconds ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Action to take if a recording with the same name already exists. */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-03 17:58:45 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * if_exists ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Play beep when recording begins */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									int  beep ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! DTMF input to terminate recording */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									const  char  * terminate_on ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / record . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_record_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_record_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Start  a  recording . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Record  audio  from  a  channel .  Note  that  this  will  not  capture  audio  sent  to  the  channel .  The  bridge  itself  has  a  record  feature  if  that ' s  what  you  want . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_record ( struct  ast_variable  * headers ,  struct  ast_ari_channels_record_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_get_channel_var() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_get_channel_var_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The channel variable or function to get */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * variable ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / variable . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_get_channel_var_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_get_channel_var_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Get  the  value  of  a  channel  variable  or  function . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_get_channel_var ( struct  ast_variable  * headers ,  struct  ast_ari_channels_get_channel_var_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_set_channel_var() */  
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_set_channel_var_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The channel variable or function to set */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * variable ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The value to set the variable to */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / variable . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_set_channel_var_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_set_channel_var_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-08 14:46:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Set  the  value  of  a  channel  variable  or  function . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-07 21:10:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  ast_ari_channels_set_channel_var ( struct  ast_variable  * headers ,  struct  ast_ari_channels_set_channel_var_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_snoop_channel() */  
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_snoop_channel_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Direction of audio to spy on */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * spy ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Direction of audio to whisper into */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * whisper ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Application the snooping channel is placed into */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The application arguments to pass to the Stasis application */ 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app_args ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Unique ID to assign to snooping channel */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * snoop_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
									
										
										
										
											2014-01-21 14:27:21 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / snoop . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_snoop_channel_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_snoop_channel_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-23 12:40:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Start  snooping . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Snoop  ( spy / whisper )  on  a  specific  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_snoop_channel ( struct  ast_variable  * headers ,  struct  ast_ari_channels_snoop_channel_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/*! Argument struct for ast_ari_channels_snoop_channel_with_id() */  
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  ast_ari_channels_snoop_channel_with_id_args  {  
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Channel's id */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * channel_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Unique ID to assign to snooping channel */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * snoop_id ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Direction of audio to spy on */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * spy ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Direction of audio to whisper into */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * whisper ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! Application the snooping channel is placed into */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-02 21:13:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									/*! The application arguments to pass to the Stasis application */ 
							 
						 
					
						
							
								
									
										
											 
										
											
												uniqueid: channel linkedid, ami, ari object creation with id's
Much needed was a way to assign id to objects on creation, and
much change was necessary to accomplish it.  Channel uniqueids
and linkedids are split into separate string and creation time
components without breaking linkedid propgation.  This allowed
the uniqueid to be specified by the user interface - and those
values are now carried through to channel creation, adding the
assignedids value to every function in the chain including the
channel drivers. For local channels, the second channel can be
specified or left to default to a ;2 suffix of first.  In ARI,
bridge, playback, and snoop objects can also be created with a
specified uniqueid.
Along the way, the args order to allocating channels was fixed
in chan_mgcp and chan_gtalk, and linkedid is no longer lost as
masquerade occurs.
(closes issue ASTERISK-23120)
Review: https://reviewboard.asterisk.org/r/3191/
........
Merged revisions 410157 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@410158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
											 
										 
										
											2014-03-07 15:47:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									const  char  * app_args ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Body  parsing  function  for  / channels / { channelId } / snoop / { snoopId } . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ 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_channels_snoop_channel_with_id_parse_body (  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_json  * body , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									struct  ast_ari_channels_snoop_channel_with_id_args  * args ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*!
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ brief  Start  snooping . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Snoop  ( spy / whisper )  on  a  specific  channel . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  headers  HTTP  headers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param  args  Swagger  parameters 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  \ param [ out ]  response  HTTP  response 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  ast_ari_channels_snoop_channel_with_id ( struct  ast_variable  * headers ,  struct  ast_ari_channels_snoop_channel_with_id_args  * args ,  struct  ast_ari_response  * response ) ;  
						 
					
						
							
								
									
										
										
										
											2013-04-22 14:58:53 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif  /* _ASTERISK_RESOURCE_CHANNELS_H */