twilio 3.71.3 → 3.74.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 (391) hide show
  1. package/README.md +2 -1
  2. package/lib/rest/Conversations.d.ts +2 -0
  3. package/lib/rest/Conversations.js +9 -0
  4. package/lib/rest/Insights.d.ts +4 -0
  5. package/lib/rest/Insights.js +16 -0
  6. package/lib/rest/Supersim.d.ts +2 -0
  7. package/lib/rest/Supersim.js +9 -0
  8. package/lib/rest/Voice.d.ts +2 -0
  9. package/lib/rest/Voice.js +9 -0
  10. package/lib/rest/accounts/v1/credential/aws.js +4 -2
  11. package/lib/rest/accounts/v1/credential/publicKey.js +4 -2
  12. package/lib/rest/api/v2010/account/address/dependentPhoneNumber.js +2 -0
  13. package/lib/rest/api/v2010/account/address.js +14 -12
  14. package/lib/rest/api/v2010/account/application.js +2 -0
  15. package/lib/rest/api/v2010/account/authorizedConnectApp.js +2 -0
  16. package/lib/rest/api/v2010/account/availablePhoneNumber/local.js +2 -0
  17. package/lib/rest/api/v2010/account/availablePhoneNumber/machineToMachine.js +2 -0
  18. package/lib/rest/api/v2010/account/availablePhoneNumber/mobile.js +2 -0
  19. package/lib/rest/api/v2010/account/availablePhoneNumber/national.js +2 -0
  20. package/lib/rest/api/v2010/account/availablePhoneNumber/sharedCost.js +2 -0
  21. package/lib/rest/api/v2010/account/availablePhoneNumber/tollFree.js +2 -0
  22. package/lib/rest/api/v2010/account/availablePhoneNumber/voip.js +2 -0
  23. package/lib/rest/api/v2010/account/availablePhoneNumber.js +2 -0
  24. package/lib/rest/api/v2010/account/call/event.js +2 -0
  25. package/lib/rest/api/v2010/account/call/feedback.js +2 -2
  26. package/lib/rest/api/v2010/account/call/feedbackSummary.js +4 -4
  27. package/lib/rest/api/v2010/account/call/notification.js +2 -0
  28. package/lib/rest/api/v2010/account/call/payment.js +8 -8
  29. package/lib/rest/api/v2010/account/call/recording.js +4 -2
  30. package/lib/rest/api/v2010/account/call/siprec.js +2 -2
  31. package/lib/rest/api/v2010/account/call/stream.d.ts +776 -0
  32. package/lib/rest/api/v2010/account/call/stream.js +810 -0
  33. package/lib/rest/api/v2010/account/call.d.ts +7 -0
  34. package/lib/rest/api/v2010/account/call.js +34 -4
  35. package/lib/rest/api/v2010/account/conference/participant.js +6 -4
  36. package/lib/rest/api/v2010/account/conference/recording.js +4 -2
  37. package/lib/rest/api/v2010/account/conference.js +2 -0
  38. package/lib/rest/api/v2010/account/connectApp.js +2 -0
  39. package/lib/rest/api/v2010/account/incomingPhoneNumber/assignedAddOn/assignedAddOnExtension.js +2 -0
  40. package/lib/rest/api/v2010/account/incomingPhoneNumber/assignedAddOn.js +4 -2
  41. package/lib/rest/api/v2010/account/incomingPhoneNumber/local.js +4 -2
  42. package/lib/rest/api/v2010/account/incomingPhoneNumber/mobile.js +4 -2
  43. package/lib/rest/api/v2010/account/incomingPhoneNumber/tollFree.js +4 -2
  44. package/lib/rest/api/v2010/account/incomingPhoneNumber.js +2 -0
  45. package/lib/rest/api/v2010/account/key.js +2 -0
  46. package/lib/rest/api/v2010/account/message/media.js +2 -0
  47. package/lib/rest/api/v2010/account/message.d.ts +9 -1
  48. package/lib/rest/api/v2010/account/message.js +19 -4
  49. package/lib/rest/api/v2010/account/notification.js +2 -0
  50. package/lib/rest/api/v2010/account/outgoingCallerId.js +2 -0
  51. package/lib/rest/api/v2010/account/queue/member.js +4 -2
  52. package/lib/rest/api/v2010/account/queue.js +4 -2
  53. package/lib/rest/api/v2010/account/recording/addOnResult/payload.js +2 -0
  54. package/lib/rest/api/v2010/account/recording/addOnResult.js +2 -0
  55. package/lib/rest/api/v2010/account/recording/transcription.js +2 -0
  56. package/lib/rest/api/v2010/account/recording.js +2 -0
  57. package/lib/rest/api/v2010/account/shortCode.js +2 -0
  58. package/lib/rest/api/v2010/account/signingKey.js +2 -0
  59. package/lib/rest/api/v2010/account/sip/credentialList/credential.js +6 -4
  60. package/lib/rest/api/v2010/account/sip/credentialList.js +6 -4
  61. package/lib/rest/api/v2010/account/sip/domain/authTypes/authCallsMapping/authCallsCredentialListMapping.js +4 -2
  62. package/lib/rest/api/v2010/account/sip/domain/authTypes/authCallsMapping/authCallsIpAccessControlListMapping.js +4 -2
  63. package/lib/rest/api/v2010/account/sip/domain/authTypes/authRegistrationsMapping/authRegistrationsCredentialListMapping.js +4 -2
  64. package/lib/rest/api/v2010/account/sip/domain/credentialListMapping.js +4 -2
  65. package/lib/rest/api/v2010/account/sip/domain/ipAccessControlListMapping.js +4 -2
  66. package/lib/rest/api/v2010/account/sip/domain.js +4 -2
  67. package/lib/rest/api/v2010/account/sip/ipAccessControlList/ipAddress.js +6 -4
  68. package/lib/rest/api/v2010/account/sip/ipAccessControlList.js +6 -4
  69. package/lib/rest/api/v2010/account/transcription.js +2 -0
  70. package/lib/rest/api/v2010/account/usage/record/allTime.js +2 -0
  71. package/lib/rest/api/v2010/account/usage/record/daily.js +2 -0
  72. package/lib/rest/api/v2010/account/usage/record/lastMonth.js +2 -0
  73. package/lib/rest/api/v2010/account/usage/record/monthly.js +2 -0
  74. package/lib/rest/api/v2010/account/usage/record/thisMonth.js +2 -0
  75. package/lib/rest/api/v2010/account/usage/record/today.js +2 -0
  76. package/lib/rest/api/v2010/account/usage/record/yearly.js +2 -0
  77. package/lib/rest/api/v2010/account/usage/record/yesterday.js +2 -0
  78. package/lib/rest/api/v2010/account/usage/record.js +2 -0
  79. package/lib/rest/api/v2010/account/usage/trigger.js +8 -6
  80. package/lib/rest/api/v2010/account/validationRequest.js +2 -2
  81. package/lib/rest/api/v2010/account.js +2 -0
  82. package/lib/rest/autopilot/v1/assistant/fieldType/fieldValue.js +6 -4
  83. package/lib/rest/autopilot/v1/assistant/fieldType.js +4 -2
  84. package/lib/rest/autopilot/v1/assistant/modelBuild.js +2 -0
  85. package/lib/rest/autopilot/v1/assistant/query.js +6 -4
  86. package/lib/rest/autopilot/v1/assistant/task/field.js +6 -4
  87. package/lib/rest/autopilot/v1/assistant/task/sample.js +6 -4
  88. package/lib/rest/autopilot/v1/assistant/task.js +4 -2
  89. package/lib/rest/autopilot/v1/assistant/webhook.js +8 -6
  90. package/lib/rest/autopilot/v1/assistant.js +2 -0
  91. package/lib/rest/autopilot/v1/restoreAssistant.js +2 -2
  92. package/lib/rest/bulkexports/v1/export/day.js +2 -0
  93. package/lib/rest/bulkexports/v1/export/exportCustomJob.js +8 -6
  94. package/lib/rest/chat/v1/credential.js +4 -2
  95. package/lib/rest/chat/v1/service/channel/invite.js +4 -2
  96. package/lib/rest/chat/v1/service/channel/member.js +4 -2
  97. package/lib/rest/chat/v1/service/channel/message.js +4 -2
  98. package/lib/rest/chat/v1/service/channel.js +2 -0
  99. package/lib/rest/chat/v1/service/role.js +10 -8
  100. package/lib/rest/chat/v1/service/user/userChannel.js +2 -0
  101. package/lib/rest/chat/v1/service/user.js +4 -2
  102. package/lib/rest/chat/v1/service.js +4 -2
  103. package/lib/rest/chat/v2/credential.js +4 -2
  104. package/lib/rest/chat/v2/service/binding.js +2 -0
  105. package/lib/rest/chat/v2/service/channel/invite.js +4 -2
  106. package/lib/rest/chat/v2/service/channel/member.js +4 -2
  107. package/lib/rest/chat/v2/service/channel/message.js +2 -0
  108. package/lib/rest/chat/v2/service/channel/webhook.js +4 -2
  109. package/lib/rest/chat/v2/service/channel.js +2 -0
  110. package/lib/rest/chat/v2/service/role.js +10 -8
  111. package/lib/rest/chat/v2/service/user/userBinding.js +2 -0
  112. package/lib/rest/chat/v2/service/user/userChannel.js +2 -0
  113. package/lib/rest/chat/v2/service/user.js +4 -2
  114. package/lib/rest/chat/v2/service.js +4 -2
  115. package/lib/rest/conversations/V1.d.ts +3 -0
  116. package/lib/rest/conversations/V1.js +13 -0
  117. package/lib/rest/conversations/v1/addressConfiguration.d.ts +397 -0
  118. package/lib/rest/conversations/v1/addressConfiguration.js +802 -0
  119. package/lib/rest/conversations/v1/conversation/message/deliveryReceipt.js +2 -0
  120. package/lib/rest/conversations/v1/conversation/message.js +2 -0
  121. package/lib/rest/conversations/v1/conversation/participant.js +2 -0
  122. package/lib/rest/conversations/v1/conversation/webhook.js +4 -2
  123. package/lib/rest/conversations/v1/conversation.js +2 -0
  124. package/lib/rest/conversations/v1/credential.js +4 -2
  125. package/lib/rest/conversations/v1/participantConversation.js +2 -0
  126. package/lib/rest/conversations/v1/role.js +10 -8
  127. package/lib/rest/conversations/v1/service/binding.js +2 -0
  128. package/lib/rest/conversations/v1/service/configuration/webhook.d.ts +2 -2
  129. package/lib/rest/conversations/v1/service/configuration/webhook.js +6 -5
  130. package/lib/rest/conversations/v1/service/conversation/message/deliveryReceipt.js +2 -0
  131. package/lib/rest/conversations/v1/service/conversation/message.js +2 -0
  132. package/lib/rest/conversations/v1/service/conversation/participant.js +2 -0
  133. package/lib/rest/conversations/v1/service/conversation/webhook.js +4 -2
  134. package/lib/rest/conversations/v1/service/conversation.js +2 -0
  135. package/lib/rest/conversations/v1/service/participantConversation.js +2 -0
  136. package/lib/rest/conversations/v1/service/role.js +10 -8
  137. package/lib/rest/conversations/v1/service/user/userConversation.js +2 -0
  138. package/lib/rest/conversations/v1/service/user.js +4 -2
  139. package/lib/rest/conversations/v1/service.js +4 -2
  140. package/lib/rest/conversations/v1/user/userConversation.js +2 -0
  141. package/lib/rest/conversations/v1/user.js +4 -2
  142. package/lib/rest/events/v1/eventType.js +2 -0
  143. package/lib/rest/events/v1/schema/version.js +2 -0
  144. package/lib/rest/events/v1/sink/sinkValidate.js +2 -2
  145. package/lib/rest/events/v1/sink.js +10 -8
  146. package/lib/rest/events/v1/subscription/subscribedEvent.js +4 -2
  147. package/lib/rest/events/v1/subscription.js +8 -6
  148. package/lib/rest/fax/v1/fax/faxMedia.js +2 -0
  149. package/lib/rest/fax/v1/fax.d.ts +1 -68
  150. package/lib/rest/fax/v1/fax.js +2 -123
  151. package/lib/rest/flexApi/v1/channel.js +10 -8
  152. package/lib/rest/flexApi/v1/flexFlow.d.ts +2 -2
  153. package/lib/rest/flexApi/v1/flexFlow.js +11 -9
  154. package/lib/rest/flexApi/v1/webChannel.js +10 -8
  155. package/lib/rest/insights/V1.d.ts +6 -0
  156. package/lib/rest/insights/V1.js +22 -0
  157. package/lib/rest/insights/v1/call/event.js +2 -0
  158. package/lib/rest/insights/v1/call/metric.js +2 -0
  159. package/lib/rest/insights/v1/callSummaries.js +2 -0
  160. package/lib/rest/insights/v1/conference/conferenceParticipant.d.ts +383 -0
  161. package/lib/rest/insights/v1/conference/conferenceParticipant.js +671 -0
  162. package/lib/rest/insights/v1/conference.d.ts +391 -0
  163. package/lib/rest/insights/v1/conference.js +683 -0
  164. package/lib/rest/insights/v1/room/participant.js +2 -0
  165. package/lib/rest/insights/v1/room.js +2 -0
  166. package/lib/rest/insights/v1/setting.d.ts +181 -0
  167. package/lib/rest/insights/v1/setting.js +384 -0
  168. package/lib/rest/ipMessaging/v1/credential.js +4 -2
  169. package/lib/rest/ipMessaging/v1/service/channel/invite.js +4 -2
  170. package/lib/rest/ipMessaging/v1/service/channel/member.js +4 -2
  171. package/lib/rest/ipMessaging/v1/service/channel/message.js +4 -2
  172. package/lib/rest/ipMessaging/v1/service/channel.js +2 -0
  173. package/lib/rest/ipMessaging/v1/service/role.js +10 -8
  174. package/lib/rest/ipMessaging/v1/service/user/userChannel.js +2 -0
  175. package/lib/rest/ipMessaging/v1/service/user.js +4 -2
  176. package/lib/rest/ipMessaging/v1/service.js +4 -2
  177. package/lib/rest/ipMessaging/v2/credential.js +4 -2
  178. package/lib/rest/ipMessaging/v2/service/binding.js +2 -0
  179. package/lib/rest/ipMessaging/v2/service/channel/invite.js +4 -2
  180. package/lib/rest/ipMessaging/v2/service/channel/member.js +4 -2
  181. package/lib/rest/ipMessaging/v2/service/channel/message.js +2 -0
  182. package/lib/rest/ipMessaging/v2/service/channel/webhook.js +4 -2
  183. package/lib/rest/ipMessaging/v2/service/channel.js +2 -0
  184. package/lib/rest/ipMessaging/v2/service/role.js +10 -8
  185. package/lib/rest/ipMessaging/v2/service/user/userBinding.js +2 -0
  186. package/lib/rest/ipMessaging/v2/service/user/userChannel.js +2 -0
  187. package/lib/rest/ipMessaging/v2/service/user.js +4 -2
  188. package/lib/rest/ipMessaging/v2/service.js +4 -2
  189. package/lib/rest/media/v1/mediaProcessor.d.ts +4 -0
  190. package/lib/rest/media/v1/mediaProcessor.js +13 -7
  191. package/lib/rest/media/v1/playerStreamer.js +4 -2
  192. package/lib/rest/messaging/v1/brandRegistration/brandVetting.js +4 -2
  193. package/lib/rest/messaging/v1/brandRegistration.d.ts +14 -0
  194. package/lib/rest/messaging/v1/brandRegistration.js +55 -4
  195. package/lib/rest/messaging/v1/externalCampaign.js +4 -4
  196. package/lib/rest/messaging/v1/service/alphaSender.js +4 -2
  197. package/lib/rest/messaging/v1/service/phoneNumber.js +4 -2
  198. package/lib/rest/messaging/v1/service/shortCode.js +4 -2
  199. package/lib/rest/messaging/v1/service/usAppToPerson.js +14 -12
  200. package/lib/rest/messaging/v1/service.js +4 -2
  201. package/lib/rest/monitor/v1/alert.js +2 -0
  202. package/lib/rest/monitor/v1/event.js +2 -0
  203. package/lib/rest/notify/v1/credential.js +4 -2
  204. package/lib/rest/notify/v1/service/binding.js +8 -6
  205. package/lib/rest/notify/v1/service.js +2 -0
  206. package/lib/rest/numbers/v2/regulatoryCompliance/bundle/bundleCopy.d.ts +154 -1
  207. package/lib/rest/numbers/v2/regulatoryCompliance/bundle/bundleCopy.js +244 -0
  208. package/lib/rest/numbers/v2/regulatoryCompliance/bundle/evaluation.js +2 -0
  209. package/lib/rest/numbers/v2/regulatoryCompliance/bundle/itemAssignment.js +4 -2
  210. package/lib/rest/numbers/v2/regulatoryCompliance/bundle/replaceItems.js +2 -2
  211. package/lib/rest/numbers/v2/regulatoryCompliance/bundle.d.ts +41 -1
  212. package/lib/rest/numbers/v2/regulatoryCompliance/bundle.js +49 -4
  213. package/lib/rest/numbers/v2/regulatoryCompliance/endUser.js +6 -4
  214. package/lib/rest/numbers/v2/regulatoryCompliance/endUserType.js +2 -0
  215. package/lib/rest/numbers/v2/regulatoryCompliance/regulation.js +2 -0
  216. package/lib/rest/numbers/v2/regulatoryCompliance/supportingDocument.js +6 -4
  217. package/lib/rest/numbers/v2/regulatoryCompliance/supportingDocumentType.js +2 -0
  218. package/lib/rest/preview/bulk_exports/export/day.js +2 -0
  219. package/lib/rest/preview/bulk_exports/export/exportCustomJob.js +8 -6
  220. package/lib/rest/preview/deployed_devices/fleet/certificate.js +4 -2
  221. package/lib/rest/preview/deployed_devices/fleet/deployment.js +2 -0
  222. package/lib/rest/preview/deployed_devices/fleet/device.js +2 -0
  223. package/lib/rest/preview/deployed_devices/fleet/key.js +2 -0
  224. package/lib/rest/preview/deployed_devices/fleet.js +2 -0
  225. package/lib/rest/preview/hosted_numbers/authorizationDocument/dependentHostedNumberOrder.js +2 -0
  226. package/lib/rest/preview/hosted_numbers/authorizationDocument.js +12 -10
  227. package/lib/rest/preview/hosted_numbers/hostedNumberOrder.js +6 -4
  228. package/lib/rest/preview/marketplace/availableAddOn/availableAddOnExtension.js +2 -0
  229. package/lib/rest/preview/marketplace/availableAddOn.js +2 -0
  230. package/lib/rest/preview/marketplace/installedAddOn/installedAddOnExtension.js +4 -2
  231. package/lib/rest/preview/marketplace/installedAddOn.js +6 -4
  232. package/lib/rest/preview/sync/service/document/documentPermission.js +8 -6
  233. package/lib/rest/preview/sync/service/document.js +4 -2
  234. package/lib/rest/preview/sync/service/syncList/syncListItem.js +6 -4
  235. package/lib/rest/preview/sync/service/syncList/syncListPermission.js +8 -6
  236. package/lib/rest/preview/sync/service/syncList.js +2 -0
  237. package/lib/rest/preview/sync/service/syncMap/syncMapItem.js +8 -6
  238. package/lib/rest/preview/sync/service/syncMap/syncMapPermission.js +8 -6
  239. package/lib/rest/preview/sync/service/syncMap.js +2 -0
  240. package/lib/rest/preview/sync/service.js +2 -0
  241. package/lib/rest/preview/trusted_comms/brandedChannel/channel.js +2 -2
  242. package/lib/rest/preview/understand/assistant/fieldType/fieldValue.js +6 -4
  243. package/lib/rest/preview/understand/assistant/fieldType.js +4 -2
  244. package/lib/rest/preview/understand/assistant/modelBuild.js +2 -0
  245. package/lib/rest/preview/understand/assistant/query.js +6 -4
  246. package/lib/rest/preview/understand/assistant/task/field.js +6 -4
  247. package/lib/rest/preview/understand/assistant/task/sample.js +6 -4
  248. package/lib/rest/preview/understand/assistant/task.js +4 -2
  249. package/lib/rest/preview/understand/assistant.js +2 -0
  250. package/lib/rest/preview/wireless/command.js +4 -2
  251. package/lib/rest/preview/wireless/ratePlan.js +2 -0
  252. package/lib/rest/preview/wireless/sim.js +2 -0
  253. package/lib/rest/pricing/v1/messaging/country.js +2 -0
  254. package/lib/rest/pricing/v1/phoneNumber/country.js +2 -0
  255. package/lib/rest/pricing/v1/voice/country.js +2 -0
  256. package/lib/rest/pricing/v2/country.js +2 -0
  257. package/lib/rest/pricing/v2/voice/country.js +2 -0
  258. package/lib/rest/proxy/v1/service/phoneNumber.js +2 -0
  259. package/lib/rest/proxy/v1/service/session/interaction.js +2 -0
  260. package/lib/rest/proxy/v1/service/session/participant/messageInteraction.js +2 -0
  261. package/lib/rest/proxy/v1/service/session/participant.js +4 -2
  262. package/lib/rest/proxy/v1/service/session.js +2 -0
  263. package/lib/rest/proxy/v1/service/shortCode.js +4 -2
  264. package/lib/rest/proxy/v1/service.js +4 -2
  265. package/lib/rest/serverless/v1/service/asset/assetVersion.js +2 -0
  266. package/lib/rest/serverless/v1/service/asset.js +6 -4
  267. package/lib/rest/serverless/v1/service/build.js +2 -0
  268. package/lib/rest/serverless/v1/service/environment/deployment.js +2 -0
  269. package/lib/rest/serverless/v1/service/environment/log.js +2 -0
  270. package/lib/rest/serverless/v1/service/environment/variable.js +6 -4
  271. package/lib/rest/serverless/v1/service/environment.js +4 -2
  272. package/lib/rest/serverless/v1/service/function/functionVersion.js +2 -0
  273. package/lib/rest/serverless/v1/service/function.js +6 -4
  274. package/lib/rest/serverless/v1/service.js +6 -4
  275. package/lib/rest/studio/v1/flow/engagement/step.js +2 -0
  276. package/lib/rest/studio/v1/flow/engagement.js +6 -4
  277. package/lib/rest/studio/v1/flow/execution/executionStep.js +2 -0
  278. package/lib/rest/studio/v1/flow/execution.js +8 -6
  279. package/lib/rest/studio/v1/flow.js +2 -0
  280. package/lib/rest/studio/v2/flow/execution/executionStep.js +2 -0
  281. package/lib/rest/studio/v2/flow/execution.js +8 -6
  282. package/lib/rest/studio/v2/flow/flowRevision.js +2 -0
  283. package/lib/rest/studio/v2/flow/testUser.js +2 -2
  284. package/lib/rest/studio/v2/flow.js +10 -8
  285. package/lib/rest/studio/v2/flowValidate.js +6 -6
  286. package/lib/rest/supersim/V1.d.ts +3 -0
  287. package/lib/rest/supersim/V1.js +12 -0
  288. package/lib/rest/supersim/v1/command.js +6 -4
  289. package/lib/rest/supersim/v1/esimProfile.d.ts +344 -0
  290. package/lib/rest/supersim/v1/esimProfile.js +664 -0
  291. package/lib/rest/supersim/v1/fleet.d.ts +17 -5
  292. package/lib/rest/supersim/v1/fleet.js +36 -22
  293. package/lib/rest/supersim/v1/ipCommand.js +8 -6
  294. package/lib/rest/supersim/v1/network.js +2 -0
  295. package/lib/rest/supersim/v1/networkAccessProfile/networkAccessProfileNetwork.js +4 -2
  296. package/lib/rest/supersim/v1/networkAccessProfile.js +2 -0
  297. package/lib/rest/supersim/v1/sim/billingPeriod.js +2 -0
  298. package/lib/rest/supersim/v1/sim.js +6 -4
  299. package/lib/rest/supersim/v1/smsCommand.js +6 -4
  300. package/lib/rest/supersim/v1/usageRecord.js +2 -0
  301. package/lib/rest/sync/v1/service/document/documentPermission.js +8 -6
  302. package/lib/rest/sync/v1/service/document.js +2 -0
  303. package/lib/rest/sync/v1/service/syncList/syncListItem.js +4 -2
  304. package/lib/rest/sync/v1/service/syncList/syncListPermission.js +8 -6
  305. package/lib/rest/sync/v1/service/syncList.js +2 -0
  306. package/lib/rest/sync/v1/service/syncMap/syncMapItem.js +6 -4
  307. package/lib/rest/sync/v1/service/syncMap/syncMapPermission.js +8 -6
  308. package/lib/rest/sync/v1/service/syncMap.js +2 -0
  309. package/lib/rest/sync/v1/service/syncStream/streamMessage.js +2 -2
  310. package/lib/rest/sync/v1/service/syncStream.js +2 -0
  311. package/lib/rest/sync/v1/service.js +2 -0
  312. package/lib/rest/taskrouter/v1/workspace/activity.js +4 -2
  313. package/lib/rest/taskrouter/v1/workspace/event.js +2 -0
  314. package/lib/rest/taskrouter/v1/workspace/task/reservation.js +2 -0
  315. package/lib/rest/taskrouter/v1/workspace/task.js +2 -0
  316. package/lib/rest/taskrouter/v1/workspace/taskChannel.js +6 -4
  317. package/lib/rest/taskrouter/v1/workspace/taskQueue/taskQueuesStatistics.js +2 -0
  318. package/lib/rest/taskrouter/v1/workspace/taskQueue.js +4 -2
  319. package/lib/rest/taskrouter/v1/workspace/worker/reservation.js +2 -0
  320. package/lib/rest/taskrouter/v1/workspace/worker/workerChannel.js +2 -0
  321. package/lib/rest/taskrouter/v1/workspace/worker.js +4 -2
  322. package/lib/rest/taskrouter/v1/workspace/workflow.js +6 -4
  323. package/lib/rest/taskrouter/v1/workspace.js +4 -2
  324. package/lib/rest/trunking/v1/trunk/credentialList.js +4 -2
  325. package/lib/rest/trunking/v1/trunk/ipAccessControlList.js +4 -2
  326. package/lib/rest/trunking/v1/trunk/originationUrl.js +12 -10
  327. package/lib/rest/trunking/v1/trunk/phoneNumber.js +4 -2
  328. package/lib/rest/trunking/v1/trunk.js +2 -0
  329. package/lib/rest/trusthub/v1/customerProfiles/customerProfilesChannelEndpointAssignment.js +6 -4
  330. package/lib/rest/trusthub/v1/customerProfiles/customerProfilesEntityAssignments.js +4 -2
  331. package/lib/rest/trusthub/v1/customerProfiles/customerProfilesEvaluations.js +4 -2
  332. package/lib/rest/trusthub/v1/customerProfiles.js +8 -6
  333. package/lib/rest/trusthub/v1/endUser.js +6 -4
  334. package/lib/rest/trusthub/v1/endUserType.js +2 -0
  335. package/lib/rest/trusthub/v1/policies.js +2 -0
  336. package/lib/rest/trusthub/v1/supportingDocument.js +6 -4
  337. package/lib/rest/trusthub/v1/supportingDocumentType.js +2 -0
  338. package/lib/rest/trusthub/v1/trustProducts/trustProductsChannelEndpointAssignment.js +6 -4
  339. package/lib/rest/trusthub/v1/trustProducts/trustProductsEntityAssignments.js +4 -2
  340. package/lib/rest/trusthub/v1/trustProducts/trustProductsEvaluations.js +4 -2
  341. package/lib/rest/trusthub/v1/trustProducts.js +8 -6
  342. package/lib/rest/verify/v2/service/accessToken.d.ts +62 -4
  343. package/lib/rest/verify/v2/service/accessToken.js +159 -11
  344. package/lib/rest/verify/v2/service/entity/challenge.js +4 -2
  345. package/lib/rest/verify/v2/service/entity/factor.js +2 -0
  346. package/lib/rest/verify/v2/service/entity/newFactor.js +4 -4
  347. package/lib/rest/verify/v2/service/entity.js +4 -2
  348. package/lib/rest/verify/v2/service/messagingConfiguration.js +8 -6
  349. package/lib/rest/verify/v2/service/rateLimit/bucket.js +6 -4
  350. package/lib/rest/verify/v2/service/rateLimit.js +4 -2
  351. package/lib/rest/verify/v2/service/verification.js +6 -6
  352. package/lib/rest/verify/v2/service/verificationCheck.js +2 -2
  353. package/lib/rest/verify/v2/service/webhook.js +8 -6
  354. package/lib/rest/verify/v2/service.js +4 -2
  355. package/lib/rest/verify/v2/template.js +3 -1
  356. package/lib/rest/verify/v2/verificationAttempt.d.ts +50 -10
  357. package/lib/rest/verify/v2/verificationAttempt.js +61 -15
  358. package/lib/rest/video/v1/composition.d.ts +2 -0
  359. package/lib/rest/video/v1/composition.js +7 -2
  360. package/lib/rest/video/v1/compositionHook.js +6 -4
  361. package/lib/rest/video/v1/compositionSettings.js +2 -2
  362. package/lib/rest/video/v1/recording.d.ts +2 -0
  363. package/lib/rest/video/v1/recording.js +5 -0
  364. package/lib/rest/video/v1/recordingSettings.js +2 -2
  365. package/lib/rest/video/v1/room/recording.d.ts +2 -0
  366. package/lib/rest/video/v1/room/recording.js +5 -0
  367. package/lib/rest/video/v1/room/roomParticipant/roomParticipantPublishedTrack.js +2 -0
  368. package/lib/rest/video/v1/room/roomParticipant/roomParticipantSubscribedTrack.js +2 -0
  369. package/lib/rest/video/v1/room/roomParticipant.js +2 -0
  370. package/lib/rest/video/v1/room.d.ts +8 -0
  371. package/lib/rest/video/v1/room.js +17 -3
  372. package/lib/rest/voice/V1.d.ts +3 -0
  373. package/lib/rest/voice/V1.js +12 -0
  374. package/lib/rest/voice/v1/archivedCall.d.ts +136 -0
  375. package/lib/rest/voice/v1/archivedCall.js +325 -0
  376. package/lib/rest/voice/v1/byocTrunk.js +2 -0
  377. package/lib/rest/voice/v1/connectionPolicy/connectionPolicyTarget.js +4 -2
  378. package/lib/rest/voice/v1/connectionPolicy.js +2 -0
  379. package/lib/rest/voice/v1/dialingPermissions/bulkCountryUpdate.js +2 -2
  380. package/lib/rest/voice/v1/dialingPermissions/country/highriskSpecialPrefix.js +2 -0
  381. package/lib/rest/voice/v1/dialingPermissions/country.js +2 -0
  382. package/lib/rest/voice/v1/ipRecord.js +4 -2
  383. package/lib/rest/voice/v1/sourceIpMapping.js +8 -6
  384. package/lib/rest/wireless/v1/command.js +4 -2
  385. package/lib/rest/wireless/v1/ratePlan.js +2 -0
  386. package/lib/rest/wireless/v1/sim/dataSession.js +2 -0
  387. package/lib/rest/wireless/v1/sim/usageRecord.js +2 -0
  388. package/lib/rest/wireless/v1/sim.js +6 -8
  389. package/lib/rest/wireless/v1/usageRecord.js +2 -0
  390. package/package.json +3 -3
  391. package/CHANGES.md +0 -2517
@@ -0,0 +1,683 @@
1
+ 'use strict';
2
+
3
+ /* jshint ignore:start */
4
+ /**
5
+ * This code was generated by
6
+ * \ / _ _ _| _ _
7
+ * | (_)\/(_)(_|\/| |(/_ v1.0.0
8
+ * / /
9
+ */
10
+ /* jshint ignore:end */
11
+
12
+ var Q = require('q'); /* jshint ignore:line */
13
+ var _ = require('lodash'); /* jshint ignore:line */
14
+ var util = require('util'); /* jshint ignore:line */
15
+ var ConferenceParticipantList = require(
16
+ './conference/conferenceParticipant').ConferenceParticipantList;
17
+ var Page = require('../../../base/Page'); /* jshint ignore:line */
18
+ var deserialize = require(
19
+ '../../../base/deserialize'); /* jshint ignore:line */
20
+ var values = require('../../../base/values'); /* jshint ignore:line */
21
+
22
+ var ConferenceList;
23
+ var ConferencePage;
24
+ var ConferenceInstance;
25
+ var ConferenceContext;
26
+
27
+ /* jshint ignore:start */
28
+ /**
29
+ * Initialize the ConferenceList
30
+ *
31
+ * @constructor Twilio.Insights.V1.ConferenceList
32
+ *
33
+ * @param {Twilio.Insights.V1} version - Version of the resource
34
+ */
35
+ /* jshint ignore:end */
36
+ ConferenceList = function ConferenceList(version) {
37
+ /* jshint ignore:start */
38
+ /**
39
+ * @function conferences
40
+ * @memberof Twilio.Insights.V1#
41
+ *
42
+ * @param {string} sid - sid of instance
43
+ *
44
+ * @returns {Twilio.Insights.V1.ConferenceContext}
45
+ */
46
+ /* jshint ignore:end */
47
+ function ConferenceListInstance(sid) {
48
+ return ConferenceListInstance.get(sid);
49
+ }
50
+
51
+ ConferenceListInstance._version = version;
52
+ // Path Solution
53
+ ConferenceListInstance._solution = {};
54
+ ConferenceListInstance._uri = `/Conferences`;
55
+ /* jshint ignore:start */
56
+ /**
57
+ * Streams ConferenceInstance records from the API.
58
+ *
59
+ * This operation lazily loads records as efficiently as possible until the limit
60
+ * is reached.
61
+ *
62
+ * The results are passed into the callback function, so this operation is memory
63
+ * efficient.
64
+ *
65
+ * If a function is passed as the first argument, it will be used as the callback
66
+ * function.
67
+ *
68
+ * @function each
69
+ * @memberof Twilio.Insights.V1.ConferenceList#
70
+ *
71
+ * @param {object} [opts] - Options for request
72
+ * @param {string} [opts.conferenceSid] - The SID of the conference.
73
+ * @param {string} [opts.friendlyName] - Custom label for the conference.
74
+ * @param {string} [opts.status] - Conference status.
75
+ * @param {string} [opts.createdAfter] - Conferences created after timestamp.
76
+ * @param {string} [opts.createdBefore] - Conferences created before timestamp.
77
+ * @param {string} [opts.mixerRegion] - Region where the conference was mixed.
78
+ * @param {string} [opts.tags] - Tags applied by Twilio for common issues.
79
+ * @param {string} [opts.subaccount] - Account SID for the subaccount.
80
+ * @param {string} [opts.detectedIssues] -
81
+ * Potential issues detected during the conference.
82
+ * @param {string} [opts.endReason] - Conference end reason.
83
+ * @param {number} [opts.limit] -
84
+ * Upper limit for the number of records to return.
85
+ * each() guarantees never to return more than limit.
86
+ * Default is no limit
87
+ * @param {number} [opts.pageSize] -
88
+ * Number of records to fetch per request,
89
+ * when not set will use the default value of 50 records.
90
+ * If no pageSize is defined but a limit is defined,
91
+ * each() will attempt to read the limit with the most efficient
92
+ * page size, i.e. min(limit, 1000)
93
+ * @param {Function} [opts.callback] -
94
+ * Function to process each record. If this and a positional
95
+ * callback are passed, this one will be used
96
+ * @param {Function} [opts.done] -
97
+ * Function to be called upon completion of streaming
98
+ * @param {Function} [callback] - Function to process each record
99
+ */
100
+ /* jshint ignore:end */
101
+ ConferenceListInstance.each = function each(opts, callback) {
102
+ if (_.isFunction(opts)) {
103
+ callback = opts;
104
+ opts = {};
105
+ }
106
+ opts = opts || {};
107
+ if (opts.callback) {
108
+ callback = opts.callback;
109
+ }
110
+ if (_.isUndefined(callback)) {
111
+ throw new Error('Callback function must be provided');
112
+ }
113
+
114
+ var done = false;
115
+ var currentPage = 1;
116
+ var currentResource = 0;
117
+ var limits = this._version.readLimits({
118
+ limit: opts.limit,
119
+ pageSize: opts.pageSize
120
+ });
121
+
122
+ function onComplete(error) {
123
+ done = true;
124
+ if (_.isFunction(opts.done)) {
125
+ opts.done(error);
126
+ }
127
+ }
128
+
129
+ function fetchNextPage(fn) {
130
+ var promise = fn();
131
+ if (_.isUndefined(promise)) {
132
+ onComplete();
133
+ return;
134
+ }
135
+
136
+ promise.then(function(page) {
137
+ _.each(page.instances, function(instance) {
138
+ if (done || (!_.isUndefined(opts.limit) && currentResource >= opts.limit)) {
139
+ done = true;
140
+ return false;
141
+ }
142
+
143
+ currentResource++;
144
+ callback(instance, onComplete);
145
+ });
146
+
147
+ if (!done) {
148
+ currentPage++;
149
+ fetchNextPage(_.bind(page.nextPage, page));
150
+ } else {
151
+ onComplete();
152
+ }
153
+ });
154
+
155
+ promise.catch(onComplete);
156
+ }
157
+
158
+ fetchNextPage(_.bind(this.page, this, _.merge(opts, limits)));
159
+ };
160
+
161
+ /* jshint ignore:start */
162
+ /**
163
+ * Lists ConferenceInstance records from the API as a list.
164
+ *
165
+ * If a function is passed as the first argument, it will be used as the callback
166
+ * function.
167
+ *
168
+ * @function list
169
+ * @memberof Twilio.Insights.V1.ConferenceList#
170
+ *
171
+ * @param {object} [opts] - Options for request
172
+ * @param {string} [opts.conferenceSid] - The SID of the conference.
173
+ * @param {string} [opts.friendlyName] - Custom label for the conference.
174
+ * @param {string} [opts.status] - Conference status.
175
+ * @param {string} [opts.createdAfter] - Conferences created after timestamp.
176
+ * @param {string} [opts.createdBefore] - Conferences created before timestamp.
177
+ * @param {string} [opts.mixerRegion] - Region where the conference was mixed.
178
+ * @param {string} [opts.tags] - Tags applied by Twilio for common issues.
179
+ * @param {string} [opts.subaccount] - Account SID for the subaccount.
180
+ * @param {string} [opts.detectedIssues] -
181
+ * Potential issues detected during the conference.
182
+ * @param {string} [opts.endReason] - Conference end reason.
183
+ * @param {number} [opts.limit] -
184
+ * Upper limit for the number of records to return.
185
+ * list() guarantees never to return more than limit.
186
+ * Default is no limit
187
+ * @param {number} [opts.pageSize] -
188
+ * Number of records to fetch per request,
189
+ * when not set will use the default value of 50 records.
190
+ * If no page_size is defined but a limit is defined,
191
+ * list() will attempt to read the limit with the most
192
+ * efficient page size, i.e. min(limit, 1000)
193
+ * @param {function} [callback] - Callback to handle list of records
194
+ *
195
+ * @returns {Promise} Resolves to a list of records
196
+ */
197
+ /* jshint ignore:end */
198
+ ConferenceListInstance.list = function list(opts, callback) {
199
+ if (_.isFunction(opts)) {
200
+ callback = opts;
201
+ opts = {};
202
+ }
203
+ opts = opts || {};
204
+ var deferred = Q.defer();
205
+ var allResources = [];
206
+ opts.callback = function(resource, done) {
207
+ allResources.push(resource);
208
+
209
+ if (!_.isUndefined(opts.limit) && allResources.length === opts.limit) {
210
+ done();
211
+ }
212
+ };
213
+
214
+ opts.done = function(error) {
215
+ if (_.isUndefined(error)) {
216
+ deferred.resolve(allResources);
217
+ } else {
218
+ deferred.reject(error);
219
+ }
220
+ };
221
+
222
+ if (_.isFunction(callback)) {
223
+ deferred.promise.nodeify(callback);
224
+ }
225
+
226
+ this.each(opts);
227
+ return deferred.promise;
228
+ };
229
+
230
+ /* jshint ignore:start */
231
+ /**
232
+ * Retrieve a single page of ConferenceInstance records from the API.
233
+ *
234
+ * The request is executed immediately.
235
+ *
236
+ * If a function is passed as the first argument, it will be used as the callback
237
+ * function.
238
+ *
239
+ * @function page
240
+ * @memberof Twilio.Insights.V1.ConferenceList#
241
+ *
242
+ * @param {object} [opts] - Options for request
243
+ * @param {string} [opts.conferenceSid] - The SID of the conference.
244
+ * @param {string} [opts.friendlyName] - Custom label for the conference.
245
+ * @param {string} [opts.status] - Conference status.
246
+ * @param {string} [opts.createdAfter] - Conferences created after timestamp.
247
+ * @param {string} [opts.createdBefore] - Conferences created before timestamp.
248
+ * @param {string} [opts.mixerRegion] - Region where the conference was mixed.
249
+ * @param {string} [opts.tags] - Tags applied by Twilio for common issues.
250
+ * @param {string} [opts.subaccount] - Account SID for the subaccount.
251
+ * @param {string} [opts.detectedIssues] -
252
+ * Potential issues detected during the conference.
253
+ * @param {string} [opts.endReason] - Conference end reason.
254
+ * @param {string} [opts.pageToken] - PageToken provided by the API
255
+ * @param {number} [opts.pageNumber] -
256
+ * Page Number, this value is simply for client state
257
+ * @param {number} [opts.pageSize] - Number of records to return, defaults to 50
258
+ * @param {function} [callback] - Callback to handle list of records
259
+ *
260
+ * @returns {Promise} Resolves to a list of records
261
+ */
262
+ /* jshint ignore:end */
263
+ ConferenceListInstance.page = function page(opts, callback) {
264
+ if (_.isFunction(opts)) {
265
+ callback = opts;
266
+ opts = {};
267
+ }
268
+ opts = opts || {};
269
+
270
+ var deferred = Q.defer();
271
+ var data = values.of({
272
+ 'ConferenceSid': _.get(opts, 'conferenceSid'),
273
+ 'FriendlyName': _.get(opts, 'friendlyName'),
274
+ 'Status': _.get(opts, 'status'),
275
+ 'CreatedAfter': _.get(opts, 'createdAfter'),
276
+ 'CreatedBefore': _.get(opts, 'createdBefore'),
277
+ 'MixerRegion': _.get(opts, 'mixerRegion'),
278
+ 'Tags': _.get(opts, 'tags'),
279
+ 'Subaccount': _.get(opts, 'subaccount'),
280
+ 'DetectedIssues': _.get(opts, 'detectedIssues'),
281
+ 'EndReason': _.get(opts, 'endReason'),
282
+ 'PageToken': opts.pageToken,
283
+ 'Page': opts.pageNumber,
284
+ 'PageSize': opts.pageSize
285
+ });
286
+
287
+ var promise = this._version.page({uri: this._uri, method: 'GET', params: data});
288
+
289
+ promise = promise.then(function(payload) {
290
+ deferred.resolve(new ConferencePage(this._version, payload, this._solution));
291
+ }.bind(this));
292
+
293
+ promise.catch(function(error) {
294
+ deferred.reject(error);
295
+ });
296
+
297
+ if (_.isFunction(callback)) {
298
+ deferred.promise.nodeify(callback);
299
+ }
300
+
301
+ return deferred.promise;
302
+ };
303
+
304
+ /* jshint ignore:start */
305
+ /**
306
+ * Retrieve a single target page of ConferenceInstance records from the API.
307
+ *
308
+ * The request is executed immediately.
309
+ *
310
+ * If a function is passed as the first argument, it will be used as the callback
311
+ * function.
312
+ *
313
+ * @function getPage
314
+ * @memberof Twilio.Insights.V1.ConferenceList#
315
+ *
316
+ * @param {string} [targetUrl] - API-generated URL for the requested results page
317
+ * @param {function} [callback] - Callback to handle list of records
318
+ *
319
+ * @returns {Promise} Resolves to a list of records
320
+ */
321
+ /* jshint ignore:end */
322
+ ConferenceListInstance.getPage = function getPage(targetUrl, callback) {
323
+ var deferred = Q.defer();
324
+
325
+ var promise = this._version._domain.twilio.request({method: 'GET', uri: targetUrl});
326
+
327
+ promise = promise.then(function(payload) {
328
+ deferred.resolve(new ConferencePage(this._version, payload, this._solution));
329
+ }.bind(this));
330
+
331
+ promise.catch(function(error) {
332
+ deferred.reject(error);
333
+ });
334
+
335
+ if (_.isFunction(callback)) {
336
+ deferred.promise.nodeify(callback);
337
+ }
338
+
339
+ return deferred.promise;
340
+ };
341
+
342
+ /* jshint ignore:start */
343
+ /**
344
+ * Constructs a conference
345
+ *
346
+ * @function get
347
+ * @memberof Twilio.Insights.V1.ConferenceList#
348
+ *
349
+ * @param {string} conferenceSid - Conference SID.
350
+ *
351
+ * @returns {Twilio.Insights.V1.ConferenceContext}
352
+ */
353
+ /* jshint ignore:end */
354
+ ConferenceListInstance.get = function get(conferenceSid) {
355
+ return new ConferenceContext(this._version, conferenceSid);
356
+ };
357
+
358
+ /* jshint ignore:start */
359
+ /**
360
+ * Provide a user-friendly representation
361
+ *
362
+ * @function toJSON
363
+ * @memberof Twilio.Insights.V1.ConferenceList#
364
+ *
365
+ * @returns Object
366
+ */
367
+ /* jshint ignore:end */
368
+ ConferenceListInstance.toJSON = function toJSON() {
369
+ return this._solution;
370
+ };
371
+
372
+ ConferenceListInstance[util.inspect.custom] = function inspect(depth, options) {
373
+ return util.inspect(this.toJSON(), options);
374
+ };
375
+
376
+ return ConferenceListInstance;
377
+ };
378
+
379
+
380
+ /* jshint ignore:start */
381
+ /**
382
+ * Initialize the ConferencePage
383
+ *
384
+ * @constructor Twilio.Insights.V1.ConferencePage
385
+ *
386
+ * @param {V1} version - Version of the resource
387
+ * @param {Response<string>} response - Response from the API
388
+ * @param {ConferenceSolution} solution - Path solution
389
+ *
390
+ * @returns ConferencePage
391
+ */
392
+ /* jshint ignore:end */
393
+ ConferencePage = function ConferencePage(version, response, solution) {
394
+ // Path Solution
395
+ this._solution = solution;
396
+
397
+ Page.prototype.constructor.call(this, version, response, this._solution);
398
+ };
399
+
400
+ _.extend(ConferencePage.prototype, Page.prototype);
401
+ ConferencePage.prototype.constructor = ConferencePage;
402
+
403
+ /* jshint ignore:start */
404
+ /**
405
+ * Build an instance of ConferenceInstance
406
+ *
407
+ * @function getInstance
408
+ * @memberof Twilio.Insights.V1.ConferencePage#
409
+ *
410
+ * @param {ConferencePayload} payload - Payload response from the API
411
+ *
412
+ * @returns ConferenceInstance
413
+ */
414
+ /* jshint ignore:end */
415
+ ConferencePage.prototype.getInstance = function getInstance(payload) {
416
+ return new ConferenceInstance(this._version, payload);
417
+ };
418
+
419
+ /* jshint ignore:start */
420
+ /**
421
+ * Provide a user-friendly representation
422
+ *
423
+ * @function toJSON
424
+ * @memberof Twilio.Insights.V1.ConferencePage#
425
+ *
426
+ * @returns Object
427
+ */
428
+ /* jshint ignore:end */
429
+ ConferencePage.prototype.toJSON = function toJSON() {
430
+ let clone = {};
431
+ _.forOwn(this, function(value, key) {
432
+ if (!_.startsWith(key, '_') && ! _.isFunction(value)) {
433
+ clone[key] = value;
434
+ }
435
+ });
436
+ return clone;
437
+ };
438
+
439
+ ConferencePage.prototype[util.inspect.custom] = function inspect(depth, options)
440
+ {
441
+ return util.inspect(this.toJSON(), options);
442
+ };
443
+
444
+
445
+ /* jshint ignore:start */
446
+ /**
447
+ * Initialize the ConferenceContext
448
+ *
449
+ * @constructor Twilio.Insights.V1.ConferenceInstance
450
+ *
451
+ * @property {string} conferenceSid - Conference SID.
452
+ * @property {string} accountSid - Account SID.
453
+ * @property {string} friendlyName - Custom label for the conference.
454
+ * @property {Date} createTime - Conference creation date/time.
455
+ * @property {Date} startTime -
456
+ * Timestamp in ISO 8601 format when the conference started.
457
+ * @property {Date} endTime - Conference end date/time.
458
+ * @property {number} durationSeconds - Conference duration in seconds.
459
+ * @property {number} connectDurationSeconds -
460
+ * Duration of the conference in seconds.
461
+ * @property {conference.conference_status} status - Status of conference
462
+ * @property {number} maxParticipants - Max participants specified in config.
463
+ * @property {number} maxConcurrentParticipants -
464
+ * Actual maximum concurrent participants.
465
+ * @property {number} uniqueParticipants - Unique conference participants.
466
+ * @property {conference.conference_end_reason} endReason - Conference end reason.
467
+ * @property {string} endedBy - Call SID that ended the conference.
468
+ * @property {conference.region} mixerRegion -
469
+ * Region where the conference was mixed.
470
+ * @property {conference.region} mixerRegionRequested -
471
+ * Configuration-requested conference mixer region.
472
+ * @property {boolean} recordingEnabled -
473
+ * Boolean. Indicates whether recording was enabled.
474
+ * @property {object} detectedIssues -
475
+ * Potential issues detected during the conference.
476
+ * @property {conference.tag} tags -
477
+ * Tags for detected conference conditions and participant behaviors.
478
+ * @property {object} tagInfo - Object. Contains details about conference tags.
479
+ * @property {conference.processing_state} processingState -
480
+ * Processing state for the Conference Summary resource.
481
+ * @property {string} url - The URL of this resource.
482
+ * @property {string} links - Nested resource URLs.
483
+ *
484
+ * @param {V1} version - Version of the resource
485
+ * @param {ConferencePayload} payload - The instance payload
486
+ * @param {sid} conferenceSid - Conference SID.
487
+ */
488
+ /* jshint ignore:end */
489
+ ConferenceInstance = function ConferenceInstance(version, payload,
490
+ conferenceSid) {
491
+ this._version = version;
492
+
493
+ // Marshaled Properties
494
+ this.conferenceSid = payload.conference_sid; // jshint ignore:line
495
+ this.accountSid = payload.account_sid; // jshint ignore:line
496
+ this.friendlyName = payload.friendly_name; // jshint ignore:line
497
+ this.createTime = deserialize.iso8601DateTime(payload.create_time); // jshint ignore:line
498
+ this.startTime = deserialize.iso8601DateTime(payload.start_time); // jshint ignore:line
499
+ this.endTime = deserialize.iso8601DateTime(payload.end_time); // jshint ignore:line
500
+ this.durationSeconds = deserialize.integer(payload.duration_seconds); // jshint ignore:line
501
+ this.connectDurationSeconds = deserialize.integer(payload.connect_duration_seconds); // jshint ignore:line
502
+ this.status = payload.status; // jshint ignore:line
503
+ this.maxParticipants = deserialize.integer(payload.max_participants); // jshint ignore:line
504
+ this.maxConcurrentParticipants = deserialize.integer(payload.max_concurrent_participants); // jshint ignore:line
505
+ this.uniqueParticipants = deserialize.integer(payload.unique_participants); // jshint ignore:line
506
+ this.endReason = payload.end_reason; // jshint ignore:line
507
+ this.endedBy = payload.ended_by; // jshint ignore:line
508
+ this.mixerRegion = payload.mixer_region; // jshint ignore:line
509
+ this.mixerRegionRequested = payload.mixer_region_requested; // jshint ignore:line
510
+ this.recordingEnabled = payload.recording_enabled; // jshint ignore:line
511
+ this.detectedIssues = payload.detected_issues; // jshint ignore:line
512
+ this.tags = payload.tags; // jshint ignore:line
513
+ this.tagInfo = payload.tag_info; // jshint ignore:line
514
+ this.processingState = payload.processing_state; // jshint ignore:line
515
+ this.url = payload.url; // jshint ignore:line
516
+ this.links = payload.links; // jshint ignore:line
517
+
518
+ // Context
519
+ this._context = undefined;
520
+ this._solution = {conferenceSid: conferenceSid || this.conferenceSid, };
521
+ };
522
+
523
+ Object.defineProperty(ConferenceInstance.prototype,
524
+ '_proxy', {
525
+ get: function() {
526
+ if (!this._context) {
527
+ this._context = new ConferenceContext(this._version, this._solution.conferenceSid);
528
+ }
529
+
530
+ return this._context;
531
+ }
532
+ });
533
+
534
+ /* jshint ignore:start */
535
+ /**
536
+ * fetch a ConferenceInstance
537
+ *
538
+ * @function fetch
539
+ * @memberof Twilio.Insights.V1.ConferenceInstance#
540
+ *
541
+ * @param {function} [callback] - Callback to handle processed record
542
+ *
543
+ * @returns {Promise} Resolves to processed ConferenceInstance
544
+ */
545
+ /* jshint ignore:end */
546
+ ConferenceInstance.prototype.fetch = function fetch(callback) {
547
+ return this._proxy.fetch(callback);
548
+ };
549
+
550
+ /* jshint ignore:start */
551
+ /**
552
+ * Access the conferenceParticipants
553
+ *
554
+ * @function conferenceParticipants
555
+ * @memberof Twilio.Insights.V1.ConferenceInstance#
556
+ *
557
+ * @returns {Twilio.Insights.V1.ConferenceContext.ConferenceParticipantList}
558
+ */
559
+ /* jshint ignore:end */
560
+ ConferenceInstance.prototype.conferenceParticipants = function
561
+ conferenceParticipants() {
562
+ return this._proxy.conferenceParticipants;
563
+ };
564
+
565
+ /* jshint ignore:start */
566
+ /**
567
+ * Provide a user-friendly representation
568
+ *
569
+ * @function toJSON
570
+ * @memberof Twilio.Insights.V1.ConferenceInstance#
571
+ *
572
+ * @returns Object
573
+ */
574
+ /* jshint ignore:end */
575
+ ConferenceInstance.prototype.toJSON = function toJSON() {
576
+ let clone = {};
577
+ _.forOwn(this, function(value, key) {
578
+ if (!_.startsWith(key, '_') && ! _.isFunction(value)) {
579
+ clone[key] = value;
580
+ }
581
+ });
582
+ return clone;
583
+ };
584
+
585
+ ConferenceInstance.prototype[util.inspect.custom] = function inspect(depth,
586
+ options) {
587
+ return util.inspect(this.toJSON(), options);
588
+ };
589
+
590
+
591
+ /* jshint ignore:start */
592
+ /**
593
+ * Initialize the ConferenceContext
594
+ *
595
+ * @constructor Twilio.Insights.V1.ConferenceContext
596
+ *
597
+ * @property {Twilio.Insights.V1.ConferenceContext.ConferenceParticipantList} conferenceParticipants -
598
+ * conferenceParticipants resource
599
+ *
600
+ * @param {V1} version - Version of the resource
601
+ * @param {sid} conferenceSid - Conference SID.
602
+ */
603
+ /* jshint ignore:end */
604
+ ConferenceContext = function ConferenceContext(version, conferenceSid) {
605
+ this._version = version;
606
+
607
+ // Path Solution
608
+ this._solution = {conferenceSid: conferenceSid, };
609
+ this._uri = `/Conferences/${conferenceSid}`;
610
+
611
+ // Dependents
612
+ this._conferenceParticipants = undefined;
613
+ };
614
+
615
+ /* jshint ignore:start */
616
+ /**
617
+ * fetch a ConferenceInstance
618
+ *
619
+ * @function fetch
620
+ * @memberof Twilio.Insights.V1.ConferenceContext#
621
+ *
622
+ * @param {function} [callback] - Callback to handle processed record
623
+ *
624
+ * @returns {Promise} Resolves to processed ConferenceInstance
625
+ */
626
+ /* jshint ignore:end */
627
+ ConferenceContext.prototype.fetch = function fetch(callback) {
628
+ var deferred = Q.defer();
629
+ var promise = this._version.fetch({uri: this._uri, method: 'GET'});
630
+
631
+ promise = promise.then(function(payload) {
632
+ deferred.resolve(new ConferenceInstance(this._version, payload, this._solution.conferenceSid));
633
+ }.bind(this));
634
+
635
+ promise.catch(function(error) {
636
+ deferred.reject(error);
637
+ });
638
+
639
+ if (_.isFunction(callback)) {
640
+ deferred.promise.nodeify(callback);
641
+ }
642
+
643
+ return deferred.promise;
644
+ };
645
+
646
+ Object.defineProperty(ConferenceContext.prototype,
647
+ 'conferenceParticipants', {
648
+ get: function() {
649
+ if (!this._conferenceParticipants) {
650
+ this._conferenceParticipants = new ConferenceParticipantList(
651
+ this._version,
652
+ this._solution.conferenceSid
653
+ );
654
+ }
655
+ return this._conferenceParticipants;
656
+ }
657
+ });
658
+
659
+ /* jshint ignore:start */
660
+ /**
661
+ * Provide a user-friendly representation
662
+ *
663
+ * @function toJSON
664
+ * @memberof Twilio.Insights.V1.ConferenceContext#
665
+ *
666
+ * @returns Object
667
+ */
668
+ /* jshint ignore:end */
669
+ ConferenceContext.prototype.toJSON = function toJSON() {
670
+ return this._solution;
671
+ };
672
+
673
+ ConferenceContext.prototype[util.inspect.custom] = function inspect(depth,
674
+ options) {
675
+ return util.inspect(this.toJSON(), options);
676
+ };
677
+
678
+ module.exports = {
679
+ ConferenceList: ConferenceList,
680
+ ConferencePage: ConferencePage,
681
+ ConferenceInstance: ConferenceInstance,
682
+ ConferenceContext: ConferenceContext
683
+ };
@@ -138,6 +138,8 @@ ParticipantList = function ParticipantList(version, roomSid) {
138
138
  if (!done) {
139
139
  currentPage++;
140
140
  fetchNextPage(_.bind(page.nextPage, page));
141
+ } else {
142
+ onComplete();
141
143
  }
142
144
  });
143
145
 
@@ -146,6 +146,8 @@ RoomList = function RoomList(version) {
146
146
  if (!done) {
147
147
  currentPage++;
148
148
  fetchNextPage(_.bind(page.nextPage, page));
149
+ } else {
150
+ onComplete();
149
151
  }
150
152
  });
151
153