twilio-api-sdk 1.0.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 (278) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +213 -0
  4. data/bin/console +15 -0
  5. data/lib/twilio_ap_is/api_helper.rb +10 -0
  6. data/lib/twilio_ap_is/apis/accounts_v1_auth_token_promotion_api.rb +27 -0
  7. data/lib/twilio_ap_is/apis/accounts_v1_aws_api.rb +137 -0
  8. data/lib/twilio_ap_is/apis/accounts_v1_bulk_consents_api.rb +41 -0
  9. data/lib/twilio_ap_is/apis/accounts_v1_bulk_contacts_api.rb +36 -0
  10. data/lib/twilio_ap_is/apis/accounts_v1_messaging_geopermissions_api.rb +54 -0
  11. data/lib/twilio_ap_is/apis/accounts_v1_public_key_api.rb +136 -0
  12. data/lib/twilio_ap_is/apis/accounts_v1_safelist_api.rb +69 -0
  13. data/lib/twilio_ap_is/apis/accounts_v1_secondary_auth_token_api.rb +39 -0
  14. data/lib/twilio_ap_is/apis/base_api.rb +67 -0
  15. data/lib/twilio_ap_is/apis/chat_v3_channel_api.rb +51 -0
  16. data/lib/twilio_ap_is/apis/conversations_v1_address_configuration_api.rb +218 -0
  17. data/lib/twilio_ap_is/apis/conversations_v1_binding_api.rb +116 -0
  18. data/lib/twilio_ap_is/apis/conversations_v1_configuration_api.rb +133 -0
  19. data/lib/twilio_ap_is/apis/conversations_v1_conversation_api.rb +550 -0
  20. data/lib/twilio_ap_is/apis/conversations_v1_conversation_with_participants_api.rb +182 -0
  21. data/lib/twilio_ap_is/apis/conversations_v1_credential_api.rb +189 -0
  22. data/lib/twilio_ap_is/apis/conversations_v1_delivery_receipt_api.rb +183 -0
  23. data/lib/twilio_ap_is/apis/conversations_v1_message_api.rb +497 -0
  24. data/lib/twilio_ap_is/apis/conversations_v1_notification_api.rb +124 -0
  25. data/lib/twilio_ap_is/apis/conversations_v1_participant_api.rb +546 -0
  26. data/lib/twilio_ap_is/apis/conversations_v1_participant_conversation_api.rb +99 -0
  27. data/lib/twilio_ap_is/apis/conversations_v1_role_api.rb +325 -0
  28. data/lib/twilio_ap_is/apis/conversations_v1_service_api.rb +98 -0
  29. data/lib/twilio_ap_is/apis/conversations_v1_user_api.rb +364 -0
  30. data/lib/twilio_ap_is/apis/conversations_v1_user_conversation_api.rb +335 -0
  31. data/lib/twilio_ap_is/apis/conversations_v1_webhook_api.rb +561 -0
  32. data/lib/twilio_ap_is/apis/notify_v1_binding_api.rb +186 -0
  33. data/lib/twilio_ap_is/apis/notify_v1_credential_api.rb +183 -0
  34. data/lib/twilio_ap_is/apis/notify_v1_notification_api.rb +174 -0
  35. data/lib/twilio_ap_is/apis/notify_v1_service_api.rb +262 -0
  36. data/lib/twilio_ap_is/apis/taskrouter_v1_activity_api.rb +177 -0
  37. data/lib/twilio_ap_is/apis/taskrouter_v1_event_api.rb +125 -0
  38. data/lib/twilio_ap_is/apis/taskrouter_v1_task_api.rb +310 -0
  39. data/lib/twilio_ap_is/apis/taskrouter_v1_task_channel_api.rb +173 -0
  40. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_api.rb +232 -0
  41. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_bulk_real_time_statistics_api.rb +36 -0
  42. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_cumulative_statistics_api.rb +63 -0
  43. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_real_time_statistics_api.rb +41 -0
  44. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_statistics_api.rb +63 -0
  45. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queues_statistics_api.rb +72 -0
  46. data/lib/twilio_ap_is/apis/taskrouter_v1_task_reservation_api.rb +396 -0
  47. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_api.rb +232 -0
  48. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_channel_api.rb +126 -0
  49. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_reservation_api.rb +385 -0
  50. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_statistics_api.rb +57 -0
  51. data/lib/twilio_ap_is/apis/taskrouter_v1_workers_cumulative_statistics_api.rb +51 -0
  52. data/lib/twilio_ap_is/apis/taskrouter_v1_workers_real_time_statistics_api.rb +35 -0
  53. data/lib/twilio_ap_is/apis/taskrouter_v1_workers_statistics_api.rb +63 -0
  54. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_api.rb +213 -0
  55. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_cumulative_statistics_api.rb +68 -0
  56. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_real_time_statistics_api.rb +41 -0
  57. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_statistics_api.rb +67 -0
  58. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_api.rb +225 -0
  59. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_cumulative_statistics_api.rb +62 -0
  60. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_real_time_statistics_api.rb +35 -0
  61. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_statistics_api.rb +61 -0
  62. data/lib/twilio_ap_is/apis/verify_v2_service_api.rb +178 -0
  63. data/lib/twilio_ap_is/apis/verify_v2_verification_api.rb +143 -0
  64. data/lib/twilio_ap_is/apis/verify_v2_verification_check_api.rb +61 -0
  65. data/lib/twilio_ap_is/client.rb +417 -0
  66. data/lib/twilio_ap_is/configuration.rb +187 -0
  67. data/lib/twilio_ap_is/exceptions/api_exception.rb +21 -0
  68. data/lib/twilio_ap_is/exceptions/v2_services_verifications429_error_exception.rb +63 -0
  69. data/lib/twilio_ap_is/http/api_response.rb +19 -0
  70. data/lib/twilio_ap_is/http/auth/basic_auth.rb +62 -0
  71. data/lib/twilio_ap_is/http/http_call_back.rb +10 -0
  72. data/lib/twilio_ap_is/http/http_method_enum.rb +10 -0
  73. data/lib/twilio_ap_is/http/http_request.rb +10 -0
  74. data/lib/twilio_ap_is/http/http_response.rb +10 -0
  75. data/lib/twilio_ap_is/http/proxy_settings.rb +22 -0
  76. data/lib/twilio_ap_is/logging/configuration/api_logging_configuration.rb +186 -0
  77. data/lib/twilio_ap_is/logging/sdk_logger.rb +17 -0
  78. data/lib/twilio_ap_is/models/access_token.rb +188 -0
  79. data/lib/twilio_ap_is/models/access_token_enum_factor_types.rb +26 -0
  80. data/lib/twilio_ap_is/models/activity.rb +189 -0
  81. data/lib/twilio_ap_is/models/auth_token_promotion.rb +142 -0
  82. data/lib/twilio_ap_is/models/base_model.rb +110 -0
  83. data/lib/twilio_ap_is/models/binding.rb +269 -0
  84. data/lib/twilio_ap_is/models/binding_binding_type.rb +53 -0
  85. data/lib/twilio_ap_is/models/bucket.rb +186 -0
  86. data/lib/twilio_ap_is/models/bulk_consents.rb +83 -0
  87. data/lib/twilio_ap_is/models/bulk_contacts.rb +83 -0
  88. data/lib/twilio_ap_is/models/challenge.rb +317 -0
  89. data/lib/twilio_ap_is/models/challenge_enum_challenge_reasons.rb +41 -0
  90. data/lib/twilio_ap_is/models/challenge_enum_challenge_statuses.rb +45 -0
  91. data/lib/twilio_ap_is/models/challenge_enum_factor_types.rb +41 -0
  92. data/lib/twilio_ap_is/models/channel.rb +249 -0
  93. data/lib/twilio_ap_is/models/channel_channel_type.rb +36 -0
  94. data/lib/twilio_ap_is/models/channel_webhook_enabled_type.rb +36 -0
  95. data/lib/twilio_ap_is/models/configuration.rb +164 -0
  96. data/lib/twilio_ap_is/models/configuration_address.rb +199 -0
  97. data/lib/twilio_ap_is/models/configuration_address_auto_creation_type.rb +40 -0
  98. data/lib/twilio_ap_is/models/configuration_address_method.rb +36 -0
  99. data/lib/twilio_ap_is/models/configuration_address_type.rb +60 -0
  100. data/lib/twilio_ap_is/models/configuration_webhook.rb +154 -0
  101. data/lib/twilio_ap_is/models/configuration_webhook_method.rb +46 -0
  102. data/lib/twilio_ap_is/models/configuration_webhook_target.rb +37 -0
  103. data/lib/twilio_ap_is/models/conversation.rb +264 -0
  104. data/lib/twilio_ap_is/models/conversation_message.rb +268 -0
  105. data/lib/twilio_ap_is/models/conversation_message_order_type.rb +36 -0
  106. data/lib/twilio_ap_is/models/conversation_message_receipt.rb +219 -0
  107. data/lib/twilio_ap_is/models/conversation_message_receipt_delivery_status.rb +49 -0
  108. data/lib/twilio_ap_is/models/conversation_participant.rb +240 -0
  109. data/lib/twilio_ap_is/models/conversation_scoped_webhook.rb +178 -0
  110. data/lib/twilio_ap_is/models/conversation_scoped_webhook_method.rb +36 -0
  111. data/lib/twilio_ap_is/models/conversation_scoped_webhook_target.rb +40 -0
  112. data/lib/twilio_ap_is/models/conversation_state.rb +45 -0
  113. data/lib/twilio_ap_is/models/conversation_webhook_method.rb +36 -0
  114. data/lib/twilio_ap_is/models/conversation_webhook_target.rb +37 -0
  115. data/lib/twilio_ap_is/models/conversation_with_participants.rb +264 -0
  116. data/lib/twilio_ap_is/models/conversation_with_participants_state.rb +45 -0
  117. data/lib/twilio_ap_is/models/credential.rb +175 -0
  118. data/lib/twilio_ap_is/models/credential1.rb +174 -0
  119. data/lib/twilio_ap_is/models/credential_aws.rb +153 -0
  120. data/lib/twilio_ap_is/models/credential_public_key.rb +153 -0
  121. data/lib/twilio_ap_is/models/credential_push_type.rb +41 -0
  122. data/lib/twilio_ap_is/models/entity.rb +177 -0
  123. data/lib/twilio_ap_is/models/event.rb +270 -0
  124. data/lib/twilio_ap_is/models/factor.rb +235 -0
  125. data/lib/twilio_ap_is/models/factor_enum_factor_statuses.rb +36 -0
  126. data/lib/twilio_ap_is/models/factor_enum_factor_type.rb +40 -0
  127. data/lib/twilio_ap_is/models/factor_enum_notification_platforms.rb +40 -0
  128. data/lib/twilio_ap_is/models/factor_enum_totp_algorithms.rb +40 -0
  129. data/lib/twilio_ap_is/models/form_enum_form_types.rb +26 -0
  130. data/lib/twilio_ap_is/models/list_activity_response.rb +94 -0
  131. data/lib/twilio_ap_is/models/list_binding_response.rb +94 -0
  132. data/lib/twilio_ap_is/models/list_configuration_address_response.rb +95 -0
  133. data/lib/twilio_ap_is/models/list_conversation_message_receipt_response.rb +95 -0
  134. data/lib/twilio_ap_is/models/list_conversation_message_response.rb +94 -0
  135. data/lib/twilio_ap_is/models/list_conversation_participant_response.rb +94 -0
  136. data/lib/twilio_ap_is/models/list_conversation_response.rb +94 -0
  137. data/lib/twilio_ap_is/models/list_conversation_scoped_webhook_response.rb +94 -0
  138. data/lib/twilio_ap_is/models/list_credential_aws_response.rb +94 -0
  139. data/lib/twilio_ap_is/models/list_credential_public_key_response.rb +94 -0
  140. data/lib/twilio_ap_is/models/list_credential_response.rb +94 -0
  141. data/lib/twilio_ap_is/models/list_event_response.rb +94 -0
  142. data/lib/twilio_ap_is/models/list_participant_conversation_response.rb +94 -0
  143. data/lib/twilio_ap_is/models/list_role_response.rb +94 -0
  144. data/lib/twilio_ap_is/models/list_service_binding_response.rb +94 -0
  145. data/lib/twilio_ap_is/models/list_service_conversation_message_receipt_response.rb +95 -0
  146. data/lib/twilio_ap_is/models/list_service_conversation_message_response.rb +94 -0
  147. data/lib/twilio_ap_is/models/list_service_conversation_participant_response.rb +94 -0
  148. data/lib/twilio_ap_is/models/list_service_conversation_response.rb +94 -0
  149. data/lib/twilio_ap_is/models/list_service_conversation_scoped_webhook_response.rb +94 -0
  150. data/lib/twilio_ap_is/models/list_service_participant_conversation_response.rb +94 -0
  151. data/lib/twilio_ap_is/models/list_service_response.rb +94 -0
  152. data/lib/twilio_ap_is/models/list_service_role_response.rb +94 -0
  153. data/lib/twilio_ap_is/models/list_service_user_conversation_response.rb +94 -0
  154. data/lib/twilio_ap_is/models/list_service_user_response.rb +94 -0
  155. data/lib/twilio_ap_is/models/list_task_channel_response.rb +94 -0
  156. data/lib/twilio_ap_is/models/list_task_queue_response.rb +94 -0
  157. data/lib/twilio_ap_is/models/list_task_queues_statistics_response.rb +95 -0
  158. data/lib/twilio_ap_is/models/list_task_reservation_response.rb +94 -0
  159. data/lib/twilio_ap_is/models/list_task_response.rb +94 -0
  160. data/lib/twilio_ap_is/models/list_user_conversation_response.rb +94 -0
  161. data/lib/twilio_ap_is/models/list_user_response.rb +94 -0
  162. data/lib/twilio_ap_is/models/list_worker_channel_response.rb +94 -0
  163. data/lib/twilio_ap_is/models/list_worker_reservation_response.rb +94 -0
  164. data/lib/twilio_ap_is/models/list_worker_response.rb +94 -0
  165. data/lib/twilio_ap_is/models/list_workflow_response.rb +94 -0
  166. data/lib/twilio_ap_is/models/list_workspace_response.rb +94 -0
  167. data/lib/twilio_ap_is/models/messaging_configuration.rb +170 -0
  168. data/lib/twilio_ap_is/models/meta.rb +140 -0
  169. data/lib/twilio_ap_is/models/msg_geopermissions.rb +86 -0
  170. data/lib/twilio_ap_is/models/new_factor.rb +277 -0
  171. data/lib/twilio_ap_is/models/new_factor_enum_factor_statuses.rb +36 -0
  172. data/lib/twilio_ap_is/models/new_factor_enum_factor_types.rb +40 -0
  173. data/lib/twilio_ap_is/models/new_factor_enum_notification_platforms.rb +40 -0
  174. data/lib/twilio_ap_is/models/new_factor_enum_totp_algorithms.rb +40 -0
  175. data/lib/twilio_ap_is/models/notif_priority.rb +43 -0
  176. data/lib/twilio_ap_is/models/notification.rb +363 -0
  177. data/lib/twilio_ap_is/models/notification1.rb +181 -0
  178. data/lib/twilio_ap_is/models/participant_conversation.rb +325 -0
  179. data/lib/twilio_ap_is/models/participant_conversation_state.rb +41 -0
  180. data/lib/twilio_ap_is/models/rate_limit.rb +189 -0
  181. data/lib/twilio_ap_is/models/role.rb +192 -0
  182. data/lib/twilio_ap_is/models/role_role_type.rb +40 -0
  183. data/lib/twilio_ap_is/models/safelist.rb +88 -0
  184. data/lib/twilio_ap_is/models/safelist1.rb +99 -0
  185. data/lib/twilio_ap_is/models/secondary_auth_token.rb +145 -0
  186. data/lib/twilio_ap_is/models/service.rb +164 -0
  187. data/lib/twilio_ap_is/models/service1.rb +380 -0
  188. data/lib/twilio_ap_is/models/service2.rb +350 -0
  189. data/lib/twilio_ap_is/models/service_binding.rb +226 -0
  190. data/lib/twilio_ap_is/models/service_binding_binding_type.rb +47 -0
  191. data/lib/twilio_ap_is/models/service_configuration.rb +180 -0
  192. data/lib/twilio_ap_is/models/service_conversation.rb +264 -0
  193. data/lib/twilio_ap_is/models/service_conversation_message.rb +282 -0
  194. data/lib/twilio_ap_is/models/service_conversation_message_order_type.rb +36 -0
  195. data/lib/twilio_ap_is/models/service_conversation_message_receipt.rb +233 -0
  196. data/lib/twilio_ap_is/models/service_conversation_message_receipt_delivery_status.rb +49 -0
  197. data/lib/twilio_ap_is/models/service_conversation_participant.rb +256 -0
  198. data/lib/twilio_ap_is/models/service_conversation_scoped_webhook.rb +191 -0
  199. data/lib/twilio_ap_is/models/service_conversation_scoped_webhook_method.rb +36 -0
  200. data/lib/twilio_ap_is/models/service_conversation_scoped_webhook_target.rb +40 -0
  201. data/lib/twilio_ap_is/models/service_conversation_state.rb +45 -0
  202. data/lib/twilio_ap_is/models/service_conversation_with_participants.rb +264 -0
  203. data/lib/twilio_ap_is/models/service_conversation_with_participants_state.rb +45 -0
  204. data/lib/twilio_ap_is/models/service_notification.rb +155 -0
  205. data/lib/twilio_ap_is/models/service_participant_conversation.rb +325 -0
  206. data/lib/twilio_ap_is/models/service_participant_conversation_state.rb +41 -0
  207. data/lib/twilio_ap_is/models/service_role.rb +192 -0
  208. data/lib/twilio_ap_is/models/service_role_role_type.rb +40 -0
  209. data/lib/twilio_ap_is/models/service_stats_conversations_rate_limiting_errors_source.rb +36 -0
  210. data/lib/twilio_ap_is/models/service_user.rb +250 -0
  211. data/lib/twilio_ap_is/models/service_user_conversation.rb +317 -0
  212. data/lib/twilio_ap_is/models/service_user_conversation_notification_level.rb +37 -0
  213. data/lib/twilio_ap_is/models/service_user_conversation_state.rb +41 -0
  214. data/lib/twilio_ap_is/models/service_webhook_configuration.rb +160 -0
  215. data/lib/twilio_ap_is/models/service_webhook_configuration_method.rb +37 -0
  216. data/lib/twilio_ap_is/models/stats_twilsock_rate_limiting_errors_source.rb +26 -0
  217. data/lib/twilio_ap_is/models/task_channel.rb +204 -0
  218. data/lib/twilio_ap_is/models/task_queue.rb +278 -0
  219. data/lib/twilio_ap_is/models/task_queue_bulk_real_time_statistics.rb +141 -0
  220. data/lib/twilio_ap_is/models/task_queue_cumulative.rb +356 -0
  221. data/lib/twilio_ap_is/models/task_queue_real_time_statistics.rb +250 -0
  222. data/lib/twilio_ap_is/models/task_queue_statistics.rb +135 -0
  223. data/lib/twilio_ap_is/models/task_queue_task_order.rb +40 -0
  224. data/lib/twilio_ap_is/models/task_queues_stats.rb +124 -0
  225. data/lib/twilio_ap_is/models/task_reservation.rb +210 -0
  226. data/lib/twilio_ap_is/models/task_reservation_call_status.rb +44 -0
  227. data/lib/twilio_ap_is/models/task_reservation_conference_event.rb +56 -0
  228. data/lib/twilio_ap_is/models/task_reservation_status.rb +61 -0
  229. data/lib/twilio_ap_is/models/task_reservation_supervisor_mode.rb +40 -0
  230. data/lib/twilio_ap_is/models/task_router_task.rb +394 -0
  231. data/lib/twilio_ap_is/models/task_status.rb +53 -0
  232. data/lib/twilio_ap_is/models/user.rb +250 -0
  233. data/lib/twilio_ap_is/models/user_binding_binding_type.rb +52 -0
  234. data/lib/twilio_ap_is/models/user_conversation.rb +317 -0
  235. data/lib/twilio_ap_is/models/user_conversation_notification_level.rb +37 -0
  236. data/lib/twilio_ap_is/models/user_conversation_state.rb +41 -0
  237. data/lib/twilio_ap_is/models/v2_form.rb +112 -0
  238. data/lib/twilio_ap_is/models/verification.rb +262 -0
  239. data/lib/twilio_ap_is/models/verification_attempt.rb +219 -0
  240. data/lib/twilio_ap_is/models/verification_attempt_enum_attempt_status.rb +40 -0
  241. data/lib/twilio_ap_is/models/verification_attempt_enum_call_status.rb +60 -0
  242. data/lib/twilio_ap_is/models/verification_attempt_enum_channels.rb +49 -0
  243. data/lib/twilio_ap_is/models/verification_attempt_enum_conversion_status.rb +38 -0
  244. data/lib/twilio_ap_is/models/verification_attempt_enum_message_status.rb +80 -0
  245. data/lib/twilio_ap_is/models/verification_attempts.rb +129 -0
  246. data/lib/twilio_ap_is/models/verification_attempts_summary_enum_channels.rb +48 -0
  247. data/lib/twilio_ap_is/models/verification_check.rb +231 -0
  248. data/lib/twilio_ap_is/models/verification_check_enum_channel.rb +50 -0
  249. data/lib/twilio_ap_is/models/verification_enum_channel.rb +50 -0
  250. data/lib/twilio_ap_is/models/verification_enum_risk_check.rb +39 -0
  251. data/lib/twilio_ap_is/models/verification_enum_status.rb +37 -0
  252. data/lib/twilio_ap_is/models/verification_template.rb +126 -0
  253. data/lib/twilio_ap_is/models/webhook.rb +222 -0
  254. data/lib/twilio_ap_is/models/webhook_enum_status.rb +37 -0
  255. data/lib/twilio_ap_is/models/webhook_enum_version.rb +37 -0
  256. data/lib/twilio_ap_is/models/worker.rb +247 -0
  257. data/lib/twilio_ap_is/models/worker_channel.rb +244 -0
  258. data/lib/twilio_ap_is/models/worker_instance_statistics.rb +122 -0
  259. data/lib/twilio_ap_is/models/worker_reservation.rb +210 -0
  260. data/lib/twilio_ap_is/models/worker_reservation_call_status.rb +44 -0
  261. data/lib/twilio_ap_is/models/worker_reservation_conference_event.rb +56 -0
  262. data/lib/twilio_ap_is/models/worker_reservation_status.rb +61 -0
  263. data/lib/twilio_ap_is/models/worker_statistics.rb +122 -0
  264. data/lib/twilio_ap_is/models/workers_cumulative_statistics.rb +221 -0
  265. data/lib/twilio_ap_is/models/workers_real_time_statistics.rb +124 -0
  266. data/lib/twilio_ap_is/models/workflow.rb +247 -0
  267. data/lib/twilio_ap_is/models/workflow_cumulative_statistics.rb +347 -0
  268. data/lib/twilio_ap_is/models/workflow_real_time_statistics.rb +173 -0
  269. data/lib/twilio_ap_is/models/workflow_statistics.rb +135 -0
  270. data/lib/twilio_ap_is/models/workspace.rb +285 -0
  271. data/lib/twilio_ap_is/models/workspace_cumulative_statistics.rb +334 -0
  272. data/lib/twilio_ap_is/models/workspace_queue_order.rb +40 -0
  273. data/lib/twilio_ap_is/models/workspace_real_time_statistics.rb +185 -0
  274. data/lib/twilio_ap_is/models/workspace_statistics.rb +122 -0
  275. data/lib/twilio_ap_is/utilities/date_time_helper.rb +11 -0
  276. data/lib/twilio_ap_is/utilities/file_wrapper.rb +28 -0
  277. data/lib/twilio_ap_is.rb +326 -0
  278. metadata +361 -0
@@ -0,0 +1,210 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module TwilioApIs
8
+ # WorkerReservation Model.
9
+ class WorkerReservation < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that
14
+ # created the WorkerReservation resource.
15
+ # @return [String]
16
+ attr_accessor :account_sid
17
+
18
+ # The date and time in GMT when the resource was created specified in [ISO
19
+ # 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
20
+ # @return [DateTime]
21
+ attr_accessor :date_created
22
+
23
+ # The date and time in GMT when the resource was last updated specified in
24
+ # [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
25
+ # @return [DateTime]
26
+ attr_accessor :date_updated
27
+
28
+ # The current status of the reservation. Can be: `pending`, `accepted`,
29
+ # `rejected`, `timeout`, `canceled`, or `rescinded`.
30
+ # @return [WorkerReservationStatus]
31
+ attr_accessor :reservation_status
32
+
33
+ # The unique string that we created to identify the WorkerReservation
34
+ # resource.
35
+ # @return [String]
36
+ attr_accessor :sid
37
+
38
+ # The SID of the reserved Task resource.
39
+ # @return [String]
40
+ attr_accessor :task_sid
41
+
42
+ # The `friendly_name` of the Worker that is reserved.
43
+ # @return [String]
44
+ attr_accessor :worker_name
45
+
46
+ # The SID of the reserved Worker resource.
47
+ # @return [String]
48
+ attr_accessor :worker_sid
49
+
50
+ # The SID of the Workspace that this worker is contained within.
51
+ # @return [String]
52
+ attr_accessor :workspace_sid
53
+
54
+ # The absolute URL of the WorkerReservation resource.
55
+ # @return [String]
56
+ attr_accessor :url
57
+
58
+ # The URLs of related resources.
59
+ # @return [Object]
60
+ attr_accessor :links
61
+
62
+ # A mapping from model property names to API property names.
63
+ def self.names
64
+ @_hash = {} if @_hash.nil?
65
+ @_hash['account_sid'] = 'account_sid'
66
+ @_hash['date_created'] = 'date_created'
67
+ @_hash['date_updated'] = 'date_updated'
68
+ @_hash['reservation_status'] = 'reservation_status'
69
+ @_hash['sid'] = 'sid'
70
+ @_hash['task_sid'] = 'task_sid'
71
+ @_hash['worker_name'] = 'worker_name'
72
+ @_hash['worker_sid'] = 'worker_sid'
73
+ @_hash['workspace_sid'] = 'workspace_sid'
74
+ @_hash['url'] = 'url'
75
+ @_hash['links'] = 'links'
76
+ @_hash
77
+ end
78
+
79
+ # An array for optional fields
80
+ def self.optionals
81
+ %w[
82
+ account_sid
83
+ date_created
84
+ date_updated
85
+ reservation_status
86
+ sid
87
+ task_sid
88
+ worker_name
89
+ worker_sid
90
+ workspace_sid
91
+ url
92
+ links
93
+ ]
94
+ end
95
+
96
+ # An array for nullable fields
97
+ def self.nullables
98
+ %w[
99
+ account_sid
100
+ date_created
101
+ date_updated
102
+ sid
103
+ task_sid
104
+ worker_name
105
+ worker_sid
106
+ workspace_sid
107
+ url
108
+ links
109
+ ]
110
+ end
111
+
112
+ def initialize(account_sid: SKIP, date_created: SKIP, date_updated: SKIP,
113
+ reservation_status: SKIP, sid: SKIP, task_sid: SKIP,
114
+ worker_name: SKIP, worker_sid: SKIP, workspace_sid: SKIP,
115
+ url: SKIP, links: SKIP, additional_properties: nil)
116
+ # Add additional model properties to the instance
117
+ additional_properties = {} if additional_properties.nil?
118
+
119
+ @account_sid = account_sid unless account_sid == SKIP
120
+ @date_created = date_created unless date_created == SKIP
121
+ @date_updated = date_updated unless date_updated == SKIP
122
+ @reservation_status = reservation_status unless reservation_status == SKIP
123
+ @sid = sid unless sid == SKIP
124
+ @task_sid = task_sid unless task_sid == SKIP
125
+ @worker_name = worker_name unless worker_name == SKIP
126
+ @worker_sid = worker_sid unless worker_sid == SKIP
127
+ @workspace_sid = workspace_sid unless workspace_sid == SKIP
128
+ @url = url unless url == SKIP
129
+ @links = links unless links == SKIP
130
+ @additional_properties = additional_properties
131
+ end
132
+
133
+ # Creates an instance of the object from a hash.
134
+ def self.from_hash(hash)
135
+ return nil unless hash
136
+
137
+ # Extract variables from the hash.
138
+ account_sid = hash.key?('account_sid') ? hash['account_sid'] : SKIP
139
+ date_created = if hash.key?('date_created')
140
+ (DateTimeHelper.from_rfc3339(hash['date_created']) if hash['date_created'])
141
+ else
142
+ SKIP
143
+ end
144
+ date_updated = if hash.key?('date_updated')
145
+ (DateTimeHelper.from_rfc3339(hash['date_updated']) if hash['date_updated'])
146
+ else
147
+ SKIP
148
+ end
149
+ reservation_status =
150
+ hash.key?('reservation_status') ? hash['reservation_status'] : SKIP
151
+ sid = hash.key?('sid') ? hash['sid'] : SKIP
152
+ task_sid = hash.key?('task_sid') ? hash['task_sid'] : SKIP
153
+ worker_name = hash.key?('worker_name') ? hash['worker_name'] : SKIP
154
+ worker_sid = hash.key?('worker_sid') ? hash['worker_sid'] : SKIP
155
+ workspace_sid = hash.key?('workspace_sid') ? hash['workspace_sid'] : SKIP
156
+ url = hash.key?('url') ? hash['url'] : SKIP
157
+ links = hash.key?('links') ? hash['links'] : SKIP
158
+
159
+ # Create a new hash for additional properties, removing known properties.
160
+ new_hash = hash.reject { |k, _| names.value?(k) }
161
+
162
+ additional_properties = APIHelper.get_additional_properties(
163
+ new_hash, proc { |value| value }
164
+ )
165
+
166
+ # Create object from extracted values.
167
+ WorkerReservation.new(account_sid: account_sid,
168
+ date_created: date_created,
169
+ date_updated: date_updated,
170
+ reservation_status: reservation_status,
171
+ sid: sid,
172
+ task_sid: task_sid,
173
+ worker_name: worker_name,
174
+ worker_sid: worker_sid,
175
+ workspace_sid: workspace_sid,
176
+ url: url,
177
+ links: links,
178
+ additional_properties: additional_properties)
179
+ end
180
+
181
+ def to_custom_date_created
182
+ DateTimeHelper.to_rfc3339(date_created)
183
+ end
184
+
185
+ def to_custom_date_updated
186
+ DateTimeHelper.to_rfc3339(date_updated)
187
+ end
188
+
189
+ # Provides a human-readable string representation of the object.
190
+ def to_s
191
+ class_name = self.class.name.split('::').last
192
+ "<#{class_name} account_sid: #{@account_sid}, date_created: #{@date_created}, date_updated:"\
193
+ " #{@date_updated}, reservation_status: #{@reservation_status}, sid: #{@sid}, task_sid:"\
194
+ " #{@task_sid}, worker_name: #{@worker_name}, worker_sid: #{@worker_sid}, workspace_sid:"\
195
+ " #{@workspace_sid}, url: #{@url}, links: #{@links}, additional_properties:"\
196
+ " #{@additional_properties}>"
197
+ end
198
+
199
+ # Provides a debugging-friendly string with detailed object information.
200
+ def inspect
201
+ class_name = self.class.name.split('::').last
202
+ "<#{class_name} account_sid: #{@account_sid.inspect}, date_created:"\
203
+ " #{@date_created.inspect}, date_updated: #{@date_updated.inspect}, reservation_status:"\
204
+ " #{@reservation_status.inspect}, sid: #{@sid.inspect}, task_sid: #{@task_sid.inspect},"\
205
+ " worker_name: #{@worker_name.inspect}, worker_sid: #{@worker_sid.inspect}, workspace_sid:"\
206
+ " #{@workspace_sid.inspect}, url: #{@url.inspect}, links: #{@links.inspect},"\
207
+ " additional_properties: #{@additional_properties}>"
208
+ end
209
+ end
210
+ end
@@ -0,0 +1,44 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # WorkerReservationCallStatus.
8
+ class WorkerReservationCallStatus
9
+ WORKER_RESERVATION_CALL_STATUS = [
10
+ # TODO: Write general description for INITIATED
11
+ INITIATED = 'initiated'.freeze,
12
+
13
+ # TODO: Write general description for RINGING
14
+ RINGING = 'ringing'.freeze,
15
+
16
+ # TODO: Write general description for ANSWERED
17
+ ANSWERED = 'answered'.freeze,
18
+
19
+ # TODO: Write general description for COMPLETED
20
+ COMPLETED = 'completed'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ WORKER_RESERVATION_CALL_STATUS.include?(value)
27
+ end
28
+
29
+ def self.from_value(value, default_value = INITIATED)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'initiated' then INITIATED
36
+ when 'ringing' then RINGING
37
+ when 'answered' then ANSWERED
38
+ when 'completed' then COMPLETED
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,56 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # WorkerReservationConferenceEvent.
8
+ class WorkerReservationConferenceEvent
9
+ WORKER_RESERVATION_CONFERENCE_EVENT = [
10
+ # TODO: Write general description for START
11
+ START = 'start'.freeze,
12
+
13
+ # TODO: Write general description for ENUM_END
14
+ ENUM_END = 'end'.freeze,
15
+
16
+ # TODO: Write general description for JOIN
17
+ JOIN = 'join'.freeze,
18
+
19
+ # TODO: Write general description for LEAVE
20
+ LEAVE = 'leave'.freeze,
21
+
22
+ # TODO: Write general description for MUTE
23
+ MUTE = 'mute'.freeze,
24
+
25
+ # TODO: Write general description for HOLD
26
+ HOLD = 'hold'.freeze,
27
+
28
+ # TODO: Write general description for SPEAKER
29
+ SPEAKER = 'speaker'.freeze
30
+ ].freeze
31
+
32
+ def self.validate(value)
33
+ return false if value.nil?
34
+
35
+ WORKER_RESERVATION_CONFERENCE_EVENT.include?(value)
36
+ end
37
+
38
+ def self.from_value(value, default_value = START)
39
+ return default_value if value.nil?
40
+
41
+ str = value.to_s.strip
42
+
43
+ case str.downcase
44
+ when 'start' then START
45
+ when 'enum_end' then ENUM_END
46
+ when 'join' then JOIN
47
+ when 'leave' then LEAVE
48
+ when 'mute' then MUTE
49
+ when 'hold' then HOLD
50
+ when 'speaker' then SPEAKER
51
+ else
52
+ default_value
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,61 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # The current status of the reservation. Can be: `pending`, `accepted`,
8
+ # `rejected`, `timeout`, `canceled`, or `rescinded`.
9
+ class WorkerReservationStatus
10
+ WORKER_RESERVATION_STATUS = [
11
+ # TODO: Write general description for PENDING
12
+ PENDING = 'pending'.freeze,
13
+
14
+ # TODO: Write general description for ACCEPTED
15
+ ACCEPTED = 'accepted'.freeze,
16
+
17
+ # TODO: Write general description for REJECTED
18
+ REJECTED = 'rejected'.freeze,
19
+
20
+ # TODO: Write general description for TIMEOUT
21
+ TIMEOUT = 'timeout'.freeze,
22
+
23
+ # TODO: Write general description for CANCELED
24
+ CANCELED = 'canceled'.freeze,
25
+
26
+ # TODO: Write general description for RESCINDED
27
+ RESCINDED = 'rescinded'.freeze,
28
+
29
+ # TODO: Write general description for WRAPPING
30
+ WRAPPING = 'wrapping'.freeze,
31
+
32
+ # TODO: Write general description for COMPLETED
33
+ COMPLETED = 'completed'.freeze
34
+ ].freeze
35
+
36
+ def self.validate(value)
37
+ return false if value.nil?
38
+
39
+ WORKER_RESERVATION_STATUS.include?(value)
40
+ end
41
+
42
+ def self.from_value(value, default_value = PENDING)
43
+ return default_value if value.nil?
44
+
45
+ str = value.to_s.strip
46
+
47
+ case str.downcase
48
+ when 'pending' then PENDING
49
+ when 'accepted' then ACCEPTED
50
+ when 'rejected' then REJECTED
51
+ when 'timeout' then TIMEOUT
52
+ when 'canceled' then CANCELED
53
+ when 'rescinded' then RESCINDED
54
+ when 'wrapping' then WRAPPING
55
+ when 'completed' then COMPLETED
56
+ else
57
+ default_value
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,122 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # WorkerStatistics Model.
8
+ class WorkerStatistics < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # An object that contains the real-time statistics for the Worker.
13
+ # @return [Object]
14
+ attr_accessor :realtime
15
+
16
+ # An object that contains the cumulative statistics for the Worker.
17
+ # @return [Object]
18
+ attr_accessor :cumulative
19
+
20
+ # The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that
21
+ # created the Worker resource.
22
+ # @return [String]
23
+ attr_accessor :account_sid
24
+
25
+ # The SID of the Workspace that contains the Worker.
26
+ # @return [String]
27
+ attr_accessor :workspace_sid
28
+
29
+ # The absolute URL of the Worker statistics resource.
30
+ # @return [String]
31
+ attr_accessor :url
32
+
33
+ # A mapping from model property names to API property names.
34
+ def self.names
35
+ @_hash = {} if @_hash.nil?
36
+ @_hash['realtime'] = 'realtime'
37
+ @_hash['cumulative'] = 'cumulative'
38
+ @_hash['account_sid'] = 'account_sid'
39
+ @_hash['workspace_sid'] = 'workspace_sid'
40
+ @_hash['url'] = 'url'
41
+ @_hash
42
+ end
43
+
44
+ # An array for optional fields
45
+ def self.optionals
46
+ %w[
47
+ realtime
48
+ cumulative
49
+ account_sid
50
+ workspace_sid
51
+ url
52
+ ]
53
+ end
54
+
55
+ # An array for nullable fields
56
+ def self.nullables
57
+ %w[
58
+ realtime
59
+ cumulative
60
+ account_sid
61
+ workspace_sid
62
+ url
63
+ ]
64
+ end
65
+
66
+ def initialize(realtime: SKIP, cumulative: SKIP, account_sid: SKIP,
67
+ workspace_sid: SKIP, url: SKIP, additional_properties: nil)
68
+ # Add additional model properties to the instance
69
+ additional_properties = {} if additional_properties.nil?
70
+
71
+ @realtime = realtime unless realtime == SKIP
72
+ @cumulative = cumulative unless cumulative == SKIP
73
+ @account_sid = account_sid unless account_sid == SKIP
74
+ @workspace_sid = workspace_sid unless workspace_sid == SKIP
75
+ @url = url unless url == SKIP
76
+ @additional_properties = additional_properties
77
+ end
78
+
79
+ # Creates an instance of the object from a hash.
80
+ def self.from_hash(hash)
81
+ return nil unless hash
82
+
83
+ # Extract variables from the hash.
84
+ realtime = hash.key?('realtime') ? hash['realtime'] : SKIP
85
+ cumulative = hash.key?('cumulative') ? hash['cumulative'] : SKIP
86
+ account_sid = hash.key?('account_sid') ? hash['account_sid'] : SKIP
87
+ workspace_sid = hash.key?('workspace_sid') ? hash['workspace_sid'] : SKIP
88
+ url = hash.key?('url') ? hash['url'] : SKIP
89
+
90
+ # Create a new hash for additional properties, removing known properties.
91
+ new_hash = hash.reject { |k, _| names.value?(k) }
92
+
93
+ additional_properties = APIHelper.get_additional_properties(
94
+ new_hash, proc { |value| value }
95
+ )
96
+
97
+ # Create object from extracted values.
98
+ WorkerStatistics.new(realtime: realtime,
99
+ cumulative: cumulative,
100
+ account_sid: account_sid,
101
+ workspace_sid: workspace_sid,
102
+ url: url,
103
+ additional_properties: additional_properties)
104
+ end
105
+
106
+ # Provides a human-readable string representation of the object.
107
+ def to_s
108
+ class_name = self.class.name.split('::').last
109
+ "<#{class_name} realtime: #{@realtime}, cumulative: #{@cumulative}, account_sid:"\
110
+ " #{@account_sid}, workspace_sid: #{@workspace_sid}, url: #{@url}, additional_properties:"\
111
+ " #{@additional_properties}>"
112
+ end
113
+
114
+ # Provides a debugging-friendly string with detailed object information.
115
+ def inspect
116
+ class_name = self.class.name.split('::').last
117
+ "<#{class_name} realtime: #{@realtime.inspect}, cumulative: #{@cumulative.inspect},"\
118
+ " account_sid: #{@account_sid.inspect}, workspace_sid: #{@workspace_sid.inspect}, url:"\
119
+ " #{@url.inspect}, additional_properties: #{@additional_properties}>"
120
+ end
121
+ end
122
+ end