@voipsdk/react-native-voipcloud 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (650) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/LICENSE +21 -0
  3. package/README.md +60 -15
  4. package/android/build.gradle +15 -9
  5. package/android/src/main/java/com/voipcloud/sdk/rn/VoipCloudModule.java +113 -3
  6. package/android/src/main/java/com/voipcloud/sdk/rn/internal/ManagedAccount.java +12 -6
  7. package/android/src/main/java/com/voipcloud/sdk/rn/internal/ManagedCall.java +33 -1
  8. package/ios/VoipCloud.mm +214 -28
  9. package/ios/VoipCloud.xcframework/Info.plist +48 -0
  10. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/activesock.h +598 -0
  11. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/addr_resolv.h +189 -0
  12. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/array.h +95 -0
  13. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/assert.h +84 -0
  14. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/assert.h +36 -0
  15. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_armcc.h +57 -0
  16. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_clang.h +64 -0
  17. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_codew.h +55 -0
  18. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_gcc.h +79 -0
  19. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_gcce.h +54 -0
  20. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_msvc.h +87 -0
  21. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_mwcc.h +55 -0
  22. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/ctype.h +44 -0
  23. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/errno.h +44 -0
  24. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/high_precision.h +87 -0
  25. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/limits.h +66 -0
  26. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_alpha.h +35 -0
  27. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_armv4.h +38 -0
  28. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_auto.h +60 -0
  29. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_auto.h.in +59 -0
  30. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_i386.h +34 -0
  31. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_m68k.h +34 -0
  32. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_powerpc.h +35 -0
  33. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_sparc.h +34 -0
  34. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_x86_64.h +35 -0
  35. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/malloc.h +33 -0
  36. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_auto.h +245 -0
  37. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_auto.h.in +244 -0
  38. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_darwinos.h +141 -0
  39. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_linux.h +130 -0
  40. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_palmos.h +118 -0
  41. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_rtems.h +138 -0
  42. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_sunos.h +131 -0
  43. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_symbian.h +166 -0
  44. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_win32.h +148 -0
  45. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_win32_wince.h +145 -0
  46. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_winphone8.h +149 -0
  47. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_winuwp.h +149 -0
  48. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/rand.h +55 -0
  49. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/setjmp.h +49 -0
  50. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/size_t.h +31 -0
  51. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/socket.h +223 -0
  52. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/stdarg.h +31 -0
  53. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/stdfileio.h +31 -0
  54. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/string.h +178 -0
  55. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/time.h +41 -0
  56. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config.h +1537 -0
  57. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site.h +22 -0
  58. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site_sample.h +485 -0
  59. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site_test.h +11 -0
  60. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ctype.h +174 -0
  61. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/doxygen.h +995 -0
  62. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/errno.h +593 -0
  63. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/except.h +420 -0
  64. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/fifobuf.h +43 -0
  65. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/file_access.h +108 -0
  66. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/file_io.h +183 -0
  67. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/guid.h +119 -0
  68. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/hash.h +253 -0
  69. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ioqueue.h +955 -0
  70. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ip_helper.h +152 -0
  71. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/limits.h +57 -0
  72. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/list.h +268 -0
  73. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/list_i.h +120 -0
  74. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/lock.h +453 -0
  75. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/log.h +487 -0
  76. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/math.h +203 -0
  77. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/os.h +1536 -0
  78. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool.h +918 -0
  79. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_alt.h +212 -0
  80. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_buf.h +104 -0
  81. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_i.h +131 -0
  82. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/rand.h +65 -0
  83. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/rbtree.h +215 -0
  84. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock.h +1566 -0
  85. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock_qos.h +429 -0
  86. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock_select.h +151 -0
  87. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ssl_sock.h +1508 -0
  88. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/string.h +963 -0
  89. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/string_i.h +406 -0
  90. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/timer.h +386 -0
  91. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/types.h +594 -0
  92. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/unicode.h +140 -0
  93. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/file.hpp +187 -0
  94. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/hash.hpp +155 -0
  95. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/list.hpp +351 -0
  96. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/lock.hpp +148 -0
  97. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/os.hpp +869 -0
  98. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/pool.hpp +278 -0
  99. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/proactor.hpp +514 -0
  100. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/scanner.hpp +245 -0
  101. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/sock.hpp +443 -0
  102. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/string.hpp +467 -0
  103. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/timer.hpp +197 -0
  104. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/tree.hpp +128 -0
  105. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/types.hpp +174 -0
  106. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib++.hpp +34 -0
  107. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/base64.h +91 -0
  108. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli.h +530 -0
  109. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_console.h +116 -0
  110. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_imp.h +207 -0
  111. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_telnet.h +167 -0
  112. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/config.h +373 -0
  113. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/crc32.h +95 -0
  114. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/dns.h +460 -0
  115. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/dns_server.h +116 -0
  116. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/errno.h +455 -0
  117. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/getopt.h +144 -0
  118. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/hmac_md5.h +108 -0
  119. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/hmac_sha1.h +106 -0
  120. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/http_client.h +493 -0
  121. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/json.h +227 -0
  122. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/md5.h +73 -0
  123. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/pcap.h +195 -0
  124. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/resolver.h +515 -0
  125. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner.h +553 -0
  126. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner_cis_bitwise.h +96 -0
  127. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner_cis_uint.h +83 -0
  128. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/sha1.h +79 -0
  129. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/srv_resolver.h +221 -0
  130. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/string.h +101 -0
  131. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/stun_simple.h +288 -0
  132. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/types.h +94 -0
  133. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/xml.h +248 -0
  134. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util.h +75 -0
  135. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib.h +62 -0
  136. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/alaw_ulaw.h +212 -0
  137. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/audiodev.h +761 -0
  138. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/avi.h +201 -0
  139. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/avi_stream.h +195 -0
  140. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/bidirectional.h +66 -0
  141. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/circbuf.h +436 -0
  142. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/clock.h +338 -0
  143. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/codec.h +1192 -0
  144. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/conference.h +599 -0
  145. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config.h +1713 -0
  146. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config_auto.h +43 -0
  147. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config_auto.h.in +42 -0
  148. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/converter.h +386 -0
  149. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/delaybuf.h +175 -0
  150. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/doxygen.h +243 -0
  151. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/echo.h +420 -0
  152. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/echo_port.h +73 -0
  153. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/endpoint.h +389 -0
  154. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/errno.h +693 -0
  155. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/event.h +493 -0
  156. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/format.h +821 -0
  157. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/frame.h +331 -0
  158. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/g711.h +88 -0
  159. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/jbuf.h +484 -0
  160. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/master_port.h +198 -0
  161. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/mem_port.h +241 -0
  162. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/null_port.h +69 -0
  163. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/plc.h +114 -0
  164. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/port.h +565 -0
  165. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/resample.h +199 -0
  166. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp.h +511 -0
  167. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp_fb.h +487 -0
  168. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp_xr.h +477 -0
  169. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtp.h +457 -0
  170. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sdp.h +830 -0
  171. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sdp_neg.h +822 -0
  172. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/session.h +435 -0
  173. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/signatures.h +217 -0
  174. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/silencedet.h +199 -0
  175. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sound.h +353 -0
  176. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sound_port.h +397 -0
  177. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/splitcomb.h +142 -0
  178. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stereo.h +203 -0
  179. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stream.h +541 -0
  180. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stream_common.h +123 -0
  181. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/symbian_sound_aps.h +47 -0
  182. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/tonegen.h +302 -0
  183. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport.h +1069 -0
  184. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_adapter_sample.h +75 -0
  185. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_ice.h +458 -0
  186. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_loop.h +158 -0
  187. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_srtp.h +579 -0
  188. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_udp.h +161 -0
  189. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/types.h +345 -0
  190. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_codec.h +896 -0
  191. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_codec_util.h +194 -0
  192. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_conf.h +310 -0
  193. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_port.h +269 -0
  194. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_stream.h +514 -0
  195. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_tee.h +141 -0
  196. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/videodev.h +859 -0
  197. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wav_playlist.h +131 -0
  198. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wav_port.h +342 -0
  199. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wave.h +183 -0
  200. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wsola.h +218 -0
  201. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiodev.h +110 -0
  202. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiodev_imp.h +187 -0
  203. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiotest.h +115 -0
  204. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/config.h +525 -0
  205. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/errno.h +227 -0
  206. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/amr_helper.h +1236 -0
  207. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/amr_sdp_match.h +60 -0
  208. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/and_aud_mediacodec.h +131 -0
  209. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/and_vid_mediacodec.h +77 -0
  210. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/audio_codecs.h +97 -0
  211. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/bcg729.h +120 -0
  212. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config.h +720 -0
  213. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config_auto.h +104 -0
  214. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config_auto.h.in +103 -0
  215. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ffmpeg_vid_codecs.h +66 -0
  216. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g722.h +103 -0
  217. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g7221.h +164 -0
  218. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g7221_sdp_match.h +58 -0
  219. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/gsm.h +86 -0
  220. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/h263_packetizer.h +145 -0
  221. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/h264_packetizer.h +163 -0
  222. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ilbc.h +118 -0
  223. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ipp_codecs.h +321 -0
  224. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/l16.h +83 -0
  225. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/opencore_amr.h +145 -0
  226. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/openh264.h +68 -0
  227. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/opus.h +160 -0
  228. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/passthrough.h +276 -0
  229. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/silk.h +126 -0
  230. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/speex.h +149 -0
  231. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/types.h +145 -0
  232. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vid_toolbox.h +70 -0
  233. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vpx.h +68 -0
  234. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vpx_packetizer.h +123 -0
  235. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec.h +47 -0
  236. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/avi_dev.h +139 -0
  237. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/config.h +326 -0
  238. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/errno.h +158 -0
  239. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/opengl_dev.h +52 -0
  240. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/videodev.h +119 -0
  241. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/videodev_imp.h +229 -0
  242. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia.h +81 -0
  243. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia_audiodev.h +32 -0
  244. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia_videodev.h +30 -0
  245. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/config.h +596 -0
  246. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/errno.h +225 -0
  247. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/ice_session.h +1122 -0
  248. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/ice_strans.h +1112 -0
  249. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/nat_detect.h +233 -0
  250. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_auth.h +456 -0
  251. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_config.h +135 -0
  252. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_msg.h +1856 -0
  253. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_session.h +763 -0
  254. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_sock.h +496 -0
  255. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_transaction.h +291 -0
  256. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/turn_session.h +968 -0
  257. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/turn_sock.h +673 -0
  258. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/types.h +75 -0
  259. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/upnp.h +147 -0
  260. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath.h +46 -0
  261. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/print_util.h +166 -0
  262. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth.h +637 -0
  263. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_aka.h +212 -0
  264. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_msg.h +269 -0
  265. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_parser.h +74 -0
  266. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_autoconf.h +39 -0
  267. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_autoconf.h.in +38 -0
  268. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_config.h +1545 -0
  269. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_dialog.h +935 -0
  270. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_endpoint.h +715 -0
  271. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_errno.h +544 -0
  272. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_event.h +230 -0
  273. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_module.h +221 -0
  274. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_msg.h +2134 -0
  275. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_multipart.h +276 -0
  276. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_parser.h +465 -0
  277. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_private.h +31 -0
  278. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_resolve.h +347 -0
  279. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_tel_uri.h +83 -0
  280. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transaction.h +542 -0
  281. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport.h +1672 -0
  282. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_loop.h +146 -0
  283. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_tcp.h +300 -0
  284. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_tls.h +642 -0
  285. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_udp.h +389 -0
  286. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_types.h +265 -0
  287. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_ua_layer.h +159 -0
  288. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_uri.h +470 -0
  289. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_util.h +888 -0
  290. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/errno.h +117 -0
  291. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/evsub.h +561 -0
  292. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/evsub_msg.h +119 -0
  293. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/iscomposing.h +137 -0
  294. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/mwi.h +211 -0
  295. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/pidf.h +177 -0
  296. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/presence.h +416 -0
  297. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/publish.h +350 -0
  298. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/rpid.h +150 -0
  299. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/types.h +30 -0
  300. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/xpidf.h +137 -0
  301. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_100rel.h +244 -0
  302. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_inv.h +1224 -0
  303. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_regc.h +497 -0
  304. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_replaces.h +303 -0
  305. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_timer.h +274 -0
  306. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_xfer.h +207 -0
  307. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip.h +61 -0
  308. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_auth.h +37 -0
  309. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_simple.h +45 -0
  310. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_ua.h +31 -0
  311. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua-lib/pjsua.h +8899 -0
  312. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua-lib/pjsua_internal.h +989 -0
  313. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua.h +1 -0
  314. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/account.hpp +2123 -0
  315. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/call.hpp +2253 -0
  316. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/config.hpp +72 -0
  317. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/doxygen.hpp +48 -0
  318. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/endpoint.hpp +2160 -0
  319. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/json.hpp +115 -0
  320. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/media.hpp +2748 -0
  321. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/persistent.hpp +715 -0
  322. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/presence.hpp +368 -0
  323. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/siptypes.hpp +1013 -0
  324. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/types.hpp +283 -0
  325. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2.hpp +28 -0
  326. package/ios/VoipCloud.xcframework/ios-arm64/libVoipCloud.a +0 -0
  327. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/activesock.h +598 -0
  328. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/addr_resolv.h +189 -0
  329. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/array.h +95 -0
  330. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/assert.h +84 -0
  331. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/assert.h +36 -0
  332. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_armcc.h +57 -0
  333. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_clang.h +64 -0
  334. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_codew.h +55 -0
  335. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_gcc.h +79 -0
  336. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_gcce.h +54 -0
  337. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_msvc.h +87 -0
  338. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_mwcc.h +55 -0
  339. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/ctype.h +44 -0
  340. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/errno.h +44 -0
  341. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/high_precision.h +87 -0
  342. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/limits.h +66 -0
  343. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_alpha.h +35 -0
  344. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_armv4.h +38 -0
  345. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_auto.h +60 -0
  346. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_auto.h.in +59 -0
  347. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_i386.h +34 -0
  348. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_m68k.h +34 -0
  349. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_powerpc.h +35 -0
  350. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_sparc.h +34 -0
  351. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_x86_64.h +35 -0
  352. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/malloc.h +33 -0
  353. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_auto.h +245 -0
  354. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_auto.h.in +244 -0
  355. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_darwinos.h +141 -0
  356. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_linux.h +130 -0
  357. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_palmos.h +118 -0
  358. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_rtems.h +138 -0
  359. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_sunos.h +131 -0
  360. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_symbian.h +166 -0
  361. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_win32.h +148 -0
  362. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_win32_wince.h +145 -0
  363. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_winphone8.h +149 -0
  364. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_winuwp.h +149 -0
  365. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/rand.h +55 -0
  366. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/setjmp.h +49 -0
  367. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/size_t.h +31 -0
  368. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/socket.h +223 -0
  369. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/stdarg.h +31 -0
  370. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/stdfileio.h +31 -0
  371. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/string.h +178 -0
  372. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/time.h +41 -0
  373. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config.h +1537 -0
  374. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site.h +22 -0
  375. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site_sample.h +485 -0
  376. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site_test.h +11 -0
  377. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ctype.h +174 -0
  378. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/doxygen.h +995 -0
  379. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/errno.h +593 -0
  380. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/except.h +420 -0
  381. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/fifobuf.h +43 -0
  382. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/file_access.h +108 -0
  383. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/file_io.h +183 -0
  384. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/guid.h +119 -0
  385. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/hash.h +253 -0
  386. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ioqueue.h +955 -0
  387. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ip_helper.h +152 -0
  388. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/limits.h +57 -0
  389. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/list.h +268 -0
  390. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/list_i.h +120 -0
  391. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/lock.h +453 -0
  392. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/log.h +487 -0
  393. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/math.h +203 -0
  394. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/os.h +1536 -0
  395. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool.h +918 -0
  396. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_alt.h +212 -0
  397. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_buf.h +104 -0
  398. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_i.h +131 -0
  399. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/rand.h +65 -0
  400. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/rbtree.h +215 -0
  401. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock.h +1566 -0
  402. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock_qos.h +429 -0
  403. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock_select.h +151 -0
  404. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ssl_sock.h +1508 -0
  405. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/string.h +963 -0
  406. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/string_i.h +406 -0
  407. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/timer.h +386 -0
  408. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/types.h +594 -0
  409. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/unicode.h +140 -0
  410. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/file.hpp +187 -0
  411. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/hash.hpp +155 -0
  412. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/list.hpp +351 -0
  413. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/lock.hpp +148 -0
  414. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/os.hpp +869 -0
  415. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/pool.hpp +278 -0
  416. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/proactor.hpp +514 -0
  417. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/scanner.hpp +245 -0
  418. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/sock.hpp +443 -0
  419. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/string.hpp +467 -0
  420. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/timer.hpp +197 -0
  421. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/tree.hpp +128 -0
  422. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/types.hpp +174 -0
  423. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib++.hpp +34 -0
  424. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/base64.h +91 -0
  425. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli.h +530 -0
  426. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_console.h +116 -0
  427. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_imp.h +207 -0
  428. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_telnet.h +167 -0
  429. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/config.h +373 -0
  430. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/crc32.h +95 -0
  431. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/dns.h +460 -0
  432. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/dns_server.h +116 -0
  433. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/errno.h +455 -0
  434. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/getopt.h +144 -0
  435. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/hmac_md5.h +108 -0
  436. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/hmac_sha1.h +106 -0
  437. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/http_client.h +493 -0
  438. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/json.h +227 -0
  439. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/md5.h +73 -0
  440. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/pcap.h +195 -0
  441. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/resolver.h +515 -0
  442. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner.h +553 -0
  443. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner_cis_bitwise.h +96 -0
  444. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner_cis_uint.h +83 -0
  445. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/sha1.h +79 -0
  446. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/srv_resolver.h +221 -0
  447. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/string.h +101 -0
  448. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/stun_simple.h +288 -0
  449. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/types.h +94 -0
  450. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/xml.h +248 -0
  451. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util.h +75 -0
  452. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib.h +62 -0
  453. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/alaw_ulaw.h +212 -0
  454. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/audiodev.h +761 -0
  455. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/avi.h +201 -0
  456. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/avi_stream.h +195 -0
  457. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/bidirectional.h +66 -0
  458. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/circbuf.h +436 -0
  459. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/clock.h +338 -0
  460. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/codec.h +1192 -0
  461. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/conference.h +599 -0
  462. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config.h +1713 -0
  463. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config_auto.h +43 -0
  464. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config_auto.h.in +42 -0
  465. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/converter.h +386 -0
  466. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/delaybuf.h +175 -0
  467. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/doxygen.h +243 -0
  468. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/echo.h +420 -0
  469. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/echo_port.h +73 -0
  470. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/endpoint.h +389 -0
  471. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/errno.h +693 -0
  472. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/event.h +493 -0
  473. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/format.h +821 -0
  474. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/frame.h +331 -0
  475. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/g711.h +88 -0
  476. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/jbuf.h +484 -0
  477. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/master_port.h +198 -0
  478. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/mem_port.h +241 -0
  479. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/null_port.h +69 -0
  480. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/plc.h +114 -0
  481. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/port.h +565 -0
  482. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/resample.h +199 -0
  483. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp.h +511 -0
  484. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp_fb.h +487 -0
  485. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp_xr.h +477 -0
  486. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtp.h +457 -0
  487. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sdp.h +830 -0
  488. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sdp_neg.h +822 -0
  489. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/session.h +435 -0
  490. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/signatures.h +217 -0
  491. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/silencedet.h +199 -0
  492. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sound.h +353 -0
  493. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sound_port.h +397 -0
  494. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/splitcomb.h +142 -0
  495. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stereo.h +203 -0
  496. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stream.h +541 -0
  497. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stream_common.h +123 -0
  498. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/symbian_sound_aps.h +47 -0
  499. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/tonegen.h +302 -0
  500. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport.h +1069 -0
  501. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_adapter_sample.h +75 -0
  502. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_ice.h +458 -0
  503. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_loop.h +158 -0
  504. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_srtp.h +579 -0
  505. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_udp.h +161 -0
  506. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/types.h +345 -0
  507. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_codec.h +896 -0
  508. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_codec_util.h +194 -0
  509. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_conf.h +310 -0
  510. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_port.h +269 -0
  511. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_stream.h +514 -0
  512. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_tee.h +141 -0
  513. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/videodev.h +859 -0
  514. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wav_playlist.h +131 -0
  515. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wav_port.h +342 -0
  516. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wave.h +183 -0
  517. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wsola.h +218 -0
  518. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiodev.h +110 -0
  519. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiodev_imp.h +187 -0
  520. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiotest.h +115 -0
  521. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/config.h +525 -0
  522. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/errno.h +227 -0
  523. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/amr_helper.h +1236 -0
  524. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/amr_sdp_match.h +60 -0
  525. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/and_aud_mediacodec.h +131 -0
  526. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/and_vid_mediacodec.h +77 -0
  527. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/audio_codecs.h +97 -0
  528. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/bcg729.h +120 -0
  529. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config.h +720 -0
  530. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config_auto.h +104 -0
  531. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config_auto.h.in +103 -0
  532. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ffmpeg_vid_codecs.h +66 -0
  533. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g722.h +103 -0
  534. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g7221.h +164 -0
  535. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g7221_sdp_match.h +58 -0
  536. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/gsm.h +86 -0
  537. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/h263_packetizer.h +145 -0
  538. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/h264_packetizer.h +163 -0
  539. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ilbc.h +118 -0
  540. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ipp_codecs.h +321 -0
  541. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/l16.h +83 -0
  542. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/opencore_amr.h +145 -0
  543. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/openh264.h +68 -0
  544. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/opus.h +160 -0
  545. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/passthrough.h +276 -0
  546. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/silk.h +126 -0
  547. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/speex.h +149 -0
  548. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/types.h +145 -0
  549. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vid_toolbox.h +70 -0
  550. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vpx.h +68 -0
  551. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vpx_packetizer.h +123 -0
  552. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec.h +47 -0
  553. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/avi_dev.h +139 -0
  554. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/config.h +326 -0
  555. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/errno.h +158 -0
  556. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/opengl_dev.h +52 -0
  557. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/videodev.h +119 -0
  558. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/videodev_imp.h +229 -0
  559. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia.h +81 -0
  560. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia_audiodev.h +32 -0
  561. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia_videodev.h +30 -0
  562. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/config.h +596 -0
  563. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/errno.h +225 -0
  564. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/ice_session.h +1122 -0
  565. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/ice_strans.h +1112 -0
  566. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/nat_detect.h +233 -0
  567. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_auth.h +456 -0
  568. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_config.h +135 -0
  569. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_msg.h +1856 -0
  570. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_session.h +763 -0
  571. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_sock.h +496 -0
  572. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_transaction.h +291 -0
  573. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/turn_session.h +968 -0
  574. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/turn_sock.h +673 -0
  575. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/types.h +75 -0
  576. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/upnp.h +147 -0
  577. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath.h +46 -0
  578. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/print_util.h +166 -0
  579. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth.h +637 -0
  580. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_aka.h +212 -0
  581. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_msg.h +269 -0
  582. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_parser.h +74 -0
  583. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_autoconf.h +39 -0
  584. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_autoconf.h.in +38 -0
  585. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_config.h +1545 -0
  586. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_dialog.h +935 -0
  587. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_endpoint.h +715 -0
  588. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_errno.h +544 -0
  589. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_event.h +230 -0
  590. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_module.h +221 -0
  591. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_msg.h +2134 -0
  592. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_multipart.h +276 -0
  593. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_parser.h +465 -0
  594. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_private.h +31 -0
  595. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_resolve.h +347 -0
  596. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_tel_uri.h +83 -0
  597. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transaction.h +542 -0
  598. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport.h +1672 -0
  599. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_loop.h +146 -0
  600. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_tcp.h +300 -0
  601. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_tls.h +642 -0
  602. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_udp.h +389 -0
  603. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_types.h +265 -0
  604. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_ua_layer.h +159 -0
  605. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_uri.h +470 -0
  606. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_util.h +888 -0
  607. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/errno.h +117 -0
  608. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/evsub.h +561 -0
  609. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/evsub_msg.h +119 -0
  610. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/iscomposing.h +137 -0
  611. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/mwi.h +211 -0
  612. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/pidf.h +177 -0
  613. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/presence.h +416 -0
  614. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/publish.h +350 -0
  615. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/rpid.h +150 -0
  616. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/types.h +30 -0
  617. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/xpidf.h +137 -0
  618. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_100rel.h +244 -0
  619. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_inv.h +1224 -0
  620. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_regc.h +497 -0
  621. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_replaces.h +303 -0
  622. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_timer.h +274 -0
  623. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_xfer.h +207 -0
  624. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip.h +61 -0
  625. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_auth.h +37 -0
  626. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_simple.h +45 -0
  627. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_ua.h +31 -0
  628. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua-lib/pjsua.h +8899 -0
  629. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua-lib/pjsua_internal.h +989 -0
  630. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua.h +1 -0
  631. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/account.hpp +2123 -0
  632. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/call.hpp +2253 -0
  633. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/config.hpp +72 -0
  634. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/doxygen.hpp +48 -0
  635. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/endpoint.hpp +2160 -0
  636. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/json.hpp +115 -0
  637. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/media.hpp +2748 -0
  638. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/persistent.hpp +715 -0
  639. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/presence.hpp +368 -0
  640. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/siptypes.hpp +1013 -0
  641. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/types.hpp +283 -0
  642. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2.hpp +28 -0
  643. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/libVoipCloud.a +0 -0
  644. package/ios/VoipCloudEngine.h +62 -0
  645. package/ios/VoipCloudEngine.mm +655 -0
  646. package/lib/typescript/types.d.ts +14 -0
  647. package/package.json +6 -4
  648. package/react-native-voipcloud.podspec +32 -1
  649. package/react-native.config.js +22 -0
  650. package/src/types.ts +14 -0
@@ -0,0 +1,2253 @@
1
+ /*
2
+ * Copyright (C) 2012-2013 Teluu Inc. (http://www.teluu.com)
3
+ *
4
+ * This program is free software; you can redistribute it and/or modify
5
+ * it under the terms of the GNU General Public License as published by
6
+ * the Free Software Foundation; either version 2 of the License, or
7
+ * (at your option) any later version.
8
+ *
9
+ * This program is distributed in the hope that it will be useful,
10
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ * GNU General Public License for more details.
13
+ *
14
+ * You should have received a copy of the GNU General Public License
15
+ * along with this program; if not, write to the Free Software
16
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
+ */
18
+ #ifndef __PJSUA2_CALL_HPP__
19
+ #define __PJSUA2_CALL_HPP__
20
+
21
+ /**
22
+ * @file pjsua2/call.hpp
23
+ * @brief PJSUA2 Call manipulation
24
+ */
25
+ #include <pjsua-lib/pjsua.h>
26
+ #include <pjsua2/media.hpp>
27
+
28
+ /** PJSUA2 API is inside pj namespace */
29
+ namespace pj
30
+ {
31
+
32
+ /**
33
+ * @defgroup PJSUA2_CALL Call
34
+ * @ingroup PJSUA2_Ref
35
+ */
36
+
37
+ /**
38
+ * @defgroup PJSUA2_Call_Data_Structure Call Related Types
39
+ * @ingroup PJSUA2_DS
40
+ * @{
41
+ */
42
+
43
+ using std::string;
44
+ using std::vector;
45
+
46
+ //////////////////////////////////////////////////////////////////////////////
47
+
48
+ /**
49
+ * Media stream, corresponds to pjmedia_stream
50
+ */
51
+ typedef void *MediaStream;
52
+
53
+ /**
54
+ * Media transport, corresponds to pjmedia_transport
55
+ */
56
+ typedef void *MediaTransport;
57
+
58
+ /**
59
+ * This structure describes statistics state.
60
+ */
61
+ struct MathStat
62
+ {
63
+ int n; /**< number of samples */
64
+ int max; /**< maximum value */
65
+ int min; /**< minimum value */
66
+ int last; /**< last value */
67
+ int mean; /**< mean */
68
+
69
+ public:
70
+ /**
71
+ * Default constructor
72
+ */
73
+ MathStat();
74
+
75
+ /**
76
+ * Convert from pjsip
77
+ */
78
+ void fromPj(const pj_math_stat &prm);
79
+ };
80
+
81
+ /**
82
+ * Types of loss detected.
83
+ */
84
+ struct LossType
85
+ {
86
+ unsigned burst; /**< Burst/sequential packet lost detected */
87
+ unsigned random; /**< Random packet lost detected. */
88
+ };
89
+
90
+ /**
91
+ * Unidirectional RTP stream statistics.
92
+ */
93
+ struct RtcpStreamStat
94
+ {
95
+ TimeVal update; /**< Time of last update. */
96
+ unsigned updateCount;/**< Number of updates (to calculate avg) */
97
+ unsigned pkt; /**< Total number of packets */
98
+ unsigned bytes; /**< Total number of payload/bytes */
99
+ unsigned discard; /**< Total number of discarded packets. */
100
+ unsigned loss; /**< Total number of packets lost */
101
+ unsigned reorder; /**< Total number of out of order packets */
102
+ unsigned dup; /**< Total number of duplicates packets */
103
+
104
+ MathStat lossPeriodUsec; /**< Loss period statistics */
105
+
106
+ LossType lossType; /**< Types of loss detected. */
107
+
108
+ MathStat jitterUsec; /**< Jitter statistics */
109
+
110
+ public:
111
+ /**
112
+ * Convert from pjsip
113
+ */
114
+ void fromPj(const pjmedia_rtcp_stream_stat &prm);
115
+ };
116
+
117
+ /**
118
+ * RTCP SDES structure.
119
+ */
120
+ struct RtcpSdes
121
+ {
122
+ string cname; /**< RTCP SDES type CNAME. */
123
+ string name; /**< RTCP SDES type NAME. */
124
+ string email; /**< RTCP SDES type EMAIL. */
125
+ string phone; /**< RTCP SDES type PHONE. */
126
+ string loc; /**< RTCP SDES type LOC. */
127
+ string tool; /**< RTCP SDES type TOOL. */
128
+ string note; /**< RTCP SDES type NOTE. */
129
+
130
+ public:
131
+ /**
132
+ * Convert from pjsip
133
+ */
134
+ void fromPj(const pjmedia_rtcp_sdes &prm);
135
+ };
136
+
137
+ /**
138
+ * Bidirectional RTP stream statistics.
139
+ */
140
+ struct RtcpStat
141
+ {
142
+ TimeVal start; /**< Time when session was created */
143
+
144
+ RtcpStreamStat txStat; /**< Encoder stream statistics. */
145
+ RtcpStreamStat rxStat; /**< Decoder stream statistics. */
146
+
147
+ MathStat rttUsec; /**< Round trip delay statistic. */
148
+
149
+ pj_uint32_t rtpTxLastTs; /**< Last TX RTP timestamp. */
150
+ pj_uint16_t rtpTxLastSeq; /**< Last TX RTP sequence. */
151
+
152
+ MathStat rxIpdvUsec; /**< Statistics of IP packet delay
153
+ variation in receiving
154
+ direction. It is only used when
155
+ PJMEDIA_RTCP_STAT_HAS_IPDV is
156
+ set to non-zero. */
157
+
158
+ MathStat rxRawJitterUsec;/**< Statistic of raw jitter in
159
+ receiving direction. It is only
160
+ used when
161
+ PJMEDIA_RTCP_STAT_HAS_RAW_JITTER
162
+ is set to non-zero. */
163
+
164
+ RtcpSdes peerSdes; /**< Peer SDES. */
165
+
166
+ public:
167
+ /**
168
+ * Convert from pjsip
169
+ */
170
+ void fromPj(const pjmedia_rtcp_stat &prm);
171
+ };
172
+
173
+ /**
174
+ * This structure describes jitter buffer state.
175
+ */
176
+ struct JbufState
177
+ {
178
+ /* Setting */
179
+ unsigned frameSize; /**< Individual frame size, in bytes. */
180
+ unsigned minPrefetch; /**< Minimum allowed prefetch, in frms. */
181
+ unsigned maxPrefetch; /**< Maximum allowed prefetch, in frms. */
182
+
183
+ /* Status */
184
+ unsigned burst; /**< Current burst level, in frames */
185
+ unsigned prefetch; /**< Current prefetch value, in frames */
186
+ unsigned size; /**< Current buffer size, in frames. */
187
+
188
+ /* Statistic */
189
+ unsigned avgDelayMsec; /**< Average delay, in ms. */
190
+ unsigned minDelayMsec; /**< Minimum delay, in ms. */
191
+ unsigned maxDelayMsec; /**< Maximum delay, in ms. */
192
+ unsigned devDelayMsec; /**< Standard deviation of delay, in ms.*/
193
+ unsigned avgBurst; /**< Average burst, in frames. */
194
+ unsigned lost; /**< Number of lost frames. */
195
+ unsigned discard; /**< Number of discarded frames. */
196
+ unsigned empty; /**< Number of empty on GET events. */
197
+
198
+ public:
199
+ /**
200
+ * Convert from pjsip
201
+ */
202
+ void fromPj(const pjmedia_jb_state &prm);
203
+ };
204
+
205
+ /**
206
+ * This structure describes SDP session description. It corresponds to the
207
+ * pjmedia_sdp_session structure.
208
+ */
209
+ struct SdpSession
210
+ {
211
+ /**
212
+ * The whole SDP as a string.
213
+ */
214
+ string wholeSdp;
215
+
216
+ /**
217
+ * Pointer to its original pjmedia_sdp_session. Only valid when the struct
218
+ * is converted from PJSIP's pjmedia_sdp_session.
219
+ */
220
+ void *pjSdpSession;
221
+
222
+ public:
223
+ /**
224
+ * Convert from pjsip
225
+ */
226
+ void fromPj(const pjmedia_sdp_session &sdp);
227
+ };
228
+
229
+
230
+ /**
231
+ * This structure describes media transport informations. It corresponds to the
232
+ * pjmedia_transport_info structure. The address name field can be empty string
233
+ * if the address in the pjmedia_transport_info is invalid.
234
+ */
235
+ struct MediaTransportInfo
236
+ {
237
+ /**
238
+ * Address to be advertised as the local address for the RTP socket,
239
+ * which does not need to be equal as the bound address (for example,
240
+ * this address can be the address resolved with STUN).
241
+ */
242
+ SocketAddress localRtpName;
243
+
244
+ /**
245
+ * Address to be advertised as the local address for the RTCP socket,
246
+ * which does not need to be equal as the bound address (for example,
247
+ * this address can be the address resolved with STUN).
248
+ */
249
+ SocketAddress localRtcpName;
250
+
251
+ /**
252
+ * Remote address where RTP originated from. This can be empty string if
253
+ * no data is received from the remote.
254
+ */
255
+ SocketAddress srcRtpName;
256
+
257
+ /**
258
+ * Remote address where RTCP originated from. This can be empty string if
259
+ * no data is recevied from the remote.
260
+ */
261
+ SocketAddress srcRtcpName;
262
+
263
+ public:
264
+ /**
265
+ * Convert from pjsip
266
+ */
267
+ void fromPj(const pjmedia_transport_info &info);
268
+ };
269
+
270
+ //////////////////////////////////////////////////////////////////////////////
271
+
272
+ /** Array of media direction */
273
+ typedef IntVector MediaDirVector;
274
+
275
+
276
+ /**
277
+ * Call settings.
278
+ */
279
+ struct CallSetting
280
+ {
281
+ /**
282
+ * Bitmask of pjsua_call_flag constants.
283
+ *
284
+ * Default: PJSUA_CALL_INCLUDE_DISABLED_MEDIA
285
+ */
286
+ unsigned flag;
287
+
288
+ /**
289
+ * This flag controls what methods to request keyframe are allowed on
290
+ * the call. Value is bitmask of pjsua_vid_req_keyframe_method.
291
+ *
292
+ * Default: PJSUA_VID_REQ_KEYFRAME_SIP_INFO |
293
+ * PJSUA_VID_REQ_KEYFRAME_RTCP_PLI
294
+ */
295
+ unsigned reqKeyframeMethod;
296
+
297
+ /**
298
+ * Number of simultaneous active audio streams for this call. Setting
299
+ * this to zero will disable audio in this call.
300
+ *
301
+ * Default: 1
302
+ */
303
+ unsigned audioCount;
304
+
305
+ /**
306
+ * Number of simultaneous active video streams for this call. Setting
307
+ * this to zero will disable video in this call.
308
+ *
309
+ * Default: 1 (if video feature is enabled, otherwise it is zero)
310
+ */
311
+ unsigned videoCount;
312
+
313
+ /**
314
+ * Media direction. This setting will only be used if the flag
315
+ * PJSUA_CALL_SET_MEDIA_DIR is set, and it will persist for subsequent
316
+ * offers or answers.
317
+ * For example, a media that is set as PJMEDIA_DIR_ENCODING can only
318
+ * mark the stream in the SDP as sendonly or inactive, but will not
319
+ * become sendrecv in subsequent offers and answers.
320
+ * Application can update the media direction in any API or callback
321
+ * that accepts CallSetting as a parameter, such as via
322
+ * Call::reinvite/update() or in onCallRxOffer/Reinvite()
323
+ * callback.
324
+ *
325
+ * The index of the media dir will correspond to the provisional media
326
+ * in CallInfo.provMedia.
327
+ * For offers that involve adding new medias (such as initial offer),
328
+ * the index will correspond to all new audio media first, then video.
329
+ * For example, for a new call with 2 audios and 1 video, mediaDir[0]
330
+ * and mediaDir[1] will be for the audios, and mediaDir[2] video.
331
+ *
332
+ * Default: empty vector
333
+ */
334
+ MediaDirVector mediaDir;
335
+
336
+
337
+ public:
338
+ /**
339
+ * Default constructor initializes with empty or default values.
340
+ */
341
+ CallSetting(bool useDefaultValues = false);
342
+
343
+ /**
344
+ * Check if the settings are set with empty values.
345
+ *
346
+ * @return True if the settings are empty.
347
+ */
348
+ bool isEmpty() const;
349
+
350
+ /**
351
+ * Convert from pjsip
352
+ */
353
+ void fromPj(const pjsua_call_setting &prm);
354
+
355
+ /**
356
+ * Convert to pjsip
357
+ */
358
+ pjsua_call_setting toPj() const;
359
+ };
360
+
361
+ /**
362
+ * Call media information.
363
+ *
364
+ * Application can query conference bridge port of this media using
365
+ * Call::getAudioMedia() if the media type is audio,
366
+ * or Call::getEncodingVideoMedia() / Call::getDecodingVideoMedia()
367
+ * if the media type is video.
368
+ */
369
+ struct CallMediaInfo
370
+ {
371
+ /**
372
+ * Media index in SDP.
373
+ */
374
+ unsigned index;
375
+
376
+ /**
377
+ * Media type.
378
+ */
379
+ pjmedia_type type;
380
+
381
+ /**
382
+ * Media direction.
383
+ */
384
+ pjmedia_dir dir;
385
+
386
+ /**
387
+ * Call media status.
388
+ */
389
+ pjsua_call_media_status status;
390
+
391
+ /**
392
+ * Warning: this is deprecated, application can query conference bridge
393
+ * port of this media using Call::getAudioMedia().
394
+ *
395
+ * The conference port number for the call. Only valid if the media type
396
+ * is audio.
397
+ */
398
+ int audioConfSlot;
399
+
400
+ /**
401
+ * The window id for incoming video, if any, or
402
+ * PJSUA_INVALID_ID. Only valid if the media type is video.
403
+ */
404
+ pjsua_vid_win_id videoIncomingWindowId;
405
+
406
+ /**
407
+ * The video window instance for incoming video. Only valid if
408
+ * videoIncomingWindowId is not PJSUA_INVALID_ID and
409
+ * the media type is video.
410
+ */
411
+ VideoWindow videoWindow;
412
+
413
+ /**
414
+ * The video capture device for outgoing transmission, if any,
415
+ * or PJMEDIA_VID_INVALID_DEV. Only valid if the media type is video.
416
+ */
417
+ pjmedia_vid_dev_index videoCapDev;
418
+
419
+ public:
420
+ /**
421
+ * Default constructor
422
+ */
423
+ CallMediaInfo();
424
+
425
+ /**
426
+ * Convert from pjsip
427
+ */
428
+ void fromPj(const pjsua_call_media_info &prm);
429
+ };
430
+
431
+ /** Array of call media info */
432
+ typedef std::vector<CallMediaInfo> CallMediaInfoVector;
433
+
434
+ /**
435
+ * Call information. Application can query the call information
436
+ * by calling Call::getInfo().
437
+ */
438
+ struct CallInfo
439
+ {
440
+ /**
441
+ * Call identification.
442
+ */
443
+ pjsua_call_id id;
444
+
445
+ /**
446
+ * Initial call role (UAC == caller)
447
+ */
448
+ pjsip_role_e role;
449
+
450
+ /**
451
+ * The account ID where this call belongs.
452
+ */
453
+ pjsua_acc_id accId;
454
+
455
+ /**
456
+ * Local URI
457
+ */
458
+ string localUri;
459
+
460
+ /**
461
+ * Local Contact
462
+ */
463
+ string localContact;
464
+
465
+ /**
466
+ * Remote URI
467
+ */
468
+ string remoteUri;
469
+
470
+ /**
471
+ * Remote contact
472
+ */
473
+ string remoteContact;
474
+
475
+ /**
476
+ * Dialog Call-ID string.
477
+ */
478
+ string callIdString;
479
+
480
+ /**
481
+ * Call setting
482
+ */
483
+ CallSetting setting;
484
+
485
+ /**
486
+ * Call state
487
+ */
488
+ pjsip_inv_state state;
489
+
490
+ /**
491
+ * Text describing the state
492
+ */
493
+ string stateText;
494
+
495
+ /**
496
+ * Last status code heard, which can be used as cause code
497
+ */
498
+ pjsip_status_code lastStatusCode;
499
+
500
+ /**
501
+ * The reason phrase describing the last status.
502
+ */
503
+ string lastReason;
504
+
505
+ /**
506
+ * Array of active media information.
507
+ */
508
+ CallMediaInfoVector media;
509
+
510
+ /**
511
+ * Array of provisional media information. This contains the media info
512
+ * in the provisioning state, that is when the media session is being
513
+ * created/updated (SDP offer/answer is on progress).
514
+ */
515
+ CallMediaInfoVector provMedia;
516
+
517
+ /**
518
+ * Up-to-date call connected duration (zero when call is not
519
+ * established)
520
+ */
521
+ TimeVal connectDuration;
522
+
523
+ /**
524
+ * Total call duration, including set-up time
525
+ */
526
+ TimeVal totalDuration;
527
+
528
+ /**
529
+ * Flag if remote was SDP offerer
530
+ */
531
+ bool remOfferer;
532
+
533
+ /**
534
+ * Number of audio streams offered by remote
535
+ */
536
+ unsigned remAudioCount;
537
+
538
+ /**
539
+ * Number of video streams offered by remote
540
+ */
541
+ unsigned remVideoCount;
542
+
543
+ public:
544
+ /**
545
+ * Default constructor
546
+ */
547
+ CallInfo() : id(PJSUA_INVALID_ID),
548
+ role(PJSIP_ROLE_UAC),
549
+ accId(PJSUA_INVALID_ID),
550
+ state(PJSIP_INV_STATE_NULL),
551
+ lastStatusCode(PJSIP_SC_NULL),
552
+ remOfferer(false),
553
+ remAudioCount(0),
554
+ remVideoCount(0)
555
+ {}
556
+
557
+ /**
558
+ * Convert from pjsip
559
+ */
560
+ void fromPj(const pjsua_call_info &pci);
561
+ };
562
+
563
+ /**
564
+ * Media stream info.
565
+ */
566
+ struct StreamInfo
567
+ {
568
+ /**
569
+ * Media type of this stream.
570
+ */
571
+ pjmedia_type type;
572
+
573
+ /**
574
+ * Transport protocol (RTP/AVP, etc.)
575
+ */
576
+ pjmedia_tp_proto proto;
577
+
578
+ /**
579
+ * Media direction.
580
+ */
581
+ pjmedia_dir dir;
582
+
583
+ /**
584
+ * Remote RTP address
585
+ */
586
+ SocketAddress remoteRtpAddress;
587
+
588
+ /**
589
+ * Optional remote RTCP address
590
+ */
591
+ SocketAddress remoteRtcpAddress;
592
+
593
+ /**
594
+ * Outgoing codec payload type.
595
+ */
596
+ unsigned txPt;
597
+
598
+ /**
599
+ * Incoming codec payload type.
600
+ */
601
+ unsigned rxPt;
602
+
603
+ /**
604
+ * Outgoing pt for audio telephone-events.
605
+ */
606
+ int audTxEventPt;
607
+
608
+ /**
609
+ * Incoming pt for audio telephone-events.
610
+ */
611
+ int audRxEventPt;
612
+
613
+ /**
614
+ * Codec name.
615
+ */
616
+ string codecName;
617
+
618
+ /**
619
+ * Codec clock rate.
620
+ */
621
+ unsigned codecClockRate;
622
+
623
+ /**
624
+ * Optional audio codec param.
625
+ */
626
+ CodecParam audCodecParam;
627
+
628
+ /**
629
+ * Optional video codec param.
630
+ */
631
+ VidCodecParam vidCodecParam;
632
+
633
+ /**
634
+ * Jitter buffer init delay in msec.
635
+ */
636
+ int jbInit;
637
+
638
+ /**
639
+ * Jitter buffer minimum prefetch delay in msec.
640
+ */
641
+ int jbMinPre;
642
+
643
+ /**
644
+ * Jitter buffer maximum prefetch delay in msec.
645
+ */
646
+ int jbMaxPre;
647
+
648
+ /**
649
+ * Jitter buffer max delay in msec.
650
+ */
651
+ int jbMax;
652
+
653
+ /**
654
+ * Jitter buffer discard algorithm.
655
+ */
656
+ pjmedia_jb_discard_algo jbDiscardAlgo;
657
+
658
+ #if defined(PJMEDIA_STREAM_ENABLE_KA) && PJMEDIA_STREAM_ENABLE_KA!=0
659
+ /**
660
+ * Stream keep-alive and NAT hole punch (see #PJMEDIA_STREAM_ENABLE_KA) is
661
+ * enabled?
662
+ */
663
+ bool useKa;
664
+ #endif
665
+
666
+ /**
667
+ * Disable automatic sending of RTCP SDES and BYE.
668
+ */
669
+ bool rtcpSdesByeDisabled;
670
+
671
+ public:
672
+ /**
673
+ * Default constructor
674
+ */
675
+ StreamInfo()
676
+ : type(PJMEDIA_TYPE_NONE),
677
+ proto(PJMEDIA_TP_PROTO_NONE),
678
+ dir(PJMEDIA_DIR_NONE),
679
+ txPt(0),
680
+ rxPt(0),
681
+ audTxEventPt(0),
682
+ audRxEventPt(0),
683
+ codecClockRate(0),
684
+ jbInit(-1),
685
+ jbMinPre(-1),
686
+ jbMaxPre(-1),
687
+ jbMax(-1),
688
+ jbDiscardAlgo(PJMEDIA_JB_DISCARD_NONE),
689
+ #if defined(PJMEDIA_STREAM_ENABLE_KA) && PJMEDIA_STREAM_ENABLE_KA!=0
690
+ useKa(false),
691
+ #endif
692
+ rtcpSdesByeDisabled(false)
693
+ {}
694
+
695
+ /**
696
+ * Convert from pjsip
697
+ */
698
+ void fromPj(const pjsua_stream_info &info);
699
+ };
700
+
701
+ /**
702
+ * Media stream statistic.
703
+ */
704
+ struct StreamStat
705
+ {
706
+ /**
707
+ * RTCP statistic.
708
+ */
709
+ RtcpStat rtcp;
710
+
711
+ /**
712
+ * Jitter buffer statistic.
713
+ */
714
+ JbufState jbuf;
715
+
716
+ public:
717
+ /**
718
+ * Convert from pjsip
719
+ */
720
+ void fromPj(const pjsua_stream_stat &prm);
721
+ };
722
+
723
+ /**
724
+ * This structure contains parameters for Call::onCallState() callback.
725
+ */
726
+ struct OnCallStateParam
727
+ {
728
+ /**
729
+ * Event which causes the call state to change.
730
+ */
731
+ SipEvent e;
732
+ };
733
+
734
+ /**
735
+ * This structure contains parameters for Call::onCallTsxState() callback.
736
+ */
737
+ struct OnCallTsxStateParam
738
+ {
739
+ /**
740
+ * Transaction event that caused the state change.
741
+ */
742
+ SipEvent e;
743
+ };
744
+
745
+ /**
746
+ * This structure contains parameters for Call::onCallMediaState() callback.
747
+ */
748
+ struct OnCallMediaStateParam
749
+ {
750
+ };
751
+
752
+ /**
753
+ * This structure contains parameters for Call::onCallSdpCreated() callback.
754
+ */
755
+ struct OnCallSdpCreatedParam
756
+ {
757
+ /**
758
+ * The SDP has just been created.
759
+ */
760
+ SdpSession sdp;
761
+
762
+ /**
763
+ * The remote SDP, will be empty if local is SDP offerer.
764
+ */
765
+ SdpSession remSdp;
766
+ };
767
+
768
+ /**
769
+ * This structure contains parameters for Call::onStreamPreCreate()
770
+ * callback.
771
+ */
772
+ struct OnStreamPreCreateParam
773
+ {
774
+ /**
775
+ * Stream index in the media session, read-only.
776
+ */
777
+ unsigned streamIdx;
778
+
779
+ /**
780
+ * Parameters that the stream will be created from.
781
+ */
782
+ StreamInfo streamInfo;
783
+ };
784
+
785
+ /**
786
+ * This structure contains parameters for Call::onStreamCreated()
787
+ * callback.
788
+ */
789
+ struct OnStreamCreatedParam
790
+ {
791
+ /**
792
+ * Audio media stream, read-only.
793
+ */
794
+ MediaStream stream;
795
+
796
+ /**
797
+ * Stream index in the audio media session, read-only.
798
+ */
799
+ unsigned streamIdx;
800
+
801
+ /**
802
+ * Specify if PJSUA2 should take ownership of the port returned in
803
+ * the pPort parameter below. If set to true,
804
+ * pjmedia_port_destroy() will be called on the port when it is
805
+ * no longer needed.
806
+ *
807
+ * Default: false
808
+ */
809
+ bool destroyPort;
810
+
811
+ /**
812
+ * On input, it specifies the audio media port of the stream. Application
813
+ * may modify this pointer to point to different media port to be
814
+ * registered to the conference bridge.
815
+ */
816
+ MediaPort pPort;
817
+ };
818
+
819
+ /**
820
+ * This structure contains parameters for Call::onStreamDestroyed()
821
+ * callback.
822
+ */
823
+ struct OnStreamDestroyedParam
824
+ {
825
+ /**
826
+ * Audio media stream.
827
+ */
828
+ MediaStream stream;
829
+
830
+ /**
831
+ * Stream index in the audio media session.
832
+ */
833
+ unsigned streamIdx;
834
+ };
835
+
836
+ /**
837
+ * This structure contains parameters for Call::onDtmfDigit()
838
+ * callback.
839
+ */
840
+ struct OnDtmfDigitParam
841
+ {
842
+ /**
843
+ * DTMF sending method.
844
+ */
845
+ pjsua_dtmf_method method;
846
+
847
+ /**
848
+ * DTMF ASCII digit.
849
+ */
850
+ string digit;
851
+
852
+ /**
853
+ * DTMF signal duration. If the duration is unknown, this value is set to
854
+ * PJSUA_UNKNOWN_DTMF_DURATION.
855
+ */
856
+ unsigned duration;
857
+ };
858
+
859
+ /**
860
+ * This structure contains parameters for Call::onDtmfEvent()
861
+ * callback.
862
+ */
863
+ struct OnDtmfEventParam
864
+ {
865
+ /**
866
+ * DTMF sending method.
867
+ */
868
+ pjsua_dtmf_method method;
869
+
870
+ /**
871
+ * The timestamp identifying the begin of the event. Timestamp units are
872
+ * expressed in milliseconds.
873
+ * Note that this value should only be used to compare multiple events
874
+ * received via the same method relatively to each other, as the time-base
875
+ * is randomized.
876
+ */
877
+ unsigned timestamp;
878
+
879
+ /**
880
+ * DTMF ASCII digit.
881
+ */
882
+ string digit;
883
+
884
+ /**
885
+ * DTMF signal duration in milliseconds. Interpretation of the duration
886
+ * depends on the flag PJMEDIA_STREAM_DTMF_IS_END.
887
+ * depends on the method.
888
+ * If the method is PJSUA_DTMF_METHOD_SIP_INFO, this contains the total
889
+ * duration of the DTMF signal or PJSUA_UNKNOWN_DTMF_DURATION if no signal
890
+ * duration was indicated.
891
+ * If the method is PJSUA_DTMF_METHOD_RFC2833, this contains the total
892
+ * duration of the DTMF signal received up to this point in time.
893
+ */
894
+ unsigned duration;
895
+
896
+ /**
897
+ * Flags indicating additional information about the DTMF event.
898
+ * If PJMEDIA_STREAM_DTMF_IS_UPDATE is set, the event was already
899
+ * indicated earlier. The new indication contains an updated event
900
+ * duration.
901
+ * If PJMEDIA_STREAM_DTMF_IS_END is set, the event has ended and this
902
+ * indication contains the final event duration. Note that end
903
+ * indications might get lost. Hence it is not guaranteed to receive
904
+ * an event with PJMEDIA_STREAM_DTMF_IS_END for every event.
905
+ */
906
+ unsigned flags;
907
+ };
908
+
909
+ /**
910
+ * This structure contains parameters for Call::onCallTransferRequest()
911
+ * callback.
912
+ */
913
+ struct OnCallTransferRequestParam
914
+ {
915
+ /**
916
+ * The destination where the call will be transferred to.
917
+ */
918
+ string dstUri;
919
+
920
+ /**
921
+ * Status code to be returned for the call transfer request. On input,
922
+ * it contains status code 202.
923
+ */
924
+ pjsip_status_code statusCode;
925
+
926
+ /**
927
+ * The current call setting, application can update this setting
928
+ * for the call being transferred.
929
+ */
930
+ CallSetting opt;
931
+
932
+ /**
933
+ * New Call derived object instantiated by application when the call
934
+ * transfer is about to be accepted.
935
+ */
936
+ Call *newCall;
937
+ };
938
+
939
+ /**
940
+ * This structure contains parameters for Call::onCallTransferStatus()
941
+ * callback.
942
+ */
943
+ struct OnCallTransferStatusParam
944
+ {
945
+ /**
946
+ * Status progress of the transfer request.
947
+ */
948
+ pjsip_status_code statusCode;
949
+
950
+ /**
951
+ * Status progress reason.
952
+ */
953
+ string reason;
954
+
955
+ /**
956
+ * If true, no further notification will be reported. The statusCode
957
+ * specified in this callback is the final status.
958
+ */
959
+ bool finalNotify;
960
+
961
+ /**
962
+ * Initially will be set to true, application can set this to false
963
+ * if it no longer wants to receive further notification (for example,
964
+ * after it hangs up the call).
965
+ */
966
+ bool cont;
967
+ };
968
+
969
+ /**
970
+ * This structure contains parameters for Call::onCallReplaceRequest()
971
+ * callback.
972
+ */
973
+ struct OnCallReplaceRequestParam
974
+ {
975
+ /**
976
+ * The incoming INVITE request to replace the call.
977
+ */
978
+ SipRxData rdata;
979
+
980
+ /**
981
+ * Status code to be set by application. Application should only
982
+ * return a final status (>= PJSIP_SC_OK (200))
983
+ */
984
+ pjsip_status_code statusCode;
985
+
986
+ /**
987
+ * Optional status text to be set by application.
988
+ */
989
+ string reason;
990
+
991
+ /**
992
+ * The current call setting, application can update this setting for
993
+ * the call being replaced.
994
+ */
995
+ CallSetting opt;
996
+
997
+ /**
998
+ * New Call derived object instantiated by application.
999
+ */
1000
+ Call *newCall;
1001
+ };
1002
+
1003
+ /**
1004
+ * This structure contains parameters for Call::onCallReplaced() callback.
1005
+ */
1006
+ struct OnCallReplacedParam
1007
+ {
1008
+ /**
1009
+ * The new call id.
1010
+ */
1011
+ pjsua_call_id newCallId;
1012
+
1013
+ /**
1014
+ * New Call derived object instantiated by application.
1015
+ */
1016
+ Call *newCall;
1017
+ };
1018
+
1019
+ /**
1020
+ * This structure contains parameters for Call::onCallRxOffer() callback.
1021
+ */
1022
+ struct OnCallRxOfferParam
1023
+ {
1024
+ /**
1025
+ * The new offer received.
1026
+ */
1027
+ SdpSession offer;
1028
+
1029
+ /**
1030
+ * Status code to be returned for answering the offer. On input,
1031
+ * it contains status code PJSIP_SC_OK (200). Currently, valid values are only
1032
+ * PJSIP_SC_OK (200) and PJSIP_SC_NOT_ACCEPTABLE_HERE (488).
1033
+ */
1034
+ pjsip_status_code statusCode;
1035
+
1036
+ /**
1037
+ * The current call setting, application can update this setting for
1038
+ * answering the offer.
1039
+ */
1040
+ CallSetting opt;
1041
+ };
1042
+
1043
+ /**
1044
+ * This structure contains parameters for Call::onCallRxReinvite() callback.
1045
+ */
1046
+ struct OnCallRxReinviteParam
1047
+ {
1048
+ /**
1049
+ * The new offer received.
1050
+ */
1051
+ SdpSession offer;
1052
+
1053
+ /**
1054
+ * The incoming re-INVITE.
1055
+ */
1056
+ SipRxData rdata;
1057
+
1058
+ /**
1059
+ * On input, it is false. Set to true if app wants to manually answer
1060
+ * the re-INVITE.
1061
+ */
1062
+ bool isAsync;
1063
+
1064
+ /**
1065
+ * Status code to be returned for answering the offer. On input,
1066
+ * it contains status code PJSIP_SC_OK (200). Currently, valid values are only
1067
+ * PJSIP_SC_OK (200) and PJSIP_SC_NOT_ACCEPTABLE_HERE (488).
1068
+ */
1069
+ pjsip_status_code statusCode;
1070
+
1071
+ /**
1072
+ * The current call setting, application can update this setting for
1073
+ * answering the offer.
1074
+ */
1075
+ CallSetting opt;
1076
+ };
1077
+
1078
+ /**
1079
+ * This structure contains parameters for Call::onCallTxOffer() callback.
1080
+ */
1081
+ struct OnCallTxOfferParam
1082
+ {
1083
+ /**
1084
+ * The current call setting, application can update this setting for
1085
+ * generating the offer. Note that application should maintain any
1086
+ * active media to avoid the need for the peer to reject the offer.
1087
+ */
1088
+ CallSetting opt;
1089
+ };
1090
+
1091
+ /**
1092
+ * This structure contains parameters for Call::onCallRedirected() callback.
1093
+ */
1094
+ struct OnCallRedirectedParam
1095
+ {
1096
+ /**
1097
+ * The current target to be tried.
1098
+ */
1099
+ string targetUri;
1100
+
1101
+ /**
1102
+ * The event that caused this callback to be called.
1103
+ * This could be the receipt of 3xx response, or 4xx/5xx response
1104
+ * received for the INVITE sent to subsequent targets, or empty
1105
+ * (e.type == PJSIP_EVENT_UNKNOWN) if this callback is called from
1106
+ * within Call::processRedirect() context.
1107
+ */
1108
+ SipEvent e;
1109
+ };
1110
+
1111
+ /**
1112
+ * This structure contains parameters for Call::onCallMediaEvent() callback.
1113
+ */
1114
+ struct OnCallMediaEventParam
1115
+ {
1116
+ /**
1117
+ * The media stream index.
1118
+ */
1119
+ unsigned medIdx;
1120
+
1121
+ /**
1122
+ * The media event.
1123
+ */
1124
+ MediaEvent ev;
1125
+ };
1126
+
1127
+ /**
1128
+ * This structure contains parameters for Call::onCallMediaTransportState()
1129
+ * callback.
1130
+ */
1131
+ struct OnCallMediaTransportStateParam
1132
+ {
1133
+ /**
1134
+ * The media index.
1135
+ */
1136
+ unsigned medIdx;
1137
+
1138
+ /**
1139
+ * The media transport state
1140
+ */
1141
+ pjsua_med_tp_st state;
1142
+
1143
+ /**
1144
+ * The last error code related to the media transport state.
1145
+ */
1146
+ pj_status_t status;
1147
+
1148
+ /**
1149
+ * Optional SIP error code.
1150
+ */
1151
+ int sipErrorCode;
1152
+ };
1153
+
1154
+ /**
1155
+ * This structure contains parameters for Call::onCreateMediaTransport()
1156
+ * callback.
1157
+ */
1158
+ struct OnCreateMediaTransportParam
1159
+ {
1160
+ /**
1161
+ * The media index in the SDP for which this media transport will be used.
1162
+ */
1163
+ unsigned mediaIdx;
1164
+
1165
+ /**
1166
+ * The media transport which otherwise will be used by the call has this
1167
+ * callback not been implemented. Application can change this to its own
1168
+ * instance of media transport to be used by the call.
1169
+ */
1170
+ MediaTransport mediaTp;
1171
+
1172
+ /**
1173
+ * Bitmask from pjsua_create_media_transport_flag.
1174
+ */
1175
+ unsigned flags;
1176
+ };
1177
+
1178
+ /**
1179
+ * This structure contains parameters for Call::onCreateMediaTransportSrtp()
1180
+ * callback.
1181
+ */
1182
+ struct OnCreateMediaTransportSrtpParam
1183
+ {
1184
+ /**
1185
+ * The media index in the SDP for which the SRTP media transport
1186
+ * will be used.
1187
+ */
1188
+ unsigned mediaIdx;
1189
+
1190
+ /**
1191
+ * Specify whether secure media transport should be used. Application
1192
+ * can modify this only for initial INVITE.
1193
+ * Valid values are PJMEDIA_SRTP_DISABLED, PJMEDIA_SRTP_OPTIONAL, and
1194
+ * PJMEDIA_SRTP_MANDATORY.
1195
+ */
1196
+ pjmedia_srtp_use srtpUse;
1197
+
1198
+ /**
1199
+ * Application can modify this to specify the cryptos and keys
1200
+ * which are going to be used.
1201
+ */
1202
+ SrtpCryptoVector cryptos;
1203
+ };
1204
+
1205
+ /**
1206
+ * @} // PJSUA2_Call_Data_Structure
1207
+ */
1208
+
1209
+ /**
1210
+ * @addtogroup PJSUA2_CALL
1211
+ * @{
1212
+ */
1213
+
1214
+ /**
1215
+ * This structure contains parameters for Call::answer(), Call::hangup(),
1216
+ * Call::reinvite(), Call::update(), Call::xfer(), Call::xferReplaces(),
1217
+ * Call::setHold().
1218
+ */
1219
+ struct CallOpParam
1220
+ {
1221
+ /**
1222
+ * The call setting.
1223
+ */
1224
+ CallSetting opt;
1225
+
1226
+ /**
1227
+ * Status code.
1228
+ */
1229
+ pjsip_status_code statusCode;
1230
+
1231
+ /**
1232
+ * Reason phrase.
1233
+ */
1234
+ string reason;
1235
+
1236
+ /**
1237
+ * Options.
1238
+ */
1239
+ unsigned options;
1240
+
1241
+ /**
1242
+ * List of headers etc to be added to outgoing response message.
1243
+ * Note that this message data will be persistent in all next
1244
+ * answers/responses for this INVITE request.
1245
+ */
1246
+ SipTxOption txOption;
1247
+
1248
+ /**
1249
+ * SDP answer. Currently only used for Call::answer().
1250
+ */
1251
+ SdpSession sdp;
1252
+
1253
+ public:
1254
+ /**
1255
+ * Default constructor initializes with zero/empty values.
1256
+ * Setting useDefaultCallSetting to true will initialize opt with default
1257
+ * call setting values.
1258
+ */
1259
+ CallOpParam(bool useDefaultCallSetting = false);
1260
+ };
1261
+
1262
+ /**
1263
+ * This structure contains parameters for Call::sendRequest()
1264
+ */
1265
+ struct CallSendRequestParam
1266
+ {
1267
+ /**
1268
+ * SIP method of the request.
1269
+ */
1270
+ string method;
1271
+
1272
+ /**
1273
+ * Message body and/or list of headers etc to be included in
1274
+ * outgoing request.
1275
+ */
1276
+ SipTxOption txOption;
1277
+
1278
+ public:
1279
+ /**
1280
+ * Default constructor initializes with zero/empty values.
1281
+ */
1282
+ CallSendRequestParam();
1283
+ };
1284
+
1285
+ /**
1286
+ * This structure contains parameters for Call::vidSetStream()
1287
+ */
1288
+ struct CallVidSetStreamParam
1289
+ {
1290
+ /**
1291
+ * Specify the media stream index. This can be set to -1 to denote
1292
+ * the default video stream in the call, which is the first active
1293
+ * video stream or any first video stream if none is active.
1294
+ *
1295
+ * This field is valid for all video stream operations, except
1296
+ * PJSUA_CALL_VID_STRM_ADD.
1297
+ *
1298
+ * Default: -1 (first active video stream, or any first video stream
1299
+ * if none is active)
1300
+ */
1301
+ int medIdx;
1302
+
1303
+ /**
1304
+ * Specify the media stream direction.
1305
+ *
1306
+ * This field is valid for the following video stream operations:
1307
+ * PJSUA_CALL_VID_STRM_ADD and PJSUA_CALL_VID_STRM_CHANGE_DIR.
1308
+ *
1309
+ * Default: PJMEDIA_DIR_ENCODING_DECODING
1310
+ */
1311
+ pjmedia_dir dir;
1312
+
1313
+ /**
1314
+ * Specify the video capture device ID. This can be set to
1315
+ * PJMEDIA_VID_DEFAULT_CAPTURE_DEV to specify the default capture
1316
+ * device as configured in the account.
1317
+ *
1318
+ * This field is valid for the following video stream operations:
1319
+ * PJSUA_CALL_VID_STRM_ADD and PJSUA_CALL_VID_STRM_CHANGE_CAP_DEV.
1320
+ *
1321
+ * Default: PJMEDIA_VID_DEFAULT_CAPTURE_DEV.
1322
+ */
1323
+ pjmedia_vid_dev_index capDev;
1324
+
1325
+ public:
1326
+ /**
1327
+ * Default constructor
1328
+ */
1329
+ CallVidSetStreamParam();
1330
+ };
1331
+
1332
+ /**
1333
+ * This structure contains parameters for Call::sendDtmf()
1334
+ */
1335
+ struct CallSendDtmfParam
1336
+ {
1337
+ /**
1338
+ * The method used to send DTMF.
1339
+ *
1340
+ * Default: PJSUA_DTMF_METHOD_RFC2833
1341
+ */
1342
+ pjsua_dtmf_method method;
1343
+
1344
+ /**
1345
+ * The signal duration used for the DTMF.
1346
+ *
1347
+ * Default: PJSUA_CALL_SEND_DTMF_DURATION_DEFAULT
1348
+ */
1349
+ unsigned duration;
1350
+
1351
+ /**
1352
+ * The DTMF digits to be sent.
1353
+ */
1354
+ string digits;
1355
+
1356
+ public:
1357
+ /**
1358
+ * Default constructor initialize with default value.
1359
+ */
1360
+ CallSendDtmfParam();
1361
+
1362
+ /**
1363
+ * Convert to pjsip.
1364
+ */
1365
+ pjsua_call_send_dtmf_param toPj() const;
1366
+
1367
+ /**
1368
+ * Convert from pjsip.
1369
+ */
1370
+ void fromPj(const pjsua_call_send_dtmf_param &param);
1371
+ };
1372
+
1373
+ /**
1374
+ * Call.
1375
+ */
1376
+ class Call
1377
+ {
1378
+ public:
1379
+ /**
1380
+ * Constructor.
1381
+ */
1382
+ Call(Account& acc, int call_id = PJSUA_INVALID_ID);
1383
+
1384
+ /**
1385
+ * Destructor.
1386
+ */
1387
+ virtual ~Call();
1388
+
1389
+ /**
1390
+ * Obtain detail information about this call.
1391
+ *
1392
+ * @return Call info.
1393
+ */
1394
+ CallInfo getInfo() const PJSUA2_THROW(Error);
1395
+
1396
+ /**
1397
+ * Check if this call has active INVITE session and the INVITE
1398
+ * session has not been disconnected.
1399
+ *
1400
+ * @return True if call is active.
1401
+ */
1402
+ bool isActive() const;
1403
+
1404
+ /**
1405
+ * Get PJSUA-LIB call ID or index associated with this call.
1406
+ *
1407
+ * @return Integer greater than or equal to zero.
1408
+ */
1409
+ int getId() const;
1410
+
1411
+ /**
1412
+ * Get the Call class for the specified call Id.
1413
+ *
1414
+ * @param call_id The call ID to lookup
1415
+ *
1416
+ * @return The Call instance or NULL if not found.
1417
+ */
1418
+ static Call *lookup(int call_id);
1419
+
1420
+ /**
1421
+ * Check if call has an active media session.
1422
+ *
1423
+ * @return True if yes.
1424
+ */
1425
+ bool hasMedia() const;
1426
+
1427
+ /**
1428
+ * Warning: deprecated, use getAudioMedia() instead. This function is not
1429
+ * safe in multithreaded environment.
1430
+ *
1431
+ * Get media for the specified media index.
1432
+ *
1433
+ * @param med_idx Media index.
1434
+ *
1435
+ * @return The media or NULL if invalid or inactive.
1436
+ */
1437
+ Media *getMedia(unsigned med_idx) const;
1438
+
1439
+ /**
1440
+ * Get audio media for the specified media index. If the specified media
1441
+ * index is not audio or invalid or inactive, exception will be thrown.
1442
+ *
1443
+ * @param med_idx Media index, or -1 to specify any first audio
1444
+ * media registered in the conference bridge.
1445
+ *
1446
+ * @return The audio media.
1447
+ */
1448
+ AudioMedia getAudioMedia(int med_idx) const PJSUA2_THROW(Error);
1449
+
1450
+ /**
1451
+ * Get video media in encoding direction for the specified media index.
1452
+ * If the specified media index is not video or invalid or the direction
1453
+ * is receive only, exception will be thrown.
1454
+ *
1455
+ * @param med_idx Media index, or -1 to specify any first video
1456
+ * media with encoding direction registered in the
1457
+ * conference bridge.
1458
+ *
1459
+ * @return The video media.
1460
+ */
1461
+ VideoMedia getEncodingVideoMedia(int med_idx) const PJSUA2_THROW(Error);
1462
+
1463
+ /**
1464
+ * Get video media in decoding direction for the specified media index.
1465
+ * If the specified media index is not video or invalid or the direction
1466
+ * is send only, exception will be thrown.
1467
+ *
1468
+ * @param med_idx Media index, or -1 to specify any first video
1469
+ * media with decoding direction registered in the
1470
+ * conference bridge.
1471
+ *
1472
+ * @return The video media.
1473
+ */
1474
+ VideoMedia getDecodingVideoMedia(int med_idx) const PJSUA2_THROW(Error);
1475
+
1476
+ /**
1477
+ * Check if remote peer support the specified capability.
1478
+ *
1479
+ * @param htype The header type (pjsip_hdr_e) to be checked, which
1480
+ * value may be:
1481
+ * - PJSIP_H_ACCEPT
1482
+ * - PJSIP_H_ALLOW
1483
+ * - PJSIP_H_SUPPORTED
1484
+ * @param hname If htype specifies PJSIP_H_OTHER, then the header
1485
+ * name must be supplied in this argument. Otherwise
1486
+ * the value must be set to empty string ("").
1487
+ * @param token The capability token to check. For example, if \a
1488
+ * htype is PJSIP_H_ALLOW, then \a token specifies the
1489
+ * method names; if \a htype is PJSIP_H_SUPPORTED, then
1490
+ * \a token specifies the extension names such as
1491
+ * "100rel".
1492
+ *
1493
+ * @return PJSIP_DIALOG_CAP_SUPPORTED if the specified
1494
+ * capability is explicitly supported, see
1495
+ * pjsip_dialog_cap_status for more info.
1496
+ */
1497
+ pjsip_dialog_cap_status remoteHasCap(int htype,
1498
+ const string &hname,
1499
+ const string &token) const;
1500
+
1501
+ /**
1502
+ * Attach application specific data to the call. Application can then
1503
+ * inspect this data by calling getUserData().
1504
+ *
1505
+ * @param user_data Arbitrary data to be attached to the call.
1506
+ */
1507
+ void setUserData(Token user_data);
1508
+
1509
+ /**
1510
+ * Get user data attached to the call, which has been previously set with
1511
+ * setUserData().
1512
+ *
1513
+ * @return The user data.
1514
+ */
1515
+ Token getUserData() const;
1516
+
1517
+ /**
1518
+ * Get the NAT type of remote's endpoint. This is a proprietary feature
1519
+ * of PJSUA-LIB which sends its NAT type in the SDP when \a natTypeInSdp
1520
+ * is set in UaConfig.
1521
+ *
1522
+ * This function can only be called after SDP has been received from remote,
1523
+ * which means for incoming call, this function can be called as soon as
1524
+ * call is received as long as incoming call contains SDP, and for outgoing
1525
+ * call, this function can be called only after SDP is received (normally in
1526
+ * PJSIP_SC_OK (200) response to INVITE). As a general case, application
1527
+ * should call this function after or in \a onCallMediaState() callback.
1528
+ *
1529
+ * @return The NAT type.
1530
+ *
1531
+ * @see Endpoint::natGetType(), natTypeInSdp
1532
+ */
1533
+ pj_stun_nat_type getRemNatType() PJSUA2_THROW(Error);
1534
+
1535
+ /**
1536
+ * Make outgoing call to the specified URI.
1537
+ *
1538
+ * @param dst_uri URI to be put in the To header (normally is the same
1539
+ * as the target URI).
1540
+ * @param prm.opt Optional call setting.
1541
+ * @param prm.txOption Optional headers etc to be added to outgoing INVITE
1542
+ * request.
1543
+ */
1544
+ void makeCall(const string &dst_uri, const CallOpParam &prm)
1545
+ PJSUA2_THROW(Error);
1546
+
1547
+ /**
1548
+ * Send response to incoming INVITE request with call setting param.
1549
+ * Depending on the status code specified as parameter, this function may
1550
+ * send provisional response, establish the call, or terminate the call.
1551
+ * Notes about call setting:
1552
+ * - if call setting is changed in the subsequent call to this function,
1553
+ * only the first call setting supplied will applied. So normally
1554
+ * application will not supply call setting before getting confirmation
1555
+ * from the user.
1556
+ * - if no call setting is supplied when SDP has to be sent, i.e: answer
1557
+ * with status code 183 or 2xx, the default call setting will be used,
1558
+ * check CallSetting for its default values.
1559
+ *
1560
+ * @param prm.opt Optional call setting.
1561
+ * @param prm.statusCode Status code, (>= PJSIP_SC_TRYING (100)).
1562
+ * @param prm.reason Optional reason phrase. If empty, default text
1563
+ * will be used.
1564
+ * @param prm.txOption Optional list of headers etc to be added to outgoing
1565
+ * response message. Note that this message data will
1566
+ * be persistent in all next answers/responses for this
1567
+ * INVITE request.
1568
+ */
1569
+ void answer(const CallOpParam &prm) PJSUA2_THROW(Error);
1570
+
1571
+ /**
1572
+ * Hangup call by using method that is appropriate according to the
1573
+ * call state. This function is different than answering the call with
1574
+ * 3xx-6xx response (with answer()), in that this function
1575
+ * will hangup the call regardless of the state and role of the call,
1576
+ * while answer() only works with incoming calls on EARLY
1577
+ * state.
1578
+ *
1579
+ * @param prm.statusCode
1580
+ * Optional status code to be sent when we're rejecting
1581
+ * incoming call. If the value is zero, "603/Decline"
1582
+ * will be sent.
1583
+ * @param prm.reason Optional reason phrase to be sent when we're
1584
+ * rejecting incoming call. If empty, default text
1585
+ * will be used.
1586
+ * @param prm.txOption Optional list of headers etc to be added to outgoing
1587
+ * request/response message.
1588
+ */
1589
+ void hangup(const CallOpParam &prm) PJSUA2_THROW(Error);
1590
+
1591
+ /**
1592
+ * Put the specified call on hold. This will send re-INVITE with the
1593
+ * appropriate SDP to inform remote that the call is being put on hold.
1594
+ * The final status of the request itself will be reported on the
1595
+ * \a onCallMediaState() callback, which inform the application that
1596
+ * the media state of the call has changed.
1597
+ *
1598
+ * @param prm.options Bitmask of pjsua_call_flag constants. Currently,
1599
+ * only the flag PJSUA_CALL_UPDATE_CONTACT can be used.
1600
+ * @param prm.txOption Optional message components to be sent with
1601
+ * the request.
1602
+ */
1603
+ void setHold(const CallOpParam &prm) PJSUA2_THROW(Error);
1604
+
1605
+ /**
1606
+ * Send re-INVITE.
1607
+ * The final status of the request itself will be reported on the
1608
+ * \a onCallMediaState() callback, which inform the application that
1609
+ * the media state of the call has changed.
1610
+ *
1611
+ * @param prm.opt Optional call setting, if empty, the current call
1612
+ * setting will remain unchanged.
1613
+ * @param prm.opt.flag Bitmask of pjsua_call_flag constants. Specifying
1614
+ * PJSUA_CALL_UNHOLD here will release call hold.
1615
+ * @param prm.txOption Optional message components to be sent with
1616
+ * the request.
1617
+ */
1618
+ void reinvite(const CallOpParam &prm) PJSUA2_THROW(Error);
1619
+
1620
+ /**
1621
+ * Send UPDATE request.
1622
+ *
1623
+ * @param prm.opt Optional call setting, if empty, the current call
1624
+ * setting will remain unchanged.
1625
+ * @param prm.txOption Optional message components to be sent with
1626
+ * the request.
1627
+ */
1628
+ void update(const CallOpParam &prm) PJSUA2_THROW(Error);
1629
+
1630
+ /**
1631
+ * Initiate call transfer to the specified address. This function will send
1632
+ * REFER request to instruct remote call party to initiate a new INVITE
1633
+ * session to the specified destination/target.
1634
+ *
1635
+ * If application is interested to monitor the successfulness and
1636
+ * the progress of the transfer request, it can implement
1637
+ * \a onCallTransferStatus() callback which will report the progress
1638
+ * of the call transfer request.
1639
+ *
1640
+ * @param dest URI of new target to be contacted. The URI may be
1641
+ * in name address or addr-spec format.
1642
+ * @param prm.txOption Optional message components to be sent with
1643
+ * the request.
1644
+ */
1645
+ void xfer(const string &dest, const CallOpParam &prm) PJSUA2_THROW(Error);
1646
+
1647
+ /**
1648
+ * Initiate attended call transfer. This function will send REFER request
1649
+ * to instruct remote call party to initiate new INVITE session to the URL
1650
+ * of \a destCall. The party at \a dest_call then should "replace"
1651
+ * the call with us with the new call from the REFER recipient.
1652
+ *
1653
+ * @param dest_call The call to be replaced.
1654
+ * @param prm.options Application may specify
1655
+ * PJSUA_XFER_NO_REQUIRE_REPLACES to suppress the
1656
+ * inclusion of "Require: replaces" in
1657
+ * the outgoing INVITE request created by the REFER
1658
+ * request.
1659
+ * @param prm.txOption Optional message components to be sent with
1660
+ * the request.
1661
+ */
1662
+ void xferReplaces(const Call& dest_call,
1663
+ const CallOpParam &prm) PJSUA2_THROW(Error);
1664
+
1665
+ /**
1666
+ * Accept or reject redirection response. Application MUST call this
1667
+ * function after it signaled PJSIP_REDIRECT_PENDING in the
1668
+ * \a onCallRedirected() callback,
1669
+ * to notify the call whether to accept or reject the redirection
1670
+ * to the current target. Application can use the combination of
1671
+ * PJSIP_REDIRECT_PENDING command in \a onCallRedirected() callback and
1672
+ * this function to ask for user permission before redirecting the call.
1673
+ *
1674
+ * Note that if the application chooses to reject or stop redirection (by
1675
+ * using PJSIP_REDIRECT_REJECT or PJSIP_REDIRECT_STOP respectively), the
1676
+ * call disconnection callback will be called before this function returns.
1677
+ * And if the application rejects the target, the \a onCallRedirected()
1678
+ * callback may also be called before this function returns if there is
1679
+ * another target to try.
1680
+ *
1681
+ * @param cmd Redirection operation to be applied to the current
1682
+ * target. The semantic of this argument is similar
1683
+ * to the description in the \a onCallRedirected()
1684
+ * callback, except that the PJSIP_REDIRECT_PENDING is
1685
+ * not accepted here.
1686
+ */
1687
+ void processRedirect(pjsip_redirect_op cmd) PJSUA2_THROW(Error);
1688
+
1689
+ /**
1690
+ * Send DTMF digits to remote using RFC 2833 payload formats.
1691
+ *
1692
+ * @param digits DTMF string digits to be sent.
1693
+ */
1694
+ void dialDtmf(const string &digits) PJSUA2_THROW(Error);
1695
+
1696
+ /**
1697
+ * Send DTMF digits to remote.
1698
+ *
1699
+ * @param param The send DTMF parameter.
1700
+ */
1701
+ void sendDtmf(const CallSendDtmfParam &param) PJSUA2_THROW(Error);
1702
+
1703
+ /**
1704
+ * Send instant messaging inside INVITE session.
1705
+ *
1706
+ * @param prm.contentType
1707
+ * MIME type.
1708
+ * @param prm.content The message content.
1709
+ * @param prm.txOption Optional list of headers etc to be included in
1710
+ * outgoing request. The body descriptor in the
1711
+ * txOption is ignored.
1712
+ * @param prm.userData Optional user data, which will be given back when
1713
+ * the IM callback is called.
1714
+ */
1715
+ void sendInstantMessage(const SendInstantMessageParam& prm)
1716
+ PJSUA2_THROW(Error);
1717
+
1718
+ /**
1719
+ * Send IM typing indication inside INVITE session.
1720
+ *
1721
+ * @param prm.isTyping True to indicate to remote that local person is
1722
+ * currently typing an IM.
1723
+ * @param prm.txOption Optional list of headers etc to be included in
1724
+ * outgoing request.
1725
+ */
1726
+ void sendTypingIndication(const SendTypingIndicationParam &prm)
1727
+ PJSUA2_THROW(Error);
1728
+
1729
+ /**
1730
+ * Send arbitrary request with the call. This is useful for example to send
1731
+ * INFO request. Note that application should not use this function to send
1732
+ * requests which would change the invite session's state, such as
1733
+ * re-INVITE, UPDATE, PRACK, and BYE.
1734
+ *
1735
+ * @param prm.method SIP method of the request.
1736
+ * @param prm.txOption Optional message body and/or list of headers to be
1737
+ * included in outgoing request.
1738
+ */
1739
+ void sendRequest(const CallSendRequestParam &prm) PJSUA2_THROW(Error);
1740
+
1741
+ /**
1742
+ * Dump call and media statistics to string.
1743
+ *
1744
+ * @param with_media True to include media information too.
1745
+ * @param indent Spaces for left indentation.
1746
+ *
1747
+ * @return Call dump and media statistics string.
1748
+ */
1749
+ string dump(bool with_media, const string indent) PJSUA2_THROW(Error);
1750
+
1751
+ /**
1752
+ * Get the media stream index of the default video stream in the call.
1753
+ * Typically this will just retrieve the stream index of the first
1754
+ * activated video stream in the call. If none is active, it will return
1755
+ * the first inactive video stream.
1756
+ *
1757
+ * @return The media stream index or -1 if no video stream
1758
+ * is present in the call.
1759
+ */
1760
+ int vidGetStreamIdx() const;
1761
+
1762
+ /**
1763
+ * Determine if video stream for the specified call is currently running
1764
+ * (i.e. has been created, started, and not being paused) for the specified
1765
+ * direction.
1766
+ *
1767
+ * @param med_idx Media stream index, or -1 to specify default video
1768
+ * media.
1769
+ * @param dir The direction to be checked.
1770
+ *
1771
+ * @return True if stream is currently running for the
1772
+ * specified direction.
1773
+ */
1774
+ bool vidStreamIsRunning(int med_idx, pjmedia_dir dir) const;
1775
+
1776
+ /**
1777
+ * Add, remove, modify, and/or manipulate video media stream for the
1778
+ * specified call. This may trigger a re-INVITE or UPDATE to be sent
1779
+ * for the call.
1780
+ *
1781
+ * @param op The video stream operation to be performed,
1782
+ * possible values are pjsua_call_vid_strm_op.
1783
+ * @param param The parameters for the video stream operation
1784
+ * (see CallVidSetStreamParam).
1785
+ */
1786
+ void vidSetStream(pjsua_call_vid_strm_op op,
1787
+ const CallVidSetStreamParam &param) PJSUA2_THROW(Error);
1788
+
1789
+ /**
1790
+ * Modify the video stream's codec parameter after the codec is opened.
1791
+ * Note that not all codec backends support modifying parameters during
1792
+ * runtime and only certain parameters can be changed.
1793
+ *
1794
+ * Currently, only Video Toolbox and OpenH264 backends support runtime
1795
+ * adjustment of encoding bitrate (avg_bps and max_bps).
1796
+ *
1797
+ * @param med_idx Video stream index.
1798
+ * @param param The new codec parameter.
1799
+ *
1800
+ * @return PJ_SUCCESS on success.
1801
+ */
1802
+ void vidStreamModifyCodecParam(int med_idx, const VidCodecParam &param)
1803
+ PJSUA2_THROW(Error);
1804
+
1805
+ /**
1806
+ * Modify the audio stream's codec parameter after the codec is opened.
1807
+ * Note that not all codec parameters can be modified during run-time.
1808
+ * Currently, only Opus codec supports changing key codec parameters
1809
+ * such as bitrate and bandwidth, while other codecs may only be able to
1810
+ * modify minor settings such as VAD or PLC.
1811
+ *
1812
+ * @param med_idx Media stream index, or -1 to specify default audio
1813
+ * media.
1814
+ * @param param The new codec parameter.
1815
+ *
1816
+ * @return PJ_SUCCESS on success.
1817
+ */
1818
+ void audStreamModifyCodecParam(int med_idx, const CodecParam &param)
1819
+ PJSUA2_THROW(Error);
1820
+
1821
+ /**
1822
+ * Get media stream info for the specified media index.
1823
+ *
1824
+ * @param med_idx Media stream index.
1825
+ *
1826
+ * @return The stream info.
1827
+ */
1828
+ StreamInfo getStreamInfo(unsigned med_idx) const PJSUA2_THROW(Error);
1829
+
1830
+ /**
1831
+ * Get media stream statistic for the specified media index.
1832
+ *
1833
+ * @param med_idx Media stream index.
1834
+ *
1835
+ * @return The stream statistic.
1836
+ */
1837
+ StreamStat getStreamStat(unsigned med_idx) const PJSUA2_THROW(Error);
1838
+
1839
+ /**
1840
+ * Get media transport info for the specified media index.
1841
+ *
1842
+ * @param med_idx Media stream index.
1843
+ *
1844
+ * @return The transport info.
1845
+ */
1846
+ MediaTransportInfo getMedTransportInfo(unsigned med_idx) const
1847
+ PJSUA2_THROW(Error);
1848
+
1849
+ /**
1850
+ * Internal function (callled by Endpoint( to process update to call
1851
+ * medias when call media state changes.
1852
+ */
1853
+ void processMediaUpdate(OnCallMediaStateParam &prm);
1854
+
1855
+ /**
1856
+ * Internal function (called by Endpoint) to process call state change.
1857
+ */
1858
+ void processStateChange(OnCallStateParam &prm);
1859
+
1860
+ public:
1861
+ /*
1862
+ * Callbacks
1863
+ */
1864
+ /**
1865
+ * Notify application when call state has changed.
1866
+ * Application may then query the call info to get the
1867
+ * detail call states by calling getInfo() function.
1868
+ *
1869
+ * @param prm Callback parameter.
1870
+ */
1871
+ virtual void onCallState(OnCallStateParam &prm)
1872
+ { PJ_UNUSED_ARG(prm); }
1873
+
1874
+ /**
1875
+ * This is a general notification callback which is called whenever
1876
+ * a transaction within the call has changed state. Application can
1877
+ * implement this callback for example to monitor the state of
1878
+ * outgoing requests, or to answer unhandled incoming requests
1879
+ * (such as INFO) with a final response.
1880
+ *
1881
+ * @param prm Callback parameter.
1882
+ */
1883
+ virtual void onCallTsxState(OnCallTsxStateParam &prm)
1884
+ { PJ_UNUSED_ARG(prm); }
1885
+
1886
+ /**
1887
+ * Notify application when media state in the call has changed.
1888
+ * Normal application would need to implement this callback, e.g.
1889
+ * to connect the call's media to sound device. When ICE is used,
1890
+ * this callback will also be called to report ICE negotiation
1891
+ * failure.
1892
+ *
1893
+ * @param prm Callback parameter.
1894
+ */
1895
+ virtual void onCallMediaState(OnCallMediaStateParam &prm)
1896
+ { PJ_UNUSED_ARG(prm); }
1897
+
1898
+ /**
1899
+ * Notify application when a call has just created a local SDP (for
1900
+ * initial or subsequent SDP offer/answer). Application can implement
1901
+ * this callback to modify the SDP, before it is being sent and/or
1902
+ * negotiated with remote SDP, for example to apply per account/call
1903
+ * basis codecs priority or to add custom/proprietary SDP attributes.
1904
+ *
1905
+ * @param prm Callback parameter.
1906
+ */
1907
+ virtual void onCallSdpCreated(OnCallSdpCreatedParam &prm)
1908
+ { PJ_UNUSED_ARG(prm); }
1909
+
1910
+ /**
1911
+ * Notify application when an audio media session is about to be created
1912
+ * (as opposed to onStreamCreated(), which is called *after* the session
1913
+ * has been created). The application may change
1914
+ * some stream info parameter values, i.e: jbInit, jbMinPre, jbMaxPre,
1915
+ * jbMax, useKa, rtcpSdesByeDisabled, jbDiscardAlgo (audio),
1916
+ * vidCodecParam.encFmt (video).
1917
+ *
1918
+ * @param prm Callback parameter.
1919
+ */
1920
+ virtual void onStreamPreCreate(OnStreamPreCreateParam &prm)
1921
+ { PJ_UNUSED_ARG(prm); }
1922
+
1923
+ /**
1924
+ * Notify application when audio media session is created and before it is
1925
+ * registered to the conference bridge. Application may return different
1926
+ * audio media port if it has added media processing port to the stream.
1927
+ * This media port then will be added to the conference bridge instead.
1928
+ *
1929
+ * @param prm Callback parameter.
1930
+ */
1931
+ virtual void onStreamCreated(OnStreamCreatedParam &prm)
1932
+ { PJ_UNUSED_ARG(prm); }
1933
+
1934
+ /**
1935
+ * Notify application when audio media session has been unregistered from
1936
+ * the conference bridge and about to be destroyed.
1937
+ *
1938
+ * @param prm Callback parameter.
1939
+ */
1940
+ virtual void onStreamDestroyed(OnStreamDestroyedParam &prm)
1941
+ { PJ_UNUSED_ARG(prm); }
1942
+
1943
+ /**
1944
+ * Notify application upon incoming DTMF digits.
1945
+ *
1946
+ * @param prm Callback parameter.
1947
+ */
1948
+ virtual void onDtmfDigit(OnDtmfDigitParam &prm)
1949
+ { PJ_UNUSED_ARG(prm); }
1950
+
1951
+ /**
1952
+ * Notify application upon incoming DTMF events.
1953
+ *
1954
+ * @param prm Callback parameter.
1955
+ */
1956
+ virtual void onDtmfEvent(OnDtmfEventParam &prm)
1957
+ { PJ_UNUSED_ARG(prm); }
1958
+
1959
+ /**
1960
+ * Notify application on call being transferred (i.e. REFER is received).
1961
+ * Application can decide to accept/reject transfer request by setting
1962
+ * the code (default is 202). When this callback is not implemented,
1963
+ * the default behavior is to accept the transfer.
1964
+ *
1965
+ * If application decides to accept the transfer request, it must also
1966
+ * instantiate the new Call object for the transfer operation and return
1967
+ * this new Call object to prm.newCall. For the new Call instance,
1968
+ * the account should use the same account as this call and the call ID
1969
+ * must be set to PJSUA_INVALID_ID.
1970
+ *
1971
+ * If application does not specify new Call object, library will reuse the
1972
+ * existing Call object for initiating the new call (to the transfer
1973
+ * destination). In this case, any events from both calls (transferred and
1974
+ * transferring) will be delivered to the same Call object, where the call
1975
+ * ID will be switched back and forth between callbacks. Application must
1976
+ * be careful to not destroy the Call object when receiving disconnection
1977
+ * event of the transferred call after the transfer process is completed.
1978
+ *
1979
+ * @param prm Callback parameter.
1980
+ */
1981
+ virtual void onCallTransferRequest(OnCallTransferRequestParam &prm)
1982
+ { PJ_UNUSED_ARG(prm); }
1983
+
1984
+ /**
1985
+ * Notify application of the status of previously sent call
1986
+ * transfer request. Application can monitor the status of the
1987
+ * call transfer request, for example to decide whether to
1988
+ * terminate existing call.
1989
+ *
1990
+ * @param prm Callback parameter.
1991
+ */
1992
+ virtual void onCallTransferStatus(OnCallTransferStatusParam &prm)
1993
+ { PJ_UNUSED_ARG(prm); }
1994
+
1995
+ /**
1996
+ * Notify application about incoming INVITE with Replaces header.
1997
+ * Application may reject the request by setting non-2xx code.
1998
+ *
1999
+ * In this callback, application should create a new Call instance and
2000
+ * return the Call object via prm.newCall. In creating the new Call
2001
+ * instance, the account should use the same account as this call and
2002
+ * the call ID must be set to PJSUA_INVALID_ID.
2003
+ *
2004
+ * If application does not specify new Call object, library will reuse the
2005
+ * existing Call object for callbacks. In this case, any events from
2006
+ * both calls (replaced and new) will be delivered to the same Call object,
2007
+ * where the call ID will be switched back and forth between callbacks.
2008
+ * Application must be careful to not destroy the Call object when
2009
+ * receiving disconnection event of the replaced call after the transfer
2010
+ * process is completed.
2011
+ *
2012
+ * @param prm Callback parameter.
2013
+ */
2014
+ virtual void onCallReplaceRequest(OnCallReplaceRequestParam &prm)
2015
+ { PJ_UNUSED_ARG(prm); }
2016
+
2017
+ /**
2018
+ * Notify application that an existing call has been replaced with
2019
+ * a new call. This happens when PJSUA-API receives incoming INVITE
2020
+ * request with Replaces header.
2021
+ *
2022
+ * After this callback is called, normally PJSUA-API will disconnect
2023
+ * this call and establish a new call.
2024
+ *
2025
+ * If not yet done in onCallReplaceRequest(), application can create
2026
+ * the new Call instance and return the Call object via prm.newCall.
2027
+ * In creating the new Call instance, the account should use the same
2028
+ * account as this call and the call ID must be set to prm.newCallId.
2029
+ *
2030
+ * If the new Call instance has been setup in onCallReplaceRequest(),
2031
+ * the prm.newCall should contain the new Call instance and application
2032
+ * MUST not change it.
2033
+ *
2034
+ * If application does not specify new Call object, library will reuse the
2035
+ * existing Call object for callbacks. In this case, any events from
2036
+ * both calls (replaced and new) will be delivered to the same Call object,
2037
+ * where the call ID will be switched back and forth between callbacks.
2038
+ * Application must be careful to not destroy the Call object when
2039
+ * receiving disconnection event of the replaced call after the transfer
2040
+ * process is completed.
2041
+ *
2042
+ * @param prm Callback parameter.
2043
+ */
2044
+ virtual void onCallReplaced(OnCallReplacedParam &prm)
2045
+ { PJ_UNUSED_ARG(prm); }
2046
+
2047
+ /**
2048
+ * Notify application when call has received new offer from remote
2049
+ * (i.e. re-INVITE/UPDATE with SDP is received). Application can
2050
+ * decide to accept/reject the offer by setting the code (default
2051
+ * is PJSIP_SC_OK (200)). If the offer is accepted, application can update
2052
+ * the call setting to be applied in the answer. When this callback is
2053
+ * not implemented, the default behavior is to accept the offer using
2054
+ * current call setting.
2055
+ *
2056
+ * @param prm Callback parameter.
2057
+ */
2058
+ virtual void onCallRxOffer(OnCallRxOfferParam &prm)
2059
+ { PJ_UNUSED_ARG(prm); }
2060
+
2061
+ /**
2062
+ * Notify application when call has received a re-INVITE offer from
2063
+ * the peer. It allows more fine-grained control over the response to
2064
+ * a re-INVITE. If application sets prm.isAsync to true, it can send
2065
+ * the reply manually using the function #pj::Call::answer() and setting
2066
+ * the SDP answer. Otherwise, by default the re-INVITE will be
2067
+ * answered automatically after the callback returns.
2068
+ *
2069
+ * Currently, this callback is only called for re-INVITE with
2070
+ * SDP, but app should be prepared to handle the case of re-INVITE
2071
+ * without SDP.
2072
+ *
2073
+ * Remarks: If manually answering at a later timing, application may
2074
+ * need to monitor onCallTsxState() callback to check whether
2075
+ * the re-INVITE is already answered automatically with
2076
+ * PJSIP_SC_REQUEST_TERMINATED (487) due to being cancelled.
2077
+ *
2078
+ * Note: onCallRxOffer() will still be called after this callback,
2079
+ * but only if prm.isAsync is false and prm.statusCode is PJSIP_SC_OK
2080
+ * (200).
2081
+ *
2082
+ * @param prm Callback parameter.
2083
+ */
2084
+ virtual void onCallRxReinvite(OnCallRxReinviteParam &prm)
2085
+ { PJ_UNUSED_ARG(prm); }
2086
+
2087
+
2088
+ /**
2089
+ * Notify application when call has received INVITE with no SDP offer.
2090
+ * Application can update the call setting (e.g: add audio/video), or
2091
+ * enable/disable codecs, or update other media session settings from
2092
+ * within the callback, however, as mandated by the standard (RFC3261
2093
+ * section 14.2), it must ensure that the update overlaps with the
2094
+ * existing media session (in codecs, transports, or other parameters)
2095
+ * that require support from the peer, this is to avoid the need for
2096
+ * the peer to reject the offer.
2097
+ *
2098
+ * When this callback is not implemented, the default behavior is to send
2099
+ * SDP offer using current active media session (with all enabled codecs
2100
+ * on each media type).
2101
+ *
2102
+ * @param prm Callback parameter.
2103
+ */
2104
+ virtual void onCallTxOffer(OnCallTxOfferParam &prm)
2105
+ { PJ_UNUSED_ARG(prm); }
2106
+
2107
+ /**
2108
+ * Notify application on incoming MESSAGE request.
2109
+ *
2110
+ * @param prm Callback parameter.
2111
+ */
2112
+ virtual void onInstantMessage(OnInstantMessageParam &prm)
2113
+ { PJ_UNUSED_ARG(prm); }
2114
+
2115
+ /**
2116
+ * Notify application about the delivery status of outgoing MESSAGE
2117
+ * request.
2118
+ *
2119
+ * @param prm Callback parameter.
2120
+ */
2121
+ virtual void onInstantMessageStatus(OnInstantMessageStatusParam &prm)
2122
+ { PJ_UNUSED_ARG(prm); }
2123
+
2124
+ /**
2125
+ * Notify application about typing indication.
2126
+ *
2127
+ * @param prm Callback parameter.
2128
+ */
2129
+ virtual void onTypingIndication(OnTypingIndicationParam &prm)
2130
+ { PJ_UNUSED_ARG(prm); }
2131
+
2132
+ /**
2133
+ * This callback is called when the call is about to resend the
2134
+ * INVITE request to the specified target, following the previously
2135
+ * received redirection response.
2136
+ *
2137
+ * Application may accept the redirection to the specified target,
2138
+ * reject this target only and make the session continue to try the next
2139
+ * target in the list if such target exists, stop the whole
2140
+ * redirection process altogether and cause the session to be
2141
+ * disconnected, or defer the decision to ask for user confirmation.
2142
+ *
2143
+ * This callback is optional,
2144
+ * the default behavior is to NOT follow the redirection response.
2145
+ *
2146
+ * @param prm Callback parameter.
2147
+ *
2148
+ * @return Action to be performed for the target. Set this
2149
+ * parameter to one of the value below:
2150
+ * - PJSIP_REDIRECT_ACCEPT: immediately accept the
2151
+ * redirection. When set, the call will immediately
2152
+ * resend INVITE request to the target.
2153
+ * - PJSIP_REDIRECT_ACCEPT_REPLACE: immediately accept
2154
+ * the redirection and replace the To header with the
2155
+ * current target. When set, the call will immediately
2156
+ * resend INVITE request to the target.
2157
+ * - PJSIP_REDIRECT_REJECT: immediately reject this
2158
+ * target. The call will continue retrying with
2159
+ * next target if present, or disconnect the call
2160
+ * if there is no more target to try.
2161
+ * - PJSIP_REDIRECT_STOP: stop the whole redirection
2162
+ * process and immediately disconnect the call. The
2163
+ * onCallState() callback will be called with
2164
+ * PJSIP_INV_STATE_DISCONNECTED state immediately
2165
+ * after this callback returns.
2166
+ * - PJSIP_REDIRECT_PENDING: set to this value if
2167
+ * no decision can be made immediately (for example
2168
+ * to request confirmation from user). Application
2169
+ * then MUST call processRedirect()
2170
+ * to either accept or reject the redirection upon
2171
+ * getting user decision.
2172
+ */
2173
+ virtual pjsip_redirect_op onCallRedirected(OnCallRedirectedParam &prm)
2174
+ {
2175
+ PJ_UNUSED_ARG(prm);
2176
+ return PJSIP_REDIRECT_STOP;
2177
+ }
2178
+
2179
+ /**
2180
+ * This callback is called when media transport state is changed.
2181
+ *
2182
+ * @param prm Callback parameter.
2183
+ */
2184
+ virtual void onCallMediaTransportState(OnCallMediaTransportStateParam &prm)
2185
+ { PJ_UNUSED_ARG(prm); }
2186
+
2187
+ /**
2188
+ * Notification about media events such as video notifications. This
2189
+ * callback will most likely be called from media threads, thus
2190
+ * application must not perform heavy processing in this callback.
2191
+ * Especially, application must not destroy the call or media in this
2192
+ * callback. If application needs to perform more complex tasks to
2193
+ * handle the event, it should post the task to another thread.
2194
+ *
2195
+ * @param prm Callback parameter.
2196
+ */
2197
+ virtual void onCallMediaEvent(OnCallMediaEventParam &prm)
2198
+ { PJ_UNUSED_ARG(prm); }
2199
+
2200
+ /**
2201
+ * This callback can be used by application to implement custom media
2202
+ * transport adapter for the call, or to replace the media transport
2203
+ * with something completely new altogether.
2204
+ *
2205
+ * This callback is called when a new call is created. The library has
2206
+ * created a media transport for the call, and it is provided as the
2207
+ * \a mediaTp argument of this callback. The callback may change it
2208
+ * with the instance of media transport to be used by the call.
2209
+ *
2210
+ * @param prm Callback parameter.
2211
+ */
2212
+ virtual void
2213
+ onCreateMediaTransport(OnCreateMediaTransportParam &prm)
2214
+ { PJ_UNUSED_ARG(prm); }
2215
+
2216
+ /**
2217
+ * Warning: deprecated and may be removed in future release.
2218
+ * Application can set SRTP crypto settings (including keys) and
2219
+ * keying methods via AccountConfig.mediaConfig.srtpOpt.
2220
+ * See also ticket #2100.
2221
+ *
2222
+ * This callback is called when SRTP media transport is created.
2223
+ * Application can modify the SRTP setting \a srtpOpt to specify
2224
+ * the cryptos and keys which are going to be used. Note that
2225
+ * application should not modify the field
2226
+ * \a pjmedia_srtp_setting.close_member_tp and can only modify
2227
+ * the field \a pjmedia_srtp_setting.use for initial INVITE.
2228
+ *
2229
+ * @param prm Callback parameter.
2230
+ */
2231
+ virtual void
2232
+ onCreateMediaTransportSrtp(OnCreateMediaTransportSrtpParam &prm)
2233
+ { PJ_UNUSED_ARG(prm); }
2234
+
2235
+ private:
2236
+ friend class Endpoint;
2237
+
2238
+ Account &acc;
2239
+ pjsua_call_id id;
2240
+ Token userData;
2241
+ std::vector<Media *> medias;
2242
+ pj_pool_t *sdp_pool;
2243
+ Call *child; /* New outgoing call in call transfer. */
2244
+ };
2245
+
2246
+ /**
2247
+ * @} // PJSUA2_CALL
2248
+ */
2249
+
2250
+ } // namespace pj
2251
+
2252
+ #endif /* __PJSUA2_CALL_HPP__ */
2253
+