sentdm 0.38.1 → 0.40.0

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 (281) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +1 -1
  4. data/lib/sentdm/client.rb +3 -20
  5. data/lib/sentdm/internal/voice_agents_page.rb +115 -0
  6. data/lib/sentdm/models/call_event.rb +8 -6
  7. data/lib/sentdm/models/call_event_payload.rb +29 -9
  8. data/lib/sentdm/models/channels/voice_create_params.rb +23 -11
  9. data/lib/sentdm/models/channels/voice_number.rb +23 -1
  10. data/lib/sentdm/models/channels/voice_update_params.rb +12 -1
  11. data/lib/sentdm/models/message_send_params.rb +8 -1
  12. data/lib/sentdm/models/template.rb +6 -5
  13. data/lib/sentdm/models/template_body.rb +8 -8
  14. data/lib/sentdm/models/voice/agent_create_params.rb +142 -0
  15. data/lib/sentdm/models/{calls/participant_list_params.rb → voice/agent_delete_params.rb} +3 -3
  16. data/lib/sentdm/models/voice/agent_list_params.rb +38 -0
  17. data/lib/sentdm/models/{calls/participant_remove_all_params.rb → voice/agent_retrieve_params.rb} +3 -3
  18. data/lib/sentdm/models/voice/agent_rotate_secret_params.rb +34 -0
  19. data/lib/sentdm/models/voice/agent_update_params.rb +141 -0
  20. data/lib/sentdm/models/{calls/api_response_of_list_of_call_participant.rb → voice/api_response_of_call.rb} +7 -7
  21. data/lib/sentdm/models/voice/api_response_of_call_recordings.rb +45 -0
  22. data/lib/sentdm/models/voice/api_response_of_calls_list.rb +44 -0
  23. data/lib/sentdm/models/voice/api_response_of_voice_agent.rb +51 -0
  24. data/lib/sentdm/models/voice/api_response_of_voice_agent_secret.rb +45 -0
  25. data/lib/sentdm/models/voice/api_response_of_voice_agents_list.rb +48 -0
  26. data/lib/sentdm/models/voice/api_response_of_voice_catalogue.rb +49 -0
  27. data/lib/sentdm/models/{channels → voice}/api_response_of_voice_token.rb +5 -5
  28. data/lib/sentdm/models/voice/call.rb +241 -0
  29. data/lib/sentdm/models/{calls/participant_remove_params.rb → voice/call_hangup_params.rb} +8 -8
  30. data/lib/sentdm/models/voice/call_list_params.rb +103 -0
  31. data/lib/sentdm/models/voice/call_list_recordings_params.rb +28 -0
  32. data/lib/sentdm/models/voice/call_party.rb +33 -0
  33. data/lib/sentdm/models/{calls/participant_update_params.rb → voice/call_record_params.rb} +10 -17
  34. data/lib/sentdm/models/voice/call_recording.rb +40 -0
  35. data/lib/sentdm/models/voice/call_recordings.rb +26 -0
  36. data/lib/sentdm/models/voice/call_retrieve_params.rb +28 -0
  37. data/lib/sentdm/models/voice/call_timeline_entry.rb +28 -0
  38. data/lib/sentdm/models/voice/calls/api_response_of_list_of_call_participant.rb +51 -0
  39. data/lib/sentdm/models/voice/calls/call_participant.rb +62 -0
  40. data/lib/sentdm/models/voice/calls/call_participant_target.rb +32 -0
  41. data/lib/sentdm/models/voice/calls/participant_add_params.rb +68 -0
  42. data/lib/sentdm/models/voice/calls/participant_list_params.rb +30 -0
  43. data/lib/sentdm/models/voice/calls/participant_remove_all_params.rb +30 -0
  44. data/lib/sentdm/models/voice/calls/participant_remove_params.rb +36 -0
  45. data/lib/sentdm/models/voice/calls/participant_update_params.rb +66 -0
  46. data/lib/sentdm/models/voice/calls_list.rb +28 -0
  47. data/lib/sentdm/models/voice/catalogue_list_params.rb +22 -0
  48. data/lib/sentdm/models/{channels/voice_create_token_params.rb → voice/token_create_params.rb} +4 -4
  49. data/lib/sentdm/models/voice/voice_agent.rb +138 -0
  50. data/lib/sentdm/models/voice/voice_agent_audio.rb +19 -0
  51. data/lib/sentdm/models/voice/voice_agent_audio_spec.rb +20 -0
  52. data/lib/sentdm/models/voice/voice_agent_limits.rb +31 -0
  53. data/lib/sentdm/models/voice/voice_agent_limits_spec.rb +40 -0
  54. data/lib/sentdm/models/voice/voice_agent_party.rb +25 -0
  55. data/lib/sentdm/models/voice/voice_agent_party_spec.rb +28 -0
  56. data/lib/sentdm/models/voice/voice_agent_secret.rb +27 -0
  57. data/lib/sentdm/models/voice/voice_agent_speech.rb +31 -0
  58. data/lib/sentdm/models/voice/voice_agent_speech_spec.rb +40 -0
  59. data/lib/sentdm/models/voice/voice_agent_transcripts.rb +25 -0
  60. data/lib/sentdm/models/voice/voice_agent_transcripts_spec.rb +32 -0
  61. data/lib/sentdm/models/voice/voice_agents_list.rb +30 -0
  62. data/lib/sentdm/models/voice/voice_catalogue.rb +30 -0
  63. data/lib/sentdm/models/voice/voice_catalogue_voice.rb +43 -0
  64. data/lib/sentdm/models/{channels → voice}/voice_token.rb +9 -3
  65. data/lib/sentdm/models/webhook_create_params.rb +31 -5
  66. data/lib/sentdm/models/webhook_response.rb +66 -4
  67. data/lib/sentdm/models/webhook_update_params.rb +15 -3
  68. data/lib/sentdm/models.rb +2 -30
  69. data/lib/sentdm/resources/channels/voice.rb +43 -63
  70. data/lib/sentdm/resources/channels.rb +2 -2
  71. data/lib/sentdm/resources/profiles/campaigns.rb +3 -2
  72. data/lib/sentdm/resources/voice/agents.rb +319 -0
  73. data/lib/sentdm/resources/voice/calls/participants.rb +244 -0
  74. data/lib/sentdm/resources/voice/calls.rb +269 -0
  75. data/lib/sentdm/resources/voice/catalogue.rb +71 -0
  76. data/lib/sentdm/resources/voice/tokens.rb +86 -0
  77. data/lib/sentdm/resources/voice.rb +142 -0
  78. data/lib/sentdm/resources/webhooks.rb +43 -15
  79. data/lib/sentdm/version.rb +1 -1
  80. data/lib/sentdm.rb +59 -28
  81. data/rbi/sentdm/client.rbi +2 -19
  82. data/rbi/sentdm/internal/voice_agents_page.rbi +71 -0
  83. data/rbi/sentdm/models/call_event.rbi +14 -10
  84. data/rbi/sentdm/models/call_event_payload.rbi +34 -9
  85. data/rbi/sentdm/models/channels/voice_create_params.rbi +33 -17
  86. data/rbi/sentdm/models/channels/voice_number.rbi +31 -0
  87. data/rbi/sentdm/models/channels/voice_update_params.rbi +14 -0
  88. data/rbi/sentdm/models/message_send_params.rbi +16 -2
  89. data/rbi/sentdm/models/template.rbi +12 -10
  90. data/rbi/sentdm/models/template_body.rbi +12 -12
  91. data/rbi/sentdm/models/voice/agent_create_params.rbi +215 -0
  92. data/rbi/sentdm/models/{calls/participant_remove_all_params.rbi → voice/agent_delete_params.rbi} +3 -6
  93. data/rbi/sentdm/models/voice/agent_list_params.rbi +66 -0
  94. data/rbi/sentdm/models/voice/agent_retrieve_params.rbi +48 -0
  95. data/rbi/sentdm/models/{calls/participant_remove_params.rbi → voice/agent_rotate_secret_params.rbi} +11 -8
  96. data/rbi/sentdm/models/voice/agent_update_params.rbi +211 -0
  97. data/rbi/sentdm/models/voice/api_response_of_call.rbi +76 -0
  98. data/rbi/sentdm/models/voice/api_response_of_call_recordings.rbi +81 -0
  99. data/rbi/sentdm/models/{calls/api_response_of_list_of_call_participant.rbi → voice/api_response_of_calls_list.rbi} +12 -9
  100. data/rbi/sentdm/models/voice/api_response_of_voice_agent.rbi +85 -0
  101. data/rbi/sentdm/models/voice/api_response_of_voice_agent_secret.rbi +81 -0
  102. data/rbi/sentdm/models/voice/api_response_of_voice_agents_list.rbi +83 -0
  103. data/rbi/sentdm/models/voice/api_response_of_voice_catalogue.rbi +83 -0
  104. data/rbi/sentdm/models/{channels → voice}/api_response_of_voice_token.rbi +6 -8
  105. data/rbi/sentdm/models/voice/call.rbi +329 -0
  106. data/rbi/sentdm/models/voice/call_hangup_params.rbi +61 -0
  107. data/rbi/sentdm/models/voice/call_list_params.rbi +134 -0
  108. data/rbi/sentdm/models/{calls/participant_list_params.rbi → voice/call_list_recordings_params.rbi} +3 -3
  109. data/rbi/sentdm/models/voice/call_party.rbi +47 -0
  110. data/rbi/sentdm/models/{calls/participant_update_params.rbi → voice/call_record_params.rbi} +12 -21
  111. data/rbi/sentdm/models/voice/call_recording.rbi +63 -0
  112. data/rbi/sentdm/models/voice/call_recordings.rbi +49 -0
  113. data/rbi/sentdm/models/voice/call_retrieve_params.rbi +48 -0
  114. data/rbi/sentdm/models/voice/call_timeline_entry.rbi +44 -0
  115. data/rbi/sentdm/models/voice/calls/api_response_of_list_of_call_participant.rbi +84 -0
  116. data/rbi/sentdm/models/voice/calls/call_participant.rbi +97 -0
  117. data/rbi/sentdm/models/voice/calls/call_participant_target.rbi +49 -0
  118. data/rbi/sentdm/models/voice/calls/participant_add_params.rbi +104 -0
  119. data/rbi/sentdm/models/voice/calls/participant_list_params.rbi +53 -0
  120. data/rbi/sentdm/models/voice/calls/participant_remove_all_params.rbi +53 -0
  121. data/rbi/sentdm/models/voice/calls/participant_remove_params.rbi +63 -0
  122. data/rbi/sentdm/models/voice/calls/participant_update_params.rbi +96 -0
  123. data/rbi/sentdm/models/voice/calls_list.rbi +54 -0
  124. data/rbi/sentdm/models/voice/catalogue_list_params.rbi +40 -0
  125. data/rbi/sentdm/models/{channels/voice_create_token_params.rbi → voice/token_create_params.rbi} +3 -6
  126. data/rbi/sentdm/models/voice/voice_agent.rbi +196 -0
  127. data/rbi/sentdm/models/voice/voice_agent_audio.rbi +30 -0
  128. data/rbi/sentdm/models/voice/voice_agent_audio_spec.rbi +33 -0
  129. data/rbi/sentdm/models/voice/voice_agent_limits.rbi +57 -0
  130. data/rbi/sentdm/models/voice/voice_agent_limits_spec.rbi +62 -0
  131. data/rbi/sentdm/models/voice/voice_agent_party.rbi +36 -0
  132. data/rbi/sentdm/models/voice/voice_agent_party_spec.rbi +45 -0
  133. data/rbi/sentdm/models/voice/voice_agent_secret.rbi +37 -0
  134. data/rbi/sentdm/models/voice/voice_agent_speech.rbi +48 -0
  135. data/rbi/sentdm/models/voice/voice_agent_speech_spec.rbi +62 -0
  136. data/rbi/sentdm/models/voice/voice_agent_transcripts.rbi +43 -0
  137. data/rbi/sentdm/models/voice/voice_agent_transcripts_spec.rbi +51 -0
  138. data/rbi/sentdm/models/voice/voice_agents_list.rbi +55 -0
  139. data/rbi/sentdm/models/voice/voice_catalogue.rbi +59 -0
  140. data/rbi/sentdm/models/voice/voice_catalogue_voice.rbi +75 -0
  141. data/rbi/sentdm/models/{channels → voice}/voice_token.rbi +8 -4
  142. data/rbi/sentdm/models/webhook_create_params.rbi +41 -3
  143. data/rbi/sentdm/models/webhook_response.rbi +112 -3
  144. data/rbi/sentdm/models/webhook_update_params.rbi +18 -3
  145. data/rbi/sentdm/models.rbi +2 -30
  146. data/rbi/sentdm/resources/channels/voice.rbi +57 -67
  147. data/rbi/sentdm/resources/channels.rbi +2 -2
  148. data/rbi/sentdm/resources/messages.rbi +8 -1
  149. data/rbi/sentdm/resources/profiles/campaigns.rbi +3 -2
  150. data/rbi/sentdm/resources/voice/agents.rbi +316 -0
  151. data/rbi/sentdm/resources/voice/calls/participants.rbi +212 -0
  152. data/rbi/sentdm/resources/voice/calls.rbi +244 -0
  153. data/rbi/sentdm/resources/voice/catalogue.rbi +59 -0
  154. data/rbi/sentdm/resources/voice/tokens.rbi +84 -0
  155. data/rbi/sentdm/resources/voice.rbi +136 -0
  156. data/rbi/sentdm/resources/webhooks.rbi +56 -16
  157. data/sig/sentdm/client.rbs +1 -1
  158. data/sig/sentdm/internal/voice_agents_page.rbs +41 -0
  159. data/sig/sentdm/models/call_event_payload.rbs +12 -0
  160. data/sig/sentdm/models/channels/voice_create_params.rbs +9 -4
  161. data/sig/sentdm/models/channels/voice_number.rbs +12 -0
  162. data/sig/sentdm/models/channels/voice_update_params.rbs +5 -0
  163. data/sig/sentdm/models/voice/agent_create_params.rbs +99 -0
  164. data/sig/sentdm/models/{calls/participant_remove_all_params.rbs → voice/agent_delete_params.rbs} +3 -3
  165. data/sig/sentdm/models/voice/agent_list_params.rbs +40 -0
  166. data/sig/sentdm/models/{calls/participant_list_params.rbs → voice/agent_retrieve_params.rbs} +3 -3
  167. data/sig/sentdm/models/{calls/participant_remove_params.rbs → voice/agent_rotate_secret_params.rbs} +8 -8
  168. data/sig/sentdm/models/voice/agent_update_params.rbs +108 -0
  169. data/sig/sentdm/models/{calls/api_response_of_list_of_call_participant.rbs → voice/api_response_of_call.rbs} +7 -7
  170. data/sig/sentdm/models/voice/api_response_of_call_recordings.rbs +41 -0
  171. data/sig/sentdm/models/voice/api_response_of_calls_list.rbs +41 -0
  172. data/sig/sentdm/models/voice/api_response_of_voice_agent.rbs +41 -0
  173. data/sig/sentdm/models/voice/api_response_of_voice_agent_secret.rbs +41 -0
  174. data/sig/sentdm/models/voice/api_response_of_voice_agents_list.rbs +41 -0
  175. data/sig/sentdm/models/voice/api_response_of_voice_catalogue.rbs +41 -0
  176. data/sig/sentdm/models/{channels → voice}/api_response_of_voice_token.rbs +5 -5
  177. data/sig/sentdm/models/voice/call.rbs +175 -0
  178. data/sig/sentdm/models/voice/call_hangup_params.rbs +40 -0
  179. data/sig/sentdm/models/voice/call_list_params.rbs +79 -0
  180. data/sig/sentdm/models/voice/call_list_recordings_params.rbs +32 -0
  181. data/sig/sentdm/models/voice/call_party.rbs +19 -0
  182. data/sig/sentdm/models/{calls/participant_update_params.rbs → voice/call_record_params.rbs} +8 -13
  183. data/sig/sentdm/models/voice/call_recording.rbs +34 -0
  184. data/sig/sentdm/models/voice/call_recordings.rbs +22 -0
  185. data/sig/sentdm/models/voice/call_retrieve_params.rbs +32 -0
  186. data/sig/sentdm/models/voice/call_timeline_entry.rbs +21 -0
  187. data/sig/sentdm/models/voice/calls/api_response_of_list_of_call_participant.rbs +43 -0
  188. data/sig/sentdm/models/voice/calls/call_participant.rbs +54 -0
  189. data/sig/sentdm/models/voice/calls/call_participant_target.rbs +25 -0
  190. data/sig/sentdm/models/voice/calls/participant_add_params.rbs +65 -0
  191. data/sig/sentdm/models/voice/calls/participant_list_params.rbs +34 -0
  192. data/sig/sentdm/models/voice/calls/participant_remove_all_params.rbs +36 -0
  193. data/sig/sentdm/models/voice/calls/participant_remove_params.rbs +42 -0
  194. data/sig/sentdm/models/voice/calls/participant_update_params.rbs +63 -0
  195. data/sig/sentdm/models/voice/calls_list.rbs +33 -0
  196. data/sig/sentdm/models/voice/catalogue_list_params.rbs +27 -0
  197. data/sig/sentdm/models/{channels/voice_create_token_params.rbs → voice/token_create_params.rbs} +3 -3
  198. data/sig/sentdm/models/voice/voice_agent.rbs +116 -0
  199. data/sig/sentdm/models/voice/voice_agent_audio.rbs +19 -0
  200. data/sig/sentdm/models/voice/voice_agent_audio_spec.rbs +17 -0
  201. data/sig/sentdm/models/voice/voice_agent_limits.rbs +38 -0
  202. data/sig/sentdm/models/voice/voice_agent_limits_spec.rbs +34 -0
  203. data/sig/sentdm/models/{calls/call_participant_target.rbs → voice/voice_agent_party.rbs} +4 -4
  204. data/sig/sentdm/models/voice/voice_agent_party_spec.rbs +19 -0
  205. data/sig/sentdm/models/voice/voice_agent_secret.rbs +19 -0
  206. data/sig/sentdm/models/voice/voice_agent_speech.rbs +32 -0
  207. data/sig/sentdm/models/voice/voice_agent_speech_spec.rbs +26 -0
  208. data/sig/sentdm/models/voice/voice_agent_transcripts.rbs +23 -0
  209. data/sig/sentdm/models/voice/voice_agent_transcripts_spec.rbs +20 -0
  210. data/sig/sentdm/models/voice/voice_agents_list.rbs +35 -0
  211. data/sig/sentdm/models/voice/voice_catalogue.rbs +35 -0
  212. data/sig/sentdm/models/voice/voice_catalogue_voice.rbs +42 -0
  213. data/sig/sentdm/models/{channels → voice}/voice_token.rbs +3 -1
  214. data/sig/sentdm/models/webhook_create_params.rbs +12 -0
  215. data/sig/sentdm/models/webhook_response.rbs +46 -3
  216. data/sig/sentdm/models/webhook_update_params.rbs +5 -0
  217. data/sig/sentdm/models.rbs +2 -30
  218. data/sig/sentdm/resources/channels/voice.rbs +3 -11
  219. data/sig/sentdm/resources/voice/agents.rbs +74 -0
  220. data/sig/sentdm/resources/voice/calls/participants.rbs +52 -0
  221. data/sig/sentdm/resources/{calls/participants.rbs → voice/calls.rbs} +25 -21
  222. data/sig/sentdm/resources/voice/catalogue.rbs +14 -0
  223. data/sig/sentdm/resources/voice/tokens.rbs +19 -0
  224. data/sig/sentdm/resources/voice.rbs +15 -0
  225. data/sig/sentdm/resources/webhooks.rbs +3 -0
  226. metadata +176 -83
  227. data/lib/sentdm/models/api_response_of_call.rb +0 -43
  228. data/lib/sentdm/models/api_response_of_call_recordings.rb +0 -43
  229. data/lib/sentdm/models/api_response_of_calls_list.rb +0 -42
  230. data/lib/sentdm/models/call.rb +0 -134
  231. data/lib/sentdm/models/call_hangup_params.rb +0 -32
  232. data/lib/sentdm/models/call_list_params.rb +0 -83
  233. data/lib/sentdm/models/call_list_recordings_params.rb +0 -26
  234. data/lib/sentdm/models/call_party.rb +0 -31
  235. data/lib/sentdm/models/call_record_params.rb +0 -55
  236. data/lib/sentdm/models/call_recording.rb +0 -38
  237. data/lib/sentdm/models/call_recordings.rb +0 -24
  238. data/lib/sentdm/models/call_retrieve_params.rb +0 -26
  239. data/lib/sentdm/models/call_timeline_entry.rb +0 -26
  240. data/lib/sentdm/models/calls/call_participant.rb +0 -60
  241. data/lib/sentdm/models/calls/call_participant_target.rb +0 -30
  242. data/lib/sentdm/models/calls/participant_add_params.rb +0 -66
  243. data/lib/sentdm/models/calls_list.rb +0 -26
  244. data/lib/sentdm/resources/calls/participants.rb +0 -231
  245. data/lib/sentdm/resources/calls.rb +0 -236
  246. data/rbi/sentdm/models/api_response_of_call.rbi +0 -74
  247. data/rbi/sentdm/models/api_response_of_call_recordings.rbi +0 -74
  248. data/rbi/sentdm/models/api_response_of_calls_list.rbi +0 -74
  249. data/rbi/sentdm/models/call.rbi +0 -179
  250. data/rbi/sentdm/models/call_hangup_params.rbi +0 -59
  251. data/rbi/sentdm/models/call_list_params.rbi +0 -112
  252. data/rbi/sentdm/models/call_list_recordings_params.rbi +0 -46
  253. data/rbi/sentdm/models/call_party.rbi +0 -41
  254. data/rbi/sentdm/models/call_record_params.rbi +0 -83
  255. data/rbi/sentdm/models/call_recording.rbi +0 -59
  256. data/rbi/sentdm/models/call_recordings.rbi +0 -39
  257. data/rbi/sentdm/models/call_retrieve_params.rbi +0 -46
  258. data/rbi/sentdm/models/call_timeline_entry.rbi +0 -40
  259. data/rbi/sentdm/models/calls/call_participant.rbi +0 -92
  260. data/rbi/sentdm/models/calls/call_participant_target.rbi +0 -47
  261. data/rbi/sentdm/models/calls/participant_add_params.rbi +0 -98
  262. data/rbi/sentdm/models/calls_list.rbi +0 -47
  263. data/rbi/sentdm/resources/calls/participants.rbi +0 -199
  264. data/rbi/sentdm/resources/calls.rbi +0 -207
  265. data/sig/sentdm/models/api_response_of_call.rbs +0 -39
  266. data/sig/sentdm/models/api_response_of_call_recordings.rbs +0 -39
  267. data/sig/sentdm/models/api_response_of_calls_list.rbs +0 -39
  268. data/sig/sentdm/models/call.rbs +0 -101
  269. data/sig/sentdm/models/call_hangup_params.rbs +0 -38
  270. data/sig/sentdm/models/call_list_params.rbs +0 -67
  271. data/sig/sentdm/models/call_list_recordings_params.rbs +0 -30
  272. data/sig/sentdm/models/call_party.rbs +0 -17
  273. data/sig/sentdm/models/call_record_params.rbs +0 -54
  274. data/sig/sentdm/models/call_recording.rbs +0 -32
  275. data/sig/sentdm/models/call_recordings.rbs +0 -17
  276. data/sig/sentdm/models/call_retrieve_params.rbs +0 -30
  277. data/sig/sentdm/models/call_timeline_entry.rbs +0 -19
  278. data/sig/sentdm/models/calls/call_participant.rbs +0 -52
  279. data/sig/sentdm/models/calls/participant_add_params.rbs +0 -63
  280. data/sig/sentdm/models/calls_list.rbs +0 -26
  281. data/sig/sentdm/resources/calls.rbs +0 -50
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Catalogue#list
7
+ class APIResponseOfVoiceCatalogue < Sentdm::Internal::Type::BaseModel
8
+ # @!attribute data
9
+ # The voices and languages a text-session agent may name in its speech settings:
10
+ # what GET /v3/voice/voices and the admin GET /voice/voices answer, in one shape.
11
+ #
12
+ # @return [Sentdm::Models::Voice::VoiceCatalogue, nil]
13
+ optional :data, -> { Sentdm::Voice::VoiceCatalogue }, nil?: true
14
+
15
+ # @!attribute error
16
+ # Error information
17
+ #
18
+ # @return [Sentdm::Models::ErrorDetail, nil]
19
+ optional :error, -> { Sentdm::ErrorDetail }, nil?: true
20
+
21
+ # @!attribute meta
22
+ # Request and response metadata
23
+ #
24
+ # @return [Sentdm::Models::APIMeta, nil]
25
+ optional :meta, -> { Sentdm::APIMeta }
26
+
27
+ # @!attribute success
28
+ # Indicates whether the request was successful
29
+ #
30
+ # @return [Boolean, nil]
31
+ optional :success, Sentdm::Internal::Type::Boolean
32
+
33
+ # @!method initialize(data: nil, error: nil, meta: nil, success: nil)
34
+ # Some parameter documentations has been truncated, see
35
+ # {Sentdm::Models::Voice::APIResponseOfVoiceCatalogue} for more details.
36
+ #
37
+ # Standard API response envelope for all v3 endpoints
38
+ #
39
+ # @param data [Sentdm::Models::Voice::VoiceCatalogue, nil] The voices and languages a text-session agent may name in its speech settings: w
40
+ #
41
+ # @param error [Sentdm::Models::ErrorDetail, nil] Error information
42
+ #
43
+ # @param meta [Sentdm::Models::APIMeta] Request and response metadata
44
+ #
45
+ # @param success [Boolean] Indicates whether the request was successful
46
+ end
47
+ end
48
+ end
49
+ end
@@ -2,14 +2,14 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Channels
6
- # @see Sentdm::Resources::Channels::Voice#create_token
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Tokens#create
7
7
  class APIResponseOfVoiceToken < Sentdm::Internal::Type::BaseModel
8
8
  # @!attribute data
9
9
  # A short-lived token your app passes to the voice client SDK to register
10
10
  #
11
- # @return [Sentdm::Models::Channels::VoiceToken, nil]
12
- optional :data, -> { Sentdm::Channels::VoiceToken }, nil?: true
11
+ # @return [Sentdm::Models::Voice::VoiceToken, nil]
12
+ optional :data, -> { Sentdm::Voice::VoiceToken }, nil?: true
13
13
 
14
14
  # @!attribute error
15
15
  # Error information
@@ -32,7 +32,7 @@ module Sentdm
32
32
  # @!method initialize(data: nil, error: nil, meta: nil, success: nil)
33
33
  # Standard API response envelope for all v3 endpoints
34
34
  #
35
- # @param data [Sentdm::Models::Channels::VoiceToken, nil] A short-lived token your app passes to the voice client SDK to register
35
+ # @param data [Sentdm::Models::Voice::VoiceToken, nil] A short-lived token your app passes to the voice client SDK to register
36
36
  #
37
37
  # @param error [Sentdm::Models::ErrorDetail, nil] Error information
38
38
  #
@@ -0,0 +1,241 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Calls#list
7
+ class Call < Sentdm::Internal::Type::BaseModel
8
+ # @!attribute id
9
+ # The call id, the same one carried by the call.request question and every call
10
+ # webhook
11
+ #
12
+ # @return [String, nil]
13
+ optional :id, String
14
+
15
+ # @!attribute agent_id
16
+ # The voice agent that answered the call, such as
17
+ # agent_9f2ab000-0000-4000-8000-000000000001. Null for an inapp call
18
+ #
19
+ # @return [String, nil]
20
+ optional :agent_id, String, nil?: true
21
+
22
+ # @!attribute answered_at
23
+ # When the call was answered (UTC). Null until then, and always null for a call
24
+ # between two of your app users
25
+ #
26
+ # @return [Time, nil]
27
+ optional :answered_at, Time, nil?: true
28
+
29
+ # @!attribute caller_id_used
30
+ # The caller id shown on the phone leg, in E.164 format: the one your answer
31
+ # chose, or the owning number when it chose none. Null for a call with no phone
32
+ # leg
33
+ #
34
+ # @return [String, nil]
35
+ optional :caller_id_used, String, nil?: true
36
+
37
+ # @!attribute connected_number
38
+ # The phone number the call was connected to, in E.164 format: the number your
39
+ # answer dialed, or the fallback number a call to one of your voice agents
40
+ # reached. Null when the call was not connected to a phone number
41
+ #
42
+ # @return [String, nil]
43
+ optional :connected_number, String, nil?: true
44
+
45
+ # @!attribute direction
46
+ # outbound for a call placed from your app, inbound for a call to one of your
47
+ # numbers
48
+ #
49
+ # @return [String, nil]
50
+ optional :direction, String
51
+
52
+ # @!attribute duration_seconds
53
+ # Billable duration in seconds. Null while the call is live
54
+ #
55
+ # @return [Integer, nil]
56
+ optional :duration_seconds, Integer, nil?: true
57
+
58
+ # @!attribute ended_at
59
+ # When the call ended (UTC). Null while the call is live
60
+ #
61
+ # @return [Time, nil]
62
+ optional :ended_at, Time, nil?: true
63
+
64
+ # @!attribute failure_reason
65
+ # Why the call did not complete: callback_timeout, invalid_answer,
66
+ # insufficient_balance, destination_blocked, callback_not_configured, rejected,
67
+ # no_answer, or for an agent call agent_busy or agent_unreachable. Null while the
68
+ # call is live, when it completed, and when it failed without a recorded reason
69
+ #
70
+ # @return [String, nil]
71
+ optional :failure_reason, String, nil?: true
72
+
73
+ # @!attribute from
74
+ # One end of a call
75
+ #
76
+ # @return [Sentdm::Models::Voice::CallParty, nil]
77
+ optional :from, -> { Sentdm::Voice::CallParty }
78
+
79
+ # @!attribute legs
80
+ # The legs the price covers, one entry per billed leg, each with its own cost: a
81
+ # call your answer connected to a phone number ran the caller's leg to your number
82
+ # and the leg to the connected number at once, and both are billed. Null until the
83
+ # call has been priced
84
+ #
85
+ # @return [Array<Sentdm::Models::Voice::Call::Leg>, nil]
86
+ optional :legs, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Voice::Call::Leg] }, nil?: true
87
+
88
+ # @!attribute mode
89
+ # The calling mode: inapp for a call between people in your app and phone numbers,
90
+ # routed by your number's callback URL; agent for a call one of your voice agents
91
+ # answered
92
+ #
93
+ # @return [String, nil]
94
+ optional :mode, String
95
+
96
+ # @!attribute number
97
+ # Your number that owns the call, in E.164 format: the dialed number for an
98
+ # inbound call, the caller's bound number for a call placed from your app
99
+ #
100
+ # @return [String, nil]
101
+ optional :number, String
102
+
103
+ # @!attribute price
104
+ # What the call cost. Null until it has been priced
105
+ #
106
+ # @return [Float, nil]
107
+ optional :price, Float, nil?: true
108
+
109
+ # @!attribute recording_available
110
+ # True once a recording of the call is available
111
+ #
112
+ # @return [Boolean, nil]
113
+ optional :recording_available, Sentdm::Internal::Type::Boolean
114
+
115
+ # @!attribute started_at
116
+ # When the call was placed (UTC)
117
+ #
118
+ # @return [Time, nil]
119
+ optional :started_at, Time
120
+
121
+ # @!attribute status
122
+ # INITIATED, RINGING, ANSWERED, COMPLETED, FAILED, NO_ANSWER or REJECTED
123
+ #
124
+ # @return [String, nil]
125
+ optional :status, String
126
+
127
+ # @!attribute timeline
128
+ # When the call entered each status, oldest first. Only returned when reading one
129
+ # call
130
+ #
131
+ # @return [Array<Sentdm::Models::Voice::CallTimelineEntry>, nil]
132
+ optional :timeline,
133
+ -> {
134
+ Sentdm::Internal::Type::ArrayOf[Sentdm::Voice::CallTimelineEntry]
135
+ },
136
+ nil?: true
137
+
138
+ # @!attribute to
139
+ # One end of a call
140
+ #
141
+ # @return [Sentdm::Models::Voice::CallParty, nil]
142
+ optional :to, -> { Sentdm::Voice::CallParty }
143
+
144
+ # @!method initialize(id: nil, agent_id: nil, answered_at: nil, caller_id_used: nil, connected_number: nil, direction: nil, duration_seconds: nil, ended_at: nil, failure_reason: nil, from: nil, legs: nil, mode: nil, number: nil, price: nil, recording_available: nil, started_at: nil, status: nil, timeline: nil, to: nil)
145
+ # Some parameter documentations has been truncated, see
146
+ # {Sentdm::Models::Voice::Call} for more details.
147
+ #
148
+ # A call record
149
+ #
150
+ # @param id [String] The call id, the same one carried by the call.request question and every call we
151
+ #
152
+ # @param agent_id [String, nil] The voice agent that answered the call, such as agent_9f2ab000-0000-4000-8000-00
153
+ #
154
+ # @param answered_at [Time, nil] When the call was answered (UTC). Null until then, and always null for a call be
155
+ #
156
+ # @param caller_id_used [String, nil] The caller id shown on the phone leg, in E.164 format: the one your answer chose
157
+ #
158
+ # @param connected_number [String, nil] The phone number the call was connected to, in E.164 format: the number your ans
159
+ #
160
+ # @param direction [String] outbound for a call placed from your app, inbound for a call to one of your numb
161
+ #
162
+ # @param duration_seconds [Integer, nil] Billable duration in seconds. Null while the call is live
163
+ #
164
+ # @param ended_at [Time, nil] When the call ended (UTC). Null while the call is live
165
+ #
166
+ # @param failure_reason [String, nil] Why the call did not complete: callback_timeout, invalid_answer, insufficient_ba
167
+ #
168
+ # @param from [Sentdm::Models::Voice::CallParty] One end of a call
169
+ #
170
+ # @param legs [Array<Sentdm::Models::Voice::Call::Leg>, nil] The legs the price covers, one entry per billed leg, each with its own cost: a c
171
+ #
172
+ # @param mode [String] The calling mode: inapp for a call between people in your app and phone numbers,
173
+ #
174
+ # @param number [String] Your number that owns the call, in E.164 format: the dialed number for an inboun
175
+ #
176
+ # @param price [Float, nil] What the call cost. Null until it has been priced
177
+ #
178
+ # @param recording_available [Boolean] True once a recording of the call is available
179
+ #
180
+ # @param started_at [Time] When the call was placed (UTC)
181
+ #
182
+ # @param status [String] INITIATED, RINGING, ANSWERED, COMPLETED, FAILED, NO_ANSWER or REJECTED
183
+ #
184
+ # @param timeline [Array<Sentdm::Models::Voice::CallTimelineEntry>, nil] When the call entered each status, oldest first. Only returned when reading one
185
+ #
186
+ # @param to [Sentdm::Models::Voice::CallParty] One end of a call
187
+
188
+ class Leg < Sentdm::Internal::Type::BaseModel
189
+ # @!attribute billed_minutes
190
+ # The whole minutes the leg was billed for
191
+ #
192
+ # @return [Integer, nil]
193
+ optional :billed_minutes, Integer
194
+
195
+ # @!attribute cost
196
+ # What the leg cost, in the same unit as the call's price
197
+ #
198
+ # @return [Float, nil]
199
+ optional :cost, Float
200
+
201
+ # @!attribute currency
202
+ # The currency of the cost: USD
203
+ #
204
+ # @return [String, nil]
205
+ optional :currency, String
206
+
207
+ # @!attribute direction
208
+ # inbound for the caller's leg to your number, outbound for a leg placed on your
209
+ # behalf
210
+ #
211
+ # @return [String, nil]
212
+ optional :direction, String
213
+
214
+ # @!attribute number
215
+ # The phone number the leg reached, in E.164 format: your number for the inbound
216
+ # leg, the number dialed for an outbound one. Null for a leg to one of your app
217
+ # users or a room
218
+ #
219
+ # @return [String, nil]
220
+ optional :number, String, nil?: true
221
+
222
+ # @!method initialize(billed_minutes: nil, cost: nil, currency: nil, direction: nil, number: nil)
223
+ # Some parameter documentations has been truncated, see
224
+ # {Sentdm::Models::Voice::Call::Leg} for more details.
225
+ #
226
+ # One leg of a call the price covers
227
+ #
228
+ # @param billed_minutes [Integer] The whole minutes the leg was billed for
229
+ #
230
+ # @param cost [Float] What the leg cost, in the same unit as the call's price
231
+ #
232
+ # @param currency [String] The currency of the cost: USD
233
+ #
234
+ # @param direction [String] inbound for the caller's leg to your number, outbound for a leg placed on your b
235
+ #
236
+ # @param number [String, nil] The phone number the leg reached, in E.164 format: your number for the inbound l
237
+ end
238
+ end
239
+ end
240
+ end
241
+ end
@@ -2,9 +2,9 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Calls
6
- # @see Sentdm::Resources::Calls::Participants#remove
7
- class ParticipantRemoveParams < Sentdm::Models::MutationRequest
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Calls#hangup
7
+ class CallHangupParams < Sentdm::Models::MutationRequest
8
8
  extend Sentdm::Internal::Type::RequestParameters::Converter
9
9
  include Sentdm::Internal::Type::RequestParameters
10
10
 
@@ -13,19 +13,19 @@ module Sentdm
13
13
  # @return [String]
14
14
  required :id, String
15
15
 
16
- # @!attribute participant_id
16
+ # @!attribute idempotency_key
17
17
  #
18
- # @return [String]
19
- required :participant_id, String
18
+ # @return [String, nil]
19
+ optional :idempotency_key, String
20
20
 
21
21
  # @!attribute x_profile_id
22
22
  #
23
23
  # @return [String, nil]
24
24
  optional :x_profile_id, String
25
25
 
26
- # @!method initialize(id:, participant_id:, x_profile_id: nil, request_options: {})
26
+ # @!method initialize(id:, idempotency_key: nil, x_profile_id: nil, request_options: {})
27
27
  # @param id [String]
28
- # @param participant_id [String]
28
+ # @param idempotency_key [String]
29
29
  # @param x_profile_id [String]
30
30
  # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
31
31
  end
@@ -0,0 +1,103 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Calls#list
7
+ class CallListParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute agent_id
12
+ # Optional filter on the voice agent that answered the call, such as
13
+ # agent_9f2ab000-0000-4000-8000-000000000001
14
+ #
15
+ # @return [String, nil]
16
+ optional :agent_id, String, nil?: true
17
+
18
+ # @!attribute direction
19
+ # Optional direction filter: outbound for calls placed from your app, inbound for
20
+ # calls to one of your numbers
21
+ #
22
+ # @return [String, nil]
23
+ optional :direction, String, nil?: true
24
+
25
+ # @!attribute from
26
+ # Only calls started at or after this time (ISO 8601)
27
+ #
28
+ # @return [Time, nil]
29
+ optional :from, Time, nil?: true
30
+
31
+ # @!attribute mode
32
+ # Optional mode filter: inapp for calls routed by your number's callback URL,
33
+ # agent for calls one of your voice agents answered
34
+ #
35
+ # @return [String, nil]
36
+ optional :mode, String, nil?: true
37
+
38
+ # @!attribute number
39
+ # Optional filter on the number that owns the call, one of your voice-enabled
40
+ # numbers in E.164 format
41
+ #
42
+ # @return [String, nil]
43
+ optional :number, String, nil?: true
44
+
45
+ # @!attribute page
46
+ # Page number (1-indexed)
47
+ #
48
+ # @return [Integer, nil]
49
+ optional :page, Integer
50
+
51
+ # @!attribute page_size
52
+ # Number of items per page
53
+ #
54
+ # @return [Integer, nil]
55
+ optional :page_size, Integer
56
+
57
+ # @!attribute status
58
+ # Optional status filter: initiated, ringing, answered, completed, failed,
59
+ # no_answer or rejected
60
+ #
61
+ # @return [String, nil]
62
+ optional :status, String, nil?: true
63
+
64
+ # @!attribute to
65
+ # Only calls started at or before this time (ISO 8601)
66
+ #
67
+ # @return [Time, nil]
68
+ optional :to, Time, nil?: true
69
+
70
+ # @!attribute x_profile_id
71
+ #
72
+ # @return [String, nil]
73
+ optional :x_profile_id, String
74
+
75
+ # @!method initialize(agent_id: nil, direction: nil, from: nil, mode: nil, number: nil, page: nil, page_size: nil, status: nil, to: nil, x_profile_id: nil, request_options: {})
76
+ # Some parameter documentations has been truncated, see
77
+ # {Sentdm::Models::Voice::CallListParams} for more details.
78
+ #
79
+ # @param agent_id [String, nil] Optional filter on the voice agent that answered the call, such as agent_9f2ab00
80
+ #
81
+ # @param direction [String, nil] Optional direction filter: outbound for calls placed from your app, inbound for
82
+ #
83
+ # @param from [Time, nil] Only calls started at or after this time (ISO 8601)
84
+ #
85
+ # @param mode [String, nil] Optional mode filter: inapp for calls routed by your number's callback URL, agen
86
+ #
87
+ # @param number [String, nil] Optional filter on the number that owns the call, one of your voice-enabled numb
88
+ #
89
+ # @param page [Integer] Page number (1-indexed)
90
+ #
91
+ # @param page_size [Integer] Number of items per page
92
+ #
93
+ # @param status [String, nil] Optional status filter: initiated, ringing, answered, completed, failed, no_answ
94
+ #
95
+ # @param to [Time, nil] Only calls started at or before this time (ISO 8601)
96
+ #
97
+ # @param x_profile_id [String]
98
+ #
99
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
100
+ end
101
+ end
102
+ end
103
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Calls#list_recordings
7
+ class CallListRecordingsParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute id
12
+ #
13
+ # @return [String]
14
+ required :id, String
15
+
16
+ # @!attribute x_profile_id
17
+ #
18
+ # @return [String, nil]
19
+ optional :x_profile_id, String
20
+
21
+ # @!method initialize(id:, x_profile_id: nil, request_options: {})
22
+ # @param id [String]
23
+ # @param x_profile_id [String]
24
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ class CallParty < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute kind
8
+ # user for one of your app users, number for a phone number, conference for a
9
+ # room, anonymous for a caller who withheld their number
10
+ #
11
+ # @return [String, nil]
12
+ optional :kind, String
13
+
14
+ # @!attribute value
15
+ # The app user's identity, the phone number in E.164 format, or the room name.
16
+ # Null when the kind is anonymous
17
+ #
18
+ # @return [String, nil]
19
+ optional :value, String, nil?: true
20
+
21
+ # @!method initialize(kind: nil, value: nil)
22
+ # Some parameter documentations has been truncated, see
23
+ # {Sentdm::Models::Voice::CallParty} for more details.
24
+ #
25
+ # One end of a call
26
+ #
27
+ # @param kind [String] user for one of your app users, number for a phone number, conference for a room
28
+ #
29
+ # @param value [String, nil] The app user's identity, the phone number in E.164 format, or the room name. Nul
30
+ end
31
+ end
32
+ end
33
+ end
@@ -2,9 +2,9 @@
2
2
 
3
3
  module Sentdm
4
4
  module Models
5
- module Calls
6
- # @see Sentdm::Resources::Calls::Participants#update
7
- class ParticipantUpdateParams < Sentdm::Internal::Type::BaseModel
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Calls#record
7
+ class CallRecordParams < Sentdm::Internal::Type::BaseModel
8
8
  extend Sentdm::Internal::Type::RequestParameters::Converter
9
9
  include Sentdm::Internal::Type::RequestParameters
10
10
 
@@ -13,16 +13,11 @@ module Sentdm
13
13
  # @return [String]
14
14
  required :id, String
15
15
 
16
- # @!attribute participant_id
16
+ # @!attribute action
17
+ # start to begin recording, stop to end it
17
18
  #
18
- # @return [String]
19
- required :participant_id, String
20
-
21
- # @!attribute muted
22
- # true to mute the participant, false to unmute them
23
- #
24
- # @return [Boolean, nil]
25
- optional :muted, Sentdm::Internal::Type::Boolean
19
+ # @return [String, nil]
20
+ optional :action, String
26
21
 
27
22
  # @!attribute sandbox
28
23
  # Sandbox flag - when true, the operation is simulated without side effects Useful
@@ -41,15 +36,13 @@ module Sentdm
41
36
  # @return [String, nil]
42
37
  optional :x_profile_id, String
43
38
 
44
- # @!method initialize(id:, participant_id:, muted: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
39
+ # @!method initialize(id:, action: nil, sandbox: nil, idempotency_key: nil, x_profile_id: nil, request_options: {})
45
40
  # Some parameter documentations has been truncated, see
46
- # {Sentdm::Models::Calls::ParticipantUpdateParams} for more details.
41
+ # {Sentdm::Models::Voice::CallRecordParams} for more details.
47
42
  #
48
43
  # @param id [String]
49
44
  #
50
- # @param participant_id [String]
51
- #
52
- # @param muted [Boolean] true to mute the participant, false to unmute them
45
+ # @param action [String] start to begin recording, stop to end it
53
46
  #
54
47
  # @param sandbox [Boolean] Sandbox flag - when true, the operation is simulated without side effects
55
48
  #
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ class CallRecording < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute download_url
8
+ # A pre-signed link that downloads the recording as an MP3 file. Anyone holding it
9
+ # can download the recording until it expires
10
+ #
11
+ # @return [String, nil]
12
+ optional :download_url, String
13
+
14
+ # @!attribute recording_id
15
+ # The recording's id, the one the call.recording_ready webhook announced it under
16
+ #
17
+ # @return [String, nil]
18
+ optional :recording_id, String
19
+
20
+ # @!attribute url_expires_at
21
+ # When the link stops working (UTC). Request the recordings again for a fresh link
22
+ #
23
+ # @return [Time, nil]
24
+ optional :url_expires_at, Time
25
+
26
+ # @!method initialize(download_url: nil, recording_id: nil, url_expires_at: nil)
27
+ # Some parameter documentations has been truncated, see
28
+ # {Sentdm::Models::Voice::CallRecording} for more details.
29
+ #
30
+ # A short-lived link to a call recording
31
+ #
32
+ # @param download_url [String] A pre-signed link that downloads the recording as an MP3 file. Anyone holding it
33
+ #
34
+ # @param recording_id [String] The recording's id, the one the call.recording_ready webhook announced it under
35
+ #
36
+ # @param url_expires_at [Time] When the link stops working (UTC). Request the recordings again for a fresh link
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ class CallRecordings < Sentdm::Internal::Type::BaseModel
7
+ # @!attribute recordings
8
+ # Every recording of the call, oldest first. Empty until the first
9
+ # call.recording_ready webhook has been sent, and for a call that was never
10
+ # recorded
11
+ #
12
+ # @return [Array<Sentdm::Models::Voice::CallRecording>, nil]
13
+ optional :recordings, -> { Sentdm::Internal::Type::ArrayOf[Sentdm::Voice::CallRecording] }
14
+
15
+ # @!method initialize(recordings: nil)
16
+ # Some parameter documentations has been truncated, see
17
+ # {Sentdm::Models::Voice::CallRecordings} for more details.
18
+ #
19
+ # The recordings of a call, each as a short-lived download link
20
+ #
21
+ # @param recordings [Array<Sentdm::Models::Voice::CallRecording>] Every recording of the call, oldest first. Empty until the first
22
+ # call.recording\_
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Sentdm
4
+ module Models
5
+ module Voice
6
+ # @see Sentdm::Resources::Voice::Calls#retrieve
7
+ class CallRetrieveParams < Sentdm::Internal::Type::BaseModel
8
+ extend Sentdm::Internal::Type::RequestParameters::Converter
9
+ include Sentdm::Internal::Type::RequestParameters
10
+
11
+ # @!attribute id
12
+ #
13
+ # @return [String]
14
+ required :id, String
15
+
16
+ # @!attribute x_profile_id
17
+ #
18
+ # @return [String, nil]
19
+ optional :x_profile_id, String
20
+
21
+ # @!method initialize(id:, x_profile_id: nil, request_options: {})
22
+ # @param id [String]
23
+ # @param x_profile_id [String]
24
+ # @param request_options [Sentdm::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end