]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
swigall
authorAnthony Minessale <anthm@freeswitch.org>
Tue, 15 Oct 2013 20:31:28 +0000 (15:31 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Tue, 15 Oct 2013 20:31:28 +0000 (15:31 -0500)
src/mod/languages/mod_java/src/org/freeswitch/swig/API.java
src/mod/languages/mod_java/src/org/freeswitch/swig/freeswitchJNI.java
src/mod/languages/mod_java/switch_swig_wrap.cpp
src/mod/languages/mod_lua/mod_lua_wrap.cpp
src/mod/languages/mod_managed/freeswitch_wrap.cxx
src/mod/languages/mod_managed/managed/swig.cs
src/mod/languages/mod_perl/mod_perl_wrap.cpp
src/mod/languages/mod_python/mod_python_wrap.cpp

index 283518f1d6ed3bdd1ce749edeeaa0f668b341f4f..5fd3da9bb011467cf08f3261239f4d88e111f5c5 100644 (file)
@@ -33,8 +33,8 @@ public class API {
     swigCPtr = 0;
   }
 
-  public API() {
-    this(freeswitchJNI.new_API(), true);
+  public API(CoreSession s) {
+    this(freeswitchJNI.new_API(CoreSession.getCPtr(s), s), true);
   }
 
   public String execute(String command, String data) {
index 8069552b948e1e14067056a8e3c77b20dc6b4e28..111f1288633f621c7262c1970d78e56d7902da96 100644 (file)
@@ -19,7 +19,7 @@ class freeswitchJNI {
   public final static native void delete_IVRMenu(long jarg1);
   public final static native void IVRMenu_bindAction(long jarg1, IVRMenu jarg1_, String jarg2, String jarg3, String jarg4);
   public final static native void IVRMenu_execute(long jarg1, IVRMenu jarg1_, long jarg2, CoreSession jarg2_, String jarg3);
-  public final static native long new_API();
+  public final static native long new_API(long jarg1, CoreSession jarg1_);
   public final static native void delete_API(long jarg1);
   public final static native String API_execute(long jarg1, API jarg1_, String jarg2, String jarg3);
   public final static native String API_executeString(long jarg1, API jarg1_, String jarg2);
index eaf160ba9c53c14c79a68f6663ef61c836373e1c..76de068715784b37b040c714d0809467b6e4cd15 100644 (file)
@@ -521,13 +521,16 @@ SWIGEXPORT void JNICALL Java_org_freeswitch_swig_freeswitchJNI_IVRMenu_1execute(
 }
 
 
-SWIGEXPORT jlong JNICALL Java_org_freeswitch_swig_freeswitchJNI_new_1API(JNIEnv *jenv, jclass jcls) {
+SWIGEXPORT jlong JNICALL Java_org_freeswitch_swig_freeswitchJNI_new_1API(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
   jlong jresult = 0 ;
+  CoreSession *arg1 = (CoreSession *) NULL ;
   API *result = 0 ;
   
   (void)jenv;
   (void)jcls;
-  result = (API *)new API();
+  (void)jarg1_;
+  arg1 = *(CoreSession **)&jarg1; 
+  result = (API *)new API(arg1);
   *(API **)&jresult = result; 
   return jresult;
 }
index 130eab949a4e6c9218cf0b8a89e1ec791d83c84a..591cef641a7eec35ba6c0b0a7442e03e39099de9 100644 (file)
@@ -1877,10 +1877,17 @@ static swig_lua_class _wrap_class_IVRMenu = { "IVRMenu", &SWIGTYPE_p_IVRMenu,_wr
 
 static int _wrap_new_API(lua_State* L) {
   int SWIG_arg = -1;
+  CoreSession *arg1 = (CoreSession *) NULL ;
   API *result = 0 ;
   
-  SWIG_check_num_args("API",0,0)
-  result = (API *)new API();
+  SWIG_check_num_args("API",0,1)
+  if(lua_gettop(L)>=1 && !SWIG_isptrtype(L,1)) SWIG_fail_arg("API",1,"CoreSession *");
+  if(lua_gettop(L)>=1){
+    if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_CoreSession,0))){
+      SWIG_fail_ptr("new_API",1,SWIGTYPE_p_CoreSession);
+    }
+  }
+  result = (API *)new API(arg1);
   SWIG_arg=0;
   SWIG_NewPointerObj(L,result,SWIGTYPE_p_API,1); SWIG_arg++; 
   return SWIG_arg;
index 756259d4d2619e2639fc9fe46b7425e8423037c7..2c57e207a4d059fe545b0eb4498e2512947139d6 100644 (file)
@@ -2081,6 +2081,17 @@ SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_MAX_TRANS_get() {
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_CORE_SESSION_MAX_PRIVATES_get() {
+  int jresult ;
+  int result;
+  
+  result = (int) 2;
+  
+  jresult = result; 
+  return jresult;
+}
+
+
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_dtmf_t_digit_set(void * jarg1, char jarg2) {
   switch_dtmf_t *arg1 = (switch_dtmf_t *) 0 ;
   char arg2 ;
@@ -10217,27 +10228,31 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_receive_event(void * jarg1
 }
 
 
-SWIGEXPORT void * SWIGSTDCALL CSharp_switch_core_session_get_private(void * jarg1) {
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_core_session_get_private_class(void * jarg1, int jarg2) {
   void * jresult ;
   switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;
+  switch_pvt_class_t arg2 ;
   void *result = 0 ;
   
   arg1 = (switch_core_session_t *)jarg1; 
-  result = (void *)switch_core_session_get_private(arg1);
+  arg2 = (switch_pvt_class_t)jarg2; 
+  result = (void *)switch_core_session_get_private_class(arg1,arg2);
   jresult = (void *)result; 
   return jresult;
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_set_private(void * jarg1, void * jarg2) {
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_set_private_class(void * jarg1, void * jarg2, int jarg3) {
   int jresult ;
   switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;
   void *arg2 = (void *) 0 ;
+  switch_pvt_class_t arg3 ;
   switch_status_t result;
   
   arg1 = (switch_core_session_t *)jarg1; 
   arg2 = (void *)jarg2; 
-  result = (switch_status_t)switch_core_session_set_private(arg1,arg2);
+  arg3 = (switch_pvt_class_t)jarg3; 
+  result = (switch_status_t)switch_core_session_set_private_class(arg1,arg2,arg3);
   jresult = result; 
   return jresult;
 }
@@ -11486,14 +11501,14 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_core_db_test_reactive(void * jarg1, ch
 }
 
 
-SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_perform_file_open(char * jarg1, char * jarg2, int jarg3, void * jarg4, char * jarg5, unsigned char jarg6, unsigned long jarg7, unsigned int jarg8, void * jarg9) {
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_perform_file_open(char * jarg1, char * jarg2, int jarg3, void * jarg4, char * jarg5, unsigned long jarg6, unsigned long jarg7, unsigned int jarg8, void * jarg9) {
   int jresult ;
   char *arg1 = (char *) 0 ;
   char *arg2 = (char *) 0 ;
   int arg3 ;
   switch_file_handle_t *arg4 = (switch_file_handle_t *) 0 ;
   char *arg5 = (char *) 0 ;
-  uint8_t arg6 ;
+  uint32_t arg6 ;
   uint32_t arg7 ;
   unsigned int arg8 ;
   switch_memory_pool_t *arg9 = (switch_memory_pool_t *) 0 ;
@@ -11504,7 +11519,7 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_perform_file_open(char * jarg1, ch
   arg3 = (int)jarg3; 
   arg4 = (switch_file_handle_t *)jarg4; 
   arg5 = (char *)jarg5; 
-  arg6 = (uint8_t)jarg6; 
+  arg6 = (uint32_t)jarg6; 
   arg7 = (uint32_t)jarg7; 
   arg8 = (unsigned int)jarg8; 
   arg9 = (switch_memory_pool_t *)jarg9; 
@@ -14032,6 +14047,18 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_stream_system_fork(char * jarg1, void *
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_ice_direction(void * jarg1) {
+  int jresult ;
+  switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;
+  switch_call_direction_t result;
+  
+  arg1 = (switch_core_session_t *)jarg1; 
+  result = (switch_call_direction_t)switch_ice_direction(arg1);
+  jresult = result; 
+  return jresult;
+}
+
+
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_loadable_module_interface_module_name_set(void * jarg1, char * jarg2) {
   switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;
   char *arg2 = (char *) 0 ;
@@ -14222,6 +14249,29 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_interface_api_interf
 }
 
 
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_loadable_module_interface_json_api_interface_set(void * jarg1, void * jarg2) {
+  switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;
+  switch_json_api_interface_t *arg2 = (switch_json_api_interface_t *) 0 ;
+  
+  arg1 = (switch_loadable_module_interface *)jarg1; 
+  arg2 = (switch_json_api_interface_t *)jarg2; 
+  if (arg1) (arg1)->json_api_interface = arg2;
+  
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_interface_json_api_interface_get(void * jarg1) {
+  void * jresult ;
+  switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;
+  switch_json_api_interface_t *result = 0 ;
+  
+  arg1 = (switch_loadable_module_interface *)jarg1; 
+  result = (switch_json_api_interface_t *) ((arg1)->json_api_interface);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_loadable_module_interface_file_interface_set(void * jarg1, void * jarg2) {
   switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;
   switch_file_interface_t *arg2 = (switch_file_interface_t *) 0 ;
@@ -14679,6 +14729,18 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_get_api_interface(ch
 }
 
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_get_json_api_interface(char * jarg1) {
+  void * jresult ;
+  char *arg1 = (char *) 0 ;
+  switch_json_api_interface_t *result = 0 ;
+  
+  arg1 = (char *)jarg1; 
+  result = (switch_json_api_interface_t *)switch_loadable_module_get_json_api_interface((char const *)arg1);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
 SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_get_file_interface(char * jarg1) {
   void * jresult ;
   char *arg1 = (char *) 0 ;
@@ -14825,6 +14887,22 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_api_execute(char * jarg1, char * jarg2,
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_json_api_execute(void * jarg1, void * jarg2, void * jarg3) {
+  int jresult ;
+  cJSON *arg1 = (cJSON *) 0 ;
+  switch_core_session_t *arg2 = (switch_core_session_t *) 0 ;
+  cJSON **arg3 = (cJSON **) 0 ;
+  switch_status_t result;
+  
+  arg1 = (cJSON *)jarg1; 
+  arg2 = (switch_core_session_t *)jarg2; 
+  arg3 = (cJSON **)jarg3; 
+  result = (switch_status_t)switch_json_api_execute(arg1,arg2,arg3);
+  jresult = result; 
+  return jresult;
+}
+
+
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_loadable_module_load_module(char * jarg1, char * jarg2, int jarg3, void * jarg4) {
   int jresult ;
   char *arg1 = (char *) 0 ;
@@ -14953,6 +15031,40 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_codec_ready(void * jarg1) {
 }
 
 
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_core_get_secondary_recover_callback(char * jarg1) {
+  void * jresult ;
+  char *arg1 = (char *) 0 ;
+  switch_core_recover_callback_t result;
+  
+  arg1 = (char *)jarg1; 
+  result = (switch_core_recover_callback_t)switch_core_get_secondary_recover_callback((char const *)arg1);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_register_secondary_recover_callback(char * jarg1, void * jarg2) {
+  int jresult ;
+  char *arg1 = (char *) 0 ;
+  switch_core_recover_callback_t arg2 = (switch_core_recover_callback_t) 0 ;
+  switch_status_t result;
+  
+  arg1 = (char *)jarg1; 
+  arg2 = (switch_core_recover_callback_t)jarg2; 
+  result = (switch_status_t)switch_core_register_secondary_recover_callback((char const *)arg1,arg2);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_core_unregister_secondary_recover_callback(char * jarg1) {
+  char *arg1 = (char *) 0 ;
+  
+  arg1 = (char *)jarg1; 
+  switch_core_unregister_secondary_recover_callback((char const *)arg1);
+}
+
+
 SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_CMD_CHUNK_LEN_get() {
   int jresult ;
   int result;
@@ -21457,25 +21569,25 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_native_rate_get(v
 }
 
 
-SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_channels_set(void * jarg1, unsigned char jarg2) {
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_channels_set(void * jarg1, unsigned long jarg2) {
   switch_file_handle *arg1 = (switch_file_handle *) 0 ;
-  uint8_t arg2 ;
+  uint32_t arg2 ;
   
   arg1 = (switch_file_handle *)jarg1; 
-  arg2 = (uint8_t)jarg2; 
+  arg2 = (uint32_t)jarg2; 
   if (arg1) (arg1)->channels = arg2;
   
 }
 
 
-SWIGEXPORT unsigned char SWIGSTDCALL CSharp_switch_file_handle_channels_get(void * jarg1) {
-  unsigned char jresult ;
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_channels_get(void * jarg1) {
+  unsigned long jresult ;
   switch_file_handle *arg1 = (switch_file_handle *) 0 ;
-  uint8_t result;
+  uint32_t result;
   
   arg1 = (switch_file_handle *)jarg1; 
-  result = (uint8_t) ((arg1)->channels);
-  jresult = result; 
+  result = (uint32_t) ((arg1)->channels);
+  jresult = (unsigned long)result; 
   return jresult;
 }
 
@@ -22331,6 +22443,52 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_file_handle_params_get(void * jarg1)
 }
 
 
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_cur_channels_set(void * jarg1, unsigned long jarg2) {
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;
+  uint32_t arg2 ;
+  
+  arg1 = (switch_file_handle *)jarg1; 
+  arg2 = (uint32_t)jarg2; 
+  if (arg1) (arg1)->cur_channels = arg2;
+  
+}
+
+
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_cur_channels_get(void * jarg1) {
+  unsigned long jresult ;
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;
+  uint32_t result;
+  
+  arg1 = (switch_file_handle *)jarg1; 
+  result = (uint32_t) ((arg1)->cur_channels);
+  jresult = (unsigned long)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_cur_samplerate_set(void * jarg1, unsigned long jarg2) {
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;
+  uint32_t arg2 ;
+  
+  arg1 = (switch_file_handle *)jarg1; 
+  arg2 = (uint32_t)jarg2; 
+  if (arg1) (arg1)->cur_samplerate = arg2;
+  
+}
+
+
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_cur_samplerate_get(void * jarg1) {
+  unsigned long jresult ;
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;
+  uint32_t result;
+  
+  arg1 = (switch_file_handle *)jarg1; 
+  result = (uint32_t) ((arg1)->cur_samplerate);
+  jresult = (unsigned long)result; 
+  return jresult;
+}
+
+
 SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_file_handle() {
   void * jresult ;
   switch_file_handle *result = 0 ;
@@ -27405,6 +27563,250 @@ SWIGEXPORT void SWIGSTDCALL CSharp_delete_switch_api_interface(void * jarg1) {
 }
 
 
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_interface_name_set(void * jarg1, char * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  char *arg2 = (char *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (char *)jarg2; 
+  {
+    if (arg2) {
+      arg1->interface_name = (char const *) (new char[strlen((const char *)arg2)+1]);
+      strcpy((char *)arg1->interface_name, (const char *)arg2);
+    } else {
+      arg1->interface_name = 0;
+    }
+  }
+}
+
+
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_json_api_interface_interface_name_get(void * jarg1) {
+  char * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  char *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (char *) ((arg1)->interface_name);
+  jresult = SWIG_csharp_string_callback((const char *)result); 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_desc_set(void * jarg1, char * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  char *arg2 = (char *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (char *)jarg2; 
+  {
+    if (arg2) {
+      arg1->desc = (char const *) (new char[strlen((const char *)arg2)+1]);
+      strcpy((char *)arg1->desc, (const char *)arg2);
+    } else {
+      arg1->desc = 0;
+    }
+  }
+}
+
+
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_json_api_interface_desc_get(void * jarg1) {
+  char * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  char *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (char *) ((arg1)->desc);
+  jresult = SWIG_csharp_string_callback((const char *)result); 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_function_set(void * jarg1, void * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_json_api_function_t arg2 = (switch_json_api_function_t) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (switch_json_api_function_t)jarg2; 
+  if (arg1) (arg1)->function = arg2;
+  
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_function_get(void * jarg1) {
+  void * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_json_api_function_t result;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (switch_json_api_function_t) ((arg1)->function);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_syntax_set(void * jarg1, char * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  char *arg2 = (char *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (char *)jarg2; 
+  {
+    if (arg2) {
+      arg1->syntax = (char const *) (new char[strlen((const char *)arg2)+1]);
+      strcpy((char *)arg1->syntax, (const char *)arg2);
+    } else {
+      arg1->syntax = 0;
+    }
+  }
+}
+
+
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_json_api_interface_syntax_get(void * jarg1) {
+  char * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  char *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (char *) ((arg1)->syntax);
+  jresult = SWIG_csharp_string_callback((const char *)result); 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_rwlock_set(void * jarg1, void * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_thread_rwlock_t *arg2 = (switch_thread_rwlock_t *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (switch_thread_rwlock_t *)jarg2; 
+  if (arg1) (arg1)->rwlock = arg2;
+  
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_rwlock_get(void * jarg1) {
+  void * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_thread_rwlock_t *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (switch_thread_rwlock_t *) ((arg1)->rwlock);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_refs_set(void * jarg1, int jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  int arg2 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (int)jarg2; 
+  if (arg1) (arg1)->refs = arg2;
+  
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_json_api_interface_refs_get(void * jarg1) {
+  int jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  int result;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (int) ((arg1)->refs);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_reflock_set(void * jarg1, void * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_mutex_t *arg2 = (switch_mutex_t *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (switch_mutex_t *)jarg2; 
+  if (arg1) (arg1)->reflock = arg2;
+  
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_reflock_get(void * jarg1) {
+  void * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_mutex_t *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (switch_mutex_t *) ((arg1)->reflock);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_parent_set(void * jarg1, void * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_loadable_module_interface_t *arg2 = (switch_loadable_module_interface_t *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (switch_loadable_module_interface_t *)jarg2; 
+  if (arg1) (arg1)->parent = arg2;
+  
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_parent_get(void * jarg1) {
+  void * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_loadable_module_interface_t *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (switch_loadable_module_interface_t *) ((arg1)->parent);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_next_set(void * jarg1, void * jarg2) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_json_api_interface *arg2 = (switch_json_api_interface *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  arg2 = (switch_json_api_interface *)jarg2; 
+  if (arg1) (arg1)->next = arg2;
+  
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_next_get(void * jarg1) {
+  void * jresult ;
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  switch_json_api_interface *result = 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  result = (switch_json_api_interface *) ((arg1)->next);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_json_api_interface() {
+  void * jresult ;
+  switch_json_api_interface *result = 0 ;
+  
+  result = (switch_json_api_interface *)new switch_json_api_interface();
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_delete_switch_json_api_interface(void * jarg1) {
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;
+  
+  arg1 = (switch_json_api_interface *)jarg1; 
+  delete arg1;
+  
+}
+
+
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_slin_data_session_set(void * jarg1, void * jarg2) {
   switch_slin_data *arg1 = (switch_slin_data *) 0 ;
   switch_core_session_t *arg2 = (switch_core_session_t *) 0 ;
@@ -29422,6 +29824,16 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_channel_direction(void * jarg1) {
 }
 
 
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_channel_set_direction(void * jarg1, int jarg2) {
+  switch_channel_t *arg1 = (switch_channel_t *) 0 ;
+  switch_call_direction_t arg2 ;
+  
+  arg1 = (switch_channel_t *)jarg1; 
+  arg2 = (switch_call_direction_t)jarg2; 
+  switch_channel_set_direction(arg1,arg2);
+}
+
+
 SWIGEXPORT void * SWIGSTDCALL CSharp_switch_channel_get_session(void * jarg1) {
   void * jresult ;
   switch_channel_t *arg1 = (switch_channel_t *) 0 ;
@@ -31255,6 +31667,20 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_serialize_json(void * jarg1, void
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_serialize_json_obj(void * jarg1, void * jarg2) {
+  int jresult ;
+  switch_event_t *arg1 = (switch_event_t *) 0 ;
+  cJSON **arg2 = (cJSON **) 0 ;
+  switch_status_t result;
+  
+  arg1 = (switch_event_t *)jarg1; 
+  arg2 = (cJSON **)jarg2; 
+  result = (switch_status_t)switch_event_serialize_json_obj(arg1,arg2);
+  jresult = result; 
+  return jresult;
+}
+
+
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_create_json(void * jarg1, char * jarg2) {
   int jresult ;
   switch_event_t **arg1 = (switch_event_t **) 0 ;
@@ -31459,6 +31885,18 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_add_presence_data_cols(void * ja
 }
 
 
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_add_presence_data_cols(void * jarg1, void * jarg2, char * jarg3) {
+  switch_event_t *arg1 = (switch_event_t *) 0 ;
+  cJSON *arg2 = (cJSON *) 0 ;
+  char *arg3 = (char *) 0 ;
+  
+  arg1 = (switch_event_t *)jarg1; 
+  arg2 = (cJSON *)jarg2; 
+  arg3 = (char *)jarg3; 
+  switch_json_add_presence_data_cols(arg1,arg2,(char const *)arg3);
+}
+
+
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_launch_dispatch_threads(unsigned long jarg1) {
   uint32_t arg1 ;
   
@@ -31467,6 +31905,270 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_launch_dispatch_threads(unsigned
 }
 
 
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_event_channel_broadcast(char * jarg1, void * jarg2, char * jarg3, unsigned long jarg4) {
+  unsigned long jresult ;
+  char *arg1 = (char *) 0 ;
+  cJSON **arg2 = (cJSON **) 0 ;
+  char *arg3 = (char *) 0 ;
+  switch_event_channel_id_t arg4 ;
+  uint32_t result;
+  
+  arg1 = (char *)jarg1; 
+  arg2 = (cJSON **)jarg2; 
+  arg3 = (char *)jarg3; 
+  arg4 = (switch_event_channel_id_t)jarg4; 
+  result = (uint32_t)switch_event_channel_broadcast((char const *)arg1,arg2,(char const *)arg3,arg4);
+  jresult = (unsigned long)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_event_channel_unbind(char * jarg1, void * jarg2) {
+  unsigned long jresult ;
+  char *arg1 = (char *) 0 ;
+  switch_event_channel_func_t arg2 = (switch_event_channel_func_t) 0 ;
+  uint32_t result;
+  
+  arg1 = (char *)jarg1; 
+  arg2 = (switch_event_channel_func_t)jarg2; 
+  result = (uint32_t)switch_event_channel_unbind((char const *)arg1,arg2);
+  jresult = (unsigned long)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_channel_bind(char * jarg1, void * jarg2, void * jarg3) {
+  int jresult ;
+  char *arg1 = (char *) 0 ;
+  switch_event_channel_func_t arg2 = (switch_event_channel_func_t) 0 ;
+  switch_event_channel_id_t *arg3 = (switch_event_channel_id_t *) 0 ;
+  switch_status_t result;
+  
+  arg1 = (char *)jarg1; 
+  arg2 = (switch_event_channel_func_t)jarg2; 
+  arg3 = (switch_event_channel_id_t *)jarg3; 
+  result = (switch_status_t)switch_event_channel_bind((char const *)arg1,arg2,arg3);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_NO_EVENT_CHANNEL_ID_get() {
+  int jresult ;
+  int result;
+  
+  result = (int) 0;
+  
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT char * SWIGSTDCALL CSharp_SWITCH_EVENT_CHANNEL_GLOBAL_get() {
+  char * jresult ;
+  char *result = 0 ;
+  
+  result = (char *) "__global__";
+  
+  jresult = SWIG_csharp_string_callback((const char *)result); 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_clear(void * jarg1) {
+  int jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  switch_status_t result;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  result = (switch_status_t)switch_live_array_clear(arg1);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_bootstrap(void * jarg1, char * jarg2, unsigned long jarg3) {
+  int jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  char *arg2 = (char *) 0 ;
+  switch_event_channel_id_t arg3 ;
+  switch_status_t result;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (char *)jarg2; 
+  arg3 = (switch_event_channel_id_t)jarg3; 
+  result = (switch_status_t)switch_live_array_bootstrap(arg1,(char const *)arg2,arg3);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_destroy(void * jarg1) {
+  int jresult ;
+  switch_live_array_t **arg1 = (switch_live_array_t **) 0 ;
+  switch_status_t result;
+  
+  arg1 = (switch_live_array_t **)jarg1; 
+  result = (switch_status_t)switch_live_array_destroy(arg1);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_create(char * jarg1, char * jarg2, unsigned long jarg3, void * jarg4) {
+  int jresult ;
+  char *arg1 = (char *) 0 ;
+  char *arg2 = (char *) 0 ;
+  switch_event_channel_id_t arg3 ;
+  switch_live_array_t **arg4 = (switch_live_array_t **) 0 ;
+  switch_status_t result;
+  
+  arg1 = (char *)jarg1; 
+  arg2 = (char *)jarg2; 
+  arg3 = (switch_event_channel_id_t)jarg3; 
+  arg4 = (switch_live_array_t **)jarg4; 
+  result = (switch_status_t)switch_live_array_create((char const *)arg1,(char const *)arg2,arg3,arg4);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_live_array_get(void * jarg1, char * jarg2) {
+  void * jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  char *arg2 = (char *) 0 ;
+  cJSON *result = 0 ;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (char *)jarg2; 
+  result = (cJSON *)switch_live_array_get(arg1,(char const *)arg2);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_live_array_get_idx(void * jarg1, int jarg2) {
+  void * jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  int arg2 ;
+  cJSON *result = 0 ;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (int)jarg2; 
+  result = (cJSON *)switch_live_array_get_idx(arg1,arg2);
+  jresult = (void *)result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_del(void * jarg1, char * jarg2) {
+  int jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  char *arg2 = (char *) 0 ;
+  switch_status_t result;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (char *)jarg2; 
+  result = (switch_status_t)switch_live_array_del(arg1,(char const *)arg2);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_add(void * jarg1, char * jarg2, int jarg3, void * jarg4, int jarg5) {
+  int jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  char *arg2 = (char *) 0 ;
+  int arg3 ;
+  cJSON **arg4 = (cJSON **) 0 ;
+  switch_bool_t arg5 ;
+  switch_status_t result;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (char *)jarg2; 
+  arg3 = (int)jarg3; 
+  arg4 = (cJSON **)jarg4; 
+  arg5 = (switch_bool_t)jarg5; 
+  result = (switch_status_t)switch_live_array_add(arg1,(char const *)arg2,arg3,arg4,arg5);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_visible(void * jarg1, int jarg2, int jarg3) {
+  int jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  switch_bool_t arg2 ;
+  switch_bool_t arg3 ;
+  switch_status_t result;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (switch_bool_t)jarg2; 
+  arg3 = (switch_bool_t)jarg3; 
+  result = (switch_status_t)switch_live_array_visible(arg1,arg2,arg3);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_isnew(void * jarg1) {
+  int jresult ;
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  switch_bool_t result;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  result = (switch_bool_t)switch_live_array_isnew(arg1);
+  jresult = result; 
+  return jresult;
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_lock(void * jarg1) {
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  switch_live_array_lock(arg1);
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_unlock(void * jarg1) {
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  switch_live_array_unlock(arg1);
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_set_user_data(void * jarg1, void * jarg2) {
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  void *arg2 = (void *) 0 ;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (void *)jarg2; 
+  switch_live_array_set_user_data(arg1,arg2);
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_set_command_handler(void * jarg1, void * jarg2) {
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;
+  switch_live_array_command_handler_t arg2 = (switch_live_array_command_handler_t) 0 ;
+  
+  arg1 = (switch_live_array_t *)jarg1; 
+  arg2 = (switch_live_array_command_handler_t)jarg2; 
+  switch_live_array_set_command_handler(arg1,arg2);
+}
+
+
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_parse_json(void * jarg1, unsigned long jarg2) {
+  cJSON *arg1 = (cJSON *) 0 ;
+  switch_event_channel_id_t arg2 ;
+  
+  arg1 = (cJSON *)jarg1; 
+  arg2 = (switch_event_channel_id_t)jarg2; 
+  switch_live_array_parse_json(arg1,arg2);
+}
+
+
 SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_RESAMPLE_QUALITY_get() {
   int jresult ;
   int result;
@@ -36317,6 +37019,20 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_add_dtls(void * jarg1, void * jarg2
 }
 
 
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_del_dtls(void * jarg1, int jarg2) {
+  int jresult ;
+  switch_rtp_t *arg1 = (switch_rtp_t *) 0 ;
+  dtls_type_t arg2 ;
+  switch_status_t result;
+  
+  arg1 = (switch_rtp_t *)jarg1; 
+  arg2 = (dtls_type_t)jarg2; 
+  result = (switch_status_t)switch_rtp_del_dtls(arg1,arg2);
+  jresult = result; 
+  return jresult;
+}
+
+
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_has_dtls() {
   int jresult ;
   int result;
index f260022a00bafb4c3e15cdbfa72acdc1ec3c88c6..50ac5a3245027ead110b99437792fb84657c02ad 100644 (file)
@@ -1901,14 +1901,14 @@ public class freeswitch {
     return ret;
   }
 
-  public static SWIGTYPE_p_void switch_core_session_get_private(SWIGTYPE_p_switch_core_session session) {
-    IntPtr cPtr = freeswitchPINVOKE.switch_core_session_get_private(SWIGTYPE_p_switch_core_session.getCPtr(session));
+  public static SWIGTYPE_p_void switch_core_session_get_private_class(SWIGTYPE_p_switch_core_session session, switch_pvt_class_t index) {
+    IntPtr cPtr = freeswitchPINVOKE.switch_core_session_get_private_class(SWIGTYPE_p_switch_core_session.getCPtr(session), (int)index);
     SWIGTYPE_p_void ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_void(cPtr, false);
     return ret;
   }
 
-  public static switch_status_t switch_core_session_set_private(SWIGTYPE_p_switch_core_session session, SWIGTYPE_p_void private_info) {
-    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_core_session_set_private(SWIGTYPE_p_switch_core_session.getCPtr(session), SWIGTYPE_p_void.getCPtr(private_info));
+  public static switch_status_t switch_core_session_set_private_class(SWIGTYPE_p_switch_core_session session, SWIGTYPE_p_void private_info, switch_pvt_class_t index) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_core_session_set_private_class(SWIGTYPE_p_switch_core_session.getCPtr(session), SWIGTYPE_p_void.getCPtr(private_info), (int)index);
     return ret;
   }
 
@@ -2348,7 +2348,7 @@ public class freeswitch {
     freeswitchPINVOKE.switch_core_db_test_reactive(SWIGTYPE_p_sqlite3.getCPtr(db), test_sql, drop_sql, reactive_sql);
   }
 
-  public static switch_status_t switch_core_perform_file_open(string file, string func, int line, switch_file_handle fh, string file_path, byte channels, uint rate, uint flags, SWIGTYPE_p_apr_pool_t pool) {
+  public static switch_status_t switch_core_perform_file_open(string file, string func, int line, switch_file_handle fh, string file_path, uint channels, uint rate, uint flags, SWIGTYPE_p_apr_pool_t pool) {
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_core_perform_file_open(file, func, line, switch_file_handle.getCPtr(fh), file_path, channels, rate, flags, SWIGTYPE_p_apr_pool_t.getCPtr(pool));
     return ret;
   }
@@ -3141,6 +3141,11 @@ public class freeswitch {
     return ret;
   }
 
+  public static switch_call_direction_t switch_ice_direction(SWIGTYPE_p_switch_core_session session) {
+    switch_call_direction_t ret = (switch_call_direction_t)freeswitchPINVOKE.switch_ice_direction(SWIGTYPE_p_switch_core_session.getCPtr(session));
+    return ret;
+  }
+
   public static switch_status_t switch_loadable_module_init(switch_bool_t autoload) {
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_loadable_module_init((int)autoload);
     return ret;
@@ -3217,6 +3222,12 @@ public class freeswitch {
     return ret;
   }
 
+  public static switch_json_api_interface switch_loadable_module_get_json_api_interface(string name) {
+    IntPtr cPtr = freeswitchPINVOKE.switch_loadable_module_get_json_api_interface(name);
+    switch_json_api_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_json_api_interface(cPtr, false);
+    return ret;
+  }
+
   public static switch_file_interface switch_loadable_module_get_file_interface(string name) {
     IntPtr cPtr = freeswitchPINVOKE.switch_loadable_module_get_file_interface(name);
     switch_file_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_file_interface(cPtr, false);
@@ -3280,6 +3291,11 @@ public class freeswitch {
     return ret;
   }
 
+  public static switch_status_t switch_json_api_execute(SWIGTYPE_p_cJSON json, SWIGTYPE_p_switch_core_session session, SWIGTYPE_p_p_cJSON retval) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_json_api_execute(SWIGTYPE_p_cJSON.getCPtr(json), SWIGTYPE_p_switch_core_session.getCPtr(session), SWIGTYPE_p_p_cJSON.getCPtr(retval));
+    return ret;
+  }
+
   public static switch_status_t switch_loadable_module_load_module(string dir, string fname, switch_bool_t runtime, ref string err) {
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_loadable_module_load_module(dir, fname, (int)runtime, ref err);
     return ret;
@@ -3314,6 +3330,21 @@ public class freeswitch {
     return ret;
   }
 
+  public static SWIGTYPE_p_f_p_switch_core_session__int switch_core_get_secondary_recover_callback(string key) {
+    IntPtr cPtr = freeswitchPINVOKE.switch_core_get_secondary_recover_callback(key);
+    SWIGTYPE_p_f_p_switch_core_session__int ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_f_p_switch_core_session__int(cPtr, false);
+    return ret;
+  }
+
+  public static switch_status_t switch_core_register_secondary_recover_callback(string key, SWIGTYPE_p_f_p_switch_core_session__int cb) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_core_register_secondary_recover_callback(key, SWIGTYPE_p_f_p_switch_core_session__int.getCPtr(cb));
+    return ret;
+  }
+
+  public static void switch_core_unregister_secondary_recover_callback(string key) {
+    freeswitchPINVOKE.switch_core_unregister_secondary_recover_callback(key);
+  }
+
   public static void switch_console_loop() {
     freeswitchPINVOKE.switch_console_loop();
   }
@@ -4550,6 +4581,10 @@ public class freeswitch {
     return ret;
   }
 
+  public static void switch_channel_set_direction(SWIGTYPE_p_switch_channel channel, switch_call_direction_t direction) {
+    freeswitchPINVOKE.switch_channel_set_direction(SWIGTYPE_p_switch_channel.getCPtr(channel), (int)direction);
+  }
+
   public static SWIGTYPE_p_switch_core_session switch_channel_get_session(SWIGTYPE_p_switch_channel channel) {
     IntPtr cPtr = freeswitchPINVOKE.switch_channel_get_session(SWIGTYPE_p_switch_channel.getCPtr(channel));
     SWIGTYPE_p_switch_core_session ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_switch_core_session(cPtr, false);
@@ -4915,8 +4950,8 @@ public class freeswitch {
     return ret;
   }
 
-  public static switch_status_t switch_event_binary_deserialize(SWIGTYPE_p_p_switch_event eventp, SWIGTYPE_p_p_void data, SWIGTYPE_p_switch_size_t len, switch_bool_t destroy) {
-    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_binary_deserialize(SWIGTYPE_p_p_switch_event.getCPtr(eventp), SWIGTYPE_p_p_void.getCPtr(data), SWIGTYPE_p_switch_size_t.getCPtr(len), (int)destroy);
+  public static switch_status_t switch_event_binary_deserialize(SWIGTYPE_p_p_switch_event eventp, SWIGTYPE_p_p_void data, SWIGTYPE_p_switch_size_t len, switch_bool_t duplicate) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_binary_deserialize(SWIGTYPE_p_p_switch_event.getCPtr(eventp), SWIGTYPE_p_p_void.getCPtr(data), SWIGTYPE_p_switch_size_t.getCPtr(len), (int)duplicate);
     if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();
     return ret;
   }
@@ -4936,6 +4971,11 @@ public class freeswitch {
     return ret;
   }
 
+  public static switch_status_t switch_event_serialize_json_obj(switch_event arg0, SWIGTYPE_p_p_cJSON json) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_serialize_json_obj(switch_event.getCPtr(arg0), SWIGTYPE_p_p_cJSON.getCPtr(json));
+    return ret;
+  }
+
   public static switch_status_t switch_event_create_json(SWIGTYPE_p_p_switch_event arg0, string json) {
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_create_json(SWIGTYPE_p_p_switch_event.getCPtr(arg0), json);
     return ret;
@@ -4994,10 +5034,101 @@ public class freeswitch {
     freeswitchPINVOKE.switch_event_add_presence_data_cols(SWIGTYPE_p_switch_channel.getCPtr(channel), switch_event.getCPtr(arg1), prefix);
   }
 
+  public static void switch_json_add_presence_data_cols(switch_event arg0, SWIGTYPE_p_cJSON json, string prefix) {
+    freeswitchPINVOKE.switch_json_add_presence_data_cols(switch_event.getCPtr(arg0), SWIGTYPE_p_cJSON.getCPtr(json), prefix);
+  }
+
   public static void switch_event_launch_dispatch_threads(uint max) {
     freeswitchPINVOKE.switch_event_launch_dispatch_threads(max);
   }
 
+  public static uint switch_event_channel_broadcast(string event_channel, SWIGTYPE_p_p_cJSON json, string key, uint id) {
+    uint ret = freeswitchPINVOKE.switch_event_channel_broadcast(event_channel, SWIGTYPE_p_p_cJSON.getCPtr(json), key, id);
+    return ret;
+  }
+
+  public static uint switch_event_channel_unbind(string event_channel, SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void func) {
+    uint ret = freeswitchPINVOKE.switch_event_channel_unbind(event_channel, SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void.getCPtr(func));
+    return ret;
+  }
+
+  public static switch_status_t switch_event_channel_bind(string event_channel, SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void func, SWIGTYPE_p_unsigned_long id) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_channel_bind(event_channel, SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void.getCPtr(func), SWIGTYPE_p_unsigned_long.getCPtr(id));
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_clear(SWIGTYPE_p_switch_live_array_s la) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_clear(SWIGTYPE_p_switch_live_array_s.getCPtr(la));
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_bootstrap(SWIGTYPE_p_switch_live_array_s la, string sessid, uint channel_id) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_bootstrap(SWIGTYPE_p_switch_live_array_s.getCPtr(la), sessid, channel_id);
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_destroy(SWIGTYPE_p_p_switch_live_array_s live_arrayP) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_destroy(SWIGTYPE_p_p_switch_live_array_s.getCPtr(live_arrayP));
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_create(string event_channel, string name, uint channel_id, SWIGTYPE_p_p_switch_live_array_s live_arrayP) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_create(event_channel, name, channel_id, SWIGTYPE_p_p_switch_live_array_s.getCPtr(live_arrayP));
+    return ret;
+  }
+
+  public static SWIGTYPE_p_cJSON switch_live_array_get(SWIGTYPE_p_switch_live_array_s la, string name) {
+    IntPtr cPtr = freeswitchPINVOKE.switch_live_array_get(SWIGTYPE_p_switch_live_array_s.getCPtr(la), name);
+    SWIGTYPE_p_cJSON ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_cJSON(cPtr, false);
+    return ret;
+  }
+
+  public static SWIGTYPE_p_cJSON switch_live_array_get_idx(SWIGTYPE_p_switch_live_array_s la, int idx) {
+    IntPtr cPtr = freeswitchPINVOKE.switch_live_array_get_idx(SWIGTYPE_p_switch_live_array_s.getCPtr(la), idx);
+    SWIGTYPE_p_cJSON ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_cJSON(cPtr, false);
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_del(SWIGTYPE_p_switch_live_array_s la, string name) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_del(SWIGTYPE_p_switch_live_array_s.getCPtr(la), name);
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_add(SWIGTYPE_p_switch_live_array_s la, string name, int index, SWIGTYPE_p_p_cJSON obj, switch_bool_t destroy) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_add(SWIGTYPE_p_switch_live_array_s.getCPtr(la), name, index, SWIGTYPE_p_p_cJSON.getCPtr(obj), (int)destroy);
+    return ret;
+  }
+
+  public static switch_status_t switch_live_array_visible(SWIGTYPE_p_switch_live_array_s la, switch_bool_t visible, switch_bool_t force) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_visible(SWIGTYPE_p_switch_live_array_s.getCPtr(la), (int)visible, (int)force);
+    return ret;
+  }
+
+  public static switch_bool_t switch_live_array_isnew(SWIGTYPE_p_switch_live_array_s la) {
+    switch_bool_t ret = (switch_bool_t)freeswitchPINVOKE.switch_live_array_isnew(SWIGTYPE_p_switch_live_array_s.getCPtr(la));
+    return ret;
+  }
+
+  public static void switch_live_array_lock(SWIGTYPE_p_switch_live_array_s la) {
+    freeswitchPINVOKE.switch_live_array_lock(SWIGTYPE_p_switch_live_array_s.getCPtr(la));
+  }
+
+  public static void switch_live_array_unlock(SWIGTYPE_p_switch_live_array_s la) {
+    freeswitchPINVOKE.switch_live_array_unlock(SWIGTYPE_p_switch_live_array_s.getCPtr(la));
+  }
+
+  public static void switch_live_array_set_user_data(SWIGTYPE_p_switch_live_array_s la, SWIGTYPE_p_void user_data) {
+    freeswitchPINVOKE.switch_live_array_set_user_data(SWIGTYPE_p_switch_live_array_s.getCPtr(la), SWIGTYPE_p_void.getCPtr(user_data));
+  }
+
+  public static void switch_live_array_set_command_handler(SWIGTYPE_p_switch_live_array_s la, SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void command_handler) {
+    freeswitchPINVOKE.switch_live_array_set_command_handler(SWIGTYPE_p_switch_live_array_s.getCPtr(la), SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void.getCPtr(command_handler));
+  }
+
+  public static void switch_live_array_parse_json(SWIGTYPE_p_cJSON json, uint channel_id) {
+    freeswitchPINVOKE.switch_live_array_parse_json(SWIGTYPE_p_cJSON.getCPtr(json), channel_id);
+  }
+
   public static switch_status_t switch_resample_perform_create(SWIGTYPE_p_p_switch_audio_resampler_t new_resampler, uint from_rate, uint to_rate, uint to_size, int quality, uint channels, string file, string func, int line) {
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_resample_perform_create(SWIGTYPE_p_p_switch_audio_resampler_t.getCPtr(new_resampler), from_rate, to_rate, to_size, quality, channels, file, func, line);
     return ret;
@@ -6104,6 +6235,11 @@ public class freeswitch {
     return ret;
   }
 
+  public static switch_status_t switch_rtp_del_dtls(SWIGTYPE_p_switch_rtp rtp_session, dtls_type_t type) {
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_rtp_del_dtls(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), (int)type);
+    return ret;
+  }
+
   public static int switch_rtp_has_dtls() {
     int ret = freeswitchPINVOKE.switch_rtp_has_dtls();
     return ret;
@@ -6818,6 +6954,7 @@ public class freeswitch {
   public static readonly int SWITCH_DEFAULT_FILE_BUFFER_LEN = freeswitchPINVOKE.SWITCH_DEFAULT_FILE_BUFFER_LEN_get();
   public static readonly int SWITCH_DTMF_LOG_LEN = freeswitchPINVOKE.SWITCH_DTMF_LOG_LEN_get();
   public static readonly int SWITCH_MAX_TRANS = freeswitchPINVOKE.SWITCH_MAX_TRANS_get();
+  public static readonly int SWITCH_CORE_SESSION_MAX_PRIVATES = freeswitchPINVOKE.SWITCH_CORE_SESSION_MAX_PRIVATES_get();
   public static readonly int SWITCH_MAX_STACKS = freeswitchPINVOKE.SWITCH_MAX_STACKS_get();
   public static readonly int SWITCH_THREAD_STACKSIZE = freeswitchPINVOKE.SWITCH_THREAD_STACKSIZE_get();
   public static readonly int SWITCH_SYSTEM_THREAD_STACKSIZE = freeswitchPINVOKE.SWITCH_SYSTEM_THREAD_STACKSIZE_get();
@@ -6874,6 +7011,8 @@ public class freeswitch {
   public static readonly int SWITCH_CMD_CHUNK_LEN = freeswitchPINVOKE.SWITCH_CMD_CHUNK_LEN_get();
   public static readonly int SWITCH_SMAX = freeswitchPINVOKE.SWITCH_SMAX_get();
   public static readonly int SWITCH_SMIN = freeswitchPINVOKE.SWITCH_SMIN_get();
+  public static readonly int NO_EVENT_CHANNEL_ID = freeswitchPINVOKE.NO_EVENT_CHANNEL_ID_get();
+  public static readonly string SWITCH_EVENT_CHANNEL_GLOBAL = freeswitchPINVOKE.SWITCH_EVENT_CHANNEL_GLOBAL_get();
   public static readonly int SWITCH_RESAMPLE_QUALITY = freeswitchPINVOKE.SWITCH_RESAMPLE_QUALITY_get();
   public static readonly int SWITCH_RTP_MAX_BUF_LEN = freeswitchPINVOKE.SWITCH_RTP_MAX_BUF_LEN_get();
   public static readonly int SWITCH_RTCP_MAX_BUF_LEN = freeswitchPINVOKE.SWITCH_RTCP_MAX_BUF_LEN_get();
@@ -7561,6 +7700,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_MAX_TRANS_get")]
   public static extern int SWITCH_MAX_TRANS_get();
 
+  [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_CORE_SESSION_MAX_PRIVATES_get")]
+  public static extern int SWITCH_CORE_SESSION_MAX_PRIVATES_get();
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_dtmf_t_digit_set")]
   public static extern void switch_dtmf_t_digit_set(HandleRef jarg1, char jarg2);
 
@@ -9532,11 +9674,11 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_receive_event")]
   public static extern int switch_core_session_receive_event(HandleRef jarg1, HandleRef jarg2);
 
-  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_get_private")]
-  public static extern IntPtr switch_core_session_get_private(HandleRef jarg1);
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_get_private_class")]
+  public static extern IntPtr switch_core_session_get_private_class(HandleRef jarg1, int jarg2);
 
-  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_set_private")]
-  public static extern int switch_core_session_set_private(HandleRef jarg1, HandleRef jarg2);
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_set_private_class")]
+  public static extern int switch_core_session_set_private_class(HandleRef jarg1, HandleRef jarg2, int jarg3);
 
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_add_stream")]
   public static extern int switch_core_session_add_stream(HandleRef jarg1, HandleRef jarg2);
@@ -9800,7 +9942,7 @@ class freeswitchPINVOKE {
   public static extern void switch_core_db_test_reactive(HandleRef jarg1, string jarg2, string jarg3, string jarg4);
 
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_perform_file_open")]
-  public static extern int switch_core_perform_file_open(string jarg1, string jarg2, int jarg3, HandleRef jarg4, string jarg5, byte jarg6, uint jarg7, uint jarg8, HandleRef jarg9);
+  public static extern int switch_core_perform_file_open(string jarg1, string jarg2, int jarg3, HandleRef jarg4, string jarg5, uint jarg6, uint jarg7, uint jarg8, HandleRef jarg9);
 
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_file_read")]
   public static extern int switch_core_file_read(HandleRef jarg1, HandleRef jarg2, HandleRef jarg3);
@@ -10393,6 +10535,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_stream_system_fork")]
   public static extern int switch_stream_system_fork(string jarg1, HandleRef jarg2);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_ice_direction")]
+  public static extern int switch_ice_direction(HandleRef jarg1);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_module_name_set")]
   public static extern void switch_loadable_module_interface_module_name_set(HandleRef jarg1, string jarg2);
 
@@ -10441,6 +10586,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_api_interface_get")]
   public static extern IntPtr switch_loadable_module_interface_api_interface_get(HandleRef jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_json_api_interface_set")]
+  public static extern void switch_loadable_module_interface_json_api_interface_set(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_json_api_interface_get")]
+  public static extern IntPtr switch_loadable_module_interface_json_api_interface_get(HandleRef jarg1);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_file_interface_set")]
   public static extern void switch_loadable_module_interface_file_interface_set(HandleRef jarg1, HandleRef jarg2);
 
@@ -10555,6 +10706,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_get_api_interface")]
   public static extern IntPtr switch_loadable_module_get_api_interface(string jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_get_json_api_interface")]
+  public static extern IntPtr switch_loadable_module_get_json_api_interface(string jarg1);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_get_file_interface")]
   public static extern IntPtr switch_loadable_module_get_file_interface(string jarg1);
 
@@ -10588,6 +10742,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_api_execute")]
   public static extern int switch_api_execute(string jarg1, string jarg2, HandleRef jarg3, HandleRef jarg4);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_execute")]
+  public static extern int switch_json_api_execute(HandleRef jarg1, HandleRef jarg2, HandleRef jarg3);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_load_module")]
   public static extern int switch_loadable_module_load_module(string jarg1, string jarg2, int jarg3, ref string jarg4);
 
@@ -10609,6 +10766,15 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_codec_ready")]
   public static extern int switch_core_codec_ready(HandleRef jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_get_secondary_recover_callback")]
+  public static extern IntPtr switch_core_get_secondary_recover_callback(string jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_register_secondary_recover_callback")]
+  public static extern int switch_core_register_secondary_recover_callback(string jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_unregister_secondary_recover_callback")]
+  public static extern void switch_core_unregister_secondary_recover_callback(string jarg1);
+
   [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_CMD_CHUNK_LEN_get")]
   public static extern int SWITCH_CMD_CHUNK_LEN_get();
 
@@ -12134,10 +12300,10 @@ class freeswitchPINVOKE {
   public static extern uint switch_file_handle_native_rate_get(HandleRef jarg1);
 
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_channels_set")]
-  public static extern void switch_file_handle_channels_set(HandleRef jarg1, byte jarg2);
+  public static extern void switch_file_handle_channels_set(HandleRef jarg1, uint jarg2);
 
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_channels_get")]
-  public static extern byte switch_file_handle_channels_get(HandleRef jarg1);
+  public static extern uint switch_file_handle_channels_get(HandleRef jarg1);
 
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_format_set")]
   public static extern void switch_file_handle_format_set(HandleRef jarg1, uint jarg2);
@@ -12343,6 +12509,18 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_params_get")]
   public static extern IntPtr switch_file_handle_params_get(HandleRef jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_channels_set")]
+  public static extern void switch_file_handle_cur_channels_set(HandleRef jarg1, uint jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_channels_get")]
+  public static extern uint switch_file_handle_cur_channels_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_samplerate_set")]
+  public static extern void switch_file_handle_cur_samplerate_set(HandleRef jarg1, uint jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_samplerate_get")]
+  public static extern uint switch_file_handle_cur_samplerate_get(HandleRef jarg1);
+
   [DllImport("mod_managed", EntryPoint="CSharp_new_switch_file_handle")]
   public static extern IntPtr new_switch_file_handle();
 
@@ -13633,6 +13811,66 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_delete_switch_api_interface")]
   public static extern void delete_switch_api_interface(HandleRef jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_interface_name_set")]
+  public static extern void switch_json_api_interface_interface_name_set(HandleRef jarg1, string jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_interface_name_get")]
+  public static extern string switch_json_api_interface_interface_name_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_desc_set")]
+  public static extern void switch_json_api_interface_desc_set(HandleRef jarg1, string jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_desc_get")]
+  public static extern string switch_json_api_interface_desc_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_function_set")]
+  public static extern void switch_json_api_interface_function_set(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_function_get")]
+  public static extern IntPtr switch_json_api_interface_function_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_syntax_set")]
+  public static extern void switch_json_api_interface_syntax_set(HandleRef jarg1, string jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_syntax_get")]
+  public static extern string switch_json_api_interface_syntax_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_rwlock_set")]
+  public static extern void switch_json_api_interface_rwlock_set(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_rwlock_get")]
+  public static extern IntPtr switch_json_api_interface_rwlock_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_refs_set")]
+  public static extern void switch_json_api_interface_refs_set(HandleRef jarg1, int jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_refs_get")]
+  public static extern int switch_json_api_interface_refs_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_reflock_set")]
+  public static extern void switch_json_api_interface_reflock_set(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_reflock_get")]
+  public static extern IntPtr switch_json_api_interface_reflock_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_parent_set")]
+  public static extern void switch_json_api_interface_parent_set(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_parent_get")]
+  public static extern IntPtr switch_json_api_interface_parent_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_next_set")]
+  public static extern void switch_json_api_interface_next_set(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_next_get")]
+  public static extern IntPtr switch_json_api_interface_next_get(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_new_switch_json_api_interface")]
+  public static extern IntPtr new_switch_json_api_interface();
+
+  [DllImport("mod_managed", EntryPoint="CSharp_delete_switch_json_api_interface")]
+  public static extern void delete_switch_json_api_interface(HandleRef jarg1);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_slin_data_session_set")]
   public static extern void switch_slin_data_session_set(HandleRef jarg1, HandleRef jarg2);
 
@@ -14089,6 +14327,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_direction")]
   public static extern int switch_channel_direction(HandleRef jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_set_direction")]
+  public static extern void switch_channel_set_direction(HandleRef jarg1, int jarg2);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_get_session")]
   public static extern IntPtr switch_channel_get_session(HandleRef jarg1);
 
@@ -14503,6 +14744,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_serialize_json")]
   public static extern int switch_event_serialize_json(HandleRef jarg1, ref string jarg2);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_serialize_json_obj")]
+  public static extern int switch_event_serialize_json_obj(HandleRef jarg1, HandleRef jarg2);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_create_json")]
   public static extern int switch_event_create_json(HandleRef jarg1, string jarg2);
 
@@ -14539,9 +14783,72 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_add_presence_data_cols")]
   public static extern void switch_event_add_presence_data_cols(HandleRef jarg1, HandleRef jarg2, string jarg3);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_add_presence_data_cols")]
+  public static extern void switch_json_add_presence_data_cols(HandleRef jarg1, HandleRef jarg2, string jarg3);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_launch_dispatch_threads")]
   public static extern void switch_event_launch_dispatch_threads(uint jarg1);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_broadcast")]
+  public static extern uint switch_event_channel_broadcast(string jarg1, HandleRef jarg2, string jarg3, uint jarg4);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_unbind")]
+  public static extern uint switch_event_channel_unbind(string jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_bind")]
+  public static extern int switch_event_channel_bind(string jarg1, HandleRef jarg2, HandleRef jarg3);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_NO_EVENT_CHANNEL_ID_get")]
+  public static extern int NO_EVENT_CHANNEL_ID_get();
+
+  [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_EVENT_CHANNEL_GLOBAL_get")]
+  public static extern string SWITCH_EVENT_CHANNEL_GLOBAL_get();
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_clear")]
+  public static extern int switch_live_array_clear(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_bootstrap")]
+  public static extern int switch_live_array_bootstrap(HandleRef jarg1, string jarg2, uint jarg3);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_destroy")]
+  public static extern int switch_live_array_destroy(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_create")]
+  public static extern int switch_live_array_create(string jarg1, string jarg2, uint jarg3, HandleRef jarg4);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_get")]
+  public static extern IntPtr switch_live_array_get(HandleRef jarg1, string jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_get_idx")]
+  public static extern IntPtr switch_live_array_get_idx(HandleRef jarg1, int jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_del")]
+  public static extern int switch_live_array_del(HandleRef jarg1, string jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_add")]
+  public static extern int switch_live_array_add(HandleRef jarg1, string jarg2, int jarg3, HandleRef jarg4, int jarg5);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_visible")]
+  public static extern int switch_live_array_visible(HandleRef jarg1, int jarg2, int jarg3);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_isnew")]
+  public static extern int switch_live_array_isnew(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_lock")]
+  public static extern void switch_live_array_lock(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_unlock")]
+  public static extern void switch_live_array_unlock(HandleRef jarg1);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_set_user_data")]
+  public static extern void switch_live_array_set_user_data(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_set_command_handler")]
+  public static extern void switch_live_array_set_command_handler(HandleRef jarg1, HandleRef jarg2);
+
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_parse_json")]
+  public static extern void switch_live_array_parse_json(HandleRef jarg1, uint jarg2);
+
   [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_RESAMPLE_QUALITY_get")]
   public static extern int SWITCH_RESAMPLE_QUALITY_get();
 
@@ -15553,6 +15860,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_add_dtls")]
   public static extern int switch_rtp_add_dtls(HandleRef jarg1, HandleRef jarg2, HandleRef jarg3, int jarg4);
 
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_del_dtls")]
+  public static extern int switch_rtp_del_dtls(HandleRef jarg1, int jarg2);
+
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_has_dtls")]
   public static extern int switch_rtp_has_dtls();
 
@@ -17632,6 +17942,36 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class SWIGTYPE_p_cJSON {
+  private HandleRef swigCPtr;
+
+  internal SWIGTYPE_p_cJSON(IntPtr cPtr, bool futureUse) {
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  protected SWIGTYPE_p_cJSON() {
+    swigCPtr = new HandleRef(null, IntPtr.Zero);
+  }
+
+  internal static HandleRef getCPtr(SWIGTYPE_p_cJSON obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class SWIGTYPE_p_FILE {
   private HandleRef swigCPtr;
 
@@ -17752,6 +18092,36 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void {
+  private HandleRef swigCPtr;
+
+  internal SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void(IntPtr cPtr, bool futureUse) {
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  protected SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void() {
+    swigCPtr = new HandleRef(null, IntPtr.Zero);
+  }
+
+  internal static HandleRef getCPtr(SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class SWIGTYPE_p_f_p_q_const__char_p_q_const__char_p_p_switch_console_callback_match__switch_status_t {
   private HandleRef swigCPtr;
 
@@ -17962,6 +18332,36 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t {
+  private HandleRef swigCPtr;
+
+  internal SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t(IntPtr cPtr, bool futureUse) {
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  protected SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t() {
+    swigCPtr = new HandleRef(null, IntPtr.Zero);
+  }
+
+  internal static HandleRef getCPtr(SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class SWIGTYPE_p_f_p_q_const__switch_log_node_t_enum_switch_log_level_t__switch_status_t {
   private HandleRef swigCPtr;
 
@@ -19612,6 +20012,36 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void {
+  private HandleRef swigCPtr;
+
+  internal SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void(IntPtr cPtr, bool futureUse) {
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  protected SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void() {
+    swigCPtr = new HandleRef(null, IntPtr.Zero);
+  }
+
+  internal static HandleRef getCPtr(SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class SWIGTYPE_p_f_p_switch_media_bug_p_void_enum_switch_abc_type_t__switch_bool_t {
   private HandleRef swigCPtr;
 
@@ -21322,6 +21752,36 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class SWIGTYPE_p_p_switch_live_array_s {
+  private HandleRef swigCPtr;
+
+  internal SWIGTYPE_p_p_switch_live_array_s(IntPtr cPtr, bool futureUse) {
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  protected SWIGTYPE_p_p_switch_live_array_s() {
+    swigCPtr = new HandleRef(null, IntPtr.Zero);
+  }
+
+  internal static HandleRef getCPtr(SWIGTYPE_p_p_switch_live_array_s obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class SWIGTYPE_p_p_switch_log_node_t {
   private HandleRef swigCPtr;
 
@@ -22402,6 +22862,36 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class SWIGTYPE_p_switch_live_array_s {
+  private HandleRef swigCPtr;
+
+  internal SWIGTYPE_p_switch_live_array_s(IntPtr cPtr, bool futureUse) {
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  protected SWIGTYPE_p_switch_live_array_s() {
+    swigCPtr = new HandleRef(null, IntPtr.Zero);
+  }
+
+  internal static HandleRef getCPtr(SWIGTYPE_p_switch_live_array_s obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class SWIGTYPE_p_switch_media_bug {
   private HandleRef swigCPtr;
 
@@ -29838,7 +30328,8 @@ namespace FreeSWITCH.Native {
   SWITCH_FILE_BUFFER_DONE = (1 << 14),
   SWITCH_FILE_WRITE_APPEND = (1 << 15),
   SWITCH_FILE_WRITE_OVER = (1 << 16),
-  SWITCH_FILE_NOMUX = (1 << 17)
+  SWITCH_FILE_NOMUX = (1 << 17),
+  SWITCH_FILE_BREAK_ON_CHANGE = (1 << 18)
 }
 
 }
@@ -29945,12 +30436,12 @@ public class switch_file_handle : IDisposable {
     } 
   }
 
-  public byte channels {
+  public uint channels {
     set {
       freeswitchPINVOKE.switch_file_handle_channels_set(swigCPtr, value);
     } 
     get {
-      byte ret = freeswitchPINVOKE.switch_file_handle_channels_get(swigCPtr);
+      uint ret = freeswitchPINVOKE.switch_file_handle_channels_get(swigCPtr);
       return ret;
     } 
   }
@@ -30315,6 +30806,26 @@ public class switch_file_handle : IDisposable {
     } 
   }
 
+  public uint cur_channels {
+    set {
+      freeswitchPINVOKE.switch_file_handle_cur_channels_set(swigCPtr, value);
+    } 
+    get {
+      uint ret = freeswitchPINVOKE.switch_file_handle_cur_channels_get(swigCPtr);
+      return ret;
+    } 
+  }
+
+  public uint cur_samplerate {
+    set {
+      freeswitchPINVOKE.switch_file_handle_cur_samplerate_set(swigCPtr, value);
+    } 
+    get {
+      uint ret = freeswitchPINVOKE.switch_file_handle_cur_samplerate_get(swigCPtr);
+      return ret;
+    } 
+  }
+
   public switch_file_handle() : this(freeswitchPINVOKE.new_switch_file_handle(), true) {
   }
 
@@ -32511,6 +33022,148 @@ namespace FreeSWITCH.Native {
 using System;
 using System.Runtime.InteropServices;
 
+public class switch_json_api_interface : IDisposable {
+  private HandleRef swigCPtr;
+  protected bool swigCMemOwn;
+
+  internal switch_json_api_interface(IntPtr cPtr, bool cMemoryOwn) {
+    swigCMemOwn = cMemoryOwn;
+    swigCPtr = new HandleRef(this, cPtr);
+  }
+
+  internal static HandleRef getCPtr(switch_json_api_interface obj) {
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
+  }
+
+  ~switch_json_api_interface() {
+    Dispose();
+  }
+
+  public virtual void Dispose() {
+    lock(this) {
+      if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
+        swigCMemOwn = false;
+        freeswitchPINVOKE.delete_switch_json_api_interface(swigCPtr);
+      }
+      swigCPtr = new HandleRef(null, IntPtr.Zero);
+      GC.SuppressFinalize(this);
+    }
+  }
+
+  public string interface_name {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_interface_name_set(swigCPtr, value);
+    } 
+    get {
+      string ret = freeswitchPINVOKE.switch_json_api_interface_interface_name_get(swigCPtr);
+      return ret;
+    } 
+  }
+
+  public string desc {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_desc_set(swigCPtr, value);
+    } 
+    get {
+      string ret = freeswitchPINVOKE.switch_json_api_interface_desc_get(swigCPtr);
+      return ret;
+    } 
+  }
+
+  public SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t function {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_function_set(swigCPtr, SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t.getCPtr(value));
+    } 
+    get {
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_function_get(swigCPtr);
+      SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t(cPtr, false);
+      return ret;
+    } 
+  }
+
+  public string syntax {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_syntax_set(swigCPtr, value);
+    } 
+    get {
+      string ret = freeswitchPINVOKE.switch_json_api_interface_syntax_get(swigCPtr);
+      return ret;
+    } 
+  }
+
+  public SWIGTYPE_p_switch_thread_rwlock_t rwlock {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_rwlock_set(swigCPtr, SWIGTYPE_p_switch_thread_rwlock_t.getCPtr(value));
+    } 
+    get {
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_rwlock_get(swigCPtr);
+      SWIGTYPE_p_switch_thread_rwlock_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_switch_thread_rwlock_t(cPtr, false);
+      return ret;
+    } 
+  }
+
+  public int refs {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_refs_set(swigCPtr, value);
+    } 
+    get {
+      int ret = freeswitchPINVOKE.switch_json_api_interface_refs_get(swigCPtr);
+      return ret;
+    } 
+  }
+
+  public SWIGTYPE_p_switch_mutex_t reflock {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_reflock_set(swigCPtr, SWIGTYPE_p_switch_mutex_t.getCPtr(value));
+    } 
+    get {
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_reflock_get(swigCPtr);
+      SWIGTYPE_p_switch_mutex_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_switch_mutex_t(cPtr, false);
+      return ret;
+    } 
+  }
+
+  public switch_loadable_module_interface parent {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_parent_set(swigCPtr, switch_loadable_module_interface.getCPtr(value));
+    } 
+    get {
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_parent_get(swigCPtr);
+      switch_loadable_module_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_loadable_module_interface(cPtr, false);
+      return ret;
+    } 
+  }
+
+  public switch_json_api_interface next {
+    set {
+      freeswitchPINVOKE.switch_json_api_interface_next_set(swigCPtr, switch_json_api_interface.getCPtr(value));
+    } 
+    get {
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_next_get(swigCPtr);
+      switch_json_api_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_json_api_interface(cPtr, false);
+      return ret;
+    } 
+  }
+
+  public switch_json_api_interface() : this(freeswitchPINVOKE.new_switch_json_api_interface(), true) {
+  }
+
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
+using System;
+using System.Runtime.InteropServices;
+
 public class switch_limit_interface : IDisposable {
   private HandleRef swigCPtr;
   protected bool swigCMemOwn;
@@ -32903,6 +33556,17 @@ public class switch_loadable_module_interface : IDisposable {
     } 
   }
 
+  public switch_json_api_interface json_api_interface {
+    set {
+      freeswitchPINVOKE.switch_loadable_module_interface_json_api_interface_set(swigCPtr, switch_json_api_interface.getCPtr(value));
+    } 
+    get {
+      IntPtr cPtr = freeswitchPINVOKE.switch_loadable_module_interface_json_api_interface_get(swigCPtr);
+      switch_json_api_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_json_api_interface(cPtr, false);
+      return ret;
+    } 
+  }
+
   public switch_file_interface file_interface {
     set {
       freeswitchPINVOKE.switch_loadable_module_interface_file_interface_set(swigCPtr, switch_file_interface.getCPtr(value));
@@ -33464,7 +34128,8 @@ public enum switch_module_interface_name_t {
   SWITCH_ASR_INTERFACE,
   SWITCH_MANAGEMENT_INTERFACE,
   SWITCH_LIMIT_INTERFACE,
-  SWITCH_CHAT_APPLICATION_INTERFACE
+  SWITCH_CHAT_APPLICATION_INTERFACE,
+  SWITCH_JSON_API_INTERFACE
 }
 
 }
@@ -33532,6 +34197,22 @@ public enum switch_priority_t {
 
 namespace FreeSWITCH.Native {
 
+public enum switch_pvt_class_t {
+  SWITCH_PVT_PRIMARY = 0,
+  SWITCH_PVT_SECONDARY
+}
+
+}
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.35
+ *
+ * Do not make changes to this file unless you know what you are doing--modify
+ * the SWIG interface file instead.
+ * ----------------------------------------------------------------------------- */
+
+namespace FreeSWITCH.Native {
+
 public enum switch_ring_ready_t {
   SWITCH_RING_READY_NONE,
   SWITCH_RING_READY_RINGING,
@@ -33923,6 +34604,7 @@ public enum switch_rtp_flag_t {
   SWITCH_RTP_FLAG_ENABLE_RTCP,
   SWITCH_RTP_FLAG_RTCP_MUX,
   SWITCH_RTP_FLAG_KILL_JB,
+  SWITCH_RTP_FLAG_VIDEO_BREAK,
   SWITCH_RTP_FLAG_INVALID
 }
 
@@ -35919,7 +36601,9 @@ public enum switch_status_t {
   SWITCH_STATUS_FOUND,
   SWITCH_STATUS_CONTINUE,
   SWITCH_STATUS_TERM,
-  SWITCH_STATUS_NOT_INITALIZED
+  SWITCH_STATUS_NOT_INITALIZED,
+  SWITCH_STATUS_XBREAK = 35,
+  SWITCH_STATUS_WINBREAK = 730035
 }
 
 }
index 6f1b81cabe8256a308c082688cd8cf7a205f9ee8..0757fcd85cc2edfd654700292415f36c32124e38 100644 (file)
@@ -2510,17 +2510,29 @@ XS(_wrap_IVRMenu_execute) {
 
 XS(_wrap_new_API) {
   {
+    CoreSession *arg1 = (CoreSession *) NULL ;
     API *result = 0 ;
+    void *argp1 = 0 ;
+    int res1 = 0 ;
     int argvi = 0;
     dXSARGS;
     
-    if ((items < 0) || (items > 0)) {
-      SWIG_croak("Usage: new_API();");
+    if ((items < 0) || (items > 1)) {
+      SWIG_croak("Usage: new_API(s);");
     }
-    result = (API *)new API();
+    if (items > 0) {
+      res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_CoreSession, 0 |  0 );
+      if (!SWIG_IsOK(res1)) {
+        SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_API" "', argument " "1"" of type '" "CoreSession *""'"); 
+      }
+      arg1 = reinterpret_cast< CoreSession * >(argp1);
+    }
+    result = (API *)new API(arg1);
     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_API, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
+    
     XSRETURN(argvi);
   fail:
+    
     SWIG_croak_null();
   }
 }
index caecd70d5bf13318d77ac7c193958a750f5b577b..b7379edb7d4a53ebbdf732256de04eca37207794 100644 (file)
@@ -3579,10 +3579,21 @@ SWIGINTERN PyObject *IVRMenu_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObje
 
 SWIGINTERN PyObject *_wrap_new_API(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *resultobj = 0;
+  CoreSession *arg1 = (CoreSession *) NULL ;
   API *result = 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject * obj0 = 0 ;
   
-  if (!PyArg_ParseTuple(args,(char *)":new_API")) SWIG_fail;
-  result = (API *)new API();
+  if (!PyArg_ParseTuple(args,(char *)"|O:new_API",&obj0)) SWIG_fail;
+  if (obj0) {
+    res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_CoreSession, 0 |  0 );
+    if (!SWIG_IsOK(res1)) {
+      SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_API" "', argument " "1"" of type '" "CoreSession *""'"); 
+    }
+    arg1 = reinterpret_cast< CoreSession * >(argp1);
+  }
+  result = (API *)new API(arg1);
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_API, SWIG_POINTER_NEW |  0 );
   return resultobj;
 fail: