twilio-ruby 5.67.3 → 5.74.5

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 (216) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +8 -2
  3. data/.github/workflows/test-and-deploy.yml +3 -3
  4. data/CHANGES.md +288 -0
  5. data/LICENSE +1 -1
  6. data/Makefile +6 -2
  7. data/PULL_REQUEST_TEMPLATE.md +1 -1
  8. data/README.md +2 -2
  9. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +19 -3
  10. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +22 -3
  11. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +2 -2
  12. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +2 -2
  13. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +2 -2
  14. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +2 -2
  15. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +2 -2
  16. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +2 -2
  17. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +2 -2
  18. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +1 -1
  19. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +5 -5
  20. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +2 -2
  21. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  22. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  23. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +59 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +56 -17
  25. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +1 -1
  26. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +5 -5
  27. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +17 -1
  28. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +2 -2
  29. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  30. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +1 -1
  31. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +1 -1
  32. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +5 -5
  33. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +3 -3
  34. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +1 -1
  35. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +1 -1
  36. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +1 -1
  37. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +1 -1
  38. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +1 -1
  39. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +1 -1
  40. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +1 -1
  41. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +1 -1
  42. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +1 -1
  43. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +1 -1
  44. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +2 -2
  45. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +1 -1
  46. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +1 -1
  47. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +2 -2
  48. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +1 -1
  49. data/lib/twilio-ruby/rest/chat/v1/service.rb +2 -2
  50. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +1 -1
  51. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +2 -2
  52. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +1 -1
  53. data/lib/twilio-ruby/rest/chat/v2/service.rb +4 -4
  54. data/lib/twilio-ruby/rest/chat/v3/channel.rb +2 -2
  55. data/lib/twilio-ruby/rest/client.rb +28 -0
  56. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  57. data/lib/twilio-ruby/rest/content/v1/content.rb +346 -0
  58. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +254 -0
  59. data/lib/twilio-ruby/rest/content/v1.rb +52 -0
  60. data/lib/twilio-ruby/rest/content.rb +53 -0
  61. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +1 -1
  62. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +17 -2
  63. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +1 -1
  64. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +17 -2
  65. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +1 -1
  66. data/lib/twilio-ruby/rest/events/v1/schema.rb +1 -1
  67. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +1 -1
  68. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +397 -0
  69. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +14 -0
  70. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +314 -0
  71. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +394 -0
  72. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +313 -0
  73. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +390 -0
  74. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +413 -0
  75. data/lib/twilio-ruby/rest/{preview/trusted_comms/brands_information.rb → flex_api/v1/insights_session.rb} +58 -55
  76. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +144 -0
  77. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +130 -0
  78. data/lib/twilio-ruby/rest/{preview/trusted_comms/cps.rb → flex_api/v1/insights_user_roles.rb} +42 -54
  79. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +22 -1
  80. data/lib/twilio-ruby/rest/flex_api/v1.rb +115 -0
  81. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  82. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  83. data/lib/twilio-ruby/rest/flex_api.rb +83 -0
  84. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  85. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +14 -0
  86. data/lib/twilio-ruby/rest/insights/v1/call.rb +16 -8
  87. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +7 -0
  88. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +1 -1
  89. data/lib/twilio-ruby/rest/insights/v1/room.rb +3 -3
  90. data/lib/twilio-ruby/rest/insights/v1.rb +0 -16
  91. data/lib/twilio-ruby/rest/insights.rb +0 -8
  92. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +1 -1
  93. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +2 -2
  94. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +1 -1
  95. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +2 -2
  96. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +1 -1
  97. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +2 -2
  98. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +1 -1
  99. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +4 -4
  100. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +94 -12
  101. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +1 -1
  102. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +2 -9
  103. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +5 -5
  104. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  105. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +267 -0
  106. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +2 -2
  107. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +98 -3
  108. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1 -1
  109. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +709 -0
  110. data/lib/twilio-ruby/rest/messaging/v1.rb +50 -0
  111. data/lib/twilio-ruby/rest/messaging.rb +26 -0
  112. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +317 -0
  113. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +310 -0
  114. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +192 -0
  115. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +330 -0
  116. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +342 -0
  117. data/lib/twilio-ruby/rest/{preview/bulk_exports/export/day.rb → microvisor/v1/device/device_secret.rb} +125 -84
  118. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +393 -0
  119. data/lib/twilio-ruby/rest/microvisor/v1.rb +92 -0
  120. data/lib/twilio-ruby/rest/microvisor.rb +70 -0
  121. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +1 -1
  122. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  123. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  124. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  125. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  126. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  127. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  128. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  129. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +2 -2
  130. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +2 -2
  131. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +1 -1
  132. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +2 -2
  133. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +1 -1
  134. data/lib/twilio-ruby/rest/preview.rb +0 -58
  135. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +1 -1
  136. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +1 -14
  137. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +5 -46
  138. data/lib/twilio-ruby/rest/proxy/v1/service.rb +1 -1
  139. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  140. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  141. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  142. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  143. data/lib/twilio-ruby/rest/routes.rb +62 -0
  144. data/lib/twilio-ruby/rest/studio/v1/flow.rb +1 -1
  145. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +1 -1
  146. data/lib/twilio-ruby/rest/studio/v2/flow.rb +1 -1
  147. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +21 -1
  148. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +17 -7
  149. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +5 -2
  150. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  151. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  152. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +20 -0
  153. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +3 -3
  154. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +4 -4
  155. data/lib/twilio-ruby/rest/supersim/v1.rb +7 -0
  156. data/lib/twilio-ruby/rest/supersim.rb +6 -0
  157. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +1 -1
  158. data/lib/twilio-ruby/rest/sync/v1/service.rb +1 -1
  159. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +1 -1
  160. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +18 -5
  161. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +3 -3
  162. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +12 -12
  163. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +5 -5
  164. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +10 -4
  165. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +3 -3
  166. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +6 -6
  167. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +1 -1
  168. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +9 -3
  169. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +13 -13
  170. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +2 -2
  171. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +1 -1
  172. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +13 -13
  173. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +3 -3
  174. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +2 -2
  175. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  176. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +1 -9
  177. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +1 -7
  178. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +0 -8
  179. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +0 -8
  180. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +0 -6
  181. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +0 -8
  182. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +2 -2
  183. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +14 -10
  184. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +8 -1
  185. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +0 -8
  186. data/lib/twilio-ruby/rest/verify/v2/service.rb +1 -1
  187. data/lib/twilio-ruby/rest/verify/v2/template.rb +7 -0
  188. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +4 -4
  189. data/lib/twilio-ruby/rest/verify/v2.rb +18 -0
  190. data/lib/twilio-ruby/rest/verify.rb +8 -0
  191. data/lib/twilio-ruby/rest/video/v1/composition.rb +3 -3
  192. data/lib/twilio-ruby/rest/video/v1/recording.rb +2 -2
  193. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +2 -2
  194. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  195. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +16 -0
  196. data/lib/twilio-ruby/rest/video/v1/room.rb +4 -4
  197. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +2 -2
  198. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +1 -1
  199. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +1 -1
  200. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +3 -3
  201. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +2 -2
  202. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  203. data/lib/twilio-ruby/twiml/voice_response.rb +135 -35
  204. data/lib/twilio-ruby/version.rb +1 -1
  205. data/twilio-ruby.gemspec +1 -1
  206. metadata +52 -17
  207. data/lib/twilio-ruby/rest/insights/v1/annotation.rb +0 -271
  208. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  209. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  210. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  211. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  212. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -62
  213. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  214. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  215. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  216. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
@@ -1,271 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
- #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Insights < Domain
12
- class V1 < Version
13
- class AnnotationList < ListResource
14
- ##
15
- # Initialize the AnnotationList
16
- # @param [Version] version Version that contains the resource
17
- # @return [AnnotationList] AnnotationList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- end
24
-
25
- ##
26
- # Provide a user friendly representation
27
- def to_s
28
- '#<Twilio.Insights.V1.AnnotationList>'
29
- end
30
- end
31
-
32
- class AnnotationPage < Page
33
- ##
34
- # Initialize the AnnotationPage
35
- # @param [Version] version Version that contains the resource
36
- # @param [Response] response Response from the API
37
- # @param [Hash] solution Path solution for the resource
38
- # @return [AnnotationPage] AnnotationPage
39
- def initialize(version, response, solution)
40
- super(version, response)
41
-
42
- # Path Solution
43
- @solution = solution
44
- end
45
-
46
- ##
47
- # Build an instance of AnnotationInstance
48
- # @param [Hash] payload Payload response from the API
49
- # @return [AnnotationInstance] AnnotationInstance
50
- def get_instance(payload)
51
- AnnotationInstance.new(@version, payload, )
52
- end
53
-
54
- ##
55
- # Provide a user friendly representation
56
- def to_s
57
- '<Twilio.Insights.V1.AnnotationPage>'
58
- end
59
- end
60
-
61
- class AnnotationContext < InstanceContext
62
- ##
63
- # Initialize the AnnotationContext
64
- # @param [Version] version Version that contains the resource
65
- # @param [String] call_sid The call_sid
66
- # @return [AnnotationContext] AnnotationContext
67
- def initialize(version, call_sid)
68
- super(version)
69
-
70
- # Path Solution
71
- @solution = {call_sid: call_sid, }
72
- @uri = "/Voice/#{@solution[:call_sid]}/Annotation"
73
- end
74
-
75
- ##
76
- # Update the AnnotationInstance
77
- # @param [annotation.AnsweredBy] answered_by The answered_by
78
- # @param [annotation.ConnectivityIssue] connectivity_issue The connectivity_issue
79
- # @param [String] quality_issues The quality_issues
80
- # @param [Boolean] spam The spam
81
- # @param [String] call_score The call_score
82
- # @param [String] comment The comment
83
- # @param [String] incident The incident
84
- # @return [AnnotationInstance] Updated AnnotationInstance
85
- def update(answered_by: :unset, connectivity_issue: :unset, quality_issues: :unset, spam: :unset, call_score: :unset, comment: :unset, incident: :unset)
86
- data = Twilio::Values.of({
87
- 'AnsweredBy' => answered_by,
88
- 'ConnectivityIssue' => connectivity_issue,
89
- 'QualityIssues' => quality_issues,
90
- 'Spam' => spam,
91
- 'CallScore' => call_score,
92
- 'Comment' => comment,
93
- 'Incident' => incident,
94
- })
95
-
96
- payload = @version.update('POST', @uri, data: data)
97
-
98
- AnnotationInstance.new(@version, payload, call_sid: @solution[:call_sid], )
99
- end
100
-
101
- ##
102
- # Fetch the AnnotationInstance
103
- # @return [AnnotationInstance] Fetched AnnotationInstance
104
- def fetch
105
- payload = @version.fetch('GET', @uri)
106
-
107
- AnnotationInstance.new(@version, payload, call_sid: @solution[:call_sid], )
108
- end
109
-
110
- ##
111
- # Provide a user friendly representation
112
- def to_s
113
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
114
- "#<Twilio.Insights.V1.AnnotationContext #{context}>"
115
- end
116
-
117
- ##
118
- # Provide a detailed, user friendly representation
119
- def inspect
120
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
121
- "#<Twilio.Insights.V1.AnnotationContext #{context}>"
122
- end
123
- end
124
-
125
- class AnnotationInstance < InstanceResource
126
- ##
127
- # Initialize the AnnotationInstance
128
- # @param [Version] version Version that contains the resource
129
- # @param [Hash] payload payload that contains response from Twilio
130
- # @param [String] call_sid The call_sid
131
- # @return [AnnotationInstance] AnnotationInstance
132
- def initialize(version, payload, call_sid: nil)
133
- super(version)
134
-
135
- # Marshaled Properties
136
- @properties = {
137
- 'call_sid' => payload['call_sid'],
138
- 'account_sid' => payload['account_sid'],
139
- 'answered_by' => payload['answered_by'],
140
- 'connectivity_issue' => payload['connectivity_issue'],
141
- 'quality_issues' => payload['quality_issues'],
142
- 'spam' => payload['spam'],
143
- 'call_score' => payload['call_score'] == nil ? payload['call_score'] : payload['call_score'].to_i,
144
- 'comment' => payload['comment'],
145
- 'incident' => payload['incident'],
146
- 'url' => payload['url'],
147
- }
148
-
149
- # Context
150
- @instance_context = nil
151
- @params = {'call_sid' => call_sid || @properties['call_sid'], }
152
- end
153
-
154
- ##
155
- # Generate an instance context for the instance, the context is capable of
156
- # performing various actions. All instance actions are proxied to the context
157
- # @return [AnnotationContext] AnnotationContext for this AnnotationInstance
158
- def context
159
- unless @instance_context
160
- @instance_context = AnnotationContext.new(@version, @params['call_sid'], )
161
- end
162
- @instance_context
163
- end
164
-
165
- ##
166
- # @return [String] The call_sid
167
- def call_sid
168
- @properties['call_sid']
169
- end
170
-
171
- ##
172
- # @return [String] The account_sid
173
- def account_sid
174
- @properties['account_sid']
175
- end
176
-
177
- ##
178
- # @return [annotation.AnsweredBy] The answered_by
179
- def answered_by
180
- @properties['answered_by']
181
- end
182
-
183
- ##
184
- # @return [annotation.ConnectivityIssue] The connectivity_issue
185
- def connectivity_issue
186
- @properties['connectivity_issue']
187
- end
188
-
189
- ##
190
- # @return [Array[String]] The quality_issues
191
- def quality_issues
192
- @properties['quality_issues']
193
- end
194
-
195
- ##
196
- # @return [Boolean] The spam
197
- def spam
198
- @properties['spam']
199
- end
200
-
201
- ##
202
- # @return [String] The call_score
203
- def call_score
204
- @properties['call_score']
205
- end
206
-
207
- ##
208
- # @return [String] The comment
209
- def comment
210
- @properties['comment']
211
- end
212
-
213
- ##
214
- # @return [String] The incident
215
- def incident
216
- @properties['incident']
217
- end
218
-
219
- ##
220
- # @return [String] The url
221
- def url
222
- @properties['url']
223
- end
224
-
225
- ##
226
- # Update the AnnotationInstance
227
- # @param [annotation.AnsweredBy] answered_by The answered_by
228
- # @param [annotation.ConnectivityIssue] connectivity_issue The connectivity_issue
229
- # @param [String] quality_issues The quality_issues
230
- # @param [Boolean] spam The spam
231
- # @param [String] call_score The call_score
232
- # @param [String] comment The comment
233
- # @param [String] incident The incident
234
- # @return [AnnotationInstance] Updated AnnotationInstance
235
- def update(answered_by: :unset, connectivity_issue: :unset, quality_issues: :unset, spam: :unset, call_score: :unset, comment: :unset, incident: :unset)
236
- context.update(
237
- answered_by: answered_by,
238
- connectivity_issue: connectivity_issue,
239
- quality_issues: quality_issues,
240
- spam: spam,
241
- call_score: call_score,
242
- comment: comment,
243
- incident: incident,
244
- )
245
- end
246
-
247
- ##
248
- # Fetch the AnnotationInstance
249
- # @return [AnnotationInstance] Fetched AnnotationInstance
250
- def fetch
251
- context.fetch
252
- end
253
-
254
- ##
255
- # Provide a user friendly representation
256
- def to_s
257
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
258
- "<Twilio.Insights.V1.AnnotationInstance #{values}>"
259
- end
260
-
261
- ##
262
- # Provide a detailed, user friendly representation
263
- def inspect
264
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
265
- "<Twilio.Insights.V1.AnnotationInstance #{values}>"
266
- end
267
- end
268
- end
269
- end
270
- end
271
- end
@@ -1,275 +0,0 @@
1
- ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
6
- #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Preview < Domain
12
- class BulkExports < Version
13
- class ExportContext < InstanceContext
14
- ##
15
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
16
- class ExportCustomJobList < ListResource
17
- ##
18
- # Initialize the ExportCustomJobList
19
- # @param [Version] version Version that contains the resource
20
- # @param [String] resource_type The type of communication – Messages, Calls,
21
- # Conferences, and Participants
22
- # @return [ExportCustomJobList] ExportCustomJobList
23
- def initialize(version, resource_type: nil)
24
- super(version)
25
-
26
- # Path Solution
27
- @solution = {resource_type: resource_type}
28
- @uri = "/Exports/#{@solution[:resource_type]}/Jobs"
29
- end
30
-
31
- ##
32
- # Lists ExportCustomJobInstance records from the API as a list.
33
- # Unlike stream(), this operation is eager and will load `limit` records into
34
- # memory before returning.
35
- # @param [Integer] limit Upper limit for the number of records to return. stream()
36
- # guarantees to never return more than limit. Default is no limit
37
- # @param [Integer] page_size Number of records to fetch per request, when
38
- # not set will use the default value of 50 records. If no page_size is defined
39
- # but a limit is defined, stream() will attempt to read the limit with the most
40
- # efficient page size, i.e. min(limit, 1000)
41
- # @return [Array] Array of up to limit results
42
- def list(limit: nil, page_size: nil)
43
- self.stream(limit: limit, page_size: page_size).entries
44
- end
45
-
46
- ##
47
- # Streams ExportCustomJobInstance records from the API as an Enumerable.
48
- # This operation lazily loads records as efficiently as possible until the limit
49
- # is reached.
50
- # @param [Integer] limit Upper limit for the number of records to return. stream()
51
- # guarantees to never return more than limit. Default is no limit.
52
- # @param [Integer] page_size Number of records to fetch per request, when
53
- # not set will use the default value of 50 records. If no page_size is defined
54
- # but a limit is defined, stream() will attempt to read the limit with the most
55
- # efficient page size, i.e. min(limit, 1000)
56
- # @return [Enumerable] Enumerable that will yield up to limit results
57
- def stream(limit: nil, page_size: nil)
58
- limits = @version.read_limits(limit, page_size)
59
-
60
- page = self.page(page_size: limits[:page_size], )
61
-
62
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
63
- end
64
-
65
- ##
66
- # When passed a block, yields ExportCustomJobInstance records from the API.
67
- # This operation lazily loads records as efficiently as possible until the limit
68
- # is reached.
69
- def each
70
- limits = @version.read_limits
71
-
72
- page = self.page(page_size: limits[:page_size], )
73
-
74
- @version.stream(page,
75
- limit: limits[:limit],
76
- page_limit: limits[:page_limit]).each {|x| yield x}
77
- end
78
-
79
- ##
80
- # Retrieve a single page of ExportCustomJobInstance records from the API.
81
- # Request is executed immediately.
82
- # @param [String] page_token PageToken provided by the API
83
- # @param [Integer] page_number Page Number, this value is simply for client state
84
- # @param [Integer] page_size Number of records to return, defaults to 50
85
- # @return [Page] Page of ExportCustomJobInstance
86
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
87
- params = Twilio::Values.of({
88
- 'PageToken' => page_token,
89
- 'Page' => page_number,
90
- 'PageSize' => page_size,
91
- })
92
-
93
- response = @version.page('GET', @uri, params: params)
94
-
95
- ExportCustomJobPage.new(@version, response, @solution)
96
- end
97
-
98
- ##
99
- # Retrieve a single page of ExportCustomJobInstance records from the API.
100
- # Request is executed immediately.
101
- # @param [String] target_url API-generated URL for the requested results page
102
- # @return [Page] Page of ExportCustomJobInstance
103
- def get_page(target_url)
104
- response = @version.domain.request(
105
- 'GET',
106
- target_url
107
- )
108
- ExportCustomJobPage.new(@version, response, @solution)
109
- end
110
-
111
- ##
112
- # Create the ExportCustomJobInstance
113
- # @param [String] start_day The start day for the custom export specified as a
114
- # string in the format of yyyy-mm-dd
115
- # @param [String] end_day The end day for the custom export specified as a string
116
- # in the format of yyyy-mm-dd. End day is inclusive and must be 2 days earlier
117
- # than the current UTC day.
118
- # @param [String] friendly_name The friendly name specified when creating the job
119
- # @param [String] webhook_url The optional webhook url called on completion of the
120
- # job. If this is supplied, `WebhookMethod` must also be supplied.
121
- # @param [String] webhook_method This is the method used to call the webhook on
122
- # completion of the job. If this is supplied, `WebhookUrl` must also be supplied.
123
- # @param [String] email The optional email to send the completion notification to
124
- # @return [ExportCustomJobInstance] Created ExportCustomJobInstance
125
- def create(start_day: nil, end_day: nil, friendly_name: nil, webhook_url: :unset, webhook_method: :unset, email: :unset)
126
- data = Twilio::Values.of({
127
- 'StartDay' => start_day,
128
- 'EndDay' => end_day,
129
- 'FriendlyName' => friendly_name,
130
- 'WebhookUrl' => webhook_url,
131
- 'WebhookMethod' => webhook_method,
132
- 'Email' => email,
133
- })
134
-
135
- payload = @version.create('POST', @uri, data: data)
136
-
137
- ExportCustomJobInstance.new(@version, payload, resource_type: @solution[:resource_type], )
138
- end
139
-
140
- ##
141
- # Provide a user friendly representation
142
- def to_s
143
- '#<Twilio.Preview.BulkExports.ExportCustomJobList>'
144
- end
145
- end
146
-
147
- ##
148
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
149
- class ExportCustomJobPage < Page
150
- ##
151
- # Initialize the ExportCustomJobPage
152
- # @param [Version] version Version that contains the resource
153
- # @param [Response] response Response from the API
154
- # @param [Hash] solution Path solution for the resource
155
- # @return [ExportCustomJobPage] ExportCustomJobPage
156
- def initialize(version, response, solution)
157
- super(version, response)
158
-
159
- # Path Solution
160
- @solution = solution
161
- end
162
-
163
- ##
164
- # Build an instance of ExportCustomJobInstance
165
- # @param [Hash] payload Payload response from the API
166
- # @return [ExportCustomJobInstance] ExportCustomJobInstance
167
- def get_instance(payload)
168
- ExportCustomJobInstance.new(@version, payload, resource_type: @solution[:resource_type], )
169
- end
170
-
171
- ##
172
- # Provide a user friendly representation
173
- def to_s
174
- '<Twilio.Preview.BulkExports.ExportCustomJobPage>'
175
- end
176
- end
177
-
178
- ##
179
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
180
- class ExportCustomJobInstance < InstanceResource
181
- ##
182
- # Initialize the ExportCustomJobInstance
183
- # @param [Version] version Version that contains the resource
184
- # @param [Hash] payload payload that contains response from Twilio
185
- # @param [String] resource_type The type of communication – Messages, Calls,
186
- # Conferences, and Participants
187
- # @return [ExportCustomJobInstance] ExportCustomJobInstance
188
- def initialize(version, payload, resource_type: nil)
189
- super(version)
190
-
191
- # Marshaled Properties
192
- @properties = {
193
- 'friendly_name' => payload['friendly_name'],
194
- 'resource_type' => payload['resource_type'],
195
- 'start_day' => payload['start_day'],
196
- 'end_day' => payload['end_day'],
197
- 'webhook_url' => payload['webhook_url'],
198
- 'webhook_method' => payload['webhook_method'],
199
- 'email' => payload['email'],
200
- 'job_sid' => payload['job_sid'],
201
- 'details' => payload['details'],
202
- }
203
- end
204
-
205
- ##
206
- # @return [String] The friendly name specified when creating the job
207
- def friendly_name
208
- @properties['friendly_name']
209
- end
210
-
211
- ##
212
- # @return [String] The type of communication – Messages, Calls, Conferences, and Participants
213
- def resource_type
214
- @properties['resource_type']
215
- end
216
-
217
- ##
218
- # @return [String] The start day for the custom export specified as a string in the format of yyyy-MM-dd
219
- def start_day
220
- @properties['start_day']
221
- end
222
-
223
- ##
224
- # @return [String] The end day for the custom export specified as a string in the format of yyyy-MM-dd
225
- def end_day
226
- @properties['end_day']
227
- end
228
-
229
- ##
230
- # @return [String] The optional webhook url called on completion
231
- def webhook_url
232
- @properties['webhook_url']
233
- end
234
-
235
- ##
236
- # @return [String] This is the method used to call the webhook
237
- def webhook_method
238
- @properties['webhook_method']
239
- end
240
-
241
- ##
242
- # @return [String] The optional email to send the completion notification to
243
- def email
244
- @properties['email']
245
- end
246
-
247
- ##
248
- # @return [String] The unique job_sid returned when the custom export was created. This can be used to look up the status of the job.
249
- def job_sid
250
- @properties['job_sid']
251
- end
252
-
253
- ##
254
- # @return [Hash] The details
255
- def details
256
- @properties['details']
257
- end
258
-
259
- ##
260
- # Provide a user friendly representation
261
- def to_s
262
- "<Twilio.Preview.BulkExports.ExportCustomJobInstance>"
263
- end
264
-
265
- ##
266
- # Provide a detailed, user friendly representation
267
- def inspect
268
- "<Twilio.Preview.BulkExports.ExportCustomJobInstance>"
269
- end
270
- end
271
- end
272
- end
273
- end
274
- end
275
- end