twilio-ruby 5.40.1 → 5.42.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.
- checksums.yaml +4 -4
- data/CHANGES.md +111 -0
- data/{LICENSE.md → LICENSE} +0 -0
- data/PULL_REQUEST_TEMPLATE.md +3 -3
- data/README.md +2 -2
- data/lib/twilio-ruby/framework/version.rb +4 -8
- data/lib/twilio-ruby/jwt/access_token.rb +7 -2
- data/lib/twilio-ruby/rest/accounts.rb +12 -0
- data/lib/twilio-ruby/rest/accounts/v1.rb +14 -0
- data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
- data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
- data/lib/twilio-ruby/rest/api.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/address.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/application.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +32 -23
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +21 -20
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +20 -14
- data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +8 -8
- data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +29 -22
- data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +10 -10
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/key.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/message.rb +28 -21
- data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +6 -4
- data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +5 -5
- data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +1 -1
- data/lib/twilio-ruby/rest/api/v2010/account/token.rb +2 -2
- data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +3 -3
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +6 -6
- data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +19 -18
- data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +3 -3
- data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +12 -12
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +3 -3
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +3 -3
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +3 -3
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +15 -11
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +3 -3
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +33 -26
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +3 -3
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +6 -6
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +9 -9
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +31 -24
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +8 -8
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +6 -6
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +3 -3
- data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +5 -22
- data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +25 -40
- data/lib/twilio-ruby/rest/chat/v1/service.rb +36 -36
- data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +3 -3
- data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +19 -19
- data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +28 -28
- data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +7 -7
- data/lib/twilio-ruby/rest/chat/v1/service/role.rb +5 -5
- data/lib/twilio-ruby/rest/chat/v1/service/user.rb +8 -8
- data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +2 -2
- data/lib/twilio-ruby/rest/chat/v2/service.rb +36 -36
- data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +18 -18
- data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +15 -15
- data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +19 -19
- data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +54 -54
- data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +25 -25
- data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +15 -15
- data/lib/twilio-ruby/rest/chat/v2/service/role.rb +5 -5
- data/lib/twilio-ruby/rest/chat/v2/service/user.rb +8 -8
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +18 -18
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +20 -20
- data/lib/twilio-ruby/rest/client.rb +1 -1
- data/lib/twilio-ruby/rest/conversations.rb +39 -3
- data/lib/twilio-ruby/rest/conversations/v1.rb +68 -5
- data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
- data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +34 -23
- data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +15 -20
- data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +35 -28
- data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +42 -44
- data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +14 -19
- data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
- data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
- data/lib/twilio-ruby/rest/conversations/v1/service.rb +434 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +263 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +588 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +541 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +511 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +430 -0
- data/lib/twilio-ruby/rest/conversations/v1/user.rb +409 -0
- data/lib/twilio-ruby/rest/events.rb +17 -0
- data/lib/twilio-ruby/rest/events/v1.rb +31 -0
- data/lib/twilio-ruby/rest/events/v1/event_type.rb +291 -0
- data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
- data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +290 -0
- data/lib/twilio-ruby/rest/events/v1/subscription.rb +28 -8
- data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +3 -109
- data/lib/twilio-ruby/rest/fax/v1/fax.rb +28 -27
- data/lib/twilio-ruby/rest/insights.rb +8 -0
- data/lib/twilio-ruby/rest/insights/v1.rb +15 -0
- data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +7 -0
- data/lib/twilio-ruby/rest/insights/v1/room.rb +487 -0
- data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +385 -0
- data/lib/twilio-ruby/rest/ip_messaging.rb +8 -10
- data/lib/twilio-ruby/rest/ip_messaging/v1.rb +6 -8
- data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +29 -68
- data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +198 -313
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +32 -59
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +23 -55
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +28 -71
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +31 -59
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +19 -39
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +29 -51
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +12 -18
- data/lib/twilio-ruby/rest/ip_messaging/v2.rb +6 -6
- data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +29 -66
- data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +116 -205
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +23 -50
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +41 -91
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +23 -50
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +42 -118
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +46 -100
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +36 -89
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +19 -41
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +29 -53
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +23 -53
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +27 -56
- data/lib/twilio-ruby/rest/lookups.rb +1 -1
- data/lib/twilio-ruby/rest/lookups/v1.rb +1 -1
- data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +10 -10
- data/lib/twilio-ruby/rest/messaging/v1/service.rb +39 -36
- data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +3 -3
- data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +3 -3
- data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +3 -3
- data/lib/twilio-ruby/rest/monitor/v1/event.rb +15 -15
- data/lib/twilio-ruby/rest/notify/v1/credential.rb +12 -6
- data/lib/twilio-ruby/rest/notify/v1/service.rb +24 -24
- data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +10 -10
- data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +23 -15
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +2 -2
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +18 -4
- data/lib/twilio-ruby/rest/preview.rb +8 -0
- data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +5 -22
- data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +21 -39
- data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +15 -10
- data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +9 -6
- data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +1 -1
- data/lib/twilio-ruby/rest/preview/trusted_comms.rb +15 -0
- data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +4 -4
- data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
- data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
- data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -26
- data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +1 -4
- data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +4 -4
- data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +52 -52
- data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +2 -2
- data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +2 -2
- data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +4 -4
- data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +2 -2
- data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +4 -4
- data/lib/twilio-ruby/rest/pricing/v1/voice.rb +2 -2
- data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +4 -4
- data/lib/twilio-ruby/rest/pricing/v2/voice.rb +3 -3
- data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +4 -4
- data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +4 -4
- data/lib/twilio-ruby/rest/proxy/v1/service.rb +15 -15
- data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +13 -11
- data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +33 -30
- data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +6 -6
- data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +18 -17
- data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +9 -9
- data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +8 -8
- data/lib/twilio-ruby/rest/serverless/v1/service.rb +13 -13
- data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +6 -6
- data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +5 -5
- data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +33 -8
- data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +6 -8
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +8 -8
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +14 -14
- data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +7 -7
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +1 -1
- data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +6 -6
- data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +6 -6
- data/lib/twilio-ruby/rest/supersim/v1/command.rb +7 -7
- data/lib/twilio-ruby/rest/supersim/v1/network.rb +6 -6
- data/lib/twilio-ruby/rest/supersim/v1/sim.rb +22 -12
- data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service.rb +3 -3
- data/lib/twilio-ruby/rest/sync/v1/service/document.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +12 -12
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +6 -6
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +4 -4
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +4 -4
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +2 -1
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +6 -6
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +16 -12
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +8 -8
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +6 -6
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +6 -6
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +9 -9
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +4 -7
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +16 -12
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -4
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +4 -4
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -6
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +12 -12
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -4
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +6 -6
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -4
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -6
- data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +46 -53
- data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +2 -2
- data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +3 -2
- data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +3 -2
- data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +201 -0
- data/lib/twilio-ruby/rest/verify/v2/form.rb +4 -4
- data/lib/twilio-ruby/rest/verify/v2/service.rb +51 -30
- data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +3 -3
- data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +20 -34
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +32 -59
- data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +59 -61
- data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +12 -12
- data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +3 -3
- data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +3 -3
- data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +14 -12
- data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +5 -5
- data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +4 -4
- data/lib/twilio-ruby/rest/video/v1/composition.rb +13 -9
- data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +33 -24
- data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
- data/lib/twilio-ruby/rest/video/v1/room.rb +27 -9
- data/lib/twilio-ruby/rest/video/v1/room/recording.rb +6 -6
- data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +9 -9
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +2 -2
- data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +150 -0
- data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +9 -9
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +3 -6
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +22 -22
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +4 -4
- data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +2 -2
- data/lib/twilio-ruby/rest/wireless/v1/command.rb +7 -7
- data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +8 -7
- data/lib/twilio-ruby/rest/wireless/v1/sim.rb +22 -22
- data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +4 -4
- data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +10 -10
- data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +6 -6
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/framework/version_spec.rb +53 -0
- data/spec/holodeck/holodeck.rb +3 -3
- data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +44 -0
- data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +69 -0
- data/spec/integration/api/v2010/account/conference/participant_spec.rb +30 -0
- data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +4 -2
- data/spec/integration/conversations/v1/{webhook_spec.rb → configuration/webhook_spec.rb} +12 -8
- data/spec/integration/conversations/v1/configuration_spec.rb +87 -0
- data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +4 -0
- data/spec/integration/conversations/v1/conversation/participant_spec.rb +6 -6
- data/spec/integration/conversations/v1/conversation_spec.rb +5 -0
- data/spec/integration/conversations/v1/credential_spec.rb +219 -0
- data/spec/integration/conversations/v1/role_spec.rb +249 -0
- data/spec/integration/conversations/v1/service/binding_spec.rb +166 -0
- data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +115 -0
- data/spec/integration/conversations/v1/service/configuration_spec.rb +87 -0
- data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +144 -0
- data/spec/integration/conversations/v1/service/conversation/message_spec.rb +429 -0
- data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +407 -0
- data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +299 -0
- data/spec/integration/conversations/v1/service/conversation_spec.rb +289 -0
- data/spec/integration/conversations/v1/service/role_spec.rb +260 -0
- data/spec/integration/conversations/v1/service/user_spec.rb +236 -0
- data/spec/integration/conversations/v1/service_spec.rb +174 -0
- data/spec/integration/conversations/v1/user_spec.rb +226 -0
- data/spec/integration/events/v1/event_type_spec.rb +133 -0
- data/spec/integration/events/v1/schema/schema_version_spec.rb +126 -0
- data/spec/integration/events/v1/schema_spec.rb +46 -0
- data/spec/integration/events/v1/sink/sink_test_spec.rb +1 -1
- data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -121
- data/spec/integration/events/v1/subscription_spec.rb +38 -0
- data/spec/integration/insights/v1/call/summary_spec.rb +1 -0
- data/spec/integration/insights/v1/room/participant_spec.rb +149 -0
- data/spec/integration/insights/v1/room_spec.rb +164 -0
- data/spec/integration/ip_messaging/v1/credential_spec.rb +13 -13
- data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +11 -11
- data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +14 -14
- data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +14 -14
- data/spec/integration/ip_messaging/v1/service/channel_spec.rb +25 -25
- data/spec/integration/ip_messaging/v1/service/role_spec.rb +13 -13
- data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +7 -7
- data/spec/integration/ip_messaging/v1/service/user_spec.rb +17 -17
- data/spec/integration/ip_messaging/v1/service_spec.rb +9 -9
- data/spec/integration/ip_messaging/v2/credential_spec.rb +13 -13
- data/spec/integration/ip_messaging/v2/service/binding_spec.rb +11 -11
- data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +11 -11
- data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +13 -13
- data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +17 -17
- data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +15 -15
- data/spec/integration/ip_messaging/v2/service/channel_spec.rb +29 -29
- data/spec/integration/ip_messaging/v2/service/role_spec.rb +13 -13
- data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +9 -9
- data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +20 -20
- data/spec/integration/ip_messaging/v2/service/user_spec.rb +21 -21
- data/spec/integration/ip_messaging/v2/service_spec.rb +29 -29
- data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +27 -0
- data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +4 -2
- data/spec/integration/preview/trusted_comms/{business/brand/branded_channel → branded_channel}/channel_spec.rb +4 -8
- data/spec/integration/preview/trusted_comms/{business/brand/branded_channel_spec.rb → branded_channel_spec.rb} +5 -9
- data/spec/integration/preview/trusted_comms/business_spec.rb +0 -1
- data/spec/integration/serverless/v1/service/build/build_status_spec.rb +48 -0
- data/spec/integration/serverless/v1/service/build_spec.rb +8 -2
- data/spec/integration/supersim/v1/sim_spec.rb +23 -0
- data/spec/integration/trunking/v1/trunk/recording_spec.rb +79 -0
- data/spec/integration/verify/v2/service/entity/challenge_spec.rb +56 -20
- data/spec/integration/verify/v2/service/entity/factor_spec.rb +11 -26
- data/spec/integration/verify/v2/service/entity_spec.rb +4 -12
- data/spec/integration/verify/v2/service_spec.rb +8 -4
- data/spec/integration/video/v1/room/room_recording_rule_spec.rb +89 -0
- data/spec/integration/video/v1/room_spec.rb +12 -7
- data/spec/jwt/access_token_spec.rb +9 -1
- data/twilio-ruby.gemspec +1 -1
- metadata +88 -16
- data/lib/twilio-ruby/rest/conversations/v1/webhook.rb +0 -262
- data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb +0 -233
- data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +0 -260
- data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +0 -189
- data/spec/integration/preview/trusted_comms/business/brand_spec.rb +0 -48
@@ -0,0 +1,260 @@
|
|
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 Conversations < Domain
|
12
|
+
class V1 < Version
|
13
|
+
class ConfigurationList < ListResource
|
14
|
+
##
|
15
|
+
# Initialize the ConfigurationList
|
16
|
+
# @param [Version] version Version that contains the resource
|
17
|
+
# @return [ConfigurationList] ConfigurationList
|
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.Conversations.V1.ConfigurationList>'
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
class ConfigurationPage < Page
|
33
|
+
##
|
34
|
+
# Initialize the ConfigurationPage
|
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 [ConfigurationPage] ConfigurationPage
|
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 ConfigurationInstance
|
48
|
+
# @param [Hash] payload Payload response from the API
|
49
|
+
# @return [ConfigurationInstance] ConfigurationInstance
|
50
|
+
def get_instance(payload)
|
51
|
+
ConfigurationInstance.new(@version, payload, )
|
52
|
+
end
|
53
|
+
|
54
|
+
##
|
55
|
+
# Provide a user friendly representation
|
56
|
+
def to_s
|
57
|
+
'<Twilio.Conversations.V1.ConfigurationPage>'
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
class ConfigurationContext < InstanceContext
|
62
|
+
##
|
63
|
+
# Initialize the ConfigurationContext
|
64
|
+
# @param [Version] version Version that contains the resource
|
65
|
+
# @return [ConfigurationContext] ConfigurationContext
|
66
|
+
def initialize(version)
|
67
|
+
super(version)
|
68
|
+
|
69
|
+
# Path Solution
|
70
|
+
@solution = {}
|
71
|
+
@uri = "/Configuration"
|
72
|
+
|
73
|
+
# Components
|
74
|
+
@webhooks = nil
|
75
|
+
end
|
76
|
+
|
77
|
+
##
|
78
|
+
# Fetch the ConfigurationInstance
|
79
|
+
# @return [ConfigurationInstance] Fetched ConfigurationInstance
|
80
|
+
def fetch
|
81
|
+
payload = @version.fetch('GET', @uri)
|
82
|
+
|
83
|
+
ConfigurationInstance.new(@version, payload, )
|
84
|
+
end
|
85
|
+
|
86
|
+
##
|
87
|
+
# Update the ConfigurationInstance
|
88
|
+
# @param [String] default_chat_service_sid The SID of the default {Conversation
|
89
|
+
# Service}[https://www.twilio.com/docs/conversations/api/service-resource] to use
|
90
|
+
# when creating a conversation.
|
91
|
+
# @param [String] default_messaging_service_sid The SID of the default {Messaging
|
92
|
+
# Service}[https://www.twilio.com/docs/sms/services/api] to use when creating a
|
93
|
+
# conversation.
|
94
|
+
# @param [String] default_inactive_timer Default ISO8601 duration when
|
95
|
+
# conversation will be switched to `inactive` state. Minimum value for this timer
|
96
|
+
# is 1 minute.
|
97
|
+
# @param [String] default_closed_timer Default ISO8601 duration when conversation
|
98
|
+
# will be switched to `closed` state. Minimum value for this timer is 10 minutes.
|
99
|
+
# @return [ConfigurationInstance] Updated ConfigurationInstance
|
100
|
+
def update(default_chat_service_sid: :unset, default_messaging_service_sid: :unset, default_inactive_timer: :unset, default_closed_timer: :unset)
|
101
|
+
data = Twilio::Values.of({
|
102
|
+
'DefaultChatServiceSid' => default_chat_service_sid,
|
103
|
+
'DefaultMessagingServiceSid' => default_messaging_service_sid,
|
104
|
+
'DefaultInactiveTimer' => default_inactive_timer,
|
105
|
+
'DefaultClosedTimer' => default_closed_timer,
|
106
|
+
})
|
107
|
+
|
108
|
+
payload = @version.update('POST', @uri, data: data)
|
109
|
+
|
110
|
+
ConfigurationInstance.new(@version, payload, )
|
111
|
+
end
|
112
|
+
|
113
|
+
##
|
114
|
+
# Access the webhooks
|
115
|
+
# @return [WebhookContext] WebhookContext
|
116
|
+
def webhooks
|
117
|
+
return WebhookContext.new(@version, )
|
118
|
+
end
|
119
|
+
|
120
|
+
##
|
121
|
+
# Provide a user friendly representation
|
122
|
+
def to_s
|
123
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
124
|
+
"#<Twilio.Conversations.V1.ConfigurationContext #{context}>"
|
125
|
+
end
|
126
|
+
|
127
|
+
##
|
128
|
+
# Provide a detailed, user friendly representation
|
129
|
+
def inspect
|
130
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
131
|
+
"#<Twilio.Conversations.V1.ConfigurationContext #{context}>"
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
135
|
+
class ConfigurationInstance < InstanceResource
|
136
|
+
##
|
137
|
+
# Initialize the ConfigurationInstance
|
138
|
+
# @param [Version] version Version that contains the resource
|
139
|
+
# @param [Hash] payload payload that contains response from Twilio
|
140
|
+
# @return [ConfigurationInstance] ConfigurationInstance
|
141
|
+
def initialize(version, payload)
|
142
|
+
super(version)
|
143
|
+
|
144
|
+
# Marshaled Properties
|
145
|
+
@properties = {
|
146
|
+
'account_sid' => payload['account_sid'],
|
147
|
+
'default_chat_service_sid' => payload['default_chat_service_sid'],
|
148
|
+
'default_messaging_service_sid' => payload['default_messaging_service_sid'],
|
149
|
+
'default_inactive_timer' => payload['default_inactive_timer'],
|
150
|
+
'default_closed_timer' => payload['default_closed_timer'],
|
151
|
+
'url' => payload['url'],
|
152
|
+
'links' => payload['links'],
|
153
|
+
}
|
154
|
+
|
155
|
+
# Context
|
156
|
+
@instance_context = nil
|
157
|
+
@params = {}
|
158
|
+
end
|
159
|
+
|
160
|
+
##
|
161
|
+
# Generate an instance context for the instance, the context is capable of
|
162
|
+
# performing various actions. All instance actions are proxied to the context
|
163
|
+
# @return [ConfigurationContext] ConfigurationContext for this ConfigurationInstance
|
164
|
+
def context
|
165
|
+
unless @instance_context
|
166
|
+
@instance_context = ConfigurationContext.new(@version, )
|
167
|
+
end
|
168
|
+
@instance_context
|
169
|
+
end
|
170
|
+
|
171
|
+
##
|
172
|
+
# @return [String] The SID of the Account responsible for this configuration.
|
173
|
+
def account_sid
|
174
|
+
@properties['account_sid']
|
175
|
+
end
|
176
|
+
|
177
|
+
##
|
178
|
+
# @return [String] The SID of the default Conversation Service that every new conversation is associated with.
|
179
|
+
def default_chat_service_sid
|
180
|
+
@properties['default_chat_service_sid']
|
181
|
+
end
|
182
|
+
|
183
|
+
##
|
184
|
+
# @return [String] The SID of the default Messaging Service that every new conversation is associated with.
|
185
|
+
def default_messaging_service_sid
|
186
|
+
@properties['default_messaging_service_sid']
|
187
|
+
end
|
188
|
+
|
189
|
+
##
|
190
|
+
# @return [String] Default ISO8601 duration when conversation will be switched to `inactive` state.
|
191
|
+
def default_inactive_timer
|
192
|
+
@properties['default_inactive_timer']
|
193
|
+
end
|
194
|
+
|
195
|
+
##
|
196
|
+
# @return [String] Default ISO8601 duration when conversation will be switched to `closed` state.
|
197
|
+
def default_closed_timer
|
198
|
+
@properties['default_closed_timer']
|
199
|
+
end
|
200
|
+
|
201
|
+
##
|
202
|
+
# @return [String] An absolute URL for this global configuration.
|
203
|
+
def url
|
204
|
+
@properties['url']
|
205
|
+
end
|
206
|
+
|
207
|
+
##
|
208
|
+
# @return [String] Absolute URLs to access the webhook and default service configurations.
|
209
|
+
def links
|
210
|
+
@properties['links']
|
211
|
+
end
|
212
|
+
|
213
|
+
##
|
214
|
+
# Fetch the ConfigurationInstance
|
215
|
+
# @return [ConfigurationInstance] Fetched ConfigurationInstance
|
216
|
+
def fetch
|
217
|
+
context.fetch
|
218
|
+
end
|
219
|
+
|
220
|
+
##
|
221
|
+
# Update the ConfigurationInstance
|
222
|
+
# @param [String] default_chat_service_sid The SID of the default {Conversation
|
223
|
+
# Service}[https://www.twilio.com/docs/conversations/api/service-resource] to use
|
224
|
+
# when creating a conversation.
|
225
|
+
# @param [String] default_messaging_service_sid The SID of the default {Messaging
|
226
|
+
# Service}[https://www.twilio.com/docs/sms/services/api] to use when creating a
|
227
|
+
# conversation.
|
228
|
+
# @param [String] default_inactive_timer Default ISO8601 duration when
|
229
|
+
# conversation will be switched to `inactive` state. Minimum value for this timer
|
230
|
+
# is 1 minute.
|
231
|
+
# @param [String] default_closed_timer Default ISO8601 duration when conversation
|
232
|
+
# will be switched to `closed` state. Minimum value for this timer is 10 minutes.
|
233
|
+
# @return [ConfigurationInstance] Updated ConfigurationInstance
|
234
|
+
def update(default_chat_service_sid: :unset, default_messaging_service_sid: :unset, default_inactive_timer: :unset, default_closed_timer: :unset)
|
235
|
+
context.update(
|
236
|
+
default_chat_service_sid: default_chat_service_sid,
|
237
|
+
default_messaging_service_sid: default_messaging_service_sid,
|
238
|
+
default_inactive_timer: default_inactive_timer,
|
239
|
+
default_closed_timer: default_closed_timer,
|
240
|
+
)
|
241
|
+
end
|
242
|
+
|
243
|
+
##
|
244
|
+
# Provide a user friendly representation
|
245
|
+
def to_s
|
246
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
247
|
+
"<Twilio.Conversations.V1.ConfigurationInstance #{values}>"
|
248
|
+
end
|
249
|
+
|
250
|
+
##
|
251
|
+
# Provide a detailed, user friendly representation
|
252
|
+
def inspect
|
253
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
254
|
+
"<Twilio.Conversations.V1.ConfigurationInstance #{values}>"
|
255
|
+
end
|
256
|
+
end
|
257
|
+
end
|
258
|
+
end
|
259
|
+
end
|
260
|
+
end
|
@@ -0,0 +1,254 @@
|
|
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 Conversations < Domain
|
12
|
+
class V1 < Version
|
13
|
+
class ConfigurationContext < InstanceContext
|
14
|
+
class WebhookList < ListResource
|
15
|
+
##
|
16
|
+
# Initialize the WebhookList
|
17
|
+
# @param [Version] version Version that contains the resource
|
18
|
+
# @return [WebhookList] WebhookList
|
19
|
+
def initialize(version)
|
20
|
+
super(version)
|
21
|
+
|
22
|
+
# Path Solution
|
23
|
+
@solution = {}
|
24
|
+
end
|
25
|
+
|
26
|
+
##
|
27
|
+
# Provide a user friendly representation
|
28
|
+
def to_s
|
29
|
+
'#<Twilio.Conversations.V1.WebhookList>'
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
class WebhookPage < Page
|
34
|
+
##
|
35
|
+
# Initialize the WebhookPage
|
36
|
+
# @param [Version] version Version that contains the resource
|
37
|
+
# @param [Response] response Response from the API
|
38
|
+
# @param [Hash] solution Path solution for the resource
|
39
|
+
# @return [WebhookPage] WebhookPage
|
40
|
+
def initialize(version, response, solution)
|
41
|
+
super(version, response)
|
42
|
+
|
43
|
+
# Path Solution
|
44
|
+
@solution = solution
|
45
|
+
end
|
46
|
+
|
47
|
+
##
|
48
|
+
# Build an instance of WebhookInstance
|
49
|
+
# @param [Hash] payload Payload response from the API
|
50
|
+
# @return [WebhookInstance] WebhookInstance
|
51
|
+
def get_instance(payload)
|
52
|
+
WebhookInstance.new(@version, payload, )
|
53
|
+
end
|
54
|
+
|
55
|
+
##
|
56
|
+
# Provide a user friendly representation
|
57
|
+
def to_s
|
58
|
+
'<Twilio.Conversations.V1.WebhookPage>'
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
class WebhookContext < InstanceContext
|
63
|
+
##
|
64
|
+
# Initialize the WebhookContext
|
65
|
+
# @param [Version] version Version that contains the resource
|
66
|
+
# @return [WebhookContext] WebhookContext
|
67
|
+
def initialize(version)
|
68
|
+
super(version)
|
69
|
+
|
70
|
+
# Path Solution
|
71
|
+
@solution = {}
|
72
|
+
@uri = "/Configuration/Webhooks"
|
73
|
+
end
|
74
|
+
|
75
|
+
##
|
76
|
+
# Fetch the WebhookInstance
|
77
|
+
# @return [WebhookInstance] Fetched WebhookInstance
|
78
|
+
def fetch
|
79
|
+
payload = @version.fetch('GET', @uri)
|
80
|
+
|
81
|
+
WebhookInstance.new(@version, payload, )
|
82
|
+
end
|
83
|
+
|
84
|
+
##
|
85
|
+
# Update the WebhookInstance
|
86
|
+
# @param [String] method The HTTP method to be used when sending a webhook
|
87
|
+
# request.
|
88
|
+
# @param [String] filters The list of webhook event triggers that are enabled for
|
89
|
+
# this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`,
|
90
|
+
# `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`,
|
91
|
+
# `onParticipantUpdated`, `onParticipantRemoved`
|
92
|
+
# @param [String] pre_webhook_url The absolute url the pre-event webhook request
|
93
|
+
# should be sent to.
|
94
|
+
# @param [String] post_webhook_url The absolute url the post-event webhook request
|
95
|
+
# should be sent to.
|
96
|
+
# @param [webhook.Target] target The routing target of the webhook.
|
97
|
+
# @return [WebhookInstance] Updated WebhookInstance
|
98
|
+
def update(method: :unset, filters: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, target: :unset)
|
99
|
+
data = Twilio::Values.of({
|
100
|
+
'Method' => method,
|
101
|
+
'Filters' => Twilio.serialize_list(filters) { |e| e },
|
102
|
+
'PreWebhookUrl' => pre_webhook_url,
|
103
|
+
'PostWebhookUrl' => post_webhook_url,
|
104
|
+
'Target' => target,
|
105
|
+
})
|
106
|
+
|
107
|
+
payload = @version.update('POST', @uri, data: data)
|
108
|
+
|
109
|
+
WebhookInstance.new(@version, payload, )
|
110
|
+
end
|
111
|
+
|
112
|
+
##
|
113
|
+
# Provide a user friendly representation
|
114
|
+
def to_s
|
115
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
116
|
+
"#<Twilio.Conversations.V1.WebhookContext #{context}>"
|
117
|
+
end
|
118
|
+
|
119
|
+
##
|
120
|
+
# Provide a detailed, user friendly representation
|
121
|
+
def inspect
|
122
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
123
|
+
"#<Twilio.Conversations.V1.WebhookContext #{context}>"
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
class WebhookInstance < InstanceResource
|
128
|
+
##
|
129
|
+
# Initialize the WebhookInstance
|
130
|
+
# @param [Version] version Version that contains the resource
|
131
|
+
# @param [Hash] payload payload that contains response from Twilio
|
132
|
+
# @return [WebhookInstance] WebhookInstance
|
133
|
+
def initialize(version, payload)
|
134
|
+
super(version)
|
135
|
+
|
136
|
+
# Marshaled Properties
|
137
|
+
@properties = {
|
138
|
+
'account_sid' => payload['account_sid'],
|
139
|
+
'method' => payload['method'],
|
140
|
+
'filters' => payload['filters'],
|
141
|
+
'pre_webhook_url' => payload['pre_webhook_url'],
|
142
|
+
'post_webhook_url' => payload['post_webhook_url'],
|
143
|
+
'target' => payload['target'],
|
144
|
+
'url' => payload['url'],
|
145
|
+
}
|
146
|
+
|
147
|
+
# Context
|
148
|
+
@instance_context = nil
|
149
|
+
@params = {}
|
150
|
+
end
|
151
|
+
|
152
|
+
##
|
153
|
+
# Generate an instance context for the instance, the context is capable of
|
154
|
+
# performing various actions. All instance actions are proxied to the context
|
155
|
+
# @return [WebhookContext] WebhookContext for this WebhookInstance
|
156
|
+
def context
|
157
|
+
unless @instance_context
|
158
|
+
@instance_context = WebhookContext.new(@version, )
|
159
|
+
end
|
160
|
+
@instance_context
|
161
|
+
end
|
162
|
+
|
163
|
+
##
|
164
|
+
# @return [String] The unique ID of the Account responsible for this conversation.
|
165
|
+
def account_sid
|
166
|
+
@properties['account_sid']
|
167
|
+
end
|
168
|
+
|
169
|
+
##
|
170
|
+
# @return [webhook.Method] The HTTP method to be used when sending a webhook request.
|
171
|
+
def method
|
172
|
+
@properties['method']
|
173
|
+
end
|
174
|
+
|
175
|
+
##
|
176
|
+
# @return [String] The list of webhook event triggers that are enabled for this Service.
|
177
|
+
def filters
|
178
|
+
@properties['filters']
|
179
|
+
end
|
180
|
+
|
181
|
+
##
|
182
|
+
# @return [String] The absolute url the pre-event webhook request should be sent to.
|
183
|
+
def pre_webhook_url
|
184
|
+
@properties['pre_webhook_url']
|
185
|
+
end
|
186
|
+
|
187
|
+
##
|
188
|
+
# @return [String] The absolute url the post-event webhook request should be sent to.
|
189
|
+
def post_webhook_url
|
190
|
+
@properties['post_webhook_url']
|
191
|
+
end
|
192
|
+
|
193
|
+
##
|
194
|
+
# @return [webhook.Target] The routing target of the webhook.
|
195
|
+
def target
|
196
|
+
@properties['target']
|
197
|
+
end
|
198
|
+
|
199
|
+
##
|
200
|
+
# @return [String] An absolute URL for this webhook.
|
201
|
+
def url
|
202
|
+
@properties['url']
|
203
|
+
end
|
204
|
+
|
205
|
+
##
|
206
|
+
# Fetch the WebhookInstance
|
207
|
+
# @return [WebhookInstance] Fetched WebhookInstance
|
208
|
+
def fetch
|
209
|
+
context.fetch
|
210
|
+
end
|
211
|
+
|
212
|
+
##
|
213
|
+
# Update the WebhookInstance
|
214
|
+
# @param [String] method The HTTP method to be used when sending a webhook
|
215
|
+
# request.
|
216
|
+
# @param [String] filters The list of webhook event triggers that are enabled for
|
217
|
+
# this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`,
|
218
|
+
# `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`,
|
219
|
+
# `onParticipantUpdated`, `onParticipantRemoved`
|
220
|
+
# @param [String] pre_webhook_url The absolute url the pre-event webhook request
|
221
|
+
# should be sent to.
|
222
|
+
# @param [String] post_webhook_url The absolute url the post-event webhook request
|
223
|
+
# should be sent to.
|
224
|
+
# @param [webhook.Target] target The routing target of the webhook.
|
225
|
+
# @return [WebhookInstance] Updated WebhookInstance
|
226
|
+
def update(method: :unset, filters: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, target: :unset)
|
227
|
+
context.update(
|
228
|
+
method: method,
|
229
|
+
filters: filters,
|
230
|
+
pre_webhook_url: pre_webhook_url,
|
231
|
+
post_webhook_url: post_webhook_url,
|
232
|
+
target: target,
|
233
|
+
)
|
234
|
+
end
|
235
|
+
|
236
|
+
##
|
237
|
+
# Provide a user friendly representation
|
238
|
+
def to_s
|
239
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
240
|
+
"<Twilio.Conversations.V1.WebhookInstance #{values}>"
|
241
|
+
end
|
242
|
+
|
243
|
+
##
|
244
|
+
# Provide a detailed, user friendly representation
|
245
|
+
def inspect
|
246
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
247
|
+
"<Twilio.Conversations.V1.WebhookInstance #{values}>"
|
248
|
+
end
|
249
|
+
end
|
250
|
+
end
|
251
|
+
end
|
252
|
+
end
|
253
|
+
end
|
254
|
+
end
|