@voipsdk/react-native-voipcloud 1.0.1 → 1.0.2

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 (644) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +55 -9
  3. package/android/build.gradle +14 -8
  4. package/ios/VoipCloud.mm +214 -28
  5. package/ios/VoipCloud.xcframework/Info.plist +48 -0
  6. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/activesock.h +598 -0
  7. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/addr_resolv.h +189 -0
  8. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/array.h +95 -0
  9. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/assert.h +84 -0
  10. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/assert.h +36 -0
  11. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_armcc.h +57 -0
  12. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_clang.h +64 -0
  13. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_codew.h +55 -0
  14. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_gcc.h +79 -0
  15. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_gcce.h +54 -0
  16. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_msvc.h +87 -0
  17. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/cc_mwcc.h +55 -0
  18. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/ctype.h +44 -0
  19. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/errno.h +44 -0
  20. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/high_precision.h +87 -0
  21. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/limits.h +66 -0
  22. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_alpha.h +35 -0
  23. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_armv4.h +38 -0
  24. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_auto.h +60 -0
  25. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_auto.h.in +59 -0
  26. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_i386.h +34 -0
  27. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_m68k.h +34 -0
  28. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_powerpc.h +35 -0
  29. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_sparc.h +34 -0
  30. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/m_x86_64.h +35 -0
  31. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/malloc.h +33 -0
  32. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_auto.h +245 -0
  33. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_auto.h.in +244 -0
  34. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_darwinos.h +141 -0
  35. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_linux.h +130 -0
  36. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_palmos.h +118 -0
  37. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_rtems.h +138 -0
  38. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_sunos.h +131 -0
  39. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_symbian.h +166 -0
  40. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_win32.h +148 -0
  41. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_win32_wince.h +145 -0
  42. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_winphone8.h +149 -0
  43. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/os_winuwp.h +149 -0
  44. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/rand.h +55 -0
  45. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/setjmp.h +49 -0
  46. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/size_t.h +31 -0
  47. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/socket.h +223 -0
  48. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/stdarg.h +31 -0
  49. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/stdfileio.h +31 -0
  50. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/string.h +178 -0
  51. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/compat/time.h +41 -0
  52. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config.h +1537 -0
  53. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site.h +22 -0
  54. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site_sample.h +485 -0
  55. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/config_site_test.h +11 -0
  56. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ctype.h +174 -0
  57. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/doxygen.h +995 -0
  58. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/errno.h +593 -0
  59. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/except.h +420 -0
  60. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/fifobuf.h +43 -0
  61. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/file_access.h +108 -0
  62. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/file_io.h +183 -0
  63. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/guid.h +119 -0
  64. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/hash.h +253 -0
  65. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ioqueue.h +955 -0
  66. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ip_helper.h +152 -0
  67. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/limits.h +57 -0
  68. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/list.h +268 -0
  69. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/list_i.h +120 -0
  70. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/lock.h +453 -0
  71. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/log.h +487 -0
  72. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/math.h +203 -0
  73. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/os.h +1536 -0
  74. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool.h +918 -0
  75. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_alt.h +212 -0
  76. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_buf.h +104 -0
  77. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/pool_i.h +131 -0
  78. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/rand.h +65 -0
  79. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/rbtree.h +215 -0
  80. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock.h +1566 -0
  81. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock_qos.h +429 -0
  82. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/sock_select.h +151 -0
  83. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/ssl_sock.h +1508 -0
  84. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/string.h +963 -0
  85. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/string_i.h +406 -0
  86. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/timer.h +386 -0
  87. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/types.h +594 -0
  88. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj/unicode.h +140 -0
  89. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/file.hpp +187 -0
  90. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/hash.hpp +155 -0
  91. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/list.hpp +351 -0
  92. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/lock.hpp +148 -0
  93. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/os.hpp +869 -0
  94. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/pool.hpp +278 -0
  95. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/proactor.hpp +514 -0
  96. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/scanner.hpp +245 -0
  97. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/sock.hpp +443 -0
  98. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/string.hpp +467 -0
  99. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/timer.hpp +197 -0
  100. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/tree.hpp +128 -0
  101. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pj++/types.hpp +174 -0
  102. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib++.hpp +34 -0
  103. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/base64.h +91 -0
  104. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli.h +530 -0
  105. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_console.h +116 -0
  106. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_imp.h +207 -0
  107. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/cli_telnet.h +167 -0
  108. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/config.h +373 -0
  109. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/crc32.h +95 -0
  110. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/dns.h +460 -0
  111. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/dns_server.h +116 -0
  112. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/errno.h +455 -0
  113. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/getopt.h +144 -0
  114. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/hmac_md5.h +108 -0
  115. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/hmac_sha1.h +106 -0
  116. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/http_client.h +493 -0
  117. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/json.h +227 -0
  118. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/md5.h +73 -0
  119. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/pcap.h +195 -0
  120. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/resolver.h +515 -0
  121. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner.h +553 -0
  122. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner_cis_bitwise.h +96 -0
  123. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/scanner_cis_uint.h +83 -0
  124. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/sha1.h +79 -0
  125. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/srv_resolver.h +221 -0
  126. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/string.h +101 -0
  127. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/stun_simple.h +288 -0
  128. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/types.h +94 -0
  129. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util/xml.h +248 -0
  130. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib-util.h +75 -0
  131. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjlib.h +62 -0
  132. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/alaw_ulaw.h +212 -0
  133. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/audiodev.h +761 -0
  134. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/avi.h +201 -0
  135. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/avi_stream.h +195 -0
  136. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/bidirectional.h +66 -0
  137. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/circbuf.h +436 -0
  138. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/clock.h +338 -0
  139. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/codec.h +1192 -0
  140. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/conference.h +599 -0
  141. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config.h +1713 -0
  142. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config_auto.h +43 -0
  143. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/config_auto.h.in +42 -0
  144. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/converter.h +386 -0
  145. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/delaybuf.h +175 -0
  146. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/doxygen.h +243 -0
  147. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/echo.h +420 -0
  148. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/echo_port.h +73 -0
  149. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/endpoint.h +389 -0
  150. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/errno.h +693 -0
  151. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/event.h +493 -0
  152. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/format.h +821 -0
  153. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/frame.h +331 -0
  154. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/g711.h +88 -0
  155. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/jbuf.h +484 -0
  156. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/master_port.h +198 -0
  157. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/mem_port.h +241 -0
  158. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/null_port.h +69 -0
  159. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/plc.h +114 -0
  160. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/port.h +565 -0
  161. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/resample.h +199 -0
  162. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp.h +511 -0
  163. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp_fb.h +487 -0
  164. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtcp_xr.h +477 -0
  165. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/rtp.h +457 -0
  166. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sdp.h +830 -0
  167. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sdp_neg.h +822 -0
  168. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/session.h +435 -0
  169. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/signatures.h +217 -0
  170. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/silencedet.h +199 -0
  171. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sound.h +353 -0
  172. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/sound_port.h +397 -0
  173. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/splitcomb.h +142 -0
  174. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stereo.h +203 -0
  175. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stream.h +541 -0
  176. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/stream_common.h +123 -0
  177. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/symbian_sound_aps.h +47 -0
  178. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/tonegen.h +302 -0
  179. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport.h +1069 -0
  180. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_adapter_sample.h +75 -0
  181. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_ice.h +458 -0
  182. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_loop.h +158 -0
  183. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_srtp.h +579 -0
  184. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/transport_udp.h +161 -0
  185. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/types.h +345 -0
  186. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_codec.h +896 -0
  187. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_codec_util.h +194 -0
  188. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_conf.h +310 -0
  189. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_port.h +269 -0
  190. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_stream.h +514 -0
  191. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/vid_tee.h +141 -0
  192. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/videodev.h +859 -0
  193. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wav_playlist.h +131 -0
  194. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wav_port.h +342 -0
  195. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wave.h +183 -0
  196. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia/wsola.h +218 -0
  197. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiodev.h +110 -0
  198. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiodev_imp.h +187 -0
  199. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/audiotest.h +115 -0
  200. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/config.h +525 -0
  201. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-audiodev/errno.h +227 -0
  202. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/amr_helper.h +1236 -0
  203. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/amr_sdp_match.h +60 -0
  204. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/and_aud_mediacodec.h +131 -0
  205. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/and_vid_mediacodec.h +77 -0
  206. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/audio_codecs.h +97 -0
  207. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/bcg729.h +120 -0
  208. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config.h +720 -0
  209. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config_auto.h +104 -0
  210. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/config_auto.h.in +103 -0
  211. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ffmpeg_vid_codecs.h +66 -0
  212. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g722.h +103 -0
  213. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g7221.h +164 -0
  214. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/g7221_sdp_match.h +58 -0
  215. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/gsm.h +86 -0
  216. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/h263_packetizer.h +145 -0
  217. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/h264_packetizer.h +163 -0
  218. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ilbc.h +118 -0
  219. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/ipp_codecs.h +321 -0
  220. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/l16.h +83 -0
  221. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/opencore_amr.h +145 -0
  222. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/openh264.h +68 -0
  223. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/opus.h +160 -0
  224. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/passthrough.h +276 -0
  225. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/silk.h +126 -0
  226. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/speex.h +149 -0
  227. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/types.h +145 -0
  228. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vid_toolbox.h +70 -0
  229. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vpx.h +68 -0
  230. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec/vpx_packetizer.h +123 -0
  231. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-codec.h +47 -0
  232. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/avi_dev.h +139 -0
  233. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/config.h +326 -0
  234. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/errno.h +158 -0
  235. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/opengl_dev.h +52 -0
  236. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/videodev.h +119 -0
  237. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia-videodev/videodev_imp.h +229 -0
  238. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia.h +81 -0
  239. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia_audiodev.h +32 -0
  240. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjmedia_videodev.h +30 -0
  241. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/config.h +596 -0
  242. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/errno.h +225 -0
  243. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/ice_session.h +1122 -0
  244. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/ice_strans.h +1112 -0
  245. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/nat_detect.h +233 -0
  246. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_auth.h +456 -0
  247. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_config.h +135 -0
  248. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_msg.h +1856 -0
  249. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_session.h +763 -0
  250. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_sock.h +496 -0
  251. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/stun_transaction.h +291 -0
  252. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/turn_session.h +968 -0
  253. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/turn_sock.h +673 -0
  254. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/types.h +75 -0
  255. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath/upnp.h +147 -0
  256. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjnath.h +46 -0
  257. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/print_util.h +166 -0
  258. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth.h +637 -0
  259. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_aka.h +212 -0
  260. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_msg.h +269 -0
  261. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_auth_parser.h +74 -0
  262. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_autoconf.h +39 -0
  263. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_autoconf.h.in +38 -0
  264. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_config.h +1545 -0
  265. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_dialog.h +935 -0
  266. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_endpoint.h +715 -0
  267. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_errno.h +544 -0
  268. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_event.h +230 -0
  269. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_module.h +221 -0
  270. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_msg.h +2134 -0
  271. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_multipart.h +276 -0
  272. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_parser.h +465 -0
  273. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_private.h +31 -0
  274. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_resolve.h +347 -0
  275. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_tel_uri.h +83 -0
  276. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transaction.h +542 -0
  277. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport.h +1672 -0
  278. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_loop.h +146 -0
  279. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_tcp.h +300 -0
  280. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_tls.h +642 -0
  281. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_transport_udp.h +389 -0
  282. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_types.h +265 -0
  283. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_ua_layer.h +159 -0
  284. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_uri.h +470 -0
  285. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip/sip_util.h +888 -0
  286. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/errno.h +117 -0
  287. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/evsub.h +561 -0
  288. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/evsub_msg.h +119 -0
  289. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/iscomposing.h +137 -0
  290. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/mwi.h +211 -0
  291. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/pidf.h +177 -0
  292. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/presence.h +416 -0
  293. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/publish.h +350 -0
  294. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/rpid.h +150 -0
  295. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/types.h +30 -0
  296. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-simple/xpidf.h +137 -0
  297. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_100rel.h +244 -0
  298. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_inv.h +1224 -0
  299. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_regc.h +497 -0
  300. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_replaces.h +303 -0
  301. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_timer.h +274 -0
  302. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip-ua/sip_xfer.h +207 -0
  303. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip.h +61 -0
  304. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_auth.h +37 -0
  305. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_simple.h +45 -0
  306. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsip_ua.h +31 -0
  307. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua-lib/pjsua.h +8899 -0
  308. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua-lib/pjsua_internal.h +989 -0
  309. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua.h +1 -0
  310. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/account.hpp +2123 -0
  311. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/call.hpp +2253 -0
  312. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/config.hpp +72 -0
  313. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/doxygen.hpp +48 -0
  314. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/endpoint.hpp +2160 -0
  315. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/json.hpp +115 -0
  316. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/media.hpp +2748 -0
  317. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/persistent.hpp +715 -0
  318. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/presence.hpp +368 -0
  319. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/siptypes.hpp +1013 -0
  320. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2/types.hpp +283 -0
  321. package/ios/VoipCloud.xcframework/ios-arm64/Headers/pjsua2.hpp +28 -0
  322. package/ios/VoipCloud.xcframework/ios-arm64/libVoipCloud.a +0 -0
  323. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/activesock.h +598 -0
  324. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/addr_resolv.h +189 -0
  325. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/array.h +95 -0
  326. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/assert.h +84 -0
  327. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/assert.h +36 -0
  328. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_armcc.h +57 -0
  329. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_clang.h +64 -0
  330. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_codew.h +55 -0
  331. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_gcc.h +79 -0
  332. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_gcce.h +54 -0
  333. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_msvc.h +87 -0
  334. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/cc_mwcc.h +55 -0
  335. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/ctype.h +44 -0
  336. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/errno.h +44 -0
  337. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/high_precision.h +87 -0
  338. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/limits.h +66 -0
  339. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_alpha.h +35 -0
  340. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_armv4.h +38 -0
  341. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_auto.h +60 -0
  342. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_auto.h.in +59 -0
  343. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_i386.h +34 -0
  344. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_m68k.h +34 -0
  345. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_powerpc.h +35 -0
  346. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_sparc.h +34 -0
  347. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/m_x86_64.h +35 -0
  348. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/malloc.h +33 -0
  349. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_auto.h +245 -0
  350. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_auto.h.in +244 -0
  351. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_darwinos.h +141 -0
  352. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_linux.h +130 -0
  353. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_palmos.h +118 -0
  354. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_rtems.h +138 -0
  355. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_sunos.h +131 -0
  356. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_symbian.h +166 -0
  357. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_win32.h +148 -0
  358. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_win32_wince.h +145 -0
  359. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_winphone8.h +149 -0
  360. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/os_winuwp.h +149 -0
  361. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/rand.h +55 -0
  362. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/setjmp.h +49 -0
  363. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/size_t.h +31 -0
  364. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/socket.h +223 -0
  365. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/stdarg.h +31 -0
  366. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/stdfileio.h +31 -0
  367. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/string.h +178 -0
  368. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/compat/time.h +41 -0
  369. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config.h +1537 -0
  370. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site.h +22 -0
  371. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site_sample.h +485 -0
  372. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/config_site_test.h +11 -0
  373. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ctype.h +174 -0
  374. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/doxygen.h +995 -0
  375. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/errno.h +593 -0
  376. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/except.h +420 -0
  377. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/fifobuf.h +43 -0
  378. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/file_access.h +108 -0
  379. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/file_io.h +183 -0
  380. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/guid.h +119 -0
  381. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/hash.h +253 -0
  382. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ioqueue.h +955 -0
  383. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ip_helper.h +152 -0
  384. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/limits.h +57 -0
  385. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/list.h +268 -0
  386. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/list_i.h +120 -0
  387. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/lock.h +453 -0
  388. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/log.h +487 -0
  389. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/math.h +203 -0
  390. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/os.h +1536 -0
  391. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool.h +918 -0
  392. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_alt.h +212 -0
  393. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_buf.h +104 -0
  394. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/pool_i.h +131 -0
  395. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/rand.h +65 -0
  396. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/rbtree.h +215 -0
  397. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock.h +1566 -0
  398. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock_qos.h +429 -0
  399. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/sock_select.h +151 -0
  400. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/ssl_sock.h +1508 -0
  401. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/string.h +963 -0
  402. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/string_i.h +406 -0
  403. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/timer.h +386 -0
  404. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/types.h +594 -0
  405. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj/unicode.h +140 -0
  406. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/file.hpp +187 -0
  407. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/hash.hpp +155 -0
  408. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/list.hpp +351 -0
  409. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/lock.hpp +148 -0
  410. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/os.hpp +869 -0
  411. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/pool.hpp +278 -0
  412. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/proactor.hpp +514 -0
  413. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/scanner.hpp +245 -0
  414. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/sock.hpp +443 -0
  415. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/string.hpp +467 -0
  416. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/timer.hpp +197 -0
  417. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/tree.hpp +128 -0
  418. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pj++/types.hpp +174 -0
  419. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib++.hpp +34 -0
  420. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/base64.h +91 -0
  421. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli.h +530 -0
  422. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_console.h +116 -0
  423. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_imp.h +207 -0
  424. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/cli_telnet.h +167 -0
  425. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/config.h +373 -0
  426. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/crc32.h +95 -0
  427. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/dns.h +460 -0
  428. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/dns_server.h +116 -0
  429. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/errno.h +455 -0
  430. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/getopt.h +144 -0
  431. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/hmac_md5.h +108 -0
  432. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/hmac_sha1.h +106 -0
  433. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/http_client.h +493 -0
  434. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/json.h +227 -0
  435. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/md5.h +73 -0
  436. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/pcap.h +195 -0
  437. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/resolver.h +515 -0
  438. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner.h +553 -0
  439. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner_cis_bitwise.h +96 -0
  440. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/scanner_cis_uint.h +83 -0
  441. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/sha1.h +79 -0
  442. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/srv_resolver.h +221 -0
  443. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/string.h +101 -0
  444. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/stun_simple.h +288 -0
  445. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/types.h +94 -0
  446. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util/xml.h +248 -0
  447. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib-util.h +75 -0
  448. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjlib.h +62 -0
  449. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/alaw_ulaw.h +212 -0
  450. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/audiodev.h +761 -0
  451. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/avi.h +201 -0
  452. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/avi_stream.h +195 -0
  453. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/bidirectional.h +66 -0
  454. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/circbuf.h +436 -0
  455. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/clock.h +338 -0
  456. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/codec.h +1192 -0
  457. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/conference.h +599 -0
  458. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config.h +1713 -0
  459. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config_auto.h +43 -0
  460. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/config_auto.h.in +42 -0
  461. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/converter.h +386 -0
  462. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/delaybuf.h +175 -0
  463. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/doxygen.h +243 -0
  464. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/echo.h +420 -0
  465. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/echo_port.h +73 -0
  466. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/endpoint.h +389 -0
  467. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/errno.h +693 -0
  468. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/event.h +493 -0
  469. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/format.h +821 -0
  470. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/frame.h +331 -0
  471. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/g711.h +88 -0
  472. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/jbuf.h +484 -0
  473. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/master_port.h +198 -0
  474. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/mem_port.h +241 -0
  475. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/null_port.h +69 -0
  476. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/plc.h +114 -0
  477. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/port.h +565 -0
  478. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/resample.h +199 -0
  479. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp.h +511 -0
  480. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp_fb.h +487 -0
  481. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtcp_xr.h +477 -0
  482. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/rtp.h +457 -0
  483. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sdp.h +830 -0
  484. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sdp_neg.h +822 -0
  485. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/session.h +435 -0
  486. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/signatures.h +217 -0
  487. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/silencedet.h +199 -0
  488. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sound.h +353 -0
  489. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/sound_port.h +397 -0
  490. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/splitcomb.h +142 -0
  491. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stereo.h +203 -0
  492. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stream.h +541 -0
  493. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/stream_common.h +123 -0
  494. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/symbian_sound_aps.h +47 -0
  495. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/tonegen.h +302 -0
  496. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport.h +1069 -0
  497. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_adapter_sample.h +75 -0
  498. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_ice.h +458 -0
  499. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_loop.h +158 -0
  500. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_srtp.h +579 -0
  501. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/transport_udp.h +161 -0
  502. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/types.h +345 -0
  503. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_codec.h +896 -0
  504. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_codec_util.h +194 -0
  505. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_conf.h +310 -0
  506. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_port.h +269 -0
  507. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_stream.h +514 -0
  508. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/vid_tee.h +141 -0
  509. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/videodev.h +859 -0
  510. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wav_playlist.h +131 -0
  511. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wav_port.h +342 -0
  512. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wave.h +183 -0
  513. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia/wsola.h +218 -0
  514. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiodev.h +110 -0
  515. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiodev_imp.h +187 -0
  516. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/audiotest.h +115 -0
  517. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/config.h +525 -0
  518. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-audiodev/errno.h +227 -0
  519. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/amr_helper.h +1236 -0
  520. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/amr_sdp_match.h +60 -0
  521. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/and_aud_mediacodec.h +131 -0
  522. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/and_vid_mediacodec.h +77 -0
  523. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/audio_codecs.h +97 -0
  524. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/bcg729.h +120 -0
  525. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config.h +720 -0
  526. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config_auto.h +104 -0
  527. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/config_auto.h.in +103 -0
  528. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ffmpeg_vid_codecs.h +66 -0
  529. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g722.h +103 -0
  530. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g7221.h +164 -0
  531. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/g7221_sdp_match.h +58 -0
  532. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/gsm.h +86 -0
  533. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/h263_packetizer.h +145 -0
  534. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/h264_packetizer.h +163 -0
  535. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ilbc.h +118 -0
  536. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/ipp_codecs.h +321 -0
  537. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/l16.h +83 -0
  538. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/opencore_amr.h +145 -0
  539. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/openh264.h +68 -0
  540. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/opus.h +160 -0
  541. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/passthrough.h +276 -0
  542. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/silk.h +126 -0
  543. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/speex.h +149 -0
  544. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/types.h +145 -0
  545. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vid_toolbox.h +70 -0
  546. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vpx.h +68 -0
  547. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec/vpx_packetizer.h +123 -0
  548. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-codec.h +47 -0
  549. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/avi_dev.h +139 -0
  550. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/config.h +326 -0
  551. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/errno.h +158 -0
  552. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/opengl_dev.h +52 -0
  553. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/videodev.h +119 -0
  554. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia-videodev/videodev_imp.h +229 -0
  555. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia.h +81 -0
  556. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia_audiodev.h +32 -0
  557. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjmedia_videodev.h +30 -0
  558. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/config.h +596 -0
  559. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/errno.h +225 -0
  560. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/ice_session.h +1122 -0
  561. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/ice_strans.h +1112 -0
  562. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/nat_detect.h +233 -0
  563. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_auth.h +456 -0
  564. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_config.h +135 -0
  565. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_msg.h +1856 -0
  566. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_session.h +763 -0
  567. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_sock.h +496 -0
  568. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/stun_transaction.h +291 -0
  569. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/turn_session.h +968 -0
  570. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/turn_sock.h +673 -0
  571. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/types.h +75 -0
  572. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath/upnp.h +147 -0
  573. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjnath.h +46 -0
  574. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/print_util.h +166 -0
  575. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth.h +637 -0
  576. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_aka.h +212 -0
  577. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_msg.h +269 -0
  578. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_auth_parser.h +74 -0
  579. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_autoconf.h +39 -0
  580. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_autoconf.h.in +38 -0
  581. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_config.h +1545 -0
  582. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_dialog.h +935 -0
  583. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_endpoint.h +715 -0
  584. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_errno.h +544 -0
  585. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_event.h +230 -0
  586. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_module.h +221 -0
  587. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_msg.h +2134 -0
  588. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_multipart.h +276 -0
  589. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_parser.h +465 -0
  590. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_private.h +31 -0
  591. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_resolve.h +347 -0
  592. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_tel_uri.h +83 -0
  593. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transaction.h +542 -0
  594. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport.h +1672 -0
  595. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_loop.h +146 -0
  596. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_tcp.h +300 -0
  597. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_tls.h +642 -0
  598. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_transport_udp.h +389 -0
  599. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_types.h +265 -0
  600. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_ua_layer.h +159 -0
  601. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_uri.h +470 -0
  602. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip/sip_util.h +888 -0
  603. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/errno.h +117 -0
  604. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/evsub.h +561 -0
  605. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/evsub_msg.h +119 -0
  606. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/iscomposing.h +137 -0
  607. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/mwi.h +211 -0
  608. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/pidf.h +177 -0
  609. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/presence.h +416 -0
  610. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/publish.h +350 -0
  611. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/rpid.h +150 -0
  612. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/types.h +30 -0
  613. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-simple/xpidf.h +137 -0
  614. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_100rel.h +244 -0
  615. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_inv.h +1224 -0
  616. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_regc.h +497 -0
  617. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_replaces.h +303 -0
  618. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_timer.h +274 -0
  619. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip-ua/sip_xfer.h +207 -0
  620. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip.h +61 -0
  621. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_auth.h +37 -0
  622. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_simple.h +45 -0
  623. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsip_ua.h +31 -0
  624. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua-lib/pjsua.h +8899 -0
  625. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua-lib/pjsua_internal.h +989 -0
  626. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua.h +1 -0
  627. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/account.hpp +2123 -0
  628. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/call.hpp +2253 -0
  629. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/config.hpp +72 -0
  630. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/doxygen.hpp +48 -0
  631. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/endpoint.hpp +2160 -0
  632. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/json.hpp +115 -0
  633. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/media.hpp +2748 -0
  634. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/persistent.hpp +715 -0
  635. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/presence.hpp +368 -0
  636. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/siptypes.hpp +1013 -0
  637. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2/types.hpp +283 -0
  638. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/Headers/pjsua2.hpp +28 -0
  639. package/ios/VoipCloud.xcframework/ios-arm64_x86_64-simulator/libVoipCloud.a +0 -0
  640. package/ios/VoipCloudEngine.h +62 -0
  641. package/ios/VoipCloudEngine.mm +571 -0
  642. package/package.json +4 -3
  643. package/react-native-voipcloud.podspec +27 -1
  644. package/react-native.config.js +22 -0
@@ -0,0 +1,2123 @@
1
+ /*
2
+ * Copyright (C) 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_ACCOUNT_HPP__
19
+ #define __PJSUA2_ACCOUNT_HPP__
20
+
21
+ /**
22
+ * @file pjsua2/account.hpp
23
+ * @brief PJSUA2 Account operations
24
+ */
25
+ #include <pjsua-lib/pjsua.h>
26
+ #include <pjsua2/persistent.hpp>
27
+ #include <pjsua2/presence.hpp>
28
+ #include <pjsua2/siptypes.hpp>
29
+
30
+ /** PJSUA2 API is inside pj namespace */
31
+ namespace pj
32
+ {
33
+
34
+ /**
35
+ * @defgroup PJSUA2_ACC Account
36
+ * @ingroup PJSUA2_Ref
37
+ * @{
38
+ */
39
+
40
+ using std::string;
41
+
42
+ /**
43
+ * Account registration config. This will be specified in AccountConfig.
44
+ */
45
+ struct AccountRegConfig : public PersistentObject
46
+ {
47
+ /**
48
+ * This is the URL to be put in the request URI for the registration,
49
+ * and will look something like "sip:serviceprovider".
50
+ *
51
+ * This field should be specified if registration is desired. If the
52
+ * value is empty, no account registration will be performed.
53
+ */
54
+ string registrarUri;
55
+
56
+ /**
57
+ * Specify whether the account should register as soon as it is
58
+ * added to the UA. Application can set this to PJ_FALSE and control
59
+ * the registration manually with pjsua_acc_set_registration().
60
+ *
61
+ * Default: True
62
+ */
63
+ bool registerOnAdd;
64
+
65
+ /**
66
+ * The optional custom SIP headers to be put in the registration
67
+ * request.
68
+ */
69
+ SipHeaderVector headers;
70
+
71
+ /**
72
+ * Additional parameters that will be appended in the Contact header
73
+ * of the registration requests. This will be appended after
74
+ * \a AccountSipConfig.contactParams;
75
+ *
76
+ * The parameters should be preceeded by semicolon, and all strings must
77
+ * be properly escaped. Example:
78
+ * ";my-param=X;another-param=Hi%20there"
79
+ */
80
+ string contactParams;
81
+
82
+ /**
83
+ * Additional parameters that will be appended in the Contact URI
84
+ * of the registration requests. This will be appended after
85
+ * \a AccountSipConfig.contactUriParams;
86
+ *
87
+ * The parameters should be preceeded by semicolon, and all strings must
88
+ * be properly escaped. Example:
89
+ * ";my-param=X;another-param=Hi%20there"
90
+ */
91
+ string contactUriParams;
92
+
93
+ /**
94
+ * Optional interval for registration, in seconds. If the value is zero,
95
+ * default interval will be used (PJSUA_REG_INTERVAL, 300 seconds).
96
+ */
97
+ unsigned timeoutSec;
98
+
99
+ /**
100
+ * Specify interval of auto registration retry upon registration failure
101
+ * (including caused by transport problem), in second. Set to 0 to
102
+ * disable auto re-registration. Note that if the registration retry
103
+ * occurs because of transport failure, the first retry will be done
104
+ * after \a firstRetryIntervalSec seconds instead. Also note that
105
+ * the interval will be randomized slightly by some seconds (specified
106
+ * in \a reg_retry_random_interval) to avoid all clients re-registering
107
+ * at the same time.
108
+ *
109
+ * See also \a firstRetryIntervalSec and \a randomRetryIntervalSec
110
+ * settings.
111
+ *
112
+ * Default: PJSUA_REG_RETRY_INTERVAL
113
+ */
114
+ unsigned retryIntervalSec;
115
+
116
+ /**
117
+ * This specifies the interval for the first registration retry. The
118
+ * registration retry is explained in \a retryIntervalSec. Note that
119
+ * the value here will also be randomized by some seconds (specified
120
+ * in \a reg_retry_random_interval) to avoid all clients re-registering
121
+ * at the same time.
122
+ *
123
+ * See also \a retryIntervalSec and \a randomRetryIntervalSec settings.
124
+ *
125
+ * Default: 0
126
+ */
127
+ unsigned firstRetryIntervalSec;
128
+
129
+ /**
130
+ * This specifies maximum randomized value to be added/substracted
131
+ * to/from the registration retry interval specified in \a
132
+ * reg_retry_interval and \a reg_first_retry_interval, in second.
133
+ * This is useful to avoid all clients re-registering at the same time.
134
+ * For example, if the registration retry interval is set to 100 seconds
135
+ * and this is set to 10 seconds, the actual registration retry interval
136
+ * will be in the range of 90 to 110 seconds.
137
+ *
138
+ * See also \a retryIntervalSec and \a firstRetryIntervalSec settings.
139
+ *
140
+ * Default: 10
141
+ */
142
+ unsigned randomRetryIntervalSec;
143
+
144
+ /**
145
+ * Specify the number of seconds to refresh the client registration
146
+ * before the registration expires.
147
+ *
148
+ * Default: PJSIP_REGISTER_CLIENT_DELAY_BEFORE_REFRESH, 5 seconds
149
+ */
150
+ unsigned delayBeforeRefreshSec;
151
+
152
+ /**
153
+ * Specify whether calls of the configured account should be dropped
154
+ * after registration failure and an attempt of re-registration has
155
+ * also failed.
156
+ *
157
+ * Default: FALSE (disabled)
158
+ */
159
+ bool dropCallsOnFail;
160
+
161
+ /**
162
+ * Specify the maximum time to wait for unregistration requests to
163
+ * complete during library shutdown sequence.
164
+ *
165
+ * Default: PJSUA_UNREG_TIMEOUT
166
+ */
167
+ unsigned unregWaitMsec;
168
+
169
+ /**
170
+ * Specify how the registration uses the outbound and account proxy
171
+ * settings. This controls if and what Route headers will appear in
172
+ * the REGISTER request of this account. The value is bitmask combination
173
+ * of PJSUA_REG_USE_OUTBOUND_PROXY and PJSUA_REG_USE_ACC_PROXY bits.
174
+ * If the value is set to 0, the REGISTER request will not use any proxy
175
+ * (i.e. it will not have any Route headers).
176
+ *
177
+ * Default: 3 (PJSUA_REG_USE_OUTBOUND_PROXY | PJSUA_REG_USE_ACC_PROXY)
178
+ */
179
+ unsigned proxyUse;
180
+
181
+ public:
182
+ /**
183
+ * Read this object from a container node.
184
+ *
185
+ * @param node Container to read values from.
186
+ */
187
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
188
+
189
+ /**
190
+ * Write this object to a container node.
191
+ *
192
+ * @param node Container to write values to.
193
+ */
194
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
195
+
196
+ };
197
+
198
+ /** Array of SIP credentials */
199
+ typedef std::vector<AuthCredInfo> AuthCredInfoVector;
200
+
201
+ /**
202
+ * Various SIP settings for the account. This will be specified in
203
+ * AccountConfig.
204
+ */
205
+ struct AccountSipConfig : public PersistentObject
206
+ {
207
+ /**
208
+ * Array of credentials. If registration is desired, normally there should
209
+ * be at least one credential specified, to successfully authenticate
210
+ * against the service provider. More credentials can be specified, for
211
+ * example when the requests are expected to be challenged by the
212
+ * proxies in the route set.
213
+ */
214
+ AuthCredInfoVector authCreds;
215
+
216
+ /**
217
+ * Array of proxy servers to visit for outgoing requests. Each of the
218
+ * entry is translated into one Route URI.
219
+ */
220
+ StringVector proxies;
221
+
222
+ /**
223
+ * Optional URI to be put as Contact for this account. It is recommended
224
+ * that this field is left empty, so that the value will be calculated
225
+ * automatically based on the transport address.
226
+ */
227
+ string contactForced;
228
+
229
+ /**
230
+ * Additional parameters that will be appended in the Contact header
231
+ * for this account. This will affect the Contact header in all SIP
232
+ * messages sent on behalf of this account, including but not limited to
233
+ * REGISTER, INVITE, and SUBCRIBE requests or responses.
234
+ *
235
+ * The parameters should be preceeded by semicolon, and all strings must
236
+ * be properly escaped. Example:
237
+ * ";my-param=X;another-param=Hi%20there"
238
+ */
239
+ string contactParams;
240
+
241
+ /**
242
+ * Additional URI parameters that will be appended in the Contact URI
243
+ * for this account. This will affect the Contact URI in all SIP
244
+ * messages sent on behalf of this account, including but not limited to
245
+ * REGISTER, INVITE, and SUBCRIBE requests or responses.
246
+ *
247
+ * The parameters should be preceeded by semicolon, and all strings must
248
+ * be properly escaped. Example:
249
+ * ";my-param=X;another-param=Hi%20there"
250
+ */
251
+ string contactUriParams;
252
+
253
+
254
+ /**
255
+ * If this flag is set, the authentication client framework will
256
+ * send an empty Authorization header in each initial request.
257
+ * Default is no.
258
+ */
259
+ bool authInitialEmpty;
260
+
261
+ /**
262
+ * Specify the algorithm to use when empty Authorization header
263
+ * is to be sent for each initial request (see above)
264
+ */
265
+ string authInitialAlgorithm;
266
+
267
+ /**
268
+ * Optionally bind this account to specific transport. This normally is
269
+ * not a good idea, as account should be able to send requests using
270
+ * any available transports according to the destination. But some
271
+ * application may want to have explicit control over the transport to
272
+ * use, so in that case it can set this field.
273
+ *
274
+ * Default: -1 (PJSUA_INVALID_ID)
275
+ *
276
+ * @see Account::setTransport()
277
+ */
278
+ TransportId transportId;
279
+
280
+ /**
281
+ * Specify whether IPv6 should be used for SIP signalling.
282
+ *
283
+ * Default: PJSUA_IPV6_ENABLED_NO_PREFERENCE
284
+ * (IP version used will be based on the address resolution
285
+ * returned by OS/resolver)
286
+ */
287
+ pjsua_ipv6_use ipv6Use;
288
+
289
+ public:
290
+ /**
291
+ * Read this object from a container node.
292
+ *
293
+ * @param node Container to read values from.
294
+ */
295
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
296
+
297
+ /**
298
+ * Write this object to a container node.
299
+ *
300
+ * @param node Container to write values to.
301
+ */
302
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
303
+ };
304
+
305
+ /**
306
+ * Account's call settings. This will be specified in AccountConfig.
307
+ */
308
+ struct AccountCallConfig : public PersistentObject
309
+ {
310
+ /**
311
+ * Specify how to offer call hold to remote peer. Please see the
312
+ * documentation on pjsua_call_hold_type for more info.
313
+ *
314
+ * Default: PJSUA_CALL_HOLD_TYPE_DEFAULT
315
+ */
316
+ pjsua_call_hold_type holdType;
317
+
318
+ /**
319
+ * Specify how support for reliable provisional response (100rel/
320
+ * PRACK) should be used for all sessions in this account. See the
321
+ * documentation of pjsua_100rel_use enumeration for more info.
322
+ *
323
+ * Default: PJSUA_100REL_NOT_USED
324
+ */
325
+ pjsua_100rel_use prackUse;
326
+
327
+ /**
328
+ * Specify the usage of Session Timers for all sessions. See the
329
+ * pjsua_sip_timer_use for possible values.
330
+ *
331
+ * Default: PJSUA_SIP_TIMER_OPTIONAL
332
+ */
333
+ pjsua_sip_timer_use timerUse;
334
+
335
+ /**
336
+ * Specify minimum Session Timer expiration period, in seconds.
337
+ * Must not be lower than 90. Default is 90.
338
+ */
339
+ unsigned timerMinSESec;
340
+
341
+ /**
342
+ * Specify Session Timer expiration period, in seconds.
343
+ * Must not be lower than timerMinSE. Default is 1800.
344
+ */
345
+ unsigned timerSessExpiresSec;
346
+
347
+ public:
348
+ /**
349
+ * Default constructor
350
+ */
351
+ AccountCallConfig() : holdType(PJSUA_CALL_HOLD_TYPE_DEFAULT),
352
+ prackUse(PJSUA_100REL_NOT_USED),
353
+ timerUse(PJSUA_SIP_TIMER_OPTIONAL),
354
+ timerMinSESec(90),
355
+ timerSessExpiresSec(PJSIP_SESS_TIMER_DEF_SE)
356
+ {}
357
+
358
+ /**
359
+ * Read this object from a container node.
360
+ *
361
+ * @param node Container to read values from.
362
+ */
363
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
364
+
365
+ /**
366
+ * Write this object to a container node.
367
+ *
368
+ * @param node Container to write values to.
369
+ */
370
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
371
+ };
372
+
373
+ /**
374
+ * Account presence config. This will be specified in AccountConfig.
375
+ */
376
+ struct AccountPresConfig : public PersistentObject
377
+ {
378
+ /**
379
+ * The optional custom SIP headers to be put in the presence
380
+ * subscription request.
381
+ */
382
+ SipHeaderVector headers;
383
+
384
+ /**
385
+ * If this flag is set, the presence information of this account will
386
+ * be PUBLISH-ed to the server where the account belongs.
387
+ *
388
+ * Default: PJ_FALSE
389
+ */
390
+ bool publishEnabled;
391
+
392
+ /**
393
+ * Specify whether the client publication session should queue the
394
+ * PUBLISH request should there be another PUBLISH transaction still
395
+ * pending. If this is set to false, the client will return error
396
+ * on the PUBLISH request if there is another PUBLISH transaction still
397
+ * in progress.
398
+ *
399
+ * Default: PJSIP_PUBLISHC_QUEUE_REQUEST (TRUE)
400
+ */
401
+ bool publishQueue;
402
+
403
+ /**
404
+ * Maximum time to wait for unpublication transaction(s) to complete
405
+ * during shutdown process, before sending unregistration. The library
406
+ * tries to wait for the unpublication (un-PUBLISH) to complete before
407
+ * sending REGISTER request to unregister the account, during library
408
+ * shutdown process. If the value is set too short, it is possible that
409
+ * the unregistration is sent before unpublication completes, causing
410
+ * unpublication request to fail.
411
+ *
412
+ * Value is in milliseconds.
413
+ *
414
+ * Default: PJSUA_UNPUBLISH_MAX_WAIT_TIME_MSEC (2000)
415
+ */
416
+ unsigned publishShutdownWaitMsec;
417
+
418
+ /**
419
+ * Optional PIDF tuple ID for outgoing PUBLISH and NOTIFY. If this value
420
+ * is not specified, a random string will be used.
421
+ */
422
+ string pidfTupleId;
423
+
424
+ public:
425
+ /**
426
+ * Read this object from a container node.
427
+ *
428
+ * @param node Container to read values from.
429
+ */
430
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
431
+
432
+ /**
433
+ * Write this object to a container node.
434
+ *
435
+ * @param node Container to write values to.
436
+ */
437
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
438
+ };
439
+
440
+ /**
441
+ * Account MWI (Message Waiting Indication) settings. This will be specified
442
+ * in AccountConfig.
443
+ */
444
+ struct AccountMwiConfig : public PersistentObject
445
+ {
446
+ /**
447
+ * Subscribe to message waiting indication events (RFC 3842).
448
+ *
449
+ * See also UaConfig.mwiUnsolicitedEnabled setting.
450
+ *
451
+ * Default: FALSE
452
+ */
453
+ bool enabled;
454
+
455
+ /**
456
+ * Specify the default expiration time (in seconds) for Message
457
+ * Waiting Indication (RFC 3842) event subscription. This must not
458
+ * be zero.
459
+ *
460
+ * Default: PJSIP_MWI_DEFAULT_EXPIRES (3600)
461
+ */
462
+ unsigned expirationSec;
463
+
464
+ public:
465
+ /**
466
+ * Read this object from a container node.
467
+ *
468
+ * @param node Container to read values from.
469
+ */
470
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
471
+
472
+ /**
473
+ * Write this object to a container node.
474
+ *
475
+ * @param node Container to write values to.
476
+ */
477
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
478
+ };
479
+
480
+ /**
481
+ * Account's NAT (Network Address Translation) settings. This will be
482
+ * specified in AccountConfig.
483
+ */
484
+ struct AccountNatConfig : public PersistentObject
485
+ {
486
+ /**
487
+ * Control the use of STUN for the SIP signaling.
488
+ *
489
+ * Default: PJSUA_STUN_USE_DEFAULT
490
+ */
491
+ pjsua_stun_use sipStunUse;
492
+
493
+ /**
494
+ * Control the use of STUN for the media transports.
495
+ *
496
+ * Default: PJSUA_STUN_USE_DEFAULT
497
+ */
498
+ pjsua_stun_use mediaStunUse;
499
+
500
+ /**
501
+ * Control the use of UPnP for the SIP signaling.
502
+ *
503
+ * Default: PJSUA_UPNP_USE_DEFAULT
504
+ */
505
+ pjsua_upnp_use sipUpnpUse;
506
+
507
+ /**
508
+ * Control the use of UPnP for the media transports.
509
+ *
510
+ * Default: PJSUA_UPNP_USE_DEFAULT
511
+ */
512
+ pjsua_upnp_use mediaUpnpUse;
513
+
514
+ /**
515
+ * Specify NAT64 options.
516
+ *
517
+ * Default: PJSUA_NAT64_DISABLED
518
+ */
519
+ pjsua_nat64_opt nat64Opt;
520
+
521
+ /**
522
+ * Enable ICE for the media transport.
523
+ *
524
+ * Default: False
525
+ */
526
+ bool iceEnabled;
527
+
528
+ /**
529
+ * Set trickle ICE mode for ICE media transport.
530
+ *
531
+ * Default: PJ_ICE_SESS_TRICKLE_DISABLED
532
+ */
533
+ pj_ice_sess_trickle iceTrickle;
534
+
535
+ /**
536
+ * Set the maximum number of ICE host candidates.
537
+ *
538
+ * Default: -1 (maximum not set)
539
+ */
540
+ int iceMaxHostCands;
541
+
542
+ /**
543
+ * Specify whether to use aggressive nomination.
544
+ *
545
+ * Default: True
546
+ */
547
+ bool iceAggressiveNomination;
548
+
549
+ /**
550
+ * For controlling agent if it uses regular nomination, specify the delay
551
+ * to perform nominated check (connectivity check with USE-CANDIDATE
552
+ * attribute) after all components have a valid pair.
553
+ *
554
+ * Default value is PJ_ICE_NOMINATED_CHECK_DELAY.
555
+ */
556
+ unsigned iceNominatedCheckDelayMsec;
557
+
558
+ /**
559
+ * For a controlled agent, specify how long it wants to wait (in
560
+ * milliseconds) for the controlling agent to complete sending
561
+ * connectivity check with nominated flag set to true for all components
562
+ * after the controlled agent has found that all connectivity checks in
563
+ * its checklist have been completed and there is at least one successful
564
+ * (but not nominated) check for every component.
565
+ *
566
+ * Default value for this option is
567
+ * ICE_CONTROLLED_AGENT_WAIT_NOMINATION_TIMEOUT. Specify -1 to disable
568
+ * this timer.
569
+ */
570
+ int iceWaitNominationTimeoutMsec;
571
+
572
+ /**
573
+ * Disable RTCP component.
574
+ *
575
+ * Default: False
576
+ */
577
+ bool iceNoRtcp;
578
+
579
+ /**
580
+ * Always send re-INVITE/UPDATE after ICE negotiation regardless of whether
581
+ * the default ICE transport address is changed or not. When this is set
582
+ * to False, re-INVITE/UPDATE will be sent only when the default ICE
583
+ * transport address is changed.
584
+ *
585
+ * Default: yes
586
+ */
587
+ bool iceAlwaysUpdate;
588
+
589
+ /**
590
+ * Enable TURN candidate in ICE.
591
+ */
592
+ bool turnEnabled;
593
+
594
+ /**
595
+ * Specify TURN domain name or host name, in in "DOMAIN:PORT" or
596
+ * "HOST:PORT" format.
597
+ */
598
+ string turnServer;
599
+
600
+ /**
601
+ * Specify the connection type to be used to the TURN server. Valid
602
+ * values are PJ_TURN_TP_UDP or PJ_TURN_TP_TCP.
603
+ *
604
+ * Default: PJ_TURN_TP_UDP
605
+ */
606
+ pj_turn_tp_type turnConnType;
607
+
608
+ /**
609
+ * Specify the username to authenticate with the TURN server.
610
+ */
611
+ string turnUserName;
612
+
613
+ /**
614
+ * Specify the type of password. Currently this must be zero to
615
+ * indicate plain-text password will be used in the password.
616
+ */
617
+ int turnPasswordType;
618
+
619
+ /**
620
+ * Specify the password to authenticate with the TURN server.
621
+ */
622
+ string turnPassword;
623
+
624
+ /**
625
+ * This option is used to update the transport address and the Contact
626
+ * header of REGISTER request. When this option is enabled, the library
627
+ * will keep track of the public IP address from the response of REGISTER
628
+ * request. Once it detects that the address has changed, it will
629
+ * unregister current Contact, update the Contact with transport address
630
+ * learned from Via header, and register a new Contact to the registrar.
631
+ * This will also update the public name of UDP transport if STUN is
632
+ * configured.
633
+ *
634
+ * Possible values:
635
+ * * 0 (disabled).
636
+ * * 1 (enabled). Update except if both Contact and server's IP address
637
+ * are public but response contains private IP.
638
+ * * 2 (enabled). Update without exception.
639
+ *
640
+ * See also contactRewriteMethod field.
641
+ *
642
+ * Default: 1
643
+ */
644
+ int contactRewriteUse;
645
+
646
+ /**
647
+ * Specify how Contact update will be done with the registration, if
648
+ * \a contactRewriteEnabled is enabled. The value is bitmask combination of
649
+ * \a pjsua_contact_rewrite_method. See also pjsua_contact_rewrite_method.
650
+ *
651
+ * Value PJSUA_CONTACT_REWRITE_UNREGISTER(1) is the legacy behavior.
652
+ *
653
+ * Default value: PJSUA_CONTACT_REWRITE_METHOD
654
+ * (PJSUA_CONTACT_REWRITE_NO_UNREG | PJSUA_CONTACT_REWRITE_ALWAYS_UPDATE)
655
+ */
656
+ int contactRewriteMethod;
657
+
658
+ /**
659
+ * Specify if source TCP port should be used as the initial Contact
660
+ * address if TCP/TLS transport is used. Note that this feature will
661
+ * be automatically turned off when nameserver is configured because
662
+ * it may yield different destination address due to DNS SRV resolution.
663
+ * Also some platforms are unable to report the local address of the
664
+ * TCP socket when it is still connecting. In these cases, this
665
+ * feature will also be turned off.
666
+ *
667
+ * Default: 1 (PJ_TRUE / yes).
668
+ */
669
+ int contactUseSrcPort;
670
+
671
+ /**
672
+ * This option is used to overwrite the "sent-by" field of the Via header
673
+ * for outgoing messages with the same interface address as the one in
674
+ * the REGISTER request, as long as the request uses the same transport
675
+ * instance as the previous REGISTER request.
676
+ *
677
+ * Default: 1 (PJ_TRUE / yes)
678
+ */
679
+ int viaRewriteUse;
680
+
681
+ /**
682
+ * This option controls whether the IP address in SDP should be replaced
683
+ * with the IP address found in Via header of the REGISTER response, ONLY
684
+ * when STUN and ICE are not used. If the value is FALSE (the original
685
+ * behavior), then the local IP address will be used. If TRUE, and when
686
+ * STUN and ICE are disabled, then the IP address found in registration
687
+ * response will be used.
688
+ *
689
+ * Default: PJ_FALSE (no)
690
+ */
691
+ int sdpNatRewriteUse;
692
+
693
+ /**
694
+ * Control the use of SIP outbound feature. SIP outbound is described in
695
+ * RFC 5626 to enable proxies or registrar to send inbound requests back
696
+ * to UA using the same connection initiated by the UA for its
697
+ * registration. This feature is highly useful in NAT-ed deployemtns,
698
+ * hence it is enabled by default.
699
+ *
700
+ * Note: currently SIP outbound can only be used with TCP and TLS
701
+ * transports. If UDP is used for the registration, the SIP outbound
702
+ * feature will be silently ignored for the account.
703
+ *
704
+ * Default: 1 (PJ_TRUE / yes)
705
+ */
706
+ int sipOutboundUse;
707
+
708
+ /**
709
+ * Specify SIP outbound (RFC 5626) instance ID to be used by this
710
+ * account. If empty, an instance ID will be generated based on
711
+ * the hostname of this agent. If application specifies this parameter, the
712
+ * value will look like "<urn:uuid:00000000-0000-1000-8000-AABBCCDDEEFF>"
713
+ * without the double-quotes.
714
+ *
715
+ * Default: empty
716
+ */
717
+ string sipOutboundInstanceId;
718
+
719
+ /**
720
+ * Specify SIP outbound (RFC 5626) registration ID. The default value
721
+ * is empty, which would cause the library to automatically generate
722
+ * a suitable value.
723
+ *
724
+ * Default: empty
725
+ */
726
+ string sipOutboundRegId;
727
+
728
+ /**
729
+ * Set the interval for periodic keep-alive transmission for this account.
730
+ * If this value is zero, keep-alive will be disabled for this account.
731
+ * The keep-alive transmission will be sent to the registrar's address,
732
+ * after successful registration.
733
+ *
734
+ * Default: 15 (seconds)
735
+ */
736
+ unsigned udpKaIntervalSec;
737
+
738
+ /**
739
+ * Specify the data to be transmitted as keep-alive packets.
740
+ *
741
+ * Default: CR-LF
742
+ */
743
+ string udpKaData;
744
+
745
+ public:
746
+ /**
747
+ * Default constructor
748
+ */
749
+ AccountNatConfig() : sipStunUse(PJSUA_STUN_USE_DEFAULT),
750
+ mediaStunUse(PJSUA_STUN_USE_DEFAULT),
751
+ sipUpnpUse(PJSUA_UPNP_USE_DEFAULT),
752
+ mediaUpnpUse(PJSUA_UPNP_USE_DEFAULT),
753
+ nat64Opt(PJSUA_NAT64_DISABLED),
754
+ iceEnabled(false),
755
+ iceTrickle(PJ_ICE_SESS_TRICKLE_DISABLED),
756
+ iceMaxHostCands(-1),
757
+ iceAggressiveNomination(true),
758
+ iceNominatedCheckDelayMsec(PJ_ICE_NOMINATED_CHECK_DELAY),
759
+ iceWaitNominationTimeoutMsec(ICE_CONTROLLED_AGENT_WAIT_NOMINATION_TIMEOUT),
760
+ iceNoRtcp(false),
761
+ iceAlwaysUpdate(true),
762
+ turnEnabled(false),
763
+ turnConnType(PJ_TURN_TP_UDP),
764
+ turnPasswordType(0),
765
+ contactRewriteUse(PJ_TRUE),
766
+ contactRewriteMethod(PJSUA_CONTACT_REWRITE_METHOD),
767
+ contactUseSrcPort(PJ_TRUE),
768
+ viaRewriteUse(PJ_TRUE),
769
+ sdpNatRewriteUse(PJ_FALSE),
770
+ sipOutboundUse(PJ_TRUE),
771
+ udpKaIntervalSec(15),
772
+ udpKaData("\r\n")
773
+ {}
774
+
775
+ /**
776
+ * Read this object from a container node.
777
+ *
778
+ * @param node Container to read values from.
779
+ */
780
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
781
+
782
+ /**
783
+ * Write this object to a container node.
784
+ *
785
+ * @param node Container to write values to.
786
+ */
787
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
788
+ };
789
+
790
+ /**
791
+ * SRTP crypto.
792
+ */
793
+ struct SrtpCrypto
794
+ {
795
+ /**
796
+ * Optional key. If empty, a random key will be autogenerated.
797
+ */
798
+ string key;
799
+
800
+ /**
801
+ * Crypto name.
802
+ */
803
+ string name;
804
+
805
+ /**
806
+ * Flags, bitmask from #pjmedia_srtp_crypto_option
807
+ */
808
+ unsigned flags;
809
+
810
+ public:
811
+ /**
812
+ * Convert from pjsip
813
+ */
814
+ void fromPj(const pjmedia_srtp_crypto &prm);
815
+
816
+ /**
817
+ * Convert to pjsip
818
+ */
819
+ pjmedia_srtp_crypto toPj() const;
820
+ };
821
+
822
+ /** Array of SRTP cryptos. */
823
+ typedef std::vector<SrtpCrypto> SrtpCryptoVector;
824
+
825
+ /**
826
+ * SRTP settings.
827
+ */
828
+ struct SrtpOpt : public PersistentObject
829
+ {
830
+ /**
831
+ * Specify SRTP cryptos. If empty, all crypto will be enabled.
832
+ * Available crypto can be enumerated using Endpoint::srtpCryptoEnum().
833
+ *
834
+ * Default: empty.
835
+ */
836
+ SrtpCryptoVector cryptos;
837
+
838
+ /**
839
+ * Specify SRTP keying methods, valid keying method is defined in
840
+ * pjmedia_srtp_keying_method. If empty, all keying methods will be
841
+ * enabled with priority order: SDES, DTLS-SRTP.
842
+ *
843
+ * Default: empty.
844
+ */
845
+ IntVector keyings;
846
+
847
+ public:
848
+ /**
849
+ * Default constructor initializes with default values.
850
+ */
851
+ SrtpOpt();
852
+
853
+ /**
854
+ * Convert from pjsip
855
+ */
856
+ void fromPj(const pjsua_srtp_opt &prm);
857
+
858
+ /**
859
+ * Convert to pjsip
860
+ */
861
+ pjsua_srtp_opt toPj() const;
862
+
863
+ public:
864
+ /**
865
+ * Read this object from a container node.
866
+ *
867
+ * @param node Container to read values from.
868
+ */
869
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
870
+
871
+ /**
872
+ * Write this object to a container node.
873
+ *
874
+ * @param node Container to write values to.
875
+ */
876
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
877
+ };
878
+
879
+ /**
880
+ * RTCP Feedback capability.
881
+ */
882
+ struct RtcpFbCap
883
+ {
884
+ /**
885
+ * Specify the codecs to which the capability is applicable. Codec ID is
886
+ * using the same format as in pjmedia_codec_mgr_find_codecs_by_id() and
887
+ * pjmedia_vid_codec_mgr_find_codecs_by_id(), e.g: "L16/8000/1", "PCMU",
888
+ * "H264". This can also be an asterisk ("*") to represent all codecs.
889
+ */
890
+ string codecId;
891
+
892
+ /**
893
+ * Specify the RTCP Feedback type.
894
+ */
895
+ pjmedia_rtcp_fb_type type;
896
+
897
+ /**
898
+ * Specify the type name if RTCP Feedback type is PJMEDIA_RTCP_FB_OTHER.
899
+ */
900
+ string typeName;
901
+
902
+ /**
903
+ * Specify the RTCP Feedback parameters.
904
+ */
905
+ string param;
906
+
907
+ public:
908
+ /**
909
+ * Constructor.
910
+ */
911
+ RtcpFbCap() : type(PJMEDIA_RTCP_FB_OTHER)
912
+ {}
913
+
914
+ /**
915
+ * Convert from pjsip
916
+ */
917
+ void fromPj(const pjmedia_rtcp_fb_cap &prm);
918
+
919
+ /**
920
+ * Convert to pjsip
921
+ */
922
+ pjmedia_rtcp_fb_cap toPj() const;
923
+ };
924
+
925
+ /** Array of RTCP Feedback capabilities. */
926
+ typedef std::vector<RtcpFbCap> RtcpFbCapVector;
927
+
928
+
929
+ /**
930
+ * RTCP Feedback settings.
931
+ */
932
+ struct RtcpFbConfig : public PersistentObject
933
+ {
934
+ /**
935
+ * Specify whether transport protocol in SDP media description uses
936
+ * RTP/AVP instead of RTP/AVPF. Note that the standard mandates to signal
937
+ * AVPF profile, but it may cause SDP negotiation failure when negotiating
938
+ * with endpoints that does not support RTCP Feedback (including older
939
+ * version of PJSIP).
940
+ *
941
+ * Default: false.
942
+ */
943
+ bool dontUseAvpf;
944
+
945
+ /**
946
+ * RTCP Feedback capabilities.
947
+ */
948
+ RtcpFbCapVector caps;
949
+
950
+ public:
951
+ /**
952
+ * Constructor.
953
+ */
954
+ RtcpFbConfig();
955
+
956
+ /**
957
+ * Convert from pjsip
958
+ */
959
+ void fromPj(const pjmedia_rtcp_fb_setting &prm);
960
+
961
+ /**
962
+ * Convert to pjsip
963
+ */
964
+ pjmedia_rtcp_fb_setting toPj() const;
965
+
966
+ public:
967
+ /**
968
+ * Read this object from a container node.
969
+ *
970
+ * @param node Container to read values from.
971
+ */
972
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
973
+
974
+ /**
975
+ * Write this object to a container node.
976
+ *
977
+ * @param node Container to write values to.
978
+ */
979
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
980
+ };
981
+
982
+ /**
983
+ * Account media config (applicable for both audio and video). This will be
984
+ * specified in AccountConfig.
985
+ */
986
+ struct AccountMediaConfig : public PersistentObject
987
+ {
988
+ /**
989
+ * Media transport (RTP) configuration.
990
+ *
991
+ * For \a port and \a portRange settings, RTCP port is selected as
992
+ * RTP port+1.
993
+ * Example: \a port=5000, \a portRange=4
994
+ * - Available ports: 5000, 5002, 5004 (Media/RTP transport)
995
+ * 5001, 5003, 5005 (Media/RTCP transport)
996
+ */
997
+ TransportConfig transportConfig;
998
+
999
+ /**
1000
+ * If remote sends SDP answer containing more than one format or codec in
1001
+ * the media line, send re-INVITE or UPDATE with just one codec to lock
1002
+ * which codec to use.
1003
+ *
1004
+ * Default: True (Yes).
1005
+ */
1006
+ bool lockCodecEnabled;
1007
+
1008
+ /**
1009
+ * Specify whether stream keep-alive and NAT hole punching with
1010
+ * non-codec-VAD mechanism (see PJMEDIA_STREAM_ENABLE_KA) is enabled
1011
+ * for this account.
1012
+ *
1013
+ * Default: False
1014
+ */
1015
+ bool streamKaEnabled;
1016
+
1017
+ /**
1018
+ * Specify whether secure media transport should be used for this account.
1019
+ * Valid values are PJMEDIA_SRTP_DISABLED, PJMEDIA_SRTP_OPTIONAL, and
1020
+ * PJMEDIA_SRTP_MANDATORY.
1021
+ *
1022
+ * Default: PJSUA_DEFAULT_USE_SRTP
1023
+ */
1024
+ pjmedia_srtp_use srtpUse;
1025
+
1026
+ /**
1027
+ * Specify whether SRTP requires secure signaling to be used. This option
1028
+ * is only used when \a use_srtp option above is non-zero.
1029
+ *
1030
+ * Valid values are:
1031
+ * 0: SRTP does not require secure signaling
1032
+ * 1: SRTP requires secure transport such as TLS
1033
+ * 2: SRTP requires secure end-to-end transport (SIPS)
1034
+ *
1035
+ * Default: PJSUA_DEFAULT_SRTP_SECURE_SIGNALING
1036
+ */
1037
+ int srtpSecureSignaling;
1038
+
1039
+ /**
1040
+ * Specify SRTP settings, like cryptos and keying methods.
1041
+ */
1042
+ SrtpOpt srtpOpt;
1043
+
1044
+ /**
1045
+ * Specify whether IPv6 should be used on media.
1046
+ *
1047
+ * Default: PJSUA_IPV6_ENABLED_PREFER_IPV4
1048
+ * (Dual stack media, capable to use IPv4/IPv6.
1049
+ * Outgoing offer will prefer to use IPv4)
1050
+ */
1051
+ pjsua_ipv6_use ipv6Use;
1052
+
1053
+ /**
1054
+ * Enable RTP and RTCP multiplexing.
1055
+ * Default: false
1056
+ */
1057
+ bool rtcpMuxEnabled;
1058
+
1059
+ /**
1060
+ * RTCP Feedback settings.
1061
+ */
1062
+ RtcpFbConfig rtcpFbConfig;
1063
+
1064
+ /**
1065
+ * Enable RTCP Extended Report (RTCP XR).
1066
+ *
1067
+ * Default: PJMEDIA_STREAM_ENABLE_XR
1068
+ */
1069
+ bool rtcpXrEnabled;
1070
+
1071
+ /**
1072
+ * Use loopback media transport. This may be useful if application
1073
+ * doesn't want PJSUA2 to create real media transports/sockets, such as
1074
+ * when using third party media.
1075
+ *
1076
+ * Default: false
1077
+ */
1078
+ bool useLoopMedTp;
1079
+
1080
+ /**
1081
+ * Enable local loopback when useLoopMedTp is set to TRUE.
1082
+ * If enabled, packets sent to the transport will be sent back to
1083
+ * the streams attached to the transport.
1084
+ *
1085
+ * Default: false
1086
+ */
1087
+ bool enableLoopback;
1088
+
1089
+ public:
1090
+ /**
1091
+ * Default constructor
1092
+ */
1093
+ AccountMediaConfig()
1094
+ : lockCodecEnabled(true),
1095
+ streamKaEnabled(false),
1096
+ srtpUse(PJSUA_DEFAULT_USE_SRTP),
1097
+ srtpSecureSignaling(PJSUA_DEFAULT_SRTP_SECURE_SIGNALING),
1098
+ ipv6Use(PJSUA_IPV6_ENABLED_PREFER_IPV4),
1099
+ rtcpMuxEnabled(false),
1100
+ rtcpXrEnabled(PJMEDIA_STREAM_ENABLE_XR),
1101
+ useLoopMedTp(false),
1102
+ enableLoopback(false)
1103
+ {}
1104
+
1105
+ /**
1106
+ * Read this object from a container node.
1107
+ *
1108
+ * @param node Container to read values from.
1109
+ */
1110
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
1111
+
1112
+ /**
1113
+ * Write this object to a container node.
1114
+ *
1115
+ * @param node Container to write values to.
1116
+ */
1117
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
1118
+ };
1119
+
1120
+ /**
1121
+ * Account video config. This will be specified in AccountConfig.
1122
+ */
1123
+ struct AccountVideoConfig : public PersistentObject
1124
+ {
1125
+ /**
1126
+ * Specify whether incoming video should be shown to screen by default.
1127
+ * This applies to incoming call (INVITE), incoming re-INVITE, and
1128
+ * incoming UPDATE requests.
1129
+ *
1130
+ * Regardless of this setting, application can detect incoming video
1131
+ * by implementing \a on_call_media_state() callback and enumerating
1132
+ * the media stream(s) with pjsua_call_get_info(). Once incoming
1133
+ * video is recognised, application may retrieve the window associated
1134
+ * with the incoming video and show or hide it with
1135
+ * pjsua_vid_win_set_show().
1136
+ *
1137
+ * Default: False
1138
+ */
1139
+ bool autoShowIncoming;
1140
+
1141
+ /**
1142
+ * Specify whether outgoing video should be activated by default when
1143
+ * making outgoing calls and/or when incoming video is detected. This
1144
+ * applies to incoming and outgoing calls, incoming re-INVITE, and
1145
+ * incoming UPDATE. If the setting is non-zero, outgoing video
1146
+ * transmission will be started as soon as response to these requests
1147
+ * is sent (or received).
1148
+ *
1149
+ * Regardless of the value of this setting, application can start and
1150
+ * stop outgoing video transmission with pjsua_call_set_vid_strm().
1151
+ *
1152
+ * Default: False
1153
+ */
1154
+ bool autoTransmitOutgoing;
1155
+
1156
+ /**
1157
+ * Specify video window's flags. The value is a bitmask combination of
1158
+ * pjmedia_vid_dev_wnd_flag.
1159
+ *
1160
+ * Default: 0
1161
+ */
1162
+ unsigned windowFlags;
1163
+
1164
+ /**
1165
+ * Specify the default capture device to be used by this account. If
1166
+ * vidOutAutoTransmit is enabled, this device will be used for
1167
+ * capturing video.
1168
+ *
1169
+ * Default: PJMEDIA_VID_DEFAULT_CAPTURE_DEV
1170
+ */
1171
+ pjmedia_vid_dev_index defaultCaptureDevice;
1172
+
1173
+ /**
1174
+ * Specify the default rendering device to be used by this account.
1175
+ *
1176
+ * Default: PJMEDIA_VID_DEFAULT_RENDER_DEV
1177
+ */
1178
+ pjmedia_vid_dev_index defaultRenderDevice;
1179
+
1180
+ /**
1181
+ * Rate control method.
1182
+ *
1183
+ * Default: PJMEDIA_VID_STREAM_RC_SIMPLE_BLOCKING.
1184
+ */
1185
+ pjmedia_vid_stream_rc_method rateControlMethod;
1186
+
1187
+ /**
1188
+ * Upstream/outgoing bandwidth. If this is set to zero, the video stream
1189
+ * will use codec maximum bitrate setting.
1190
+ *
1191
+ * Default: 0 (follow codec maximum bitrate).
1192
+ */
1193
+ unsigned rateControlBandwidth;
1194
+
1195
+ /**
1196
+ * The number of keyframe to be sent after the stream is created.
1197
+ *
1198
+ * Default: PJMEDIA_VID_STREAM_START_KEYFRAME_CNT
1199
+ */
1200
+ unsigned startKeyframeCount;
1201
+
1202
+ /**
1203
+ * The keyframe sending interval after the stream is created.
1204
+ *
1205
+ * Default: PJMEDIA_VID_STREAM_START_KEYFRAME_INTERVAL_MSEC
1206
+ */
1207
+ unsigned startKeyframeInterval;
1208
+
1209
+
1210
+ public:
1211
+ /**
1212
+ * Default constructor
1213
+ */
1214
+ AccountVideoConfig()
1215
+ : autoShowIncoming(false),
1216
+ autoTransmitOutgoing(false),
1217
+ windowFlags(0),
1218
+ defaultCaptureDevice(PJMEDIA_VID_DEFAULT_CAPTURE_DEV),
1219
+ defaultRenderDevice(PJMEDIA_VID_DEFAULT_RENDER_DEV),
1220
+ rateControlMethod(PJMEDIA_VID_STREAM_RC_SIMPLE_BLOCKING),
1221
+ rateControlBandwidth(0),
1222
+ startKeyframeCount(PJMEDIA_VID_STREAM_START_KEYFRAME_CNT),
1223
+ startKeyframeInterval(PJMEDIA_VID_STREAM_START_KEYFRAME_INTERVAL_MSEC)
1224
+ {}
1225
+
1226
+ /**
1227
+ * Read this object from a container node.
1228
+ *
1229
+ * @param node Container to read values from.
1230
+ */
1231
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
1232
+
1233
+ /**
1234
+ * Write this object to a container node.
1235
+ *
1236
+ * @param node Container to write values to.
1237
+ */
1238
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
1239
+ };
1240
+
1241
+ /**
1242
+ * Account config specific to IP address change.
1243
+ */
1244
+ typedef struct AccountIpChangeConfig
1245
+ {
1246
+ /**
1247
+ * Shutdown the transport used for account registration. If this is set to
1248
+ * PJ_TRUE, the transport will be shutdown altough it's used by multiple
1249
+ * account. Shutdown transport will be followed by re-Registration if
1250
+ * AccountConfig.natConfig.contactRewriteUse is enabled.
1251
+ *
1252
+ * Default: true
1253
+ */
1254
+ bool shutdownTp;
1255
+
1256
+ /**
1257
+ * Hangup active calls associated with the acount. If this is set to true,
1258
+ * then the calls will be hang up.
1259
+ *
1260
+ * Default: false
1261
+ */
1262
+ bool hangupCalls;
1263
+
1264
+ /**
1265
+ * Specify the call flags used in the re-INVITE when \a hangupCalls is set
1266
+ * to false. If this is set to 0, no re-INVITE will be sent. The
1267
+ * re-INVITE will be sent after re-Registration is finished.
1268
+ *
1269
+ * Default: PJSUA_CALL_REINIT_MEDIA | PJSUA_CALL_UPDATE_CONTACT |
1270
+ * PJSUA_CALL_UPDATE_VIA
1271
+ */
1272
+ unsigned reinviteFlags;
1273
+
1274
+ /**
1275
+ * For refreshing the call, use SIP UPDATE, instead of re-INVITE, if
1276
+ * remote supports it (by publishing it in Allow header). If remote
1277
+ * does not support UPDATE method or somehow the UPDATE attempt fails,
1278
+ * it will fallback to using re-INVITE. The \a reinviteFlags will be
1279
+ * used regardless whether it is re-INVITE or UPDATE that is sent.
1280
+ *
1281
+ * Default: PJ_FALSE (using re-INVITE).
1282
+ */
1283
+ unsigned reinvUseUpdate;
1284
+
1285
+ public:
1286
+ /**
1287
+ * Virtual destructor
1288
+ */
1289
+ virtual ~AccountIpChangeConfig()
1290
+ {}
1291
+
1292
+ /**
1293
+ * Read this object from a container node.
1294
+ *
1295
+ * @param node Container to read values from.
1296
+ */
1297
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
1298
+
1299
+ /**
1300
+ * Write this object to a container node.
1301
+ *
1302
+ * @param node Container to write values to.
1303
+ */
1304
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
1305
+
1306
+ } AccountIpChangeConfig;
1307
+
1308
+ /**
1309
+ * Account configuration.
1310
+ */
1311
+ struct AccountConfig : public PersistentObject
1312
+ {
1313
+ /**
1314
+ * Account priority, which is used to control the order of matching
1315
+ * incoming/outgoing requests. The higher the number means the higher
1316
+ * the priority is, and the account will be matched first.
1317
+ */
1318
+ int priority;
1319
+
1320
+ /**
1321
+ * The Address of Record or AOR, that is full SIP URL that identifies the
1322
+ * account. The value can take name address or URL format, and will look
1323
+ * something like "sip:account@serviceprovider".
1324
+ *
1325
+ * This field is mandatory.
1326
+ */
1327
+ string idUri;
1328
+
1329
+ /**
1330
+ * Registration settings.
1331
+ */
1332
+ AccountRegConfig regConfig;
1333
+
1334
+ /**
1335
+ * SIP settings.
1336
+ */
1337
+ AccountSipConfig sipConfig;
1338
+
1339
+ /**
1340
+ * Call settings.
1341
+ */
1342
+ AccountCallConfig callConfig;
1343
+
1344
+ /**
1345
+ * Presence settings.
1346
+ */
1347
+ AccountPresConfig presConfig;
1348
+
1349
+ /**
1350
+ * MWI (Message Waiting Indication) settings.
1351
+ */
1352
+ AccountMwiConfig mwiConfig;
1353
+
1354
+ /**
1355
+ * NAT settings.
1356
+ */
1357
+ AccountNatConfig natConfig;
1358
+
1359
+ /**
1360
+ * Media settings (applicable for both audio and video).
1361
+ */
1362
+ AccountMediaConfig mediaConfig;
1363
+
1364
+ /**
1365
+ * Video settings.
1366
+ */
1367
+ AccountVideoConfig videoConfig;
1368
+
1369
+ /**
1370
+ * IP Change settings.
1371
+ */
1372
+ AccountIpChangeConfig ipChangeConfig;
1373
+
1374
+ public:
1375
+ /**
1376
+ * Default constructor will initialize with default values.
1377
+ */
1378
+ AccountConfig();
1379
+
1380
+ /**
1381
+ * This will return a temporary pjsua_acc_config instance, which contents
1382
+ * are only valid as long as this AccountConfig structure remains valid
1383
+ * AND no modifications are done to it AND no further toPj() function call
1384
+ * is made. Any call to toPj() function will invalidate the content of
1385
+ * temporary pjsua_acc_config that was returned by the previous call.
1386
+ */
1387
+ void toPj(pjsua_acc_config &cfg) const;
1388
+
1389
+ /**
1390
+ * Initialize from pjsip.
1391
+ */
1392
+ void fromPj(const pjsua_acc_config &prm, const pjsua_media_config *mcfg);
1393
+
1394
+ /**
1395
+ * Read this object from a container node.
1396
+ *
1397
+ * @param node Container to read values from.
1398
+ */
1399
+ virtual void readObject(const ContainerNode &node) PJSUA2_THROW(Error);
1400
+
1401
+ /**
1402
+ * Write this object to a container node.
1403
+ *
1404
+ * @param node Container to write values to.
1405
+ */
1406
+ virtual void writeObject(ContainerNode &node) const PJSUA2_THROW(Error);
1407
+ };
1408
+
1409
+
1410
+ /**
1411
+ * Account information. Application can query the account information
1412
+ * by calling Account::getInfo().
1413
+ */
1414
+ struct AccountInfo
1415
+ {
1416
+ /**
1417
+ * The account ID.
1418
+ */
1419
+ pjsua_acc_id id;
1420
+
1421
+ /**
1422
+ * Flag to indicate whether this is the default account.
1423
+ */
1424
+ bool isDefault;
1425
+
1426
+ /**
1427
+ * Account URI
1428
+ */
1429
+ string uri;
1430
+
1431
+ /**
1432
+ * Flag to tell whether this account has registration setting
1433
+ * (reg_uri is not empty).
1434
+ */
1435
+ bool regIsConfigured;
1436
+
1437
+ /**
1438
+ * Flag to tell whether this account is currently registered
1439
+ * (has active registration session).
1440
+ */
1441
+ bool regIsActive;
1442
+
1443
+ /**
1444
+ * An up to date expiration interval for account registration session.
1445
+ */
1446
+ unsigned regExpiresSec;
1447
+
1448
+ /**
1449
+ * Last registration status code. If status code is zero, the account
1450
+ * is currently not registered. Any other value indicates the SIP
1451
+ * status code of the registration.
1452
+ */
1453
+ pjsip_status_code regStatus;
1454
+
1455
+ /**
1456
+ * String describing the registration status.
1457
+ */
1458
+ string regStatusText;
1459
+
1460
+ /**
1461
+ * Last registration error code. When the status field contains a SIP
1462
+ * status code that indicates a registration failure, last registration
1463
+ * error code contains the error code that causes the failure. In any
1464
+ * other case, its value is zero.
1465
+ */
1466
+ pj_status_t regLastErr;
1467
+
1468
+ /**
1469
+ * Presence online status for this account.
1470
+ */
1471
+ bool onlineStatus;
1472
+
1473
+ /**
1474
+ * Presence online status text.
1475
+ */
1476
+ string onlineStatusText;
1477
+
1478
+ public:
1479
+ /**
1480
+ * Default constructor
1481
+ */
1482
+ AccountInfo() : id(PJSUA_INVALID_ID),
1483
+ isDefault(false),
1484
+ regIsConfigured(false),
1485
+ regIsActive(false),
1486
+ regExpiresSec(0),
1487
+ regStatus(PJSIP_SC_NULL),
1488
+ regLastErr(-1),
1489
+ onlineStatus(false)
1490
+ {}
1491
+
1492
+ /** Import from pjsip data */
1493
+ void fromPj(const pjsua_acc_info &pai);
1494
+ };
1495
+
1496
+ /**
1497
+ * This structure contains parameters for onIncomingCall() account callback.
1498
+ */
1499
+ struct OnIncomingCallParam
1500
+ {
1501
+ /**
1502
+ * The library call ID allocated for the new call.
1503
+ */
1504
+ int callId;
1505
+
1506
+ /**
1507
+ * The incoming INVITE request.
1508
+ */
1509
+ SipRxData rdata;
1510
+ };
1511
+
1512
+ /**
1513
+ * This structure contains parameters for onRegStarted() account callback.
1514
+ */
1515
+ struct OnRegStartedParam
1516
+ {
1517
+ /**
1518
+ * True for registration and False for unregistration.
1519
+ */
1520
+ bool renew;
1521
+ };
1522
+
1523
+ /**
1524
+ * This structure contains parameters for onRegState() account callback.
1525
+ */
1526
+ struct OnRegStateParam
1527
+ {
1528
+ /**
1529
+ * Registration operation status.
1530
+ */
1531
+ pj_status_t status;
1532
+
1533
+ /**
1534
+ * SIP status code received.
1535
+ */
1536
+ pjsip_status_code code;
1537
+
1538
+ /**
1539
+ * SIP reason phrase received.
1540
+ */
1541
+ string reason;
1542
+
1543
+ /**
1544
+ * The incoming message.
1545
+ */
1546
+ SipRxData rdata;
1547
+
1548
+ /**
1549
+ * Next expiration interval.
1550
+ */
1551
+ unsigned expiration;
1552
+ };
1553
+
1554
+ /**
1555
+ * This structure contains parameters for onIncomingSubscribe() callback.
1556
+ */
1557
+ struct OnIncomingSubscribeParam
1558
+ {
1559
+ /**
1560
+ * Server presence subscription instance. If application delays
1561
+ * the acceptance of the request, it will need to specify this object
1562
+ * when calling Account::presNotify().
1563
+ */
1564
+ void *srvPres;
1565
+
1566
+ /**
1567
+ * Sender URI.
1568
+ */
1569
+ string fromUri;
1570
+
1571
+ /**
1572
+ * The incoming message.
1573
+ */
1574
+ SipRxData rdata;
1575
+
1576
+ /**
1577
+ * The status code to respond to the request. The default value is 200.
1578
+ * Application may set this to other final status code to accept or
1579
+ * reject the request.
1580
+ */
1581
+ pjsip_status_code code;
1582
+
1583
+ /**
1584
+ * The reason phrase to respond to the request.
1585
+ */
1586
+ string reason;
1587
+
1588
+ /**
1589
+ * Additional data to be sent with the response, if any.
1590
+ */
1591
+ SipTxOption txOption;
1592
+ };
1593
+
1594
+ /**
1595
+ * Parameters for onInstantMessage() account callback.
1596
+ */
1597
+ struct OnInstantMessageParam
1598
+ {
1599
+ /**
1600
+ * Sender From URI.
1601
+ */
1602
+ string fromUri;
1603
+
1604
+ /**
1605
+ * To URI of the request.
1606
+ */
1607
+ string toUri;
1608
+
1609
+ /**
1610
+ * Contact URI of the sender.
1611
+ */
1612
+ string contactUri;
1613
+
1614
+ /**
1615
+ * MIME type of the message body.
1616
+ */
1617
+ string contentType;
1618
+
1619
+ /**
1620
+ * The message body.
1621
+ */
1622
+ string msgBody;
1623
+
1624
+ /**
1625
+ * The whole message.
1626
+ */
1627
+ SipRxData rdata;
1628
+ };
1629
+
1630
+ /**
1631
+ * Parameters for onInstantMessageStatus() account callback.
1632
+ */
1633
+ struct OnInstantMessageStatusParam
1634
+ {
1635
+ /**
1636
+ * Token or a user data that was associated with the pager
1637
+ * transmission.
1638
+ */
1639
+ Token userData;
1640
+
1641
+ /**
1642
+ * Destination URI.
1643
+ */
1644
+ string toUri;
1645
+
1646
+ /**
1647
+ * The message body.
1648
+ */
1649
+ string msgBody;
1650
+
1651
+ /**
1652
+ * The SIP status code of the transaction.
1653
+ */
1654
+ pjsip_status_code code;
1655
+
1656
+ /**
1657
+ * The reason phrase of the transaction.
1658
+ */
1659
+ string reason;
1660
+
1661
+ /**
1662
+ * The incoming response that causes this callback to be called.
1663
+ * If the transaction fails because of time out or transport error,
1664
+ * the content will be empty.
1665
+ */
1666
+ SipRxData rdata;
1667
+ };
1668
+
1669
+ /**
1670
+ * Parameters for onTypingIndication() account callback.
1671
+ */
1672
+ struct OnTypingIndicationParam
1673
+ {
1674
+ /**
1675
+ * Sender/From URI.
1676
+ */
1677
+ string fromUri;
1678
+
1679
+ /**
1680
+ * To URI.
1681
+ */
1682
+ string toUri;
1683
+
1684
+ /**
1685
+ * The Contact URI.
1686
+ */
1687
+ string contactUri;
1688
+
1689
+ /**
1690
+ * Boolean to indicate if sender is typing.
1691
+ */
1692
+ bool isTyping;
1693
+
1694
+ /**
1695
+ * The whole message buffer.
1696
+ */
1697
+ SipRxData rdata;
1698
+ };
1699
+
1700
+ /**
1701
+ * Parameters for onMwiInfo() account callback.
1702
+ */
1703
+ struct OnMwiInfoParam
1704
+ {
1705
+ /**
1706
+ * MWI subscription state.
1707
+ */
1708
+ pjsip_evsub_state state;
1709
+
1710
+ /**
1711
+ * The whole message buffer.
1712
+ */
1713
+ SipRxData rdata;
1714
+ };
1715
+
1716
+ /**
1717
+ * Parameters for presNotify() account method.
1718
+ */
1719
+ struct PresNotifyParam
1720
+ {
1721
+ /**
1722
+ * Server presence subscription instance.
1723
+ */
1724
+ void *srvPres;
1725
+
1726
+ /**
1727
+ * Server presence subscription state to set.
1728
+ */
1729
+ pjsip_evsub_state state;
1730
+
1731
+ /**
1732
+ * Optionally specify the state string name, if state is not "active",
1733
+ * "pending", or "terminated".
1734
+ */
1735
+ string stateStr;
1736
+
1737
+ /**
1738
+ * If the new state is PJSIP_EVSUB_STATE_TERMINATED, optionally specify
1739
+ * the termination reason.
1740
+ */
1741
+ string reason;
1742
+
1743
+ /**
1744
+ * If the new state is PJSIP_EVSUB_STATE_TERMINATED, this specifies
1745
+ * whether the NOTIFY request should contain message body containing
1746
+ * account's presence information.
1747
+ */
1748
+ bool withBody;
1749
+
1750
+ /**
1751
+ * Optional list of headers to be sent with the NOTIFY request.
1752
+ */
1753
+ SipTxOption txOption;
1754
+ };
1755
+
1756
+
1757
+ /**
1758
+ * Wrapper class for Buddy matching algo.
1759
+ *
1760
+ * Default algo is a simple substring lookup of search-token in the
1761
+ * Buddy URIs, with case sensitive. Application can implement its own
1762
+ * matching algo by overriding this class and specifying its instance
1763
+ * in Account::findBuddy().
1764
+ */
1765
+ class FindBuddyMatch
1766
+ {
1767
+ public:
1768
+ /**
1769
+ * Default algo implementation.
1770
+ */
1771
+ virtual bool match(const string &token, const Buddy &buddy)
1772
+ {
1773
+ BuddyInfo bi = buddy.getInfo();
1774
+ return bi.uri.find(token) != string::npos;
1775
+ }
1776
+
1777
+ /**
1778
+ * Destructor.
1779
+ */
1780
+ virtual ~FindBuddyMatch() {}
1781
+ };
1782
+
1783
+
1784
+ /**
1785
+ * Account.
1786
+ */
1787
+ class Account
1788
+ {
1789
+ public:
1790
+ /**
1791
+ * Constructor.
1792
+ */
1793
+ Account();
1794
+
1795
+ /**
1796
+ * Destructor. Note that if the account is deleted, it will also delete
1797
+ * the corresponding account in the PJSUA-LIB.
1798
+ *
1799
+ * If application implements a derived class, the derived class should
1800
+ * call shutdown() in the beginning stage in its destructor, or
1801
+ * alternatively application should call shutdown() before deleting
1802
+ * the derived class instance. This is to avoid race condition between
1803
+ * the derived class destructor and Account callbacks.
1804
+ */
1805
+ virtual ~Account();
1806
+
1807
+ /**
1808
+ * Create the account.
1809
+ *
1810
+ * If application implements a derived class, the derived class should
1811
+ * call shutdown() in the beginning stage in its destructor, or
1812
+ * alternatively application should call shutdown() before deleting
1813
+ * the derived class instance. This is to avoid race condition between
1814
+ * the derived class destructor and Account callbacks.
1815
+ *
1816
+ * @param cfg The account config.
1817
+ * @param make_default Make this the default account.
1818
+ */
1819
+ void create(const AccountConfig &cfg,
1820
+ bool make_default=false) PJSUA2_THROW(Error);
1821
+
1822
+ /**
1823
+ * Shutdown the account. This will initiate unregistration if needed,
1824
+ * and delete the corresponding account in the PJSUA-LIB.
1825
+ *
1826
+ * Note that application must delete all Buddy instances belong to this
1827
+ * account before shutting down the account.
1828
+ *
1829
+ * If application implements a derived class, the derived class should
1830
+ * call this method in the beginning stage in its destructor, or
1831
+ * alternatively application should call this method before deleting
1832
+ * the derived class instance. This is to avoid race condition between
1833
+ * the derived class destructor and Account callbacks.
1834
+ */
1835
+ void shutdown();
1836
+
1837
+ /**
1838
+ * Modify the account to use the specified account configuration.
1839
+ * Depending on the changes, this may cause unregistration or
1840
+ * reregistration on the account.
1841
+ *
1842
+ * @param cfg New account config to be applied to the
1843
+ * account.
1844
+ */
1845
+ void modify(const AccountConfig &cfg) PJSUA2_THROW(Error);
1846
+
1847
+ /**
1848
+ * Check if this account is still valid.
1849
+ *
1850
+ * @return True if it is.
1851
+ */
1852
+ bool isValid() const;
1853
+
1854
+ /**
1855
+ * Set this as default account to be used when incoming and outgoing
1856
+ * requests don't match any accounts.
1857
+ */
1858
+ void setDefault() PJSUA2_THROW(Error);
1859
+
1860
+ /**
1861
+ * Check if this account is the default account. Default account will be
1862
+ * used for incoming and outgoing requests that don't match any other
1863
+ * accounts.
1864
+ *
1865
+ * @return True if this is the default account.
1866
+ */
1867
+ bool isDefault() const;
1868
+
1869
+ /**
1870
+ * Get PJSUA-LIB account ID or index associated with this account.
1871
+ *
1872
+ * @return Integer greater than or equal to zero.
1873
+ */
1874
+ int getId() const;
1875
+
1876
+ /**
1877
+ * Get the Account class for the specified account Id.
1878
+ *
1879
+ * @param acc_id The account ID to lookup
1880
+ *
1881
+ * @return The Account instance or NULL if not found.
1882
+ */
1883
+ static Account *lookup(int acc_id);
1884
+
1885
+ /**
1886
+ * Get account info.
1887
+ *
1888
+ * @return Account info.
1889
+ */
1890
+ AccountInfo getInfo() const PJSUA2_THROW(Error);
1891
+
1892
+ /**
1893
+ * Update registration or perform unregistration. Application normally
1894
+ * only needs to call this function if it wants to manually update the
1895
+ * registration or to unregister from the server.
1896
+ *
1897
+ * @param renew If False, this will start unregistration
1898
+ * process.
1899
+ */
1900
+ void setRegistration(bool renew) PJSUA2_THROW(Error);
1901
+
1902
+ /**
1903
+ * Set or modify account's presence online status to be advertised to
1904
+ * remote/presence subscribers. This would trigger the sending of
1905
+ * outgoing NOTIFY request if there are server side presence subscription
1906
+ * for this account, and/or outgoing PUBLISH if presence publication is
1907
+ * enabled for this account.
1908
+ *
1909
+ * @param pres_st Presence online status.
1910
+ */
1911
+ void setOnlineStatus(const PresenceStatus &pres_st) PJSUA2_THROW(Error);
1912
+
1913
+ /**
1914
+ * Lock/bind this account to a specific transport/listener. Normally
1915
+ * application shouldn't need to do this, as transports will be selected
1916
+ * automatically by the library according to the destination.
1917
+ *
1918
+ * When account is locked/bound to a specific transport, all outgoing
1919
+ * requests from this account will use the specified transport (this
1920
+ * includes SIP registration, dialog (call and event subscription), and
1921
+ * out-of-dialog requests such as MESSAGE).
1922
+ *
1923
+ * Note that transport id may be specified in AccountConfig too.
1924
+ *
1925
+ * @param tp_id The transport ID.
1926
+ */
1927
+ void setTransport(TransportId tp_id) PJSUA2_THROW(Error);
1928
+
1929
+ /**
1930
+ * Send NOTIFY to inform account presence status or to terminate server
1931
+ * side presence subscription. If application wants to reject the incoming
1932
+ * request, it should set the param \a PresNotifyParam.state to
1933
+ * PJSIP_EVSUB_STATE_TERMINATED.
1934
+ *
1935
+ * @param prm The sending NOTIFY parameter.
1936
+ */
1937
+ void presNotify(const PresNotifyParam &prm) PJSUA2_THROW(Error);
1938
+
1939
+ #if !DEPRECATED_FOR_TICKET_2232
1940
+ /**
1941
+ * Warning: deprecated, use enumBuddies2() instead. This function is not
1942
+ * safe in multithreaded environment.
1943
+ *
1944
+ * Enumerate all buddies of the account.
1945
+ *
1946
+ * @return The buddy list.
1947
+ */
1948
+ const BuddyVector& enumBuddies() const PJSUA2_THROW(Error);
1949
+ #endif
1950
+
1951
+ /**
1952
+ * Enumerate all buddies of the account.
1953
+ *
1954
+ * @return The buddy list.
1955
+ */
1956
+ BuddyVector2 enumBuddies2() const PJSUA2_THROW(Error);
1957
+
1958
+ #if !DEPRECATED_FOR_TICKET_2232
1959
+ /**
1960
+ * Warning: deprecated, use findBuddy2 instead. This function is not
1961
+ * safe in multithreaded environment.
1962
+ *
1963
+ * Find a buddy in the buddy list with the specified URI.
1964
+ *
1965
+ * Exception: if buddy is not found, PJ_ENOTFOUND will be thrown.
1966
+ *
1967
+ * @param uri The buddy URI.
1968
+ * @param buddy_match The buddy match algo.
1969
+ *
1970
+ * @return The pointer to buddy.
1971
+ */
1972
+ Buddy* findBuddy(string uri, FindBuddyMatch *buddy_match = NULL) const
1973
+ PJSUA2_THROW(Error);
1974
+ #endif
1975
+
1976
+ /**
1977
+ * Find a buddy in the buddy list with the specified URI.
1978
+ *
1979
+ * Exception: if buddy is not found, PJ_ENOTFOUND will be thrown.
1980
+ *
1981
+ * @param uri The buddy URI.
1982
+ *
1983
+ * @return The pointer to buddy.
1984
+ */
1985
+ Buddy findBuddy2(string uri) const PJSUA2_THROW(Error);
1986
+
1987
+ public:
1988
+ /*
1989
+ * Callbacks
1990
+ */
1991
+ /**
1992
+ * Notify application on incoming call.
1993
+ *
1994
+ * @param prm Callback parameter.
1995
+ */
1996
+ virtual void onIncomingCall(OnIncomingCallParam &prm)
1997
+ { PJ_UNUSED_ARG(prm); }
1998
+
1999
+ /**
2000
+ * Notify application when registration or unregistration has been
2001
+ * initiated. Note that this only notifies the initial registration
2002
+ * and unregistration. Once registration session is active, subsequent
2003
+ * refresh will not cause this callback to be called.
2004
+ *
2005
+ * @param prm Callback parameter.
2006
+ */
2007
+ virtual void onRegStarted(OnRegStartedParam &prm)
2008
+ { PJ_UNUSED_ARG(prm); }
2009
+
2010
+ /**
2011
+ * Notify application when registration status has changed.
2012
+ * Application may then query the account info to get the
2013
+ * registration details.
2014
+ *
2015
+ * @param prm Callback parameter.
2016
+ */
2017
+ virtual void onRegState(OnRegStateParam &prm)
2018
+ { PJ_UNUSED_ARG(prm); }
2019
+
2020
+ /**
2021
+ * Notification when incoming SUBSCRIBE request is received. Application
2022
+ * may use this callback to authorize the incoming subscribe request
2023
+ * (e.g. ask user permission if the request should be granted).
2024
+ *
2025
+ * If this callback is not implemented, all incoming presence subscription
2026
+ * requests will be accepted.
2027
+ *
2028
+ * If this callback is implemented, application has several choices on
2029
+ * what to do with the incoming request:
2030
+ * - it may reject the request immediately by specifying non-200 class
2031
+ * final response in the IncomingSubscribeParam.code parameter.
2032
+ * - it may immediately accept the request by specifying 200 as the
2033
+ * IncomingSubscribeParam.code parameter. This is the default value if
2034
+ * application doesn't set any value to the IncomingSubscribeParam.code
2035
+ * parameter. In this case, the library will automatically send NOTIFY
2036
+ * request upon returning from this callback.
2037
+ * - it may delay the processing of the request, for example to request
2038
+ * user permission whether to accept or reject the request. In this
2039
+ * case, the application MUST set the IncomingSubscribeParam.code
2040
+ * argument to 202, then IMMEDIATELY calls presNotify() with
2041
+ * state PJSIP_EVSUB_STATE_PENDING and later calls presNotify()
2042
+ * again to accept or reject the subscription request.
2043
+ *
2044
+ * Any IncomingSubscribeParam.code other than 200 and 202 will be treated
2045
+ * as 200.
2046
+ *
2047
+ * Application MUST return from this callback immediately (e.g. it must
2048
+ * not block in this callback while waiting for user confirmation).
2049
+ *
2050
+ * @param prm Callback parameter.
2051
+ */
2052
+ virtual void onIncomingSubscribe(OnIncomingSubscribeParam &prm)
2053
+ { PJ_UNUSED_ARG(prm); }
2054
+
2055
+ /**
2056
+ * Notify application on incoming instant message or pager (i.e. MESSAGE
2057
+ * request) that was received outside call context.
2058
+ *
2059
+ * @param prm Callback parameter.
2060
+ */
2061
+ virtual void onInstantMessage(OnInstantMessageParam &prm)
2062
+ { PJ_UNUSED_ARG(prm); }
2063
+
2064
+ /**
2065
+ * Notify application about the delivery status of outgoing pager/instant
2066
+ * message (i.e. MESSAGE) request.
2067
+ *
2068
+ * @param prm Callback parameter.
2069
+ */
2070
+ virtual void onInstantMessageStatus(OnInstantMessageStatusParam &prm)
2071
+ { PJ_UNUSED_ARG(prm); }
2072
+
2073
+ /**
2074
+ * Notify application about typing indication.
2075
+ *
2076
+ * @param prm Callback parameter.
2077
+ */
2078
+ virtual void onTypingIndication(OnTypingIndicationParam &prm)
2079
+ { PJ_UNUSED_ARG(prm); }
2080
+
2081
+ /**
2082
+ * Notification about MWI (Message Waiting Indication) status change.
2083
+ * This callback can be called upon the status change of the
2084
+ * SUBSCRIBE request (for example, 202/Accepted to SUBSCRIBE is received)
2085
+ * or when a NOTIFY reqeust is received.
2086
+ *
2087
+ * @param prm Callback parameter.
2088
+ */
2089
+ virtual void onMwiInfo(OnMwiInfoParam &prm)
2090
+ { PJ_UNUSED_ARG(prm); }
2091
+
2092
+ private:
2093
+ friend class Endpoint;
2094
+ friend class Buddy;
2095
+
2096
+ /**
2097
+ * An internal function to add a Buddy to Account buddy list.
2098
+ * This method is used by Buddy::create().
2099
+ */
2100
+ void addBuddy(Buddy *buddy);
2101
+
2102
+ /**
2103
+ * An internal function to remove a Buddy from Account buddy list.
2104
+ * This method is used by Buddy::~Buddy().
2105
+ */
2106
+ void removeBuddy(Buddy *buddy);
2107
+
2108
+ private:
2109
+ pjsua_acc_id id;
2110
+ string tmpReason; // for saving response's reason
2111
+ #if !DEPRECATED_FOR_TICKET_2232
2112
+ BuddyVector buddyList;
2113
+ #endif
2114
+ };
2115
+
2116
+ /**
2117
+ * @} // PJSUA2_ACC
2118
+ */
2119
+
2120
+ } // namespace pj
2121
+
2122
+ #endif /* __PJSUA2_ACCOUNT_HPP__ */
2123
+