]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
fix windows compiler warnings and vs2010 reswig
authorJeff Lenk <jeff@jefflenk.com>
Fri, 8 Nov 2013 05:01:40 +0000 (23:01 -0600)
committerJeff Lenk <jeff@jefflenk.com>
Fri, 8 Nov 2013 05:01:40 +0000 (23:01 -0600)
src/mod/languages/mod_managed/freeswitch_wrap.2010.cxx
src/mod/languages/mod_managed/managed/swig.2010.cs
src/switch_core_media.c

index 9afb1d2758e85997e28d73d077f46aa797d7b3ef..6b36513455356ef1041e21426809831dcde4a6b7 100644 (file)
@@ -1930,6 +1930,16 @@ SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_MAX_TRANS_get() {
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_CORE_SESSION_MAX_PRIVATES_get() {\r
+  int jresult ;\r
+  int result;\r
+  \r
+  result = (int)(2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_dtmf_t_digit_set(void * jarg1, char jarg2) {\r
   switch_dtmf_t *arg1 = (switch_dtmf_t *) 0 ;\r
   char arg2 ;\r
@@ -6320,6 +6330,28 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_thread_data_t_alloc_get(void * jarg1) {
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_thread_data_t_pool_set(void * jarg1, void * jarg2) {\r
+  switch_thread_data_t *arg1 = (switch_thread_data_t *) 0 ;\r
+  switch_memory_pool_t *arg2 = (switch_memory_pool_t *) 0 ;\r
+  \r
+  arg1 = (switch_thread_data_t *)jarg1; \r
+  arg2 = (switch_memory_pool_t *)jarg2; \r
+  if (arg1) (arg1)->pool = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_thread_data_t_pool_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_thread_data_t *arg1 = (switch_thread_data_t *) 0 ;\r
+  switch_memory_pool_t *result = 0 ;\r
+  \r
+  arg1 = (switch_thread_data_t *)jarg1; \r
+  result = (switch_memory_pool_t *) ((arg1)->pool);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_thread_data_t() {\r
   void * jresult ;\r
   switch_thread_data_t *result = 0 ;\r
@@ -6604,6 +6636,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_node_t_hup_profile_get(void *
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_node_t_direction_set(void * jarg1, int jarg2) {\r
+  switch_device_node_t *arg1 = (switch_device_node_t *) 0 ;\r
+  switch_call_direction_t arg2 ;\r
+  \r
+  arg1 = (switch_device_node_t *)jarg1; \r
+  arg2 = (switch_call_direction_t)jarg2; \r
+  if (arg1) (arg1)->direction = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_device_node_t_direction_get(void * jarg1) {\r
+  int jresult ;\r
+  switch_device_node_t *arg1 = (switch_device_node_t *) 0 ;\r
+  switch_call_direction_t result;\r
+  \r
+  arg1 = (switch_device_node_t *)jarg1; \r
+  result = (switch_call_direction_t) ((arg1)->direction);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_node_t_parent_set(void * jarg1, void * jarg2) {\r
   switch_device_node_t *arg1 = (switch_device_node_t *) 0 ;\r
   switch_device_record_s *arg2 = (switch_device_record_s *) 0 ;\r
@@ -6688,6 +6742,50 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_total_get(void
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_total_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->total_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_total_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->total_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_total_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->total_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_total_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->total_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_offhook_set(void * jarg1, unsigned long jarg2) {\r
   switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
   uint32_t arg2 ;\r
@@ -6710,6 +6808,50 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_offhook_get(vo
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_offhook_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->offhook_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_offhook_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->offhook_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_offhook_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->offhook_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_offhook_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->offhook_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_active_set(void * jarg1, unsigned long jarg2) {\r
   switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
   uint32_t arg2 ;\r
@@ -6732,6 +6874,50 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_active_get(voi
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_active_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->active_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_active_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->active_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_active_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->active_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_active_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->active_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_held_set(void * jarg1, unsigned long jarg2) {\r
   switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
   uint32_t arg2 ;\r
@@ -6754,6 +6940,50 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_held_get(void
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_held_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->held_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_held_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->held_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_held_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->held_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_held_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->held_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_hup_set(void * jarg1, unsigned long jarg2) {\r
   switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
   uint32_t arg2 ;\r
@@ -6776,6 +7006,50 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_hup_get(void *
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_hup_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->hup_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_hup_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->hup_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_hup_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->hup_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_hup_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->hup_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_ringing_set(void * jarg1, unsigned long jarg2) {\r
   switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
   uint32_t arg2 ;\r
@@ -6798,6 +7072,50 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_ringing_get(vo
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_ringing_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->ringing_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_ringing_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->ringing_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_ringing_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->ringing_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_ringing_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->ringing_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_early_set(void * jarg1, unsigned long jarg2) {\r
   switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
   uint32_t arg2 ;\r
@@ -6820,6 +7138,72 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_early_get(void
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_early_in_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->early_in = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_early_in_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->early_in);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_early_out_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->early_out = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_early_out_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->early_out);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_stats_t_ring_wait_set(void * jarg1, unsigned long jarg2) {\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->ring_wait = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_device_stats_t_ring_wait_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_device_stats_t *arg1 = (switch_device_stats_t *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_device_stats_t *)jarg1; \r
+  result = (uint32_t) ((arg1)->ring_wait);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_device_stats_t() {\r
   void * jresult ;\r
   switch_device_stats_t *result = 0 ;\r
@@ -6942,6 +7326,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_stats_get(void * jar
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_last_stats_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_device_stats_t *arg2 = (switch_device_stats_t *) 0 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  arg2 = (switch_device_stats_t *)jarg2; \r
+  if (arg1) (arg1)->last_stats = *arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_last_stats_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_device_stats_t *result = 0 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result = (switch_device_stats_t *)& ((arg1)->last_stats);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_state_set(void * jarg1, int jarg2) {\r
   switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
   switch_device_state_t arg2 ;\r
@@ -7070,6 +7476,146 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_last_call_time_get(v
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_ring_start_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t arg2 ;\r
+  switch_time_t *argp2 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  argp2 = (switch_time_t *)jarg2; \r
+  if (!argp2) {\r
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null switch_time_t", 0);\r
+    return ;\r
+  }\r
+  arg2 = *argp2; \r
+  if (arg1) (arg1)->ring_start = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_ring_start_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t result;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result =  ((arg1)->ring_start);\r
+  jresult = new switch_time_t((const switch_time_t &)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_ring_stop_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t arg2 ;\r
+  switch_time_t *argp2 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  argp2 = (switch_time_t *)jarg2; \r
+  if (!argp2) {\r
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null switch_time_t", 0);\r
+    return ;\r
+  }\r
+  arg2 = *argp2; \r
+  if (arg1) (arg1)->ring_stop = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_ring_stop_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t result;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result =  ((arg1)->ring_stop);\r
+  jresult = new switch_time_t((const switch_time_t &)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_hold_start_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t arg2 ;\r
+  switch_time_t *argp2 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  argp2 = (switch_time_t *)jarg2; \r
+  if (!argp2) {\r
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null switch_time_t", 0);\r
+    return ;\r
+  }\r
+  arg2 = *argp2; \r
+  if (arg1) (arg1)->hold_start = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_hold_start_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t result;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result =  ((arg1)->hold_start);\r
+  jresult = new switch_time_t((const switch_time_t &)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_hold_stop_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t arg2 ;\r
+  switch_time_t *argp2 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  argp2 = (switch_time_t *)jarg2; \r
+  if (!argp2) {\r
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null switch_time_t", 0);\r
+    return ;\r
+  }\r
+  arg2 = *argp2; \r
+  if (arg1) (arg1)->hold_stop = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_hold_stop_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t result;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result =  ((arg1)->hold_stop);\r
+  jresult = new switch_time_t((const switch_time_t &)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_call_start_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t arg2 ;\r
+  switch_time_t *argp2 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  argp2 = (switch_time_t *)jarg2; \r
+  if (!argp2) {\r
+    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null switch_time_t", 0);\r
+    return ;\r
+  }\r
+  arg2 = *argp2; \r
+  if (arg1) (arg1)->call_start = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_call_start_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  switch_time_t result;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result =  ((arg1)->call_start);\r
+  jresult = new switch_time_t((const switch_time_t &)result); \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_uuid_list_set(void * jarg1, void * jarg2) {\r
   switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
   device_uuid_node_s *arg2 = (device_uuid_node_s *) 0 ;\r
@@ -7158,6 +7704,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_pool_get(void * jarg
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_device_record_t_user_data_set(void * jarg1, void * jarg2) {\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  void *arg2 = (void *) 0 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  arg2 = (void *)jarg2; \r
+  if (arg1) (arg1)->user_data = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_device_record_t_user_data_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_device_record_t *arg1 = (switch_device_record_t *) 0 ;\r
+  void *result = 0 ;\r
+  \r
+  arg1 = (switch_device_record_t *)jarg1; \r
+  result = (void *) ((arg1)->user_data);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_device_record_t() {\r
   void * jresult ;\r
   switch_device_record_t *result = 0 ;\r
@@ -9436,6 +10004,18 @@ SWIGEXPORT char * SWIGSTDCALL CSharp_switch_core_get_switchname() {
 }\r
 \r
 \r
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_core_get_domain(int jarg1) {\r
+  char * jresult ;\r
+  switch_bool_t arg1 ;\r
+  char *result = 0 ;\r
+  \r
+  arg1 = (switch_bool_t)jarg1; \r
+  result = (char *)switch_core_get_domain(arg1);\r
+  jresult = SWIG_csharp_string_callback((const char *)result); \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_core_set_variable(char * jarg1, char * jarg2) {\r
   char *arg1 = (char *) 0 ;\r
   char *arg2 = (char *) 0 ;\r
@@ -9722,6 +10302,14 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_exec(void * jarg1, void *
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_core_session_video_reset(void * jarg1) {\r
+  switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;\r
+  \r
+  arg1 = (switch_core_session_t *)jarg1; \r
+  switch_core_session_video_reset(arg1);\r
+}\r
+\r
+\r
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_execute_application_get_flags(void * jarg1, char * jarg2, char * jarg3, void * jarg4) {\r
   int jresult ;\r
   switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;\r
@@ -9802,27 +10390,31 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_receive_event(void * jarg1
 }\r
 \r
 \r
-SWIGEXPORT void * SWIGSTDCALL CSharp_switch_core_session_get_private(void * jarg1) {\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_core_session_get_private_class(void * jarg1, int jarg2) {\r
   void * jresult ;\r
   switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;\r
+  switch_pvt_class_t arg2 ;\r
   void *result = 0 ;\r
   \r
   arg1 = (switch_core_session_t *)jarg1; \r
-  result = (void *)switch_core_session_get_private(arg1);\r
+  arg2 = (switch_pvt_class_t)jarg2; \r
+  result = (void *)switch_core_session_get_private_class(arg1,arg2);\r
   jresult = (void *)result; \r
   return jresult;\r
 }\r
 \r
 \r
-SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_set_private(void * jarg1, void * jarg2) {\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_session_set_private_class(void * jarg1, void * jarg2, int jarg3) {\r
   int jresult ;\r
   switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;\r
   void *arg2 = (void *) 0 ;\r
+  switch_pvt_class_t arg3 ;\r
   switch_status_t result;\r
   \r
   arg1 = (switch_core_session_t *)jarg1; \r
   arg2 = (void *)jarg2; \r
-  result = (switch_status_t)switch_core_session_set_private(arg1,arg2);\r
+  arg3 = (switch_pvt_class_t)jarg3; \r
+  result = (switch_status_t)switch_core_session_set_private_class(arg1,arg2,arg3);\r
   jresult = result; \r
   return jresult;\r
 }\r
@@ -11071,14 +11663,14 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_core_db_test_reactive(void * jarg1, ch
 }\r
 \r
 \r
-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) {\r
+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) {\r
   int jresult ;\r
   char *arg1 = (char *) 0 ;\r
   char *arg2 = (char *) 0 ;\r
   int arg3 ;\r
   switch_file_handle_t *arg4 = (switch_file_handle_t *) 0 ;\r
   char *arg5 = (char *) 0 ;\r
-  uint8_t arg6 ;\r
+  uint32_t arg6 ;\r
   uint32_t arg7 ;\r
   unsigned int arg8 ;\r
   switch_memory_pool_t *arg9 = (switch_memory_pool_t *) 0 ;\r
@@ -11089,7 +11681,7 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_perform_file_open(char * jarg1, ch
   arg3 = (int)jarg3; \r
   arg4 = (switch_file_handle_t *)jarg4; \r
   arg5 = (char *)jarg5; \r
-  arg6 = (uint8_t)jarg6; \r
+  arg6 = (uint32_t)jarg6; \r
   arg7 = (uint32_t)jarg7; \r
   arg8 = (unsigned int)jarg8; \r
   arg9 = (switch_memory_pool_t *)jarg9; \r
@@ -13605,6 +14197,18 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_stream_system_fork(char * jarg1, void *
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_ice_direction(void * jarg1) {\r
+  int jresult ;\r
+  switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;\r
+  switch_call_direction_t result;\r
+  \r
+  arg1 = (switch_core_session_t *)jarg1; \r
+  result = (switch_call_direction_t)switch_ice_direction(arg1);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_loadable_module_interface_module_name_set(void * jarg1, char * jarg2) {\r
   switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;\r
   char *arg2 = (char *) 0 ;\r
@@ -13788,6 +14392,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_interface_api_interf
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_loadable_module_interface_json_api_interface_set(void * jarg1, void * jarg2) {\r
+  switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;\r
+  switch_json_api_interface_t *arg2 = (switch_json_api_interface_t *) 0 ;\r
+  \r
+  arg1 = (switch_loadable_module_interface *)jarg1; \r
+  arg2 = (switch_json_api_interface_t *)jarg2; \r
+  if (arg1) (arg1)->json_api_interface = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_interface_json_api_interface_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;\r
+  switch_json_api_interface_t *result = 0 ;\r
+  \r
+  arg1 = (switch_loadable_module_interface *)jarg1; \r
+  result = (switch_json_api_interface_t *) ((arg1)->json_api_interface);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_loadable_module_interface_file_interface_set(void * jarg1, void * jarg2) {\r
   switch_loadable_module_interface *arg1 = (switch_loadable_module_interface *) 0 ;\r
   switch_file_interface_t *arg2 = (switch_file_interface_t *) 0 ;\r
@@ -14233,6 +14859,18 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_get_api_interface(ch
 }\r
 \r
 \r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_get_json_api_interface(char * jarg1) {\r
+  void * jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  switch_json_api_interface_t *result = 0 ;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  result = (switch_json_api_interface_t *)switch_loadable_module_get_json_api_interface((char const *)arg1);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_switch_loadable_module_get_file_interface(char * jarg1) {\r
   void * jresult ;\r
   char *arg1 = (char *) 0 ;\r
@@ -14379,6 +15017,22 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_api_execute(char * jarg1, char * jarg2,
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_json_api_execute(void * jarg1, void * jarg2, void * jarg3) {\r
+  int jresult ;\r
+  cJSON *arg1 = (cJSON *) 0 ;\r
+  switch_core_session_t *arg2 = (switch_core_session_t *) 0 ;\r
+  cJSON **arg3 = (cJSON **) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (cJSON *)jarg1; \r
+  arg2 = (switch_core_session_t *)jarg2; \r
+  arg3 = (cJSON **)jarg3; \r
+  result = (switch_status_t)switch_json_api_execute(arg1,arg2,arg3);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_loadable_module_load_module(char * jarg1, char * jarg2, int jarg3, void * jarg4) {\r
   int jresult ;\r
   char *arg1 = (char *) 0 ;\r
@@ -14507,6 +15161,40 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_codec_ready(void * jarg1) {
 }\r
 \r
 \r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_core_get_secondary_recover_callback(char * jarg1) {\r
+  void * jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  switch_core_recover_callback_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  result = (switch_core_recover_callback_t)switch_core_get_secondary_recover_callback((char const *)arg1);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_core_register_secondary_recover_callback(char * jarg1, void * jarg2) {\r
+  int jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  switch_core_recover_callback_t arg2 = (switch_core_recover_callback_t) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (switch_core_recover_callback_t)jarg2; \r
+  result = (switch_status_t)switch_core_register_secondary_recover_callback((char const *)arg1,arg2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_core_unregister_secondary_recover_callback(char * jarg1) {\r
+  char *arg1 = (char *) 0 ;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  switch_core_unregister_secondary_recover_callback((char const *)arg1);\r
+}\r
+\r
+\r
 SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_CMD_CHUNK_LEN_get() {\r
   int jresult ;\r
   int result;\r
@@ -14624,6 +15312,16 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_console_run_complete_func(char * jarg1,
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_console_push_match_unique(void * jarg1, char * jarg2) {\r
+  switch_console_callback_match_t **arg1 = (switch_console_callback_match_t **) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  \r
+  arg1 = (switch_console_callback_match_t **)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  switch_console_push_match_unique(arg1,(char const *)arg2);\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_console_push_match(void * jarg1, char * jarg2) {\r
   switch_console_callback_match_t **arg1 = (switch_console_callback_match_t **) 0 ;\r
   char *arg2 = (char *) 0 ;\r
@@ -15405,6 +16103,26 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_find_local_ip(char * jarg1, int jarg2,
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_find_interface_ip(char * jarg1, int jarg2, void * jarg3, char * jarg4, int jarg5) {\r
+  int jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  int arg2 ;\r
+  int *arg3 = (int *) 0 ;\r
+  char *arg4 = (char *) 0 ;\r
+  int arg5 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (int)jarg2; \r
+  arg3 = (int *)jarg3; \r
+  arg4 = (char *)jarg4; \r
+  arg5 = (int)jarg5; \r
+  result = (switch_status_t)switch_find_interface_ip(arg1,arg2,arg3,(char const *)arg4,arg5);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT char * SWIGSTDCALL CSharp_get_addr(char * jarg1, void * jarg2, void * jarg3, void * jarg4) {\r
   char * jresult ;\r
   char *arg1 = (char *) 0 ;\r
@@ -17483,6 +18201,28 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_caller_profile_direction_get(void * jar
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_caller_profile_logical_direction_set(void * jarg1, int jarg2) {\r
+  switch_caller_profile *arg1 = (switch_caller_profile *) 0 ;\r
+  switch_call_direction_t arg2 ;\r
+  \r
+  arg1 = (switch_caller_profile *)jarg1; \r
+  arg2 = (switch_call_direction_t)jarg2; \r
+  if (arg1) (arg1)->logical_direction = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_caller_profile_logical_direction_get(void * jarg1) {\r
+  int jresult ;\r
+  switch_caller_profile *arg1 = (switch_caller_profile *) 0 ;\r
+  switch_call_direction_t result;\r
+  \r
+  arg1 = (switch_caller_profile *)jarg1; \r
+  result = (switch_call_direction_t) ((arg1)->logical_direction);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_caller_profile_soft_set(void * jarg1, void * jarg2) {\r
   switch_caller_profile *arg1 = (switch_caller_profile *) 0 ;\r
   profile_node_t *arg2 = (profile_node_t *) 0 ;\r
@@ -18459,6 +19199,28 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_frame_user_data_get(void * jarg1) {
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_frame_pmap_set(void * jarg1, void * jarg2) {\r
+  switch_frame *arg1 = (switch_frame *) 0 ;\r
+  payload_map_t *arg2 = (payload_map_t *) 0 ;\r
+  \r
+  arg1 = (switch_frame *)jarg1; \r
+  arg2 = (payload_map_t *)jarg2; \r
+  if (arg1) (arg1)->pmap = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_frame_pmap_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_frame *arg1 = (switch_frame *) 0 ;\r
+  payload_map_t *result = 0 ;\r
+  \r
+  arg1 = (switch_frame *)jarg1; \r
+  result = (payload_map_t *) ((arg1)->pmap);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_frame() {\r
   void * jresult ;\r
   switch_frame *result = 0 ;\r
@@ -20827,24 +21589,24 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_native_rate_get(v
 }\r
 \r
 \r
-SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_channels_set(void * jarg1, unsigned char jarg2) {\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_channels_set(void * jarg1, unsigned long jarg2) {\r
   switch_file_handle *arg1 = (switch_file_handle *) 0 ;\r
-  uint8_t arg2 ;\r
+  uint32_t arg2 ;\r
   \r
   arg1 = (switch_file_handle *)jarg1; \r
-  arg2 = (uint8_t)jarg2; \r
+  arg2 = (uint32_t)jarg2; \r
   if (arg1) (arg1)->channels = arg2;\r
 }\r
 \r
 \r
-SWIGEXPORT unsigned char SWIGSTDCALL CSharp_switch_file_handle_channels_get(void * jarg1) {\r
-  unsigned char jresult ;\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_channels_get(void * jarg1) {\r
+  unsigned long jresult ;\r
   switch_file_handle *arg1 = (switch_file_handle *) 0 ;\r
-  uint8_t result;\r
+  uint32_t result;\r
   \r
   arg1 = (switch_file_handle *)jarg1; \r
-  result = (uint8_t) ((arg1)->channels);\r
-  jresult = result; \r
+  result = (uint32_t) ((arg1)->channels);\r
+  jresult = (unsigned long)result; \r
   return jresult;\r
 }\r
 \r
@@ -21672,6 +22434,50 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_file_handle__params_get(void * jarg1
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_cur_channels_set(void * jarg1, unsigned long jarg2) {\r
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_file_handle *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->cur_channels = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_cur_channels_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_file_handle *)jarg1; \r
+  result = (uint32_t) ((arg1)->cur_channels);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_file_handle_cur_samplerate_set(void * jarg1, unsigned long jarg2) {\r
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_file_handle *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->cur_samplerate = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_file_handle_cur_samplerate_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_file_handle *arg1 = (switch_file_handle *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_file_handle *)jarg1; \r
+  result = (uint32_t) ((arg1)->cur_samplerate);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_file_handle() {\r
   void * jresult ;\r
   switch_file_handle *result = 0 ;\r
@@ -26566,6 +27372,243 @@ SWIGEXPORT void SWIGSTDCALL CSharp_delete_switch_api_interface(void * jarg1) {
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_interface_name_set(void * jarg1, char * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  {\r
+    if (arg2) {\r
+      arg1->interface_name = (char const *) (new char[strlen((const char *)arg2)+1]);\r
+      strcpy((char *)arg1->interface_name, (const char *)arg2);\r
+    } else {\r
+      arg1->interface_name = 0;\r
+    }\r
+  }\r
+}\r
+\r
+\r
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_json_api_interface_interface_name_get(void * jarg1) {\r
+  char * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  char *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (char *) ((arg1)->interface_name);\r
+  jresult = SWIG_csharp_string_callback((const char *)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_desc_set(void * jarg1, char * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  {\r
+    if (arg2) {\r
+      arg1->desc = (char const *) (new char[strlen((const char *)arg2)+1]);\r
+      strcpy((char *)arg1->desc, (const char *)arg2);\r
+    } else {\r
+      arg1->desc = 0;\r
+    }\r
+  }\r
+}\r
+\r
+\r
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_json_api_interface_desc_get(void * jarg1) {\r
+  char * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  char *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (char *) ((arg1)->desc);\r
+  jresult = SWIG_csharp_string_callback((const char *)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_function_set(void * jarg1, void * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_json_api_function_t arg2 = (switch_json_api_function_t) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (switch_json_api_function_t)jarg2; \r
+  if (arg1) (arg1)->function = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_function_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_json_api_function_t result;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (switch_json_api_function_t) ((arg1)->function);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_syntax_set(void * jarg1, char * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  {\r
+    if (arg2) {\r
+      arg1->syntax = (char const *) (new char[strlen((const char *)arg2)+1]);\r
+      strcpy((char *)arg1->syntax, (const char *)arg2);\r
+    } else {\r
+      arg1->syntax = 0;\r
+    }\r
+  }\r
+}\r
+\r
+\r
+SWIGEXPORT char * SWIGSTDCALL CSharp_switch_json_api_interface_syntax_get(void * jarg1) {\r
+  char * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  char *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (char *) ((arg1)->syntax);\r
+  jresult = SWIG_csharp_string_callback((const char *)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_rwlock_set(void * jarg1, void * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_thread_rwlock_t *arg2 = (switch_thread_rwlock_t *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (switch_thread_rwlock_t *)jarg2; \r
+  if (arg1) (arg1)->rwlock = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_rwlock_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_thread_rwlock_t *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (switch_thread_rwlock_t *) ((arg1)->rwlock);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_refs_set(void * jarg1, int jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  int arg2 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (int)jarg2; \r
+  if (arg1) (arg1)->refs = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_json_api_interface_refs_get(void * jarg1) {\r
+  int jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  int result;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (int) ((arg1)->refs);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_reflock_set(void * jarg1, void * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_mutex_t *arg2 = (switch_mutex_t *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (switch_mutex_t *)jarg2; \r
+  if (arg1) (arg1)->reflock = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_reflock_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_mutex_t *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (switch_mutex_t *) ((arg1)->reflock);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_parent_set(void * jarg1, void * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_loadable_module_interface_t *arg2 = (switch_loadable_module_interface_t *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (switch_loadable_module_interface_t *)jarg2; \r
+  if (arg1) (arg1)->parent = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_parent_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_loadable_module_interface_t *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (switch_loadable_module_interface_t *) ((arg1)->parent);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_api_interface_next_set(void * jarg1, void * jarg2) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_json_api_interface *arg2 = (switch_json_api_interface *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  arg2 = (switch_json_api_interface *)jarg2; \r
+  if (arg1) (arg1)->next = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_json_api_interface_next_get(void * jarg1) {\r
+  void * jresult ;\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  switch_json_api_interface *result = 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  result = (switch_json_api_interface *) ((arg1)->next);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_new_switch_json_api_interface() {\r
+  void * jresult ;\r
+  switch_json_api_interface *result = 0 ;\r
+  \r
+  result = (switch_json_api_interface *)new switch_json_api_interface();\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_delete_switch_json_api_interface(void * jarg1) {\r
+  switch_json_api_interface *arg1 = (switch_json_api_interface *) 0 ;\r
+  \r
+  arg1 = (switch_json_api_interface *)jarg1; \r
+  delete arg1;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_slin_data_session_set(void * jarg1, void * jarg2) {\r
   switch_slin_data *arg1 = (switch_slin_data *) 0 ;\r
   switch_core_session_t *arg2 = (switch_core_session_t *) 0 ;\r
@@ -28570,6 +29613,28 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_channel_direction(void * jarg1) {
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_channel_logical_direction(void * jarg1) {\r
+  int jresult ;\r
+  switch_channel_t *arg1 = (switch_channel_t *) 0 ;\r
+  switch_call_direction_t result;\r
+  \r
+  arg1 = (switch_channel_t *)jarg1; \r
+  result = (switch_call_direction_t)switch_channel_logical_direction(arg1);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_channel_set_direction(void * jarg1, int jarg2) {\r
+  switch_channel_t *arg1 = (switch_channel_t *) 0 ;\r
+  switch_call_direction_t arg2 ;\r
+  \r
+  arg1 = (switch_channel_t *)jarg1; \r
+  arg2 = (switch_call_direction_t)jarg2; \r
+  switch_channel_set_direction(arg1,arg2);\r
+}\r
+\r
+\r
 SWIGEXPORT void * SWIGSTDCALL CSharp_switch_channel_get_session(void * jarg1) {\r
   void * jresult ;\r
   switch_channel_t *arg1 = (switch_channel_t *) 0 ;\r
@@ -30383,6 +31448,20 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_serialize_json(void * jarg1, void
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_serialize_json_obj(void * jarg1, void * jarg2) {\r
+  int jresult ;\r
+  switch_event_t *arg1 = (switch_event_t *) 0 ;\r
+  cJSON **arg2 = (cJSON **) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_event_t *)jarg1; \r
+  arg2 = (cJSON **)jarg2; \r
+  result = (switch_status_t)switch_event_serialize_json_obj(arg1,arg2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_create_json(void * jarg1, char * jarg2) {\r
   int jresult ;\r
   switch_event_t **arg1 = (switch_event_t **) 0 ;\r
@@ -30587,6 +31666,18 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_add_presence_data_cols(void * ja
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_json_add_presence_data_cols(void * jarg1, void * jarg2, char * jarg3) {\r
+  switch_event_t *arg1 = (switch_event_t *) 0 ;\r
+  cJSON *arg2 = (cJSON *) 0 ;\r
+  char *arg3 = (char *) 0 ;\r
+  \r
+  arg1 = (switch_event_t *)jarg1; \r
+  arg2 = (cJSON *)jarg2; \r
+  arg3 = (char *)jarg3; \r
+  switch_json_add_presence_data_cols(arg1,arg2,(char const *)arg3);\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_launch_dispatch_threads(unsigned long jarg1) {\r
   uint32_t arg1 ;\r
   \r
@@ -30595,6 +31686,334 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_launch_dispatch_threads(unsigned
 }\r
 \r
 \r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_event_channel_broadcast(char * jarg1, void * jarg2, char * jarg3, unsigned long jarg4) {\r
+  unsigned long jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  cJSON **arg2 = (cJSON **) 0 ;\r
+  char *arg3 = (char *) 0 ;\r
+  switch_event_channel_id_t arg4 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (cJSON **)jarg2; \r
+  arg3 = (char *)jarg3; \r
+  arg4 = (switch_event_channel_id_t)jarg4; \r
+  result = (uint32_t)switch_event_channel_broadcast((char const *)arg1,arg2,(char const *)arg3,arg4);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_event_channel_unbind(char * jarg1, void * jarg2) {\r
+  unsigned long jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  switch_event_channel_func_t arg2 = (switch_event_channel_func_t) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (switch_event_channel_func_t)jarg2; \r
+  result = (uint32_t)switch_event_channel_unbind((char const *)arg1,arg2);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_channel_bind(char * jarg1, void * jarg2, void * jarg3) {\r
+  int jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  switch_event_channel_func_t arg2 = (switch_event_channel_func_t) 0 ;\r
+  switch_event_channel_id_t *arg3 = (switch_event_channel_id_t *) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (switch_event_channel_func_t)jarg2; \r
+  arg3 = (switch_event_channel_id_t *)jarg3; \r
+  result = (switch_status_t)switch_event_channel_bind((char const *)arg1,arg2,arg3);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_NO_EVENT_CHANNEL_ID_get() {\r
+  int jresult ;\r
+  int result;\r
+  \r
+  result = (int)(0);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT char * SWIGSTDCALL CSharp_SWITCH_EVENT_CHANNEL_GLOBAL_get() {\r
+  char * jresult ;\r
+  char *result = 0 ;\r
+  \r
+  result = (char *)("__global__");\r
+  jresult = SWIG_csharp_string_callback((const char *)result); \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_clear(void * jarg1) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  result = (switch_status_t)switch_live_array_clear(arg1);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_bootstrap(void * jarg1, char * jarg2, unsigned long jarg3) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  switch_event_channel_id_t arg3 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  arg3 = (switch_event_channel_id_t)jarg3; \r
+  result = (switch_status_t)switch_live_array_bootstrap(arg1,(char const *)arg2,arg3);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_destroy(void * jarg1) {\r
+  int jresult ;\r
+  switch_live_array_t **arg1 = (switch_live_array_t **) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_live_array_t **)jarg1; \r
+  result = (switch_status_t)switch_live_array_destroy(arg1);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_create(char * jarg1, char * jarg2, unsigned long jarg3, void * jarg4) {\r
+  int jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  switch_event_channel_id_t arg3 ;\r
+  switch_live_array_t **arg4 = (switch_live_array_t **) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  arg3 = (switch_event_channel_id_t)jarg3; \r
+  arg4 = (switch_live_array_t **)jarg4; \r
+  result = (switch_status_t)switch_live_array_create((char const *)arg1,(char const *)arg2,arg3,arg4);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_live_array_get(void * jarg1, char * jarg2) {\r
+  void * jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  cJSON *result = 0 ;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  result = (cJSON *)switch_live_array_get(arg1,(char const *)arg2);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_switch_live_array_get_idx(void * jarg1, int jarg2) {\r
+  void * jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  int arg2 ;\r
+  cJSON *result = 0 ;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (int)jarg2; \r
+  result = (cJSON *)switch_live_array_get_idx(arg1,arg2);\r
+  jresult = (void *)result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_del(void * jarg1, char * jarg2) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  result = (switch_status_t)switch_live_array_del(arg1,(char const *)arg2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_add(void * jarg1, char * jarg2, int jarg3, void * jarg4, int jarg5) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  int arg3 ;\r
+  cJSON **arg4 = (cJSON **) 0 ;\r
+  switch_bool_t arg5 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  arg3 = (int)jarg3; \r
+  arg4 = (cJSON **)jarg4; \r
+  arg5 = (switch_bool_t)jarg5; \r
+  result = (switch_status_t)switch_live_array_add(arg1,(char const *)arg2,arg3,arg4,arg5);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_visible(void * jarg1, int jarg2, int jarg3) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  switch_bool_t arg2 ;\r
+  switch_bool_t arg3 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (switch_bool_t)jarg2; \r
+  arg3 = (switch_bool_t)jarg3; \r
+  result = (switch_status_t)switch_live_array_visible(arg1,arg2,arg3);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_isnew(void * jarg1) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  switch_bool_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  result = (switch_bool_t)switch_live_array_isnew(arg1);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_lock(void * jarg1) {\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  switch_live_array_lock(arg1);\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_unlock(void * jarg1) {\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  switch_live_array_unlock(arg1);\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_set_user_data(void * jarg1, void * jarg2) {\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  void *arg2 = (void *) 0 ;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (void *)jarg2; \r
+  switch_live_array_set_user_data(arg1,arg2);\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_set_command_handler(void * jarg1, void * jarg2) {\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  switch_live_array_command_handler_t arg2 = (switch_live_array_command_handler_t) 0 ;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (switch_live_array_command_handler_t)jarg2; \r
+  switch_live_array_set_command_handler(arg1,arg2);\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_live_array_parse_json(void * jarg1, unsigned long jarg2) {\r
+  cJSON *arg1 = (cJSON *) 0 ;\r
+  switch_event_channel_id_t arg2 ;\r
+  \r
+  arg1 = (cJSON *)jarg1; \r
+  arg2 = (switch_event_channel_id_t)jarg2; \r
+  switch_live_array_parse_json(arg1,arg2);\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_add_alias(void * jarg1, char * jarg2, char * jarg3) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  char *arg3 = (char *) 0 ;\r
+  switch_bool_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  arg3 = (char *)jarg3; \r
+  result = (switch_bool_t)switch_live_array_add_alias(arg1,(char const *)arg2,(char const *)arg3);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_live_array_clear_alias(void * jarg1, char * jarg2, char * jarg3) {\r
+  int jresult ;\r
+  switch_live_array_t *arg1 = (switch_live_array_t *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  char *arg3 = (char *) 0 ;\r
+  switch_bool_t result;\r
+  \r
+  arg1 = (switch_live_array_t *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  arg3 = (char *)jarg3; \r
+  result = (switch_bool_t)switch_live_array_clear_alias(arg1,(char const *)arg2,(char const *)arg3);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_event_channel_permission_verify(char * jarg1, char * jarg2) {\r
+  int jresult ;\r
+  char *arg1 = (char *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  switch_bool_t result;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  result = (switch_bool_t)switch_event_channel_permission_verify((char const *)arg1,(char const *)arg2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_channel_permission_modify(char * jarg1, char * jarg2, int jarg3) {\r
+  char *arg1 = (char *) 0 ;\r
+  char *arg2 = (char *) 0 ;\r
+  switch_bool_t arg3 ;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  arg2 = (char *)jarg2; \r
+  arg3 = (switch_bool_t)jarg3; \r
+  switch_event_channel_permission_modify((char const *)arg1,(char const *)arg2,arg3);\r
+}\r
+\r
+\r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_event_channel_permission_clear(char * jarg1) {\r
+  char *arg1 = (char *) 0 ;\r
+  \r
+  arg1 = (char *)jarg1; \r
+  switch_event_channel_permission_clear((char const *)arg1);\r
+}\r
+\r
+\r
 SWIGEXPORT int SWIGSTDCALL CSharp_SWITCH_RESAMPLE_QUALITY_get() {\r
   int jresult ;\r
   int result;\r
@@ -35304,16 +36723,6 @@ SWIGEXPORT void SWIGSTDCALL CSharp_switch_rtp_set_telephony_recv_event(void * ja
 }\r
 \r
 \r
-SWIGEXPORT void SWIGSTDCALL CSharp_switch_rtp_set_recv_pt(void * jarg1, unsigned char jarg2) {\r
-  switch_rtp_t *arg1 = (switch_rtp_t *) 0 ;\r
-  switch_payload_t arg2 ;\r
-  \r
-  arg1 = (switch_rtp_t *)jarg1; \r
-  arg2 = (switch_payload_t)jarg2; \r
-  switch_rtp_set_recv_pt(arg1,arg2);\r
-}\r
-\r
-\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_rtp_set_cng_pt(void * jarg1, unsigned char jarg2) {\r
   switch_rtp_t *arg1 = (switch_rtp_t *) 0 ;\r
   switch_payload_t arg2 ;\r
@@ -35336,6 +36745,20 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_switch_rtp_get_private(void * jarg1) {
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_set_payload_map(void * jarg1, void * jarg2) {\r
+  int jresult ;\r
+  switch_rtp_t *arg1 = (switch_rtp_t *) 0 ;\r
+  payload_map_t **arg2 = (payload_map_t **) 0 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_rtp_t *)jarg1; \r
+  arg2 = (payload_map_t **)jarg2; \r
+  result = (switch_status_t)switch_rtp_set_payload_map(arg1,arg2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_rtp_intentional_bugs(void * jarg1, int jarg2) {\r
   switch_rtp_t *arg1 = (switch_rtp_t *) 0 ;\r
   switch_rtp_bug_flag_t arg2 ;\r
@@ -35400,6 +36823,20 @@ SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_add_dtls(void * jarg1, void * jarg2
 }\r
 \r
 \r
+SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_del_dtls(void * jarg1, int jarg2) {\r
+  int jresult ;\r
+  switch_rtp_t *arg1 = (switch_rtp_t *) 0 ;\r
+  dtls_type_t arg2 ;\r
+  switch_status_t result;\r
+  \r
+  arg1 = (switch_rtp_t *)jarg1; \r
+  arg2 = (dtls_type_t)jarg2; \r
+  result = (switch_status_t)switch_rtp_del_dtls(arg1,arg2);\r
+  jresult = result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT int SWIGSTDCALL CSharp_switch_rtp_has_dtls() {\r
   int jresult ;\r
   int result;\r
@@ -38380,6 +39817,28 @@ SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_scheduler_task_cmd_id_get(voi
 }\r
 \r
 \r
+SWIGEXPORT void SWIGSTDCALL CSharp_switch_scheduler_task_repeat_set(void * jarg1, unsigned long jarg2) {\r
+  switch_scheduler_task *arg1 = (switch_scheduler_task *) 0 ;\r
+  uint32_t arg2 ;\r
+  \r
+  arg1 = (switch_scheduler_task *)jarg1; \r
+  arg2 = (uint32_t)jarg2; \r
+  if (arg1) (arg1)->repeat = arg2;\r
+}\r
+\r
+\r
+SWIGEXPORT unsigned long SWIGSTDCALL CSharp_switch_scheduler_task_repeat_get(void * jarg1) {\r
+  unsigned long jresult ;\r
+  switch_scheduler_task *arg1 = (switch_scheduler_task *) 0 ;\r
+  uint32_t result;\r
+  \r
+  arg1 = (switch_scheduler_task *)jarg1; \r
+  result = (uint32_t) ((arg1)->repeat);\r
+  jresult = (unsigned long)result; \r
+  return jresult;\r
+}\r
+\r
+\r
 SWIGEXPORT void SWIGSTDCALL CSharp_switch_scheduler_task_group_set(void * jarg1, char * jarg2) {\r
   switch_scheduler_task *arg1 = (switch_scheduler_task *) 0 ;\r
   char *arg2 = (char *) 0 ;\r
@@ -38971,11 +40430,13 @@ SWIGEXPORT void SWIGSTDCALL CSharp_IvrMenu_Execute(void * jarg1, void * jarg2, c
 }\r
 \r
 \r
-SWIGEXPORT void * SWIGSTDCALL CSharp_new_Api() {\r
+SWIGEXPORT void * SWIGSTDCALL CSharp_new_Api(void * jarg1) {\r
   void * jresult ;\r
+  CoreSession *arg1 = (CoreSession *) NULL ;\r
   API *result = 0 ;\r
   \r
-  result = (API *)new API();\r
+  arg1 = (CoreSession *)jarg1; \r
+  result = (API *)new API(arg1);\r
   jresult = (void *)result; \r
   return jresult;\r
 }\r
index 3aff2422428cbc759f5f5974bee59e32524cca3b..44cc42ee901549a50f91c242a9867eb8f21a44b0 100644 (file)
@@ -41,7 +41,7 @@ public class Api : IDisposable {
     }\r
   }\r
 \r
-  public Api() : this(freeswitchPINVOKE.new_Api(), true) {\r
+  public Api(CoreSession s) : this(freeswitchPINVOKE.new_Api(CoreSession.getCPtr(s)), true) {\r
   }\r
 \r
   public string Execute(string command, string data) {\r
@@ -1773,6 +1773,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static string switch_core_get_domain(switch_bool_t dup) {\r
+    string ret = freeswitchPINVOKE.switch_core_get_domain((int)dup);\r
+    return ret;\r
+  }\r
+\r
   public static void switch_core_set_variable(string varname, string value) {\r
     freeswitchPINVOKE.switch_core_set_variable(varname, value);\r
   }\r
@@ -1881,6 +1886,10 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static void switch_core_session_video_reset(SWIGTYPE_p_switch_core_session session) {\r
+    freeswitchPINVOKE.switch_core_session_video_reset(SWIGTYPE_p_switch_core_session.getCPtr(session));\r
+  }\r
+\r
   public static switch_status_t switch_core_session_execute_application_get_flags(SWIGTYPE_p_switch_core_session session, string app, string arg, SWIGTYPE_p_int flags) {\r
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_core_session_execute_application_get_flags(SWIGTYPE_p_switch_core_session.getCPtr(session), app, arg, SWIGTYPE_p_int.getCPtr(flags));\r
     return ret;\r
@@ -1906,14 +1915,14 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
-  public static SWIGTYPE_p_void switch_core_session_get_private(SWIGTYPE_p_switch_core_session session) {\r
-    IntPtr cPtr = freeswitchPINVOKE.switch_core_session_get_private(SWIGTYPE_p_switch_core_session.getCPtr(session));\r
+  public static SWIGTYPE_p_void switch_core_session_get_private_class(SWIGTYPE_p_switch_core_session session, switch_pvt_class_t index) {\r
+    IntPtr cPtr = freeswitchPINVOKE.switch_core_session_get_private_class(SWIGTYPE_p_switch_core_session.getCPtr(session), (int)index);\r
     SWIGTYPE_p_void ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_void(cPtr, false);\r
     return ret;\r
   }\r
 \r
-  public static switch_status_t switch_core_session_set_private(SWIGTYPE_p_switch_core_session session, SWIGTYPE_p_void private_info) {\r
-    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));\r
+  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) {\r
+    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);\r
     return ret;\r
   }\r
 \r
@@ -2353,7 +2362,7 @@ public class freeswitch {
     freeswitchPINVOKE.switch_core_db_test_reactive(SWIGTYPE_p_sqlite3.getCPtr(db), test_sql, drop_sql, reactive_sql);\r
   }\r
 \r
-  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) {\r
+  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) {\r
     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));\r
     return ret;\r
   }\r
@@ -3146,6 +3155,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_call_direction_t switch_ice_direction(SWIGTYPE_p_switch_core_session session) {\r
+    switch_call_direction_t ret = (switch_call_direction_t)freeswitchPINVOKE.switch_ice_direction(SWIGTYPE_p_switch_core_session.getCPtr(session));\r
+    return ret;\r
+  }\r
+\r
   public static switch_status_t switch_loadable_module_init(switch_bool_t autoload) {\r
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_loadable_module_init((int)autoload);\r
     return ret;\r
@@ -3222,6 +3236,12 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_json_api_interface switch_loadable_module_get_json_api_interface(string name) {\r
+    IntPtr cPtr = freeswitchPINVOKE.switch_loadable_module_get_json_api_interface(name);\r
+    switch_json_api_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_json_api_interface(cPtr, false);\r
+    return ret;\r
+  }\r
+\r
   public static switch_file_interface switch_loadable_module_get_file_interface(string name) {\r
     IntPtr cPtr = freeswitchPINVOKE.switch_loadable_module_get_file_interface(name);\r
     switch_file_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_file_interface(cPtr, false);\r
@@ -3285,6 +3305,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_status_t switch_json_api_execute(SWIGTYPE_p_cJSON json, SWIGTYPE_p_switch_core_session session, SWIGTYPE_p_p_cJSON retval) {\r
+    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));\r
+    return ret;\r
+  }\r
+\r
   public static switch_status_t switch_loadable_module_load_module(string dir, string fname, switch_bool_t runtime, ref string err) {\r
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_loadable_module_load_module(dir, fname, (int)runtime, ref err);\r
     return ret;\r
@@ -3319,6 +3344,21 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static SWIGTYPE_p_f_p_switch_core_session__int switch_core_get_secondary_recover_callback(string key) {\r
+    IntPtr cPtr = freeswitchPINVOKE.switch_core_get_secondary_recover_callback(key);\r
+    SWIGTYPE_p_f_p_switch_core_session__int ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_f_p_switch_core_session__int(cPtr, false);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_status_t switch_core_register_secondary_recover_callback(string key, SWIGTYPE_p_f_p_switch_core_session__int cb) {\r
+    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));\r
+    return ret;\r
+  }\r
+\r
+  public static void switch_core_unregister_secondary_recover_callback(string key) {\r
+    freeswitchPINVOKE.switch_core_unregister_secondary_recover_callback(key);\r
+  }\r
+\r
   public static void switch_console_loop() {\r
     freeswitchPINVOKE.switch_console_loop();\r
   }\r
@@ -3359,6 +3399,10 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static void switch_console_push_match_unique(SWIGTYPE_p_p_switch_console_callback_match matches, string new_val) {\r
+    freeswitchPINVOKE.switch_console_push_match_unique(SWIGTYPE_p_p_switch_console_callback_match.getCPtr(matches), new_val);\r
+  }\r
+\r
   public static void switch_console_push_match(SWIGTYPE_p_p_switch_console_callback_match matches, string new_val) {\r
     freeswitchPINVOKE.switch_console_push_match(SWIGTYPE_p_p_switch_console_callback_match.getCPtr(matches), new_val);\r
   }\r
@@ -3605,6 +3649,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_status_t switch_find_interface_ip(string buf, int len, SWIGTYPE_p_int mask, string ifname, int family) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_find_interface_ip(buf, len, SWIGTYPE_p_int.getCPtr(mask), ifname, family);\r
+    return ret;\r
+  }\r
+\r
   public static string get_addr(string buf, SWIGTYPE_p_switch_size_t len, SWIGTYPE_p_sockaddr sa, SWIGTYPE_p_socklen_t salen) {\r
     string ret = freeswitchPINVOKE.get_addr(buf, SWIGTYPE_p_switch_size_t.getCPtr(len), SWIGTYPE_p_sockaddr.getCPtr(sa), SWIGTYPE_p_socklen_t.getCPtr(salen));\r
     if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
@@ -4546,6 +4595,15 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_call_direction_t switch_channel_logical_direction(SWIGTYPE_p_switch_channel channel) {\r
+    switch_call_direction_t ret = (switch_call_direction_t)freeswitchPINVOKE.switch_channel_logical_direction(SWIGTYPE_p_switch_channel.getCPtr(channel));\r
+    return ret;\r
+  }\r
+\r
+  public static void switch_channel_set_direction(SWIGTYPE_p_switch_channel channel, switch_call_direction_t direction) {\r
+    freeswitchPINVOKE.switch_channel_set_direction(SWIGTYPE_p_switch_channel.getCPtr(channel), (int)direction);\r
+  }\r
+\r
   public static SWIGTYPE_p_switch_core_session switch_channel_get_session(SWIGTYPE_p_switch_channel channel) {\r
     IntPtr cPtr = freeswitchPINVOKE.switch_channel_get_session(SWIGTYPE_p_switch_channel.getCPtr(channel));\r
     SWIGTYPE_p_switch_core_session ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_switch_core_session(cPtr, false);\r
@@ -4911,8 +4969,8 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
-  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) {\r
-    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);\r
+  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) {\r
+    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);\r
     if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
     return ret;\r
   }\r
@@ -4932,6 +4990,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_status_t switch_event_serialize_json_obj(switch_event arg0, SWIGTYPE_p_p_cJSON json) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_serialize_json_obj(switch_event.getCPtr(arg0), SWIGTYPE_p_p_cJSON.getCPtr(json));\r
+    return ret;\r
+  }\r
+\r
   public static switch_status_t switch_event_create_json(SWIGTYPE_p_p_switch_event arg0, string json) {\r
     switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_event_create_json(SWIGTYPE_p_p_switch_event.getCPtr(arg0), json);\r
     return ret;\r
@@ -4990,10 +5053,124 @@ public class freeswitch {
     freeswitchPINVOKE.switch_event_add_presence_data_cols(SWIGTYPE_p_switch_channel.getCPtr(channel), switch_event.getCPtr(arg1), prefix);\r
   }\r
 \r
+  public static void switch_json_add_presence_data_cols(switch_event arg0, SWIGTYPE_p_cJSON json, string prefix) {\r
+    freeswitchPINVOKE.switch_json_add_presence_data_cols(switch_event.getCPtr(arg0), SWIGTYPE_p_cJSON.getCPtr(json), prefix);\r
+  }\r
+\r
   public static void switch_event_launch_dispatch_threads(uint max) {\r
     freeswitchPINVOKE.switch_event_launch_dispatch_threads(max);\r
   }\r
 \r
+  public static uint switch_event_channel_broadcast(string event_channel, SWIGTYPE_p_p_cJSON json, string key, uint id) {\r
+    uint ret = freeswitchPINVOKE.switch_event_channel_broadcast(event_channel, SWIGTYPE_p_p_cJSON.getCPtr(json), key, id);\r
+    return ret;\r
+  }\r
+\r
+  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) {\r
+    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));\r
+    return ret;\r
+  }\r
+\r
+  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) {\r
+    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));\r
+    return ret;\r
+  }\r
+\r
+  public static switch_status_t switch_live_array_clear(SWIGTYPE_p_switch_live_array_s la) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_clear(SWIGTYPE_p_switch_live_array_s.getCPtr(la));\r
+    return ret;\r
+  }\r
+\r
+  public static switch_status_t switch_live_array_bootstrap(SWIGTYPE_p_switch_live_array_s la, string sessid, uint channel_id) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_bootstrap(SWIGTYPE_p_switch_live_array_s.getCPtr(la), sessid, channel_id);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_status_t switch_live_array_destroy(SWIGTYPE_p_p_switch_live_array_s live_arrayP) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_destroy(SWIGTYPE_p_p_switch_live_array_s.getCPtr(live_arrayP));\r
+    return ret;\r
+  }\r
+\r
+  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) {\r
+    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));\r
+    return ret;\r
+  }\r
+\r
+  public static SWIGTYPE_p_cJSON switch_live_array_get(SWIGTYPE_p_switch_live_array_s la, string name) {\r
+    IntPtr cPtr = freeswitchPINVOKE.switch_live_array_get(SWIGTYPE_p_switch_live_array_s.getCPtr(la), name);\r
+    SWIGTYPE_p_cJSON ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_cJSON(cPtr, false);\r
+    return ret;\r
+  }\r
+\r
+  public static SWIGTYPE_p_cJSON switch_live_array_get_idx(SWIGTYPE_p_switch_live_array_s la, int idx) {\r
+    IntPtr cPtr = freeswitchPINVOKE.switch_live_array_get_idx(SWIGTYPE_p_switch_live_array_s.getCPtr(la), idx);\r
+    SWIGTYPE_p_cJSON ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_cJSON(cPtr, false);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_status_t switch_live_array_del(SWIGTYPE_p_switch_live_array_s la, string name) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_del(SWIGTYPE_p_switch_live_array_s.getCPtr(la), name);\r
+    return ret;\r
+  }\r
+\r
+  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) {\r
+    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);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_status_t switch_live_array_visible(SWIGTYPE_p_switch_live_array_s la, switch_bool_t visible, switch_bool_t force) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_live_array_visible(SWIGTYPE_p_switch_live_array_s.getCPtr(la), (int)visible, (int)force);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_bool_t switch_live_array_isnew(SWIGTYPE_p_switch_live_array_s la) {\r
+    switch_bool_t ret = (switch_bool_t)freeswitchPINVOKE.switch_live_array_isnew(SWIGTYPE_p_switch_live_array_s.getCPtr(la));\r
+    return ret;\r
+  }\r
+\r
+  public static void switch_live_array_lock(SWIGTYPE_p_switch_live_array_s la) {\r
+    freeswitchPINVOKE.switch_live_array_lock(SWIGTYPE_p_switch_live_array_s.getCPtr(la));\r
+  }\r
+\r
+  public static void switch_live_array_unlock(SWIGTYPE_p_switch_live_array_s la) {\r
+    freeswitchPINVOKE.switch_live_array_unlock(SWIGTYPE_p_switch_live_array_s.getCPtr(la));\r
+  }\r
+\r
+  public static void switch_live_array_set_user_data(SWIGTYPE_p_switch_live_array_s la, SWIGTYPE_p_void user_data) {\r
+    freeswitchPINVOKE.switch_live_array_set_user_data(SWIGTYPE_p_switch_live_array_s.getCPtr(la), SWIGTYPE_p_void.getCPtr(user_data));\r
+  }\r
+\r
+  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) {\r
+    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));\r
+  }\r
+\r
+  public static void switch_live_array_parse_json(SWIGTYPE_p_cJSON json, uint channel_id) {\r
+    freeswitchPINVOKE.switch_live_array_parse_json(SWIGTYPE_p_cJSON.getCPtr(json), channel_id);\r
+  }\r
+\r
+  public static switch_bool_t switch_live_array_add_alias(SWIGTYPE_p_switch_live_array_s la, string event_channel, string name) {\r
+    switch_bool_t ret = (switch_bool_t)freeswitchPINVOKE.switch_live_array_add_alias(SWIGTYPE_p_switch_live_array_s.getCPtr(la), event_channel, name);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_bool_t switch_live_array_clear_alias(SWIGTYPE_p_switch_live_array_s la, string event_channel, string name) {\r
+    switch_bool_t ret = (switch_bool_t)freeswitchPINVOKE.switch_live_array_clear_alias(SWIGTYPE_p_switch_live_array_s.getCPtr(la), event_channel, name);\r
+    return ret;\r
+  }\r
+\r
+  public static switch_bool_t switch_event_channel_permission_verify(string cookie, string event_channel) {\r
+    switch_bool_t ret = (switch_bool_t)freeswitchPINVOKE.switch_event_channel_permission_verify(cookie, event_channel);\r
+    return ret;\r
+  }\r
+\r
+  public static void switch_event_channel_permission_modify(string cookie, string event_channel, switch_bool_t set) {\r
+    freeswitchPINVOKE.switch_event_channel_permission_modify(cookie, event_channel, (int)set);\r
+  }\r
+\r
+  public static void switch_event_channel_permission_clear(string cookie) {\r
+    freeswitchPINVOKE.switch_event_channel_permission_clear(cookie);\r
+  }\r
+\r
   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) {\r
     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);\r
     return ret;\r
@@ -6062,10 +6239,6 @@ public class freeswitch {
     freeswitchPINVOKE.switch_rtp_set_telephony_recv_event(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), te);\r
   }\r
 \r
-  public static void switch_rtp_set_recv_pt(SWIGTYPE_p_switch_rtp rtp_session, byte pt) {\r
-    freeswitchPINVOKE.switch_rtp_set_recv_pt(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), pt);\r
-  }\r
-\r
   public static void switch_rtp_set_cng_pt(SWIGTYPE_p_switch_rtp rtp_session, byte pt) {\r
     freeswitchPINVOKE.switch_rtp_set_cng_pt(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), pt);\r
   }\r
@@ -6076,6 +6249,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_status_t switch_rtp_set_payload_map(SWIGTYPE_p_switch_rtp rtp_session, SWIGTYPE_p_p_payload_map_t pmap) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_rtp_set_payload_map(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), SWIGTYPE_p_p_payload_map_t.getCPtr(pmap));\r
+    return ret;\r
+  }\r
+\r
   public static void switch_rtp_intentional_bugs(SWIGTYPE_p_switch_rtp rtp_session, switch_rtp_bug_flag_t bugs) {\r
     freeswitchPINVOKE.switch_rtp_intentional_bugs(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), (int)bugs);\r
   }\r
@@ -6100,6 +6278,11 @@ public class freeswitch {
     return ret;\r
   }\r
 \r
+  public static switch_status_t switch_rtp_del_dtls(SWIGTYPE_p_switch_rtp rtp_session, dtls_type_t type) {\r
+    switch_status_t ret = (switch_status_t)freeswitchPINVOKE.switch_rtp_del_dtls(SWIGTYPE_p_switch_rtp.getCPtr(rtp_session), (int)type);\r
+    return ret;\r
+  }\r
+\r
   public static int switch_rtp_has_dtls() {\r
     int ret = freeswitchPINVOKE.switch_rtp_has_dtls();\r
     return ret;\r
@@ -6814,6 +6997,7 @@ public class freeswitch {
   public static readonly int SWITCH_DEFAULT_FILE_BUFFER_LEN = freeswitchPINVOKE.SWITCH_DEFAULT_FILE_BUFFER_LEN_get();\r
   public static readonly int SWITCH_DTMF_LOG_LEN = freeswitchPINVOKE.SWITCH_DTMF_LOG_LEN_get();\r
   public static readonly int SWITCH_MAX_TRANS = freeswitchPINVOKE.SWITCH_MAX_TRANS_get();\r
+  public static readonly int SWITCH_CORE_SESSION_MAX_PRIVATES = freeswitchPINVOKE.SWITCH_CORE_SESSION_MAX_PRIVATES_get();\r
   public static readonly int SWITCH_MAX_STACKS = freeswitchPINVOKE.SWITCH_MAX_STACKS_get();\r
   public static readonly int SWITCH_THREAD_STACKSIZE = freeswitchPINVOKE.SWITCH_THREAD_STACKSIZE_get();\r
   public static readonly int SWITCH_SYSTEM_THREAD_STACKSIZE = freeswitchPINVOKE.SWITCH_SYSTEM_THREAD_STACKSIZE_get();\r
@@ -6870,6 +7054,8 @@ public class freeswitch {
   public static readonly int SWITCH_CMD_CHUNK_LEN = freeswitchPINVOKE.SWITCH_CMD_CHUNK_LEN_get();\r
   public static readonly int SWITCH_SMAX = freeswitchPINVOKE.SWITCH_SMAX_get();\r
   public static readonly int SWITCH_SMIN = freeswitchPINVOKE.SWITCH_SMIN_get();\r
+  public static readonly int NO_EVENT_CHANNEL_ID = freeswitchPINVOKE.NO_EVENT_CHANNEL_ID_get();\r
+  public static readonly string SWITCH_EVENT_CHANNEL_GLOBAL = freeswitchPINVOKE.SWITCH_EVENT_CHANNEL_GLOBAL_get();\r
   public static readonly int SWITCH_RESAMPLE_QUALITY = freeswitchPINVOKE.SWITCH_RESAMPLE_QUALITY_get();\r
   public static readonly int SWITCH_RTP_MAX_BUF_LEN = freeswitchPINVOKE.SWITCH_RTP_MAX_BUF_LEN_get();\r
   public static readonly int SWITCH_RTCP_MAX_BUF_LEN = freeswitchPINVOKE.SWITCH_RTCP_MAX_BUF_LEN_get();\r
@@ -7561,6 +7747,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_MAX_TRANS_get")]\r
   public static extern int SWITCH_MAX_TRANS_get();\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_CORE_SESSION_MAX_PRIVATES_get")]\r
+  public static extern int SWITCH_CORE_SESSION_MAX_PRIVATES_get();\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_dtmf_t_digit_set")]\r
   public static extern void switch_dtmf_t_digit_set(HandleRef jarg1, char jarg2);\r
 \r
@@ -8683,6 +8872,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_thread_data_t_alloc_get")]\r
   public static extern int switch_thread_data_t_alloc_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_thread_data_t_pool_set")]\r
+  public static extern void switch_thread_data_t_pool_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_thread_data_t_pool_get")]\r
+  public static extern IntPtr switch_thread_data_t_pool_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_new_switch_thread_data_t")]\r
   public static extern IntPtr new_switch_thread_data_t();\r
 \r
@@ -8755,6 +8950,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_node_t_hup_profile_get")]\r
   public static extern IntPtr switch_device_node_t_hup_profile_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_node_t_direction_set")]\r
+  public static extern void switch_device_node_t_direction_set(HandleRef jarg1, int jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_node_t_direction_get")]\r
+  public static extern int switch_device_node_t_direction_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_node_t_parent_set")]\r
   public static extern void switch_device_node_t_parent_set(HandleRef jarg1, HandleRef jarg2);\r
 \r
@@ -8779,42 +8980,132 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_total_get")]\r
   public static extern uint switch_device_stats_t_total_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_total_in_set")]\r
+  public static extern void switch_device_stats_t_total_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_total_in_get")]\r
+  public static extern uint switch_device_stats_t_total_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_total_out_set")]\r
+  public static extern void switch_device_stats_t_total_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_total_out_get")]\r
+  public static extern uint switch_device_stats_t_total_out_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_offhook_set")]\r
   public static extern void switch_device_stats_t_offhook_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_offhook_get")]\r
   public static extern uint switch_device_stats_t_offhook_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_offhook_in_set")]\r
+  public static extern void switch_device_stats_t_offhook_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_offhook_in_get")]\r
+  public static extern uint switch_device_stats_t_offhook_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_offhook_out_set")]\r
+  public static extern void switch_device_stats_t_offhook_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_offhook_out_get")]\r
+  public static extern uint switch_device_stats_t_offhook_out_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_active_set")]\r
   public static extern void switch_device_stats_t_active_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_active_get")]\r
   public static extern uint switch_device_stats_t_active_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_active_in_set")]\r
+  public static extern void switch_device_stats_t_active_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_active_in_get")]\r
+  public static extern uint switch_device_stats_t_active_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_active_out_set")]\r
+  public static extern void switch_device_stats_t_active_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_active_out_get")]\r
+  public static extern uint switch_device_stats_t_active_out_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_held_set")]\r
   public static extern void switch_device_stats_t_held_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_held_get")]\r
   public static extern uint switch_device_stats_t_held_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_held_in_set")]\r
+  public static extern void switch_device_stats_t_held_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_held_in_get")]\r
+  public static extern uint switch_device_stats_t_held_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_held_out_set")]\r
+  public static extern void switch_device_stats_t_held_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_held_out_get")]\r
+  public static extern uint switch_device_stats_t_held_out_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_hup_set")]\r
   public static extern void switch_device_stats_t_hup_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_hup_get")]\r
   public static extern uint switch_device_stats_t_hup_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_hup_in_set")]\r
+  public static extern void switch_device_stats_t_hup_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_hup_in_get")]\r
+  public static extern uint switch_device_stats_t_hup_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_hup_out_set")]\r
+  public static extern void switch_device_stats_t_hup_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_hup_out_get")]\r
+  public static extern uint switch_device_stats_t_hup_out_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ringing_set")]\r
   public static extern void switch_device_stats_t_ringing_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ringing_get")]\r
   public static extern uint switch_device_stats_t_ringing_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ringing_in_set")]\r
+  public static extern void switch_device_stats_t_ringing_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ringing_in_get")]\r
+  public static extern uint switch_device_stats_t_ringing_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ringing_out_set")]\r
+  public static extern void switch_device_stats_t_ringing_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ringing_out_get")]\r
+  public static extern uint switch_device_stats_t_ringing_out_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_early_set")]\r
   public static extern void switch_device_stats_t_early_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_early_get")]\r
   public static extern uint switch_device_stats_t_early_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_early_in_set")]\r
+  public static extern void switch_device_stats_t_early_in_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_early_in_get")]\r
+  public static extern uint switch_device_stats_t_early_in_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_early_out_set")]\r
+  public static extern void switch_device_stats_t_early_out_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_early_out_get")]\r
+  public static extern uint switch_device_stats_t_early_out_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ring_wait_set")]\r
+  public static extern void switch_device_stats_t_ring_wait_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_stats_t_ring_wait_get")]\r
+  public static extern uint switch_device_stats_t_ring_wait_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_new_switch_device_stats_t")]\r
   public static extern IntPtr new_switch_device_stats_t();\r
 \r
@@ -8845,6 +9136,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_stats_get")]\r
   public static extern IntPtr switch_device_record_t_stats_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_last_stats_set")]\r
+  public static extern void switch_device_record_t_last_stats_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_last_stats_get")]\r
+  public static extern IntPtr switch_device_record_t_last_stats_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_state_set")]\r
   public static extern void switch_device_record_t_state_set(HandleRef jarg1, int jarg2);\r
 \r
@@ -8875,6 +9172,36 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_last_call_time_get")]\r
   public static extern IntPtr switch_device_record_t_last_call_time_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_ring_start_set")]\r
+  public static extern void switch_device_record_t_ring_start_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_ring_start_get")]\r
+  public static extern IntPtr switch_device_record_t_ring_start_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_ring_stop_set")]\r
+  public static extern void switch_device_record_t_ring_stop_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_ring_stop_get")]\r
+  public static extern IntPtr switch_device_record_t_ring_stop_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_hold_start_set")]\r
+  public static extern void switch_device_record_t_hold_start_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_hold_start_get")]\r
+  public static extern IntPtr switch_device_record_t_hold_start_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_hold_stop_set")]\r
+  public static extern void switch_device_record_t_hold_stop_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_hold_stop_get")]\r
+  public static extern IntPtr switch_device_record_t_hold_stop_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_call_start_set")]\r
+  public static extern void switch_device_record_t_call_start_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_call_start_get")]\r
+  public static extern IntPtr switch_device_record_t_call_start_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_uuid_list_set")]\r
   public static extern void switch_device_record_t_uuid_list_set(HandleRef jarg1, HandleRef jarg2);\r
 \r
@@ -8899,6 +9226,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_pool_get")]\r
   public static extern IntPtr switch_device_record_t_pool_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_user_data_set")]\r
+  public static extern void switch_device_record_t_user_data_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_device_record_t_user_data_get")]\r
+  public static extern IntPtr switch_device_record_t_user_data_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_new_switch_device_record_t")]\r
   public static extern IntPtr new_switch_device_record_t();\r
 \r
@@ -9439,6 +9772,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_get_switchname")]\r
   public static extern string switch_core_get_switchname();\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_get_domain")]\r
+  public static extern string switch_core_get_domain(int jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_set_variable")]\r
   public static extern void switch_core_set_variable(string jarg1, string jarg2);\r
 \r
@@ -9505,6 +9841,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_exec")]\r
   public static extern int switch_core_session_exec(HandleRef jarg1, HandleRef jarg2, string jarg3);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_video_reset")]\r
+  public static extern void switch_core_session_video_reset(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_execute_application_get_flags")]\r
   public static extern int switch_core_session_execute_application_get_flags(HandleRef jarg1, string jarg2, string jarg3, HandleRef jarg4);\r
 \r
@@ -9520,11 +9859,11 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_receive_event")]\r
   public static extern int switch_core_session_receive_event(HandleRef jarg1, HandleRef jarg2);\r
 \r
-  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_get_private")]\r
-  public static extern IntPtr switch_core_session_get_private(HandleRef jarg1);\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_get_private_class")]\r
+  public static extern IntPtr switch_core_session_get_private_class(HandleRef jarg1, int jarg2);\r
 \r
-  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_set_private")]\r
-  public static extern int switch_core_session_set_private(HandleRef jarg1, HandleRef jarg2);\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_set_private_class")]\r
+  public static extern int switch_core_session_set_private_class(HandleRef jarg1, HandleRef jarg2, int jarg3);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_session_add_stream")]\r
   public static extern int switch_core_session_add_stream(HandleRef jarg1, HandleRef jarg2);\r
@@ -9788,7 +10127,7 @@ class freeswitchPINVOKE {
   public static extern void switch_core_db_test_reactive(HandleRef jarg1, string jarg2, string jarg3, string jarg4);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_perform_file_open")]\r
-  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);\r
+  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);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_file_read")]\r
   public static extern int switch_core_file_read(HandleRef jarg1, HandleRef jarg2, HandleRef jarg3);\r
@@ -10381,6 +10720,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_stream_system_fork")]\r
   public static extern int switch_stream_system_fork(string jarg1, HandleRef jarg2);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_ice_direction")]\r
+  public static extern int switch_ice_direction(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_module_name_set")]\r
   public static extern void switch_loadable_module_interface_module_name_set(HandleRef jarg1, string jarg2);\r
 \r
@@ -10429,6 +10771,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_api_interface_get")]\r
   public static extern IntPtr switch_loadable_module_interface_api_interface_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_json_api_interface_set")]\r
+  public static extern void switch_loadable_module_interface_json_api_interface_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_json_api_interface_get")]\r
+  public static extern IntPtr switch_loadable_module_interface_json_api_interface_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_interface_file_interface_set")]\r
   public static extern void switch_loadable_module_interface_file_interface_set(HandleRef jarg1, HandleRef jarg2);\r
 \r
@@ -10543,6 +10891,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_get_api_interface")]\r
   public static extern IntPtr switch_loadable_module_get_api_interface(string jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_get_json_api_interface")]\r
+  public static extern IntPtr switch_loadable_module_get_json_api_interface(string jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_get_file_interface")]\r
   public static extern IntPtr switch_loadable_module_get_file_interface(string jarg1);\r
 \r
@@ -10576,6 +10927,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_api_execute")]\r
   public static extern int switch_api_execute(string jarg1, string jarg2, HandleRef jarg3, HandleRef jarg4);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_execute")]\r
+  public static extern int switch_json_api_execute(HandleRef jarg1, HandleRef jarg2, HandleRef jarg3);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_loadable_module_load_module")]\r
   public static extern int switch_loadable_module_load_module(string jarg1, string jarg2, int jarg3, ref string jarg4);\r
 \r
@@ -10597,6 +10951,15 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_core_codec_ready")]\r
   public static extern int switch_core_codec_ready(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_get_secondary_recover_callback")]\r
+  public static extern IntPtr switch_core_get_secondary_recover_callback(string jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_register_secondary_recover_callback")]\r
+  public static extern int switch_core_register_secondary_recover_callback(string jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_core_unregister_secondary_recover_callback")]\r
+  public static extern void switch_core_unregister_secondary_recover_callback(string jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_CMD_CHUNK_LEN_get")]\r
   public static extern int SWITCH_CMD_CHUNK_LEN_get();\r
 \r
@@ -10624,6 +10987,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_console_run_complete_func")]\r
   public static extern int switch_console_run_complete_func(string jarg1, string jarg2, string jarg3, HandleRef jarg4);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_console_push_match_unique")]\r
+  public static extern void switch_console_push_match_unique(HandleRef jarg1, string jarg2);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_console_push_match")]\r
   public static extern void switch_console_push_match(HandleRef jarg1, string jarg2);\r
 \r
@@ -10795,6 +11161,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_find_local_ip")]\r
   public static extern int switch_find_local_ip(string jarg1, int jarg2, HandleRef jarg3, int jarg4);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_find_interface_ip")]\r
+  public static extern int switch_find_interface_ip(string jarg1, int jarg2, HandleRef jarg3, string jarg4, int jarg5);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_get_addr")]\r
   public static extern string get_addr(string jarg1, HandleRef jarg2, HandleRef jarg3, HandleRef jarg4);\r
 \r
@@ -11242,6 +11611,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_caller_profile_direction_get")]\r
   public static extern int switch_caller_profile_direction_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_caller_profile_logical_direction_set")]\r
+  public static extern void switch_caller_profile_logical_direction_set(HandleRef jarg1, int jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_caller_profile_logical_direction_get")]\r
+  public static extern int switch_caller_profile_logical_direction_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_caller_profile_soft_set")]\r
   public static extern void switch_caller_profile_soft_set(HandleRef jarg1, HandleRef jarg2);\r
 \r
@@ -11479,6 +11854,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_frame_user_data_get")]\r
   public static extern IntPtr switch_frame_user_data_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_frame_pmap_set")]\r
+  public static extern void switch_frame_pmap_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_frame_pmap_get")]\r
+  public static extern IntPtr switch_frame_pmap_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_new_switch_frame")]\r
   public static extern IntPtr new_switch_frame();\r
 \r
@@ -12116,10 +12497,10 @@ class freeswitchPINVOKE {
   public static extern uint switch_file_handle_native_rate_get(HandleRef jarg1);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_channels_set")]\r
-  public static extern void switch_file_handle_channels_set(HandleRef jarg1, byte jarg2);\r
+  public static extern void switch_file_handle_channels_set(HandleRef jarg1, uint jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_channels_get")]\r
-  public static extern byte switch_file_handle_channels_get(HandleRef jarg1);\r
+  public static extern uint switch_file_handle_channels_get(HandleRef jarg1);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_format_set")]\r
   public static extern void switch_file_handle_format_set(HandleRef jarg1, uint jarg2);\r
@@ -12325,6 +12706,18 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle__params_get")]\r
   public static extern IntPtr switch_file_handle__params_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_channels_set")]\r
+  public static extern void switch_file_handle_cur_channels_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_channels_get")]\r
+  public static extern uint switch_file_handle_cur_channels_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_samplerate_set")]\r
+  public static extern void switch_file_handle_cur_samplerate_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_file_handle_cur_samplerate_get")]\r
+  public static extern uint switch_file_handle_cur_samplerate_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_new_switch_file_handle")]\r
   public static extern IntPtr new_switch_file_handle();\r
 \r
@@ -13615,6 +14008,66 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_delete_switch_api_interface")]\r
   public static extern void delete_switch_api_interface(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_interface_name_set")]\r
+  public static extern void switch_json_api_interface_interface_name_set(HandleRef jarg1, string jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_interface_name_get")]\r
+  public static extern string switch_json_api_interface_interface_name_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_desc_set")]\r
+  public static extern void switch_json_api_interface_desc_set(HandleRef jarg1, string jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_desc_get")]\r
+  public static extern string switch_json_api_interface_desc_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_function_set")]\r
+  public static extern void switch_json_api_interface_function_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_function_get")]\r
+  public static extern IntPtr switch_json_api_interface_function_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_syntax_set")]\r
+  public static extern void switch_json_api_interface_syntax_set(HandleRef jarg1, string jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_syntax_get")]\r
+  public static extern string switch_json_api_interface_syntax_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_rwlock_set")]\r
+  public static extern void switch_json_api_interface_rwlock_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_rwlock_get")]\r
+  public static extern IntPtr switch_json_api_interface_rwlock_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_refs_set")]\r
+  public static extern void switch_json_api_interface_refs_set(HandleRef jarg1, int jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_refs_get")]\r
+  public static extern int switch_json_api_interface_refs_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_reflock_set")]\r
+  public static extern void switch_json_api_interface_reflock_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_reflock_get")]\r
+  public static extern IntPtr switch_json_api_interface_reflock_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_parent_set")]\r
+  public static extern void switch_json_api_interface_parent_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_parent_get")]\r
+  public static extern IntPtr switch_json_api_interface_parent_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_next_set")]\r
+  public static extern void switch_json_api_interface_next_set(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_api_interface_next_get")]\r
+  public static extern IntPtr switch_json_api_interface_next_get(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_new_switch_json_api_interface")]\r
+  public static extern IntPtr new_switch_json_api_interface();\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_delete_switch_json_api_interface")]\r
+  public static extern void delete_switch_json_api_interface(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_slin_data_session_set")]\r
   public static extern void switch_slin_data_session_set(HandleRef jarg1, HandleRef jarg2);\r
 \r
@@ -14071,6 +14524,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_direction")]\r
   public static extern int switch_channel_direction(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_logical_direction")]\r
+  public static extern int switch_channel_logical_direction(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_set_direction")]\r
+  public static extern void switch_channel_set_direction(HandleRef jarg1, int jarg2);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_channel_get_session")]\r
   public static extern IntPtr switch_channel_get_session(HandleRef jarg1);\r
 \r
@@ -14485,6 +14944,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_serialize_json")]\r
   public static extern int switch_event_serialize_json(HandleRef jarg1, ref string jarg2);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_serialize_json_obj")]\r
+  public static extern int switch_event_serialize_json_obj(HandleRef jarg1, HandleRef jarg2);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_create_json")]\r
   public static extern int switch_event_create_json(HandleRef jarg1, string jarg2);\r
 \r
@@ -14521,9 +14983,87 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_add_presence_data_cols")]\r
   public static extern void switch_event_add_presence_data_cols(HandleRef jarg1, HandleRef jarg2, string jarg3);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_json_add_presence_data_cols")]\r
+  public static extern void switch_json_add_presence_data_cols(HandleRef jarg1, HandleRef jarg2, string jarg3);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_event_launch_dispatch_threads")]\r
   public static extern void switch_event_launch_dispatch_threads(uint jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_broadcast")]\r
+  public static extern uint switch_event_channel_broadcast(string jarg1, HandleRef jarg2, string jarg3, uint jarg4);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_unbind")]\r
+  public static extern uint switch_event_channel_unbind(string jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_bind")]\r
+  public static extern int switch_event_channel_bind(string jarg1, HandleRef jarg2, HandleRef jarg3);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_NO_EVENT_CHANNEL_ID_get")]\r
+  public static extern int NO_EVENT_CHANNEL_ID_get();\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_EVENT_CHANNEL_GLOBAL_get")]\r
+  public static extern string SWITCH_EVENT_CHANNEL_GLOBAL_get();\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_clear")]\r
+  public static extern int switch_live_array_clear(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_bootstrap")]\r
+  public static extern int switch_live_array_bootstrap(HandleRef jarg1, string jarg2, uint jarg3);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_destroy")]\r
+  public static extern int switch_live_array_destroy(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_create")]\r
+  public static extern int switch_live_array_create(string jarg1, string jarg2, uint jarg3, HandleRef jarg4);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_get")]\r
+  public static extern IntPtr switch_live_array_get(HandleRef jarg1, string jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_get_idx")]\r
+  public static extern IntPtr switch_live_array_get_idx(HandleRef jarg1, int jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_del")]\r
+  public static extern int switch_live_array_del(HandleRef jarg1, string jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_add")]\r
+  public static extern int switch_live_array_add(HandleRef jarg1, string jarg2, int jarg3, HandleRef jarg4, int jarg5);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_visible")]\r
+  public static extern int switch_live_array_visible(HandleRef jarg1, int jarg2, int jarg3);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_isnew")]\r
+  public static extern int switch_live_array_isnew(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_lock")]\r
+  public static extern void switch_live_array_lock(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_unlock")]\r
+  public static extern void switch_live_array_unlock(HandleRef jarg1);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_set_user_data")]\r
+  public static extern void switch_live_array_set_user_data(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_set_command_handler")]\r
+  public static extern void switch_live_array_set_command_handler(HandleRef jarg1, HandleRef jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_parse_json")]\r
+  public static extern void switch_live_array_parse_json(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_add_alias")]\r
+  public static extern int switch_live_array_add_alias(HandleRef jarg1, string jarg2, string jarg3);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_live_array_clear_alias")]\r
+  public static extern int switch_live_array_clear_alias(HandleRef jarg1, string jarg2, string jarg3);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_permission_verify")]\r
+  public static extern int switch_event_channel_permission_verify(string jarg1, string jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_permission_modify")]\r
+  public static extern void switch_event_channel_permission_modify(string jarg1, string jarg2, int jarg3);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_event_channel_permission_clear")]\r
+  public static extern void switch_event_channel_permission_clear(string jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_SWITCH_RESAMPLE_QUALITY_get")]\r
   public static extern int SWITCH_RESAMPLE_QUALITY_get();\r
 \r
@@ -15511,15 +16051,15 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_set_telephony_recv_event")]\r
   public static extern void switch_rtp_set_telephony_recv_event(HandleRef jarg1, byte jarg2);\r
 \r
-  [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_set_recv_pt")]\r
-  public static extern void switch_rtp_set_recv_pt(HandleRef jarg1, byte jarg2);\r
-\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_set_cng_pt")]\r
   public static extern void switch_rtp_set_cng_pt(HandleRef jarg1, byte jarg2);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_get_private")]\r
   public static extern IntPtr switch_rtp_get_private(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_set_payload_map")]\r
+  public static extern int switch_rtp_set_payload_map(HandleRef jarg1, HandleRef jarg2);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_intentional_bugs")]\r
   public static extern void switch_rtp_intentional_bugs(HandleRef jarg1, int jarg2);\r
 \r
@@ -15535,6 +16075,9 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_add_dtls")]\r
   public static extern int switch_rtp_add_dtls(HandleRef jarg1, HandleRef jarg2, HandleRef jarg3, int jarg4);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_del_dtls")]\r
+  public static extern int switch_rtp_del_dtls(HandleRef jarg1, int jarg2);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_rtp_has_dtls")]\r
   public static extern int switch_rtp_has_dtls();\r
 \r
@@ -16264,6 +16807,12 @@ class freeswitchPINVOKE {
   [DllImport("mod_managed", EntryPoint="CSharp_switch_scheduler_task_cmd_id_get")]\r
   public static extern uint switch_scheduler_task_cmd_id_get(HandleRef jarg1);\r
 \r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_scheduler_task_repeat_set")]\r
+  public static extern void switch_scheduler_task_repeat_set(HandleRef jarg1, uint jarg2);\r
+\r
+  [DllImport("mod_managed", EntryPoint="CSharp_switch_scheduler_task_repeat_get")]\r
+  public static extern uint switch_scheduler_task_repeat_get(HandleRef jarg1);\r
+\r
   [DllImport("mod_managed", EntryPoint="CSharp_switch_scheduler_task_group_set")]\r
   public static extern void switch_scheduler_task_group_set(HandleRef jarg1, string jarg2);\r
 \r
@@ -16403,7 +16952,7 @@ class freeswitchPINVOKE {
   public static extern void IvrMenu_Execute(HandleRef jarg1, HandleRef jarg2, string jarg3);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_new_Api")]\r
-  public static extern IntPtr new_Api();\r
+  public static extern IntPtr new_Api(HandleRef jarg1);\r
 \r
   [DllImport("mod_managed", EntryPoint="CSharp_delete_Api")]\r
   public static extern void delete_Api(HandleRef jarg1);\r
@@ -17624,6 +18173,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_cJSON {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_cJSON(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_cJSON() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_cJSON obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_FILE {\r
   private HandleRef swigCPtr;\r
 \r
@@ -17744,6 +18323,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_f_p_q_const__char_p_cJSON_p_q_const__char_unsigned_long__void obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_f_p_q_const__char_p_q_const__char_p_p_switch_console_callback_match__switch_status_t {\r
   private HandleRef swigCPtr;\r
 \r
@@ -17954,6 +18563,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_f_p_q_const__switch_log_node_t_enum_switch_log_level_t__switch_status_t {\r
   private HandleRef swigCPtr;\r
 \r
@@ -19634,6 +20273,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void {\r
+  private HandleRef swigCPtr;\r
+\r
+  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) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_f_p_switch_live_array_s_p_q_const__char_p_q_const__char_p_cJSON_p_void__void() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  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) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_f_p_switch_media_bug_p_void_enum_switch_abc_type_t__switch_bool_t {\r
   private HandleRef swigCPtr;\r
 \r
@@ -20444,6 +21113,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_payload_map_t {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_payload_map_t(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_payload_map_t() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_payload_map_t obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_pid_t {\r
   private HandleRef swigCPtr;\r
 \r
@@ -20564,6 +21263,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_p_payload_map_t {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_p_payload_map_t(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_p_payload_map_t() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_p_payload_map_t obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_p_p_char {\r
   private HandleRef swigCPtr;\r
 \r
@@ -21344,6 +22073,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_p_switch_live_array_s {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_p_switch_live_array_s(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_p_switch_live_array_s() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_p_switch_live_array_s obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_p_switch_log_node_t {\r
   private HandleRef swigCPtr;\r
 \r
@@ -22394,6 +23153,36 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class SWIGTYPE_p_switch_live_array_s {\r
+  private HandleRef swigCPtr;\r
+\r
+  internal SWIGTYPE_p_switch_live_array_s(IntPtr cPtr, bool futureUse) {\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  protected SWIGTYPE_p_switch_live_array_s() {\r
+    swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(SWIGTYPE_p_switch_live_array_s obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class SWIGTYPE_p_switch_media_bug {\r
   private HandleRef swigCPtr;\r
 \r
@@ -25573,6 +26362,16 @@ public class switch_caller_profile : IDisposable {
     } \r
   }\r
 \r
+  public switch_call_direction_t logical_direction {\r
+    set {\r
+      freeswitchPINVOKE.switch_caller_profile_logical_direction_set(swigCPtr, (int)value);\r
+    } \r
+    get {\r
+      switch_call_direction_t ret = (switch_call_direction_t)freeswitchPINVOKE.switch_caller_profile_logical_direction_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public profile_node_t soft {\r
     set {\r
       freeswitchPINVOKE.switch_caller_profile_soft_set(swigCPtr, profile_node_t.getCPtr(value));\r
@@ -25773,6 +26572,7 @@ public enum switch_channel_callstate_t {
   CCS_EARLY,\r
   CCS_ACTIVE,\r
   CCS_HELD,\r
+  CCS_RING_WAIT,\r
   CCS_HANGUP,\r
   CCS_UNHOLD\r
 }\r
@@ -25892,6 +26692,7 @@ public enum switch_channel_flag_t {
   CF_CONFIRM_BLIND_TRANSFER,\r
   CF_NO_PRESENCE,\r
   CF_CONFERENCE,\r
+  CF_CONFERENCE_ADV,\r
   CF_RECOVERING,\r
   CF_RECOVERING_BRIDGE,\r
   CF_TRACKED,\r
@@ -25923,6 +26724,8 @@ public enum switch_channel_flag_t {
   CF_VIDEO_PASSIVE,\r
   CF_NOVIDEO,\r
   CF_VIDEO_ECHO,\r
+  CF_SLA_INTERCEPT,\r
+  CF_VIDEO_BREAK,\r
   CF_FLAG_MAX\r
 }\r
 \r
@@ -27868,6 +28671,10 @@ public enum switch_core_session_message_types_t {
   SWITCH_MESSAGE_INDICATE_BLIND_TRANSFER_RESPONSE,\r
   SWITCH_MESSAGE_INDICATE_STUN_ERROR,\r
   SWITCH_MESSAGE_INDICATE_MEDIA_RENEG,\r
+  SWITCH_MESSAGE_REFER_EVENT,\r
+  SWITCH_MESSAGE_ANSWER_EVENT,\r
+  SWITCH_MESSAGE_PROGRESS_EVENT,\r
+  SWITCH_MESSAGE_RING_EVENT,\r
   SWITCH_MESSAGE_INVALID\r
 }\r
 \r
@@ -28201,6 +29008,16 @@ public class switch_device_node_t : IDisposable {
     } \r
   }\r
 \r
+  public switch_call_direction_t direction {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_node_t_direction_set(swigCPtr, (int)value);\r
+    } \r
+    get {\r
+      switch_call_direction_t ret = (switch_call_direction_t)freeswitchPINVOKE.switch_device_node_t_direction_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_device_record_t parent {\r
     set {\r
       freeswitchPINVOKE.switch_device_node_t_parent_set(swigCPtr, switch_device_record_t.getCPtr(value));\r
@@ -28313,6 +29130,17 @@ public class switch_device_record_t : IDisposable {
     } \r
   }\r
 \r
+  public switch_device_stats_t last_stats {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_last_stats_set(swigCPtr, switch_device_stats_t.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_device_record_t_last_stats_get(swigCPtr);\r
+      switch_device_stats_t ret = (cPtr == IntPtr.Zero) ? null : new switch_device_stats_t(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_device_state_t state {\r
     set {\r
       freeswitchPINVOKE.switch_device_record_t_state_set(swigCPtr, (int)value);\r
@@ -28369,6 +29197,66 @@ public class switch_device_record_t : IDisposable {
     } \r
   }\r
 \r
+  public SWIGTYPE_p_switch_time_t ring_start {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_ring_start_set(swigCPtr, SWIGTYPE_p_switch_time_t.getCPtr(value));\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+    } \r
+    get {\r
+      SWIGTYPE_p_switch_time_t ret = new SWIGTYPE_p_switch_time_t(freeswitchPINVOKE.switch_device_record_t_ring_start_get(swigCPtr), true);\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_switch_time_t ring_stop {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_ring_stop_set(swigCPtr, SWIGTYPE_p_switch_time_t.getCPtr(value));\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+    } \r
+    get {\r
+      SWIGTYPE_p_switch_time_t ret = new SWIGTYPE_p_switch_time_t(freeswitchPINVOKE.switch_device_record_t_ring_stop_get(swigCPtr), true);\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_switch_time_t hold_start {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_hold_start_set(swigCPtr, SWIGTYPE_p_switch_time_t.getCPtr(value));\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+    } \r
+    get {\r
+      SWIGTYPE_p_switch_time_t ret = new SWIGTYPE_p_switch_time_t(freeswitchPINVOKE.switch_device_record_t_hold_start_get(swigCPtr), true);\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_switch_time_t hold_stop {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_hold_stop_set(swigCPtr, SWIGTYPE_p_switch_time_t.getCPtr(value));\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+    } \r
+    get {\r
+      SWIGTYPE_p_switch_time_t ret = new SWIGTYPE_p_switch_time_t(freeswitchPINVOKE.switch_device_record_t_hold_stop_get(swigCPtr), true);\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_switch_time_t call_start {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_call_start_set(swigCPtr, SWIGTYPE_p_switch_time_t.getCPtr(value));\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+    } \r
+    get {\r
+      SWIGTYPE_p_switch_time_t ret = new SWIGTYPE_p_switch_time_t(freeswitchPINVOKE.switch_device_record_t_call_start_get(swigCPtr), true);\r
+      if (freeswitchPINVOKE.SWIGPendingException.Pending) throw freeswitchPINVOKE.SWIGPendingException.Retrieve();\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_device_node_t uuid_list {\r
     set {\r
       freeswitchPINVOKE.switch_device_record_t_uuid_list_set(swigCPtr, switch_device_node_t.getCPtr(value));\r
@@ -28413,6 +29301,17 @@ public class switch_device_record_t : IDisposable {
     } \r
   }\r
 \r
+  public SWIGTYPE_p_void user_data {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_record_t_user_data_set(swigCPtr, SWIGTYPE_p_void.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_device_record_t_user_data_get(swigCPtr);\r
+      SWIGTYPE_p_void ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_void(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_device_record_t() : this(freeswitchPINVOKE.new_switch_device_record_t(), true) {\r
   }\r
 \r
@@ -28492,6 +29391,26 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint total_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_total_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_total_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint total_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_total_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_total_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public uint offhook {\r
     set {\r
       freeswitchPINVOKE.switch_device_stats_t_offhook_set(swigCPtr, value);\r
@@ -28502,6 +29421,26 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint offhook_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_offhook_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_offhook_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint offhook_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_offhook_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_offhook_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public uint active {\r
     set {\r
       freeswitchPINVOKE.switch_device_stats_t_active_set(swigCPtr, value);\r
@@ -28512,6 +29451,26 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint active_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_active_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_active_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint active_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_active_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_active_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public uint held {\r
     set {\r
       freeswitchPINVOKE.switch_device_stats_t_held_set(swigCPtr, value);\r
@@ -28522,6 +29481,26 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint held_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_held_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_held_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint held_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_held_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_held_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public uint hup {\r
     set {\r
       freeswitchPINVOKE.switch_device_stats_t_hup_set(swigCPtr, value);\r
@@ -28532,6 +29511,26 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint hup_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_hup_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_hup_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint hup_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_hup_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_hup_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public uint ringing {\r
     set {\r
       freeswitchPINVOKE.switch_device_stats_t_ringing_set(swigCPtr, value);\r
@@ -28542,6 +29541,26 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint ringing_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_ringing_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_ringing_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint ringing_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_ringing_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_ringing_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public uint early {\r
     set {\r
       freeswitchPINVOKE.switch_device_stats_t_early_set(swigCPtr, value);\r
@@ -28552,6 +29571,36 @@ public class switch_device_stats_t : IDisposable {
     } \r
   }\r
 \r
+  public uint early_in {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_early_in_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_early_in_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint early_out {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_early_out_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_early_out_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint ring_wait {\r
+    set {\r
+      freeswitchPINVOKE.switch_device_stats_t_ring_wait_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_device_stats_t_ring_wait_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_device_stats_t() : this(freeswitchPINVOKE.new_switch_device_stats_t(), true) {\r
   }\r
 \r
@@ -29842,6 +30891,8 @@ public enum switch_event_types_t {
   SWITCH_EVENT_RE_SCHEDULE,\r
   SWITCH_EVENT_RELOADXML,\r
   SWITCH_EVENT_NOTIFY,\r
+  SWITCH_EVENT_PHONE_FEATURE,\r
+  SWITCH_EVENT_PHONE_FEATURE_SUBSCRIBE,\r
   SWITCH_EVENT_SEND_MESSAGE,\r
   SWITCH_EVENT_RECV_MESSAGE,\r
   SWITCH_EVENT_REQUEST_PARAMS,\r
@@ -29962,7 +31013,8 @@ namespace FreeSWITCH.Native {
   SWITCH_FILE_BUFFER_DONE = (1 << 14),\r
   SWITCH_FILE_WRITE_APPEND = (1 << 15),\r
   SWITCH_FILE_WRITE_OVER = (1 << 16),\r
-  SWITCH_FILE_NOMUX = (1 << 17)\r
+  SWITCH_FILE_NOMUX = (1 << 17),\r
+  SWITCH_FILE_BREAK_ON_CHANGE = (1 << 18)\r
 }\r
 \r
 }\r
@@ -30071,12 +31123,12 @@ public class switch_file_handle : IDisposable {
     } \r
   }\r
 \r
-  public byte channels {\r
+  public uint channels {\r
     set {\r
       freeswitchPINVOKE.switch_file_handle_channels_set(swigCPtr, value);\r
     } \r
     get {\r
-      byte ret = freeswitchPINVOKE.switch_file_handle_channels_get(swigCPtr);\r
+      uint ret = freeswitchPINVOKE.switch_file_handle_channels_get(swigCPtr);\r
       return ret;\r
     } \r
   }\r
@@ -30441,6 +31493,26 @@ public class switch_file_handle : IDisposable {
     } \r
   }\r
 \r
+  public uint cur_channels {\r
+    set {\r
+      freeswitchPINVOKE.switch_file_handle_cur_channels_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_file_handle_cur_channels_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public uint cur_samplerate {\r
+    set {\r
+      freeswitchPINVOKE.switch_file_handle_cur_samplerate_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_file_handle_cur_samplerate_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_file_handle() : this(freeswitchPINVOKE.new_switch_file_handle(), true) {\r
   }\r
 \r
@@ -30899,6 +31971,17 @@ public class switch_frame : IDisposable {
     } \r
   }\r
 \r
+  public SWIGTYPE_p_payload_map_t pmap {\r
+    set {\r
+      freeswitchPINVOKE.switch_frame_pmap_set(swigCPtr, SWIGTYPE_p_payload_map_t.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_frame_pmap_get(swigCPtr);\r
+      SWIGTYPE_p_payload_map_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_payload_map_t(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_frame() : this(freeswitchPINVOKE.new_switch_frame(), true) {\r
   }\r
 \r
@@ -32618,6 +33701,150 @@ namespace FreeSWITCH.Native {
 using System;\r
 using System.Runtime.InteropServices;\r
 \r
+public class switch_json_api_interface : IDisposable {\r
+  private HandleRef swigCPtr;\r
+  protected bool swigCMemOwn;\r
+\r
+  internal switch_json_api_interface(IntPtr cPtr, bool cMemoryOwn) {\r
+    swigCMemOwn = cMemoryOwn;\r
+    swigCPtr = new HandleRef(this, cPtr);\r
+  }\r
+\r
+  internal static HandleRef getCPtr(switch_json_api_interface obj) {\r
+    return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;\r
+  }\r
+\r
+  ~switch_json_api_interface() {\r
+    Dispose();\r
+  }\r
+\r
+  public virtual void Dispose() {\r
+    lock(this) {\r
+      if (swigCPtr.Handle != IntPtr.Zero) {\r
+        if (swigCMemOwn) {\r
+          swigCMemOwn = false;\r
+          freeswitchPINVOKE.delete_switch_json_api_interface(swigCPtr);\r
+        }\r
+        swigCPtr = new HandleRef(null, IntPtr.Zero);\r
+      }\r
+      GC.SuppressFinalize(this);\r
+    }\r
+  }\r
+\r
+  public string interface_name {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_interface_name_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      string ret = freeswitchPINVOKE.switch_json_api_interface_interface_name_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public string desc {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_desc_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      string ret = freeswitchPINVOKE.switch_json_api_interface_desc_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_f_p_q_const__cJSON_p_switch_core_session_p_p_cJSON__switch_status_t function {\r
+    set {\r
+      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));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_function_get(swigCPtr);\r
+      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);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public string syntax {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_syntax_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      string ret = freeswitchPINVOKE.switch_json_api_interface_syntax_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_switch_thread_rwlock_t rwlock {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_rwlock_set(swigCPtr, SWIGTYPE_p_switch_thread_rwlock_t.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_rwlock_get(swigCPtr);\r
+      SWIGTYPE_p_switch_thread_rwlock_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_switch_thread_rwlock_t(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public int refs {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_refs_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      int ret = freeswitchPINVOKE.switch_json_api_interface_refs_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public SWIGTYPE_p_switch_mutex_t reflock {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_reflock_set(swigCPtr, SWIGTYPE_p_switch_mutex_t.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_reflock_get(swigCPtr);\r
+      SWIGTYPE_p_switch_mutex_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_switch_mutex_t(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public switch_loadable_module_interface parent {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_parent_set(swigCPtr, switch_loadable_module_interface.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_parent_get(swigCPtr);\r
+      switch_loadable_module_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_loadable_module_interface(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public switch_json_api_interface next {\r
+    set {\r
+      freeswitchPINVOKE.switch_json_api_interface_next_set(swigCPtr, switch_json_api_interface.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_json_api_interface_next_get(swigCPtr);\r
+      switch_json_api_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_json_api_interface(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
+  public switch_json_api_interface() : this(freeswitchPINVOKE.new_switch_json_api_interface(), true) {\r
+  }\r
+\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
 public class switch_limit_interface : IDisposable {\r
   private HandleRef swigCPtr;\r
   protected bool swigCMemOwn;\r
@@ -33016,6 +34243,17 @@ public class switch_loadable_module_interface : IDisposable {
     } \r
   }\r
 \r
+  public switch_json_api_interface json_api_interface {\r
+    set {\r
+      freeswitchPINVOKE.switch_loadable_module_interface_json_api_interface_set(swigCPtr, switch_json_api_interface.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_loadable_module_interface_json_api_interface_get(swigCPtr);\r
+      switch_json_api_interface ret = (cPtr == IntPtr.Zero) ? null : new switch_json_api_interface(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_file_interface file_interface {\r
     set {\r
       freeswitchPINVOKE.switch_loadable_module_interface_file_interface_set(swigCPtr, switch_file_interface.getCPtr(value));\r
@@ -33581,7 +34819,8 @@ public enum switch_module_interface_name_t {
   SWITCH_ASR_INTERFACE,\r
   SWITCH_MANAGEMENT_INTERFACE,\r
   SWITCH_LIMIT_INTERFACE,\r
-  SWITCH_CHAT_APPLICATION_INTERFACE\r
+  SWITCH_CHAT_APPLICATION_INTERFACE,\r
+  SWITCH_JSON_API_INTERFACE\r
 }\r
 \r
 }\r
@@ -33599,9 +34838,11 @@ namespace FreeSWITCH.Native {
   SOF_NONE = 0,\r
   SOF_NOBLOCK = (1 << 0),\r
   SOF_FORKED_DIAL = (1 << 1),\r
-  SOF_NO_EFFECTIVE_CID_NUM = (1 << 2),\r
-  SOF_NO_EFFECTIVE_CID_NAME = (1 << 3),\r
-  SOF_NO_LIMITS = (1 << 4)\r
+  SOF_NO_EFFECTIVE_ANI = (1 << 2),\r
+  SOF_NO_EFFECTIVE_ANIII = (1 << 3),\r
+  SOF_NO_EFFECTIVE_CID_NUM = (1 << 4),\r
+  SOF_NO_EFFECTIVE_CID_NAME = (1 << 5),\r
+  SOF_NO_LIMITS = (1 << 6)\r
 }\r
 \r
 }\r
@@ -33649,6 +34890,22 @@ public enum switch_priority_t {
 \r
 namespace FreeSWITCH.Native {\r
 \r
+public enum switch_pvt_class_t {\r
+  SWITCH_PVT_PRIMARY = 0,\r
+  SWITCH_PVT_SECONDARY\r
+}\r
+\r
+}\r
+/* ----------------------------------------------------------------------------\r
+ * This file was automatically generated by SWIG (http://www.swig.org).\r
+ * Version 2.0.1\r
+ *\r
+ * Do not make changes to this file unless you know what you are doing--modify\r
+ * the SWIG interface file instead.\r
+ * ----------------------------------------------------------------------------- */\r
+\r
+namespace FreeSWITCH.Native {\r
+\r
 public enum switch_ring_ready_t {\r
   SWITCH_RING_READY_NONE,\r
   SWITCH_RING_READY_RINGING,\r
@@ -33856,7 +35113,8 @@ public enum switch_rtp_bug_flag_t {
   RTP_BUG_ACCEPT_ANY_PACKETS = (1 << 7),\r
   RTP_BUG_GEN_ONE_GEN_ALL = (1 << 8),\r
   RTP_BUG_CHANGE_SSRC_ON_MARKER = (1 << 9),\r
-  RTP_BUG_FLUSH_JB_ON_DTMF = (1 << 10)\r
+  RTP_BUG_FLUSH_JB_ON_DTMF = (1 << 10),\r
+  RTP_BUG_ACCEPT_ANY_PAYLOAD = (1 << 11)\r
 }\r
 \r
 }\r
@@ -34044,6 +35302,9 @@ public enum switch_rtp_flag_t {
   SWITCH_RTP_FLAG_VIDEO,\r
   SWITCH_RTP_FLAG_ENABLE_RTCP,\r
   SWITCH_RTP_FLAG_RTCP_MUX,\r
+  SWITCH_RTP_FLAG_KILL_JB,\r
+  SWITCH_RTP_FLAG_VIDEO_BREAK,\r
+  SWITCH_RTP_FLAG_PAUSE,\r
   SWITCH_RTP_FLAG_INVALID\r
 }\r
 \r
@@ -34930,6 +36191,16 @@ public class switch_scheduler_task : IDisposable {
     } \r
   }\r
 \r
+  public uint repeat {\r
+    set {\r
+      freeswitchPINVOKE.switch_scheduler_task_repeat_set(swigCPtr, value);\r
+    } \r
+    get {\r
+      uint ret = freeswitchPINVOKE.switch_scheduler_task_repeat_get(swigCPtr);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public string group {\r
     set {\r
       freeswitchPINVOKE.switch_scheduler_task_group_set(swigCPtr, value);\r
@@ -36056,7 +37327,9 @@ public enum switch_status_t {
   SWITCH_STATUS_FOUND,\r
   SWITCH_STATUS_CONTINUE,\r
   SWITCH_STATUS_TERM,\r
-  SWITCH_STATUS_NOT_INITALIZED\r
+  SWITCH_STATUS_NOT_INITALIZED,\r
+  SWITCH_STATUS_XBREAK = 35,\r
+  SWITCH_STATUS_WINBREAK = 730035\r
 }\r
 \r
 }\r
@@ -36505,6 +37778,17 @@ public class switch_thread_data_t : IDisposable {
     } \r
   }\r
 \r
+  public SWIGTYPE_p_apr_pool_t pool {\r
+    set {\r
+      freeswitchPINVOKE.switch_thread_data_t_pool_set(swigCPtr, SWIGTYPE_p_apr_pool_t.getCPtr(value));\r
+    } \r
+    get {\r
+      IntPtr cPtr = freeswitchPINVOKE.switch_thread_data_t_pool_get(swigCPtr);\r
+      SWIGTYPE_p_apr_pool_t ret = (cPtr == IntPtr.Zero) ? null : new SWIGTYPE_p_apr_pool_t(cPtr, false);\r
+      return ret;\r
+    } \r
+  }\r
+\r
   public switch_thread_data_t() : this(freeswitchPINVOKE.new_switch_thread_data_t(), true) {\r
   }\r
 \r
@@ -37377,7 +38661,7 @@ namespace FreeSWITCH.Native {
   SWITCH_XML_SECTION_CONFIG = (1 << 0),\r
   SWITCH_XML_SECTION_DIRECTORY = (1 << 1),\r
   SWITCH_XML_SECTION_DIALPLAN = (1 << 2),\r
-  SWITCH_XML_SECTION_PHRASES = (1 << 3),\r
+  SWITCH_XML_SECTION_LANGUAGES = (1 << 3),\r
   SWITCH_XML_SECTION_CHATPLAN = (1 << 4),\r
   SWITCH_XML_SECTION_MAX = (1 << 4)\r
 }\r
index 59eacde94c67410b88b1a967ee9a176bc4e123bc..bbef0b79bd48f22fcee0a062cb40420312a6f594 100644 (file)
@@ -510,10 +510,10 @@ SWITCH_DECLARE(payload_map_t *) switch_core_media_add_payload_map(switch_core_se
        }
 
        pmap->allocated = 1;
-       pmap->recv_pt = pt;
+       pmap->recv_pt = (switch_payload_t)pt;
 
        if (sdp_type == SDP_TYPE_REQUEST || !exists) {
-               pmap->pt = pt;
+               pmap->pt = (switch_payload_t)pt;
        }
 
        if (negotiated) {