sentdm 0.45.0 → 0.47.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/CHANGELOG.md +22 -0
- data/README.md +11 -11
- data/lib/sentdm/client.rb +66 -0
- data/lib/sentdm/internal/sender_profiles_page.rb +140 -0
- data/lib/sentdm/internal/type/enum.rb +11 -11
- data/lib/sentdm/models/account.rb +173 -0
- data/lib/sentdm/models/account_channels.rb +39 -0
- data/lib/sentdm/models/account_profile.rb +86 -0
- data/lib/sentdm/models/account_rcs_channel.rb +26 -0
- data/lib/sentdm/models/account_sms_channel.rb +26 -0
- data/lib/sentdm/models/account_whatsapp_channel.rb +35 -0
- data/lib/sentdm/models/api_response_of_account.rb +48 -0
- data/lib/sentdm/models/api_response_of_cancelled_message.rb +43 -0
- data/lib/sentdm/models/api_response_of_channels_state.rb +48 -0
- data/lib/sentdm/models/api_response_of_compliance_requirements.rb +47 -0
- data/lib/sentdm/models/api_response_of_contacts_list.rb +42 -0
- data/lib/sentdm/models/api_response_of_message.rb +51 -0
- data/lib/sentdm/models/api_response_of_message_activities.rb +43 -0
- data/lib/sentdm/models/api_response_of_number_lookup_result.rb +43 -0
- data/lib/sentdm/models/api_response_of_profile_completion_accepted.rb +47 -0
- data/lib/sentdm/models/api_response_of_profile_completion_result.rb +47 -0
- data/lib/sentdm/models/api_response_of_profiles_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_sender_profile.rb +54 -0
- data/lib/sentdm/models/api_response_of_sender_profiles_list.rb +42 -0
- data/lib/sentdm/models/api_response_of_templates_list.rb +42 -0
- data/lib/sentdm/models/api_response_of_users_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_webhook_event_types_list.rb +43 -0
- data/lib/sentdm/models/api_response_of_webhook_events_list.rb +42 -0
- data/lib/sentdm/models/{webhook_rotate_secret_response.rb → api_response_of_webhook_secret.rb} +4 -17
- data/lib/sentdm/models/{webhook_test_response.rb → api_response_of_webhook_test.rb} +4 -23
- data/lib/sentdm/models/api_response_of_webhooks_list.rb +42 -0
- data/lib/sentdm/models/billing_contact.rb +35 -0
- data/lib/sentdm/models/brand_business.rb +96 -0
- data/lib/sentdm/models/brand_business_info.rb +3 -20
- data/lib/sentdm/models/brand_compliance.rb +75 -0
- data/lib/sentdm/models/brand_contact.rb +56 -0
- data/lib/sentdm/models/brand_with_kyc.rb +129 -0
- data/lib/sentdm/models/cancelled_message.rb +28 -0
- data/lib/sentdm/models/channel_event_payload.rb +3 -114
- data/lib/sentdm/models/channel_list_params.rb +20 -0
- data/lib/sentdm/models/channel_score.rb +35 -0
- data/lib/sentdm/models/channels/api_response_of_list_of_sms_market.rb +45 -0
- data/lib/sentdm/models/channels/api_response_of_rcs_agent.rb +60 -0
- data/lib/sentdm/models/channels/api_response_of_sms_market.rb +54 -0
- data/lib/sentdm/models/channels/api_response_of_whatsapp_channel.rb +47 -0
- data/lib/sentdm/models/channels/market_compliance.rb +409 -0
- data/lib/sentdm/models/channels/rc_create_params.rb +260 -0
- data/lib/sentdm/models/channels/rcs_address.rb +43 -0
- data/lib/sentdm/models/channels/rcs_agent.rb +278 -0
- data/lib/sentdm/models/channels/sms_create_params.rb +173 -0
- data/lib/sentdm/models/channels/sms_list_params.rb +22 -0
- data/lib/sentdm/models/channels/sms_market.rb +148 -0
- data/lib/sentdm/models/channels/sms_number.rb +52 -0
- data/lib/sentdm/models/channels/sms_number_request.rb +33 -0
- data/lib/sentdm/models/channels/sms_retrieve_params.rb +34 -0
- data/lib/sentdm/models/channels/sms_update_params.rb +64 -0
- data/lib/sentdm/models/channels/supplied_campaign.rb +10 -0
- data/lib/sentdm/models/channels/supplied_compliance.rb +115 -0
- data/lib/sentdm/models/channels/supplied_document.rb +35 -0
- data/lib/sentdm/models/channels/whatsapp_channel.rb +109 -0
- data/lib/sentdm/models/channels/whatsapp_create_params.rb +65 -0
- data/lib/sentdm/models/channels_state.rb +89 -0
- data/lib/sentdm/models/compliance_attachment_template.rb +36 -0
- data/lib/sentdm/models/compliance_requirement.rb +112 -0
- data/lib/sentdm/models/compliance_requirements.rb +98 -0
- data/lib/sentdm/models/compliance_retrieve_requirements_params.rb +52 -0
- data/lib/sentdm/models/compliance_setup_step.rb +78 -0
- data/lib/sentdm/models/contact_message_summary.rb +3 -34
- data/lib/sentdm/models/contacts_list.rb +26 -0
- data/lib/sentdm/models/conversation_messages_list.rb +3 -430
- data/lib/sentdm/models/entity_type.rb +18 -0
- data/lib/sentdm/models/inbound_media.rb +53 -0
- data/lib/sentdm/models/inbound_message_event_payload.rb +3 -53
- data/lib/sentdm/models/link_event.rb +79 -0
- data/lib/sentdm/models/link_event_payload.rb +211 -0
- data/lib/sentdm/models/message.rb +168 -0
- data/lib/sentdm/models/message_activities.rb +34 -0
- data/lib/sentdm/models/message_activity.rb +105 -0
- data/lib/sentdm/models/message_body.rb +79 -0
- data/lib/sentdm/models/message_button.rb +33 -0
- data/lib/sentdm/models/message_cancel_params.rb +32 -0
- data/lib/sentdm/models/message_channel_options.rb +43 -0
- data/lib/sentdm/models/message_header_media.rb +31 -0
- data/lib/sentdm/models/message_media.rb +74 -0
- data/lib/sentdm/models/message_recipient.rb +46 -0
- data/lib/sentdm/models/message_send_params.rb +6 -90
- data/lib/sentdm/models/message_send_response.rb +3 -95
- data/lib/sentdm/models/message_send_result.rb +55 -0
- data/lib/sentdm/models/message_status_event.rb +54 -0
- data/lib/sentdm/models/mms_market.rb +48 -0
- data/lib/sentdm/models/number_lookup_result.rb +63 -0
- data/lib/sentdm/models/pagination_cursors.rb +27 -0
- data/lib/sentdm/models/pagination_meta.rb +3 -27
- data/lib/sentdm/models/profile_completion_accepted.rb +20 -0
- data/lib/sentdm/models/profile_completion_result.rb +31 -0
- data/lib/sentdm/models/profile_detail.rb +6 -408
- data/lib/sentdm/models/profiles/brand_campaign.rb +14 -16
- data/lib/sentdm/models/profiles_list.rb +26 -0
- data/lib/sentdm/models/sender_profile.rb +138 -0
- data/lib/sentdm/models/sender_profile_billing.rb +21 -0
- data/lib/sentdm/models/sender_profile_billing_request.rb +33 -0
- data/lib/sentdm/models/sender_profile_channels.rb +90 -0
- data/lib/sentdm/models/sender_profile_create_params.rb +116 -0
- data/lib/sentdm/models/sender_profile_delete_params.rb +20 -0
- data/lib/sentdm/models/sender_profile_list_params.rb +30 -0
- data/lib/sentdm/models/sender_profile_rcs.rb +209 -0
- data/lib/sentdm/models/sender_profile_retrieve_params.rb +20 -0
- data/lib/sentdm/models/sender_profile_sms.rb +106 -0
- data/lib/sentdm/models/sender_profile_update_params.rb +71 -0
- data/lib/sentdm/models/sender_profile_whatsapp.rb +61 -0
- data/lib/sentdm/models/sender_profiles_list.rb +26 -0
- data/lib/sentdm/models/tcr_brand_identity_status.rb +17 -0
- data/lib/sentdm/models/tcr_brand_status.rb +16 -0
- data/lib/sentdm/models/tcr_campaign_status.rb +16 -0
- data/lib/sentdm/models/template_body.rb +3 -70
- data/lib/sentdm/models/template_header.rb +3 -37
- data/lib/sentdm/models/template_header_location.rb +38 -0
- data/lib/sentdm/models/template_media_item.rb +34 -0
- data/lib/sentdm/models/template_mms_body_content.rb +49 -0
- data/lib/sentdm/models/template_ref.rb +51 -0
- data/lib/sentdm/models/template_variable.rb +3 -64
- data/lib/sentdm/models/template_variable_props.rb +65 -0
- data/lib/sentdm/models/templates_list.rb +26 -0
- data/lib/sentdm/models/users_list.rb +26 -0
- data/lib/sentdm/models/voice/call.rb +7 -57
- data/lib/sentdm/models/voice/call_leg.rb +58 -0
- data/lib/sentdm/models/webhook_create_params.rb +3 -25
- data/lib/sentdm/models/webhook_delivery.rb +160 -0
- data/lib/sentdm/models/webhook_event_types_list.rb +26 -0
- data/lib/sentdm/models/webhook_events_list.rb +26 -0
- data/lib/sentdm/models/webhook_response.rb +3 -28
- data/lib/sentdm/models/webhook_secret.rb +15 -0
- data/lib/sentdm/models/webhook_sender_profile.rb +29 -0
- data/lib/sentdm/models/webhook_sender_profile_config.rb +27 -0
- data/lib/sentdm/models/webhook_test.rb +21 -0
- data/lib/sentdm/models/webhook_update_params.rb +3 -25
- data/lib/sentdm/models/webhooks_list.rb +26 -0
- data/lib/sentdm/models.rb +188 -0
- data/lib/sentdm/resources/channels/rcs.rb +177 -0
- data/lib/sentdm/resources/channels/sms.rb +420 -0
- data/lib/sentdm/resources/channels/whatsapp.rb +106 -0
- data/lib/sentdm/resources/channels.rb +162 -0
- data/lib/sentdm/resources/compliance.rb +127 -0
- data/lib/sentdm/resources/conversations.rb +4 -4
- data/lib/sentdm/resources/me.rb +2 -2
- data/lib/sentdm/resources/messages.rb +71 -6
- data/lib/sentdm/resources/numbers.rb +2 -2
- data/lib/sentdm/resources/profiles/campaigns.rb +4 -1
- data/lib/sentdm/resources/profiles.rb +4 -4
- data/lib/sentdm/resources/sender_profiles.rb +465 -0
- data/lib/sentdm/resources/users.rb +2 -2
- data/lib/sentdm/resources/voice/calls/participants.rb +5 -5
- data/lib/sentdm/resources/webhooks.rb +10 -10
- data/lib/sentdm/version.rb +1 -1
- data/lib/sentdm.rb +121 -11
- data/rbi/sentdm/client.rbi +64 -0
- data/rbi/sentdm/internal/sender_profiles_page.rbi +122 -0
- data/rbi/sentdm/models/account.rbi +242 -0
- data/rbi/sentdm/models/account_channels.rbi +66 -0
- data/rbi/sentdm/models/account_profile.rbi +116 -0
- data/rbi/sentdm/models/account_rcs_channel.rbi +45 -0
- data/rbi/sentdm/models/account_sms_channel.rbi +45 -0
- data/rbi/sentdm/models/account_whatsapp_channel.rbi +58 -0
- data/rbi/sentdm/models/api_response_of_account.rbi +78 -0
- data/rbi/sentdm/models/{webhook_rotate_secret_response.rbi → api_response_of_cancelled_message.rbi} +6 -41
- data/rbi/sentdm/models/api_response_of_channels_state.rbi +78 -0
- data/rbi/sentdm/models/api_response_of_compliance_requirements.rbi +81 -0
- data/rbi/sentdm/models/api_response_of_contacts_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_message.rbi +84 -0
- data/rbi/sentdm/models/api_response_of_message_activities.rbi +77 -0
- data/rbi/sentdm/models/{webhook_test_response.rbi → api_response_of_number_lookup_result.rbi} +9 -43
- data/rbi/sentdm/models/api_response_of_profile_completion_accepted.rbi +83 -0
- data/rbi/sentdm/models/{profile_complete_response.rbi → api_response_of_profile_completion_result.rbi} +6 -52
- data/rbi/sentdm/models/api_response_of_profiles_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_sender_profile.rbi +90 -0
- data/rbi/sentdm/models/api_response_of_sender_profiles_list.rbi +77 -0
- data/rbi/sentdm/models/api_response_of_templates_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_users_list.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_webhook_event_types_list.rbi +79 -0
- data/rbi/sentdm/models/api_response_of_webhook_events_list.rbi +77 -0
- data/rbi/sentdm/models/api_response_of_webhook_secret.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_webhook_test.rbi +74 -0
- data/rbi/sentdm/models/api_response_of_webhooks_list.rbi +74 -0
- data/rbi/sentdm/models/billing_contact.rbi +49 -0
- data/rbi/sentdm/models/brand_business.rbi +115 -0
- data/rbi/sentdm/models/brand_business_info.rbi +3 -49
- data/rbi/sentdm/models/brand_compliance.rbi +108 -0
- data/rbi/sentdm/models/brand_contact.rbi +78 -0
- data/rbi/sentdm/models/brand_with_kyc.rbi +167 -0
- data/rbi/sentdm/models/cancelled_message.rbi +37 -0
- data/rbi/sentdm/models/channel_event_payload.rbi +4 -204
- data/rbi/sentdm/models/channel_list_params.rbi +38 -0
- data/rbi/sentdm/models/channel_score.rbi +56 -0
- data/rbi/sentdm/models/channels/api_response_of_list_of_sms_market.rbi +76 -0
- data/rbi/sentdm/models/channels/api_response_of_rcs_agent.rbi +103 -0
- data/rbi/sentdm/models/channels/api_response_of_sms_market.rbi +93 -0
- data/rbi/sentdm/models/channels/api_response_of_whatsapp_channel.rbi +85 -0
- data/rbi/sentdm/models/channels/market_compliance.rbi +770 -0
- data/rbi/sentdm/models/channels/rc_create_params.rbi +397 -0
- data/rbi/sentdm/models/channels/rcs_address.rbi +62 -0
- data/rbi/sentdm/models/channels/rcs_agent.rbi +320 -0
- data/rbi/sentdm/models/channels/sms_create_params.rbi +291 -0
- data/rbi/sentdm/models/channels/sms_list_params.rbi +40 -0
- data/rbi/sentdm/models/channels/sms_market.rbi +235 -0
- data/rbi/sentdm/models/channels/sms_number.rbi +74 -0
- data/rbi/sentdm/models/channels/sms_number_request.rbi +48 -0
- data/rbi/sentdm/models/channels/sms_retrieve_params.rbi +56 -0
- data/rbi/sentdm/models/channels/sms_update_params.rbi +93 -0
- data/rbi/sentdm/models/channels/supplied_campaign.rbi +13 -0
- data/rbi/sentdm/models/channels/supplied_compliance.rbi +180 -0
- data/rbi/sentdm/models/channels/supplied_document.rbi +57 -0
- data/rbi/sentdm/models/channels/whatsapp_channel.rbi +172 -0
- data/rbi/sentdm/models/channels/whatsapp_create_params.rbi +104 -0
- data/rbi/sentdm/models/channels_state.rbi +151 -0
- data/rbi/sentdm/models/compliance_attachment_template.rbi +56 -0
- data/rbi/sentdm/models/compliance_requirement.rbi +149 -0
- data/rbi/sentdm/models/compliance_requirements.rbi +165 -0
- data/rbi/sentdm/models/compliance_retrieve_requirements_params.rbi +79 -0
- data/rbi/sentdm/models/compliance_setup_step.rbi +115 -0
- data/rbi/sentdm/models/contact_message_summary.rbi +4 -69
- data/rbi/sentdm/models/contacts_list.rbi +50 -0
- data/rbi/sentdm/models/conversation_messages_list.rbi +4 -669
- data/rbi/sentdm/models/entity_type.rbi +23 -0
- data/rbi/sentdm/models/inbound_media.rbi +76 -0
- data/rbi/sentdm/models/inbound_message_event_payload.rbi +3 -85
- data/rbi/sentdm/models/link_event.rbi +128 -0
- data/rbi/sentdm/models/link_event_payload.rbi +279 -0
- data/rbi/sentdm/models/message.rbi +214 -0
- data/rbi/sentdm/models/message_activities.rbi +63 -0
- data/rbi/sentdm/models/message_activity.rbi +145 -0
- data/rbi/sentdm/models/message_body.rbi +104 -0
- data/rbi/sentdm/models/message_button.rbi +52 -0
- data/rbi/sentdm/models/message_cancel_params.rbi +59 -0
- data/rbi/sentdm/models/message_channel_options.rbi +65 -0
- data/rbi/sentdm/models/message_header_media.rbi +44 -0
- data/rbi/sentdm/models/message_media.rbi +95 -0
- data/rbi/sentdm/models/message_recipient.rbi +70 -0
- data/rbi/sentdm/models/message_send_params.rbi +7 -155
- data/rbi/sentdm/models/message_send_response.rbi +4 -163
- data/rbi/sentdm/models/message_send_result.rbi +85 -0
- data/rbi/sentdm/models/message_status_event.rbi +70 -0
- data/rbi/sentdm/models/mms_market.rbi +66 -0
- data/rbi/sentdm/models/number_lookup_result.rbi +89 -0
- data/rbi/sentdm/models/pagination_cursors.rbi +42 -0
- data/rbi/sentdm/models/pagination_meta.rbi +4 -43
- data/rbi/sentdm/models/profile_completion_accepted.rbi +33 -0
- data/rbi/sentdm/models/profile_completion_result.rbi +43 -0
- data/rbi/sentdm/models/profile_detail.rbi +8 -621
- data/rbi/sentdm/models/profiles/brand_campaign.rbi +18 -45
- data/rbi/sentdm/models/profiles_list.rbi +50 -0
- data/rbi/sentdm/models/sender_profile.rbi +204 -0
- data/rbi/sentdm/models/sender_profile_billing.rbi +34 -0
- data/rbi/sentdm/models/sender_profile_billing_request.rbi +46 -0
- data/rbi/sentdm/models/sender_profile_channels.rbi +163 -0
- data/rbi/sentdm/models/sender_profile_create_params.rbi +190 -0
- data/rbi/sentdm/models/sender_profile_delete_params.rbi +35 -0
- data/rbi/sentdm/models/sender_profile_list_params.rbi +57 -0
- data/rbi/sentdm/models/sender_profile_rcs.rbi +211 -0
- data/rbi/sentdm/models/sender_profile_retrieve_params.rbi +35 -0
- data/rbi/sentdm/models/sender_profile_sms.rbi +156 -0
- data/rbi/sentdm/models/sender_profile_update_params.rbi +96 -0
- data/rbi/sentdm/models/sender_profile_whatsapp.rbi +83 -0
- data/rbi/sentdm/models/sender_profiles_list.rbi +54 -0
- data/rbi/sentdm/models/tcr_brand_identity_status.rbi +27 -0
- data/rbi/sentdm/models/tcr_brand_status.rbi +20 -0
- data/rbi/sentdm/models/tcr_campaign_status.rbi +23 -0
- data/rbi/sentdm/models/template_body.rbi +6 -114
- data/rbi/sentdm/models/template_header.rbi +4 -53
- data/rbi/sentdm/models/template_header_location.rbi +47 -0
- data/rbi/sentdm/models/template_media_item.rbi +51 -0
- data/rbi/sentdm/models/template_mms_body_content.rbi +73 -0
- data/rbi/sentdm/models/template_ref.rbi +79 -0
- data/rbi/sentdm/models/template_variable.rbi +4 -80
- data/rbi/sentdm/models/template_variable_props.rbi +81 -0
- data/rbi/sentdm/models/templates_list.rbi +50 -0
- data/rbi/sentdm/models/users_list.rbi +50 -0
- data/rbi/sentdm/models/voice/call.rbi +11 -92
- data/rbi/sentdm/models/voice/call_leg.rbi +90 -0
- data/rbi/sentdm/models/webhook_create_params.rbi +4 -49
- data/rbi/sentdm/models/webhook_delivery.rbi +211 -0
- data/rbi/sentdm/models/webhook_event_types_list.rbi +54 -0
- data/rbi/sentdm/models/webhook_events_list.rbi +52 -0
- data/rbi/sentdm/models/webhook_response.rbi +4 -50
- data/rbi/sentdm/models/webhook_secret.rbi +24 -0
- data/rbi/sentdm/models/webhook_sender_profile.rbi +46 -0
- data/rbi/sentdm/models/webhook_sender_profile_config.rbi +44 -0
- data/rbi/sentdm/models/webhook_test.rbi +32 -0
- data/rbi/sentdm/models/webhook_update_params.rbi +4 -49
- data/rbi/sentdm/models/webhooks_list.rbi +50 -0
- data/rbi/sentdm/models.rbi +197 -0
- data/rbi/sentdm/resources/channels/rcs.rbi +208 -0
- data/rbi/sentdm/resources/channels/sms.rbi +440 -0
- data/rbi/sentdm/resources/channels/whatsapp.rbi +108 -0
- data/rbi/sentdm/resources/channels.rbi +149 -0
- data/rbi/sentdm/resources/compliance.rbi +121 -0
- data/rbi/sentdm/resources/conversations.rbi +2 -10
- data/rbi/sentdm/resources/me.rbi +1 -1
- data/rbi/sentdm/resources/messages.rbi +64 -7
- data/rbi/sentdm/resources/numbers.rbi +1 -1
- data/rbi/sentdm/resources/profiles/campaigns.rbi +4 -1
- data/rbi/sentdm/resources/profiles.rbi +2 -2
- data/rbi/sentdm/resources/sender_profiles.rbi +463 -0
- data/rbi/sentdm/resources/users.rbi +1 -1
- data/rbi/sentdm/resources/voice/calls/participants.rbi +5 -5
- data/rbi/sentdm/resources/webhooks.rbi +6 -12
- data/sig/sentdm/client.rbs +4 -0
- data/sig/sentdm/internal/sender_profiles_page.rbs +80 -0
- data/sig/sentdm/models/account.rbs +111 -0
- data/sig/sentdm/models/account_channels.rbs +38 -0
- data/sig/sentdm/models/account_profile.rbs +68 -0
- data/sig/sentdm/models/account_rcs_channel.rbs +17 -0
- data/sig/sentdm/models/account_sms_channel.rbs +17 -0
- data/sig/sentdm/models/account_whatsapp_channel.rbs +28 -0
- data/sig/sentdm/models/api_response_of_account.rbs +39 -0
- data/sig/sentdm/models/api_response_of_cancelled_message.rbs +39 -0
- data/sig/sentdm/models/api_response_of_channels_state.rbs +39 -0
- data/sig/sentdm/models/api_response_of_compliance_requirements.rbs +39 -0
- data/sig/sentdm/models/api_response_of_contacts_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_message.rbs +39 -0
- data/sig/sentdm/models/api_response_of_message_activities.rbs +39 -0
- data/sig/sentdm/models/api_response_of_number_lookup_result.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profile_completion_accepted.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profile_completion_result.rbs +39 -0
- data/sig/sentdm/models/api_response_of_profiles_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_sender_profile.rbs +39 -0
- data/sig/sentdm/models/api_response_of_sender_profiles_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_templates_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_users_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_event_types_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_events_list.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_secret.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhook_test.rbs +39 -0
- data/sig/sentdm/models/api_response_of_webhooks_list.rbs +39 -0
- data/sig/sentdm/models/billing_contact.rbs +30 -0
- data/sig/sentdm/models/brand_business.rbs +70 -0
- data/sig/sentdm/models/brand_business_info.rbs +4 -23
- data/sig/sentdm/models/brand_compliance.rbs +56 -0
- data/sig/sentdm/models/brand_contact.rbs +47 -0
- data/sig/sentdm/models/brand_with_kyc.rbs +93 -0
- data/sig/sentdm/models/cancelled_message.rbs +15 -0
- data/sig/sentdm/models/channel_event_payload.rbs +4 -56
- data/sig/sentdm/models/channel_list_params.rbs +25 -0
- data/sig/sentdm/models/channel_score.rbs +32 -0
- data/sig/sentdm/models/channels/api_response_of_list_of_sms_market.rbs +41 -0
- data/sig/sentdm/models/channels/api_response_of_rcs_agent.rbs +41 -0
- data/sig/sentdm/models/channels/api_response_of_sms_market.rbs +41 -0
- data/sig/sentdm/models/channels/api_response_of_whatsapp_channel.rbs +43 -0
- data/sig/sentdm/models/channels/market_compliance.rbs +338 -0
- data/sig/sentdm/models/channels/rc_create_params.rbs +242 -0
- data/sig/sentdm/models/channels/rcs_address.rbs +42 -0
- data/sig/sentdm/models/channels/rcs_agent.rbs +181 -0
- data/sig/sentdm/models/channels/sms_create_params.rbs +116 -0
- data/sig/sentdm/models/channels/sms_list_params.rbs +27 -0
- data/sig/sentdm/models/channels/sms_market.rbs +80 -0
- data/sig/sentdm/models/channels/sms_number.rbs +37 -0
- data/sig/sentdm/models/channels/sms_number_request.rbs +17 -0
- data/sig/sentdm/models/channels/sms_retrieve_params.rbs +36 -0
- data/sig/sentdm/models/channels/sms_update_params.rbs +63 -0
- data/sig/sentdm/models/channels/supplied_campaign.rbs +9 -0
- data/sig/sentdm/models/channels/supplied_compliance.rbs +37 -0
- data/sig/sentdm/models/channels/supplied_document.rbs +30 -0
- data/sig/sentdm/models/channels/whatsapp_channel.rbs +78 -0
- data/sig/sentdm/models/channels/whatsapp_create_params.rbs +56 -0
- data/sig/sentdm/models/channels_state.rbs +55 -0
- data/sig/sentdm/models/compliance_attachment_template.rbs +26 -0
- data/sig/sentdm/models/compliance_requirement.rbs +76 -0
- data/sig/sentdm/models/compliance_requirements.rbs +66 -0
- data/sig/sentdm/models/compliance_retrieve_requirements_params.rbs +43 -0
- data/sig/sentdm/models/compliance_setup_step.rbs +62 -0
- data/sig/sentdm/models/contact_message_summary.rbs +6 -35
- data/sig/sentdm/models/contacts_list.rbs +31 -0
- data/sig/sentdm/models/conversation_messages_list.rbs +5 -312
- data/sig/sentdm/models/entity_type.rbs +22 -0
- data/sig/sentdm/models/inbound_media.rbs +35 -0
- data/sig/sentdm/models/inbound_message_event_payload.rbs +4 -36
- data/sig/sentdm/models/link_event.rbs +44 -0
- data/sig/sentdm/models/link_event_payload.rbs +106 -0
- data/sig/sentdm/models/message.rbs +130 -0
- data/sig/sentdm/models/message_activities.rbs +38 -0
- data/sig/sentdm/models/message_activity.rbs +66 -0
- data/sig/sentdm/models/message_body.rbs +52 -0
- data/sig/sentdm/models/message_button.rbs +34 -0
- data/sig/sentdm/models/message_cancel_params.rbs +38 -0
- data/sig/sentdm/models/message_channel_options.rbs +26 -0
- data/sig/sentdm/models/message_header_media.rbs +19 -0
- data/sig/sentdm/models/message_media.rbs +40 -0
- data/sig/sentdm/models/message_recipient.rbs +34 -0
- data/sig/sentdm/models/message_send_params.rbs +8 -54
- data/sig/sentdm/models/message_send_response.rbs +4 -77
- data/sig/sentdm/models/message_send_result.rbs +45 -0
- data/sig/sentdm/models/message_status_event.rbs +40 -0
- data/sig/sentdm/models/mms_market.rbs +35 -0
- data/sig/sentdm/models/number_lookup_result.rbs +64 -0
- data/sig/sentdm/models/pagination_cursors.rbs +15 -0
- data/sig/sentdm/models/pagination_meta.rbs +4 -16
- data/sig/sentdm/models/profile_completion_accepted.rbs +15 -0
- data/sig/sentdm/models/profile_completion_result.rbs +19 -0
- data/sig/sentdm/models/profile_detail.rbs +8 -315
- data/sig/sentdm/models/profiles/brand_campaign.rbs +11 -16
- data/sig/sentdm/models/profiles_list.rbs +31 -0
- data/sig/sentdm/models/sender_profile.rbs +76 -0
- data/sig/sentdm/models/sender_profile_billing.rbs +15 -0
- data/sig/sentdm/models/sender_profile_billing_request.rbs +15 -0
- data/sig/sentdm/models/sender_profile_channels.rbs +30 -0
- data/sig/sentdm/models/sender_profile_create_params.rbs +78 -0
- data/sig/sentdm/models/sender_profile_delete_params.rbs +20 -0
- data/sig/sentdm/models/sender_profile_list_params.rbs +32 -0
- data/sig/sentdm/models/sender_profile_rcs.rbs +150 -0
- data/sig/sentdm/models/sender_profile_retrieve_params.rbs +20 -0
- data/sig/sentdm/models/sender_profile_sms.rbs +40 -0
- data/sig/sentdm/models/sender_profile_update_params.rbs +62 -0
- data/sig/sentdm/models/sender_profile_whatsapp.rbs +16 -0
- data/sig/sentdm/models/sender_profiles_list.rbs +31 -0
- data/sig/sentdm/models/tcr_brand_identity_status.rbs +17 -0
- data/sig/sentdm/models/tcr_brand_status.rbs +15 -0
- data/sig/sentdm/models/tcr_campaign_status.rbs +15 -0
- data/sig/sentdm/models/template_body.rbs +4 -43
- data/sig/sentdm/models/template_header.rbs +4 -31
- data/sig/sentdm/models/template_header_location.rbs +30 -0
- data/sig/sentdm/models/template_media_item.rbs +17 -0
- data/sig/sentdm/models/template_mms_body_content.rbs +28 -0
- data/sig/sentdm/models/template_ref.rbs +26 -0
- data/sig/sentdm/models/template_variable.rbs +4 -51
- data/sig/sentdm/models/template_variable_props.rbs +50 -0
- data/sig/sentdm/models/templates_list.rbs +29 -0
- data/sig/sentdm/models/users_list.rbs +31 -0
- data/sig/sentdm/models/voice/call.rbs +4 -49
- data/sig/sentdm/models/voice/call_leg.rbs +50 -0
- data/sig/sentdm/models/webhook_create_params.rbs +4 -28
- data/sig/sentdm/models/webhook_delivery.rbs +99 -0
- data/sig/sentdm/models/webhook_event_types_list.rbs +31 -0
- data/sig/sentdm/models/webhook_events_list.rbs +31 -0
- data/sig/sentdm/models/webhook_response.rbs +4 -28
- data/sig/sentdm/models/webhook_secret.rbs +15 -0
- data/sig/sentdm/models/webhook_sender_profile.rbs +27 -0
- data/sig/sentdm/models/webhook_sender_profile_config.rbs +27 -0
- data/sig/sentdm/models/webhook_test.rbs +19 -0
- data/sig/sentdm/models/webhook_update_params.rbs +4 -28
- data/sig/sentdm/models/webhooks_list.rbs +31 -0
- data/sig/sentdm/models.rbs +188 -0
- data/sig/sentdm/resources/channels/rcs.rbs +41 -0
- data/sig/sentdm/resources/channels/sms.rbs +44 -0
- data/sig/sentdm/resources/channels/whatsapp.rbs +18 -0
- data/sig/sentdm/resources/channels.rbs +11 -0
- data/sig/sentdm/resources/compliance.rbs +15 -0
- data/sig/sentdm/resources/conversations.rbs +2 -2
- data/sig/sentdm/resources/me.rbs +1 -1
- data/sig/sentdm/resources/messages.rbs +12 -4
- data/sig/sentdm/resources/numbers.rbs +1 -1
- data/sig/sentdm/resources/profiles.rbs +2 -2
- data/sig/sentdm/resources/sender_profiles.rbs +44 -0
- data/sig/sentdm/resources/users.rbs +1 -1
- data/sig/sentdm/resources/webhooks.rbs +6 -6
- metadata +365 -35
- data/lib/sentdm/models/me_retrieve_response.rb +0 -409
- data/lib/sentdm/models/message_retrieve_activities_response.rb +0 -175
- data/lib/sentdm/models/message_retrieve_status_response.rb +0 -477
- data/lib/sentdm/models/number_lookup_response.rb +0 -104
- data/lib/sentdm/models/profile_complete_response.rb +0 -74
- data/lib/sentdm/models/profile_list_response.rb +0 -65
- data/lib/sentdm/models/user_list_response.rb +0 -65
- data/lib/sentdm/models/webhook_list_event_types_response.rb +0 -65
- data/lib/sentdm/models/webhook_list_events_response.rb +0 -445
- data/rbi/sentdm/models/me_retrieve_response.rbi +0 -705
- data/rbi/sentdm/models/message_retrieve_activities_response.rbi +0 -319
- data/rbi/sentdm/models/message_retrieve_status_response.rbi +0 -765
- data/rbi/sentdm/models/number_lookup_response.rbi +0 -166
- data/rbi/sentdm/models/profile_list_response.rbi +0 -128
- data/rbi/sentdm/models/user_list_response.rbi +0 -128
- data/rbi/sentdm/models/webhook_list_event_types_response.rbi +0 -142
- data/rbi/sentdm/models/webhook_list_events_response.rbi +0 -647
- data/sig/sentdm/models/me_retrieve_response.rbs +0 -306
- data/sig/sentdm/models/message_retrieve_activities_response.rbs +0 -137
- data/sig/sentdm/models/message_retrieve_status_response.rbs +0 -341
- data/sig/sentdm/models/number_lookup_response.rbs +0 -100
- data/sig/sentdm/models/profile_complete_response.rbs +0 -55
- data/sig/sentdm/models/profile_list_response.rbs +0 -67
- data/sig/sentdm/models/user_list_response.rbs +0 -67
- data/sig/sentdm/models/webhook_list_event_types_response.rbs +0 -67
- data/sig/sentdm/models/webhook_list_events_response.rbs +0 -243
- data/sig/sentdm/models/webhook_rotate_secret_response.rbs +0 -51
- data/sig/sentdm/models/webhook_test_response.rbs +0 -55
|
@@ -0,0 +1,770 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Sentdm
|
|
4
|
+
module Models
|
|
5
|
+
module Channels
|
|
6
|
+
class MarketCompliance < Sentdm::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(Sentdm::Channels::MarketCompliance, Sentdm::Internal::AnyHash)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Business identity. The identity the registration is filed against. Omit to have
|
|
13
|
+
# none; { "inherit": true } to register under your organization's.
|
|
14
|
+
sig { returns(T.nilable(Sentdm::Channels::MarketCompliance::Brand)) }
|
|
15
|
+
attr_reader :brand
|
|
16
|
+
|
|
17
|
+
sig do
|
|
18
|
+
params(brand: Sentdm::Channels::MarketCompliance::Brand::OrHash).void
|
|
19
|
+
end
|
|
20
|
+
attr_writer :brand
|
|
21
|
+
|
|
22
|
+
# Messaging campaign. What the programme sends and how recipients consented. Omit
|
|
23
|
+
# to run on your organization's; supplying it takes one of your own. { "inherit":
|
|
24
|
+
# true } says so outright. Required when `compliance.campaign.inherit != true`.
|
|
25
|
+
sig { returns(T.nilable(Sentdm::Channels::MarketCompliance::Campaign)) }
|
|
26
|
+
attr_reader :campaign
|
|
27
|
+
|
|
28
|
+
sig do
|
|
29
|
+
params(
|
|
30
|
+
campaign: Sentdm::Channels::MarketCompliance::Campaign::OrHash
|
|
31
|
+
).void
|
|
32
|
+
end
|
|
33
|
+
attr_writer :campaign
|
|
34
|
+
|
|
35
|
+
# The compliance values a market registers with. `brand` and `campaign` apply to
|
|
36
|
+
# US `TEN_DLC`; other markets fill this map with the document keys their own
|
|
37
|
+
# requirements name.
|
|
38
|
+
sig do
|
|
39
|
+
params(
|
|
40
|
+
brand: Sentdm::Channels::MarketCompliance::Brand::OrHash,
|
|
41
|
+
campaign: Sentdm::Channels::MarketCompliance::Campaign::OrHash
|
|
42
|
+
).returns(T.attached_class)
|
|
43
|
+
end
|
|
44
|
+
def self.new(
|
|
45
|
+
# Business identity. The identity the registration is filed against. Omit to have
|
|
46
|
+
# none; { "inherit": true } to register under your organization's.
|
|
47
|
+
brand: nil,
|
|
48
|
+
# Messaging campaign. What the programme sends and how recipients consented. Omit
|
|
49
|
+
# to run on your organization's; supplying it takes one of your own. { "inherit":
|
|
50
|
+
# true } says so outright. Required when `compliance.campaign.inherit != true`.
|
|
51
|
+
campaign: nil
|
|
52
|
+
)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
sig do
|
|
56
|
+
override.returns(
|
|
57
|
+
{
|
|
58
|
+
brand: Sentdm::Channels::MarketCompliance::Brand,
|
|
59
|
+
campaign: Sentdm::Channels::MarketCompliance::Campaign
|
|
60
|
+
}
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
def to_hash
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
class Brand < Sentdm::Internal::Type::BaseModel
|
|
67
|
+
OrHash =
|
|
68
|
+
T.type_alias do
|
|
69
|
+
T.any(
|
|
70
|
+
Sentdm::Channels::MarketCompliance::Brand,
|
|
71
|
+
Sentdm::Internal::AnyHash
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# Public-facing name. TCR displayName — the name recipients would recognise. Named
|
|
76
|
+
# for what it holds rather than for TCR's field, which is why it is not
|
|
77
|
+
# `display_name`. Required when `compliance.brand.inherit != true`.
|
|
78
|
+
sig { returns(T.nilable(String)) }
|
|
79
|
+
attr_reader :business_name
|
|
80
|
+
|
|
81
|
+
sig { params(business_name: String).void }
|
|
82
|
+
attr_writer :business_name
|
|
83
|
+
|
|
84
|
+
# City. Required when `compliance.brand.inherit != true`.
|
|
85
|
+
sig { returns(T.nilable(String)) }
|
|
86
|
+
attr_reader :city
|
|
87
|
+
|
|
88
|
+
sig { params(city: String).void }
|
|
89
|
+
attr_writer :city
|
|
90
|
+
|
|
91
|
+
# Contact email. TCR email. Required when `compliance.brand.inherit != true`.
|
|
92
|
+
sig { returns(T.nilable(String)) }
|
|
93
|
+
attr_reader :contact_email
|
|
94
|
+
|
|
95
|
+
sig { params(contact_email: String).void }
|
|
96
|
+
attr_writer :contact_email
|
|
97
|
+
|
|
98
|
+
# Responsible contact. Split into TCR's firstName/lastName on submission.
|
|
99
|
+
# BrandService refuses a blank one, so a missing name is reported here rather than
|
|
100
|
+
# thrown after the profile was written. Required when
|
|
101
|
+
# `compliance.brand.inherit != true`.
|
|
102
|
+
sig { returns(T.nilable(String)) }
|
|
103
|
+
attr_reader :contact_name
|
|
104
|
+
|
|
105
|
+
sig { params(contact_name: String).void }
|
|
106
|
+
attr_writer :contact_name
|
|
107
|
+
|
|
108
|
+
# Contact phone. TCR sends it as both phone and mobilePhone, so it is asked for
|
|
109
|
+
# once. Named for the contact it belongs to rather than as a bare `phone` on a
|
|
110
|
+
# block that also carries an address. Required when
|
|
111
|
+
# `compliance.brand.inherit != true`.
|
|
112
|
+
sig { returns(T.nilable(String)) }
|
|
113
|
+
attr_reader :contact_phone
|
|
114
|
+
|
|
115
|
+
sig { params(contact_phone: String).void }
|
|
116
|
+
attr_writer :contact_phone
|
|
117
|
+
|
|
118
|
+
# Country of registration. Two letters — US. The country spelled out in full is
|
|
119
|
+
# accepted too and stored as its code, which is what a read answers with and what
|
|
120
|
+
# is filed. Required when `compliance.brand.inherit != true`.
|
|
121
|
+
sig { returns(T.nilable(String)) }
|
|
122
|
+
attr_reader :country
|
|
123
|
+
|
|
124
|
+
sig { params(country: String).void }
|
|
125
|
+
attr_writer :country
|
|
126
|
+
|
|
127
|
+
# Country that issued the tax id. TCR einIssuingCountry — where the tax id was
|
|
128
|
+
# issued, which is not always where the business trades. Defaults to `country`
|
|
129
|
+
# when omitted, which is right for most. Takes the code or the country spelled
|
|
130
|
+
# out, as `country` does.
|
|
131
|
+
sig { returns(T.nilable(String)) }
|
|
132
|
+
attr_reader :ein_issuing_country
|
|
133
|
+
|
|
134
|
+
sig { params(ein_issuing_country: String).void }
|
|
135
|
+
attr_writer :ein_issuing_country
|
|
136
|
+
|
|
137
|
+
# Entity type. TCR entityType. Decides which vetting TCR applies and, for
|
|
138
|
+
# SOLE_PROPRIETOR, fixes the campaign fee regardless of volume. Also refused at
|
|
139
|
+
# submission if absent. Required when `compliance.brand.inherit != true`.
|
|
140
|
+
sig do
|
|
141
|
+
returns(
|
|
142
|
+
T.nilable(
|
|
143
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::OrSymbol
|
|
144
|
+
)
|
|
145
|
+
)
|
|
146
|
+
end
|
|
147
|
+
attr_reader :entity_type
|
|
148
|
+
|
|
149
|
+
sig do
|
|
150
|
+
params(
|
|
151
|
+
entity_type:
|
|
152
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::OrSymbol
|
|
153
|
+
).void
|
|
154
|
+
end
|
|
155
|
+
attr_writer :entity_type
|
|
156
|
+
|
|
157
|
+
# Run on the organization's brand. True to register under the parent
|
|
158
|
+
# organization's identity rather than one of this profile's own; every field below
|
|
159
|
+
# is then neither asked for nor accepted. Omitted, the brand is the organization's
|
|
160
|
+
# unless this block supplies identity fields, which says plainly enough that it
|
|
161
|
+
# wants one of its own.
|
|
162
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
163
|
+
attr_reader :inherit
|
|
164
|
+
|
|
165
|
+
sig { params(inherit: T::Boolean).void }
|
|
166
|
+
attr_writer :inherit
|
|
167
|
+
|
|
168
|
+
# Registered legal name. TCR companyName — the name on the incorporation
|
|
169
|
+
# documents, which is often not the name recipients would recognise. Required when
|
|
170
|
+
# `compliance.brand.inherit != true`.
|
|
171
|
+
sig { returns(T.nilable(String)) }
|
|
172
|
+
attr_reader :legal_name
|
|
173
|
+
|
|
174
|
+
sig { params(legal_name: String).void }
|
|
175
|
+
attr_writer :legal_name
|
|
176
|
+
|
|
177
|
+
# Postal code. Required when `compliance.brand.inherit != true`.
|
|
178
|
+
sig { returns(T.nilable(String)) }
|
|
179
|
+
attr_reader :postal_code
|
|
180
|
+
|
|
181
|
+
sig { params(postal_code: String).void }
|
|
182
|
+
attr_writer :postal_code
|
|
183
|
+
|
|
184
|
+
# State or region. TCR state. Two letters for a US registration. Required when
|
|
185
|
+
# `compliance.brand.inherit != true`.
|
|
186
|
+
sig { returns(T.nilable(String)) }
|
|
187
|
+
attr_reader :state
|
|
188
|
+
|
|
189
|
+
sig { params(state: String).void }
|
|
190
|
+
attr_writer :state
|
|
191
|
+
|
|
192
|
+
# Street address. Required when `compliance.brand.inherit != true`.
|
|
193
|
+
sig { returns(T.nilable(String)) }
|
|
194
|
+
attr_reader :street
|
|
195
|
+
|
|
196
|
+
sig { params(street: String).void }
|
|
197
|
+
attr_writer :street
|
|
198
|
+
|
|
199
|
+
# Tax identifier. TCR ein. TcrBrandSubmissionValidator refuses a submission
|
|
200
|
+
# without one, so it is wanted here rather than discovered at filing time.
|
|
201
|
+
# Required when `compliance.brand.inherit != true`.
|
|
202
|
+
sig { returns(T.nilable(String)) }
|
|
203
|
+
attr_reader :tax_id
|
|
204
|
+
|
|
205
|
+
sig { params(tax_id: String).void }
|
|
206
|
+
attr_writer :tax_id
|
|
207
|
+
|
|
208
|
+
# Kind of tax identifier. Which kind of identifier `tax_id` is, e.g. us_ein.
|
|
209
|
+
# Derived onto the brand form, and not itself sent to TCR. Required when
|
|
210
|
+
# `compliance.brand.inherit != true`.
|
|
211
|
+
sig { returns(T.nilable(String)) }
|
|
212
|
+
attr_reader :tax_id_type
|
|
213
|
+
|
|
214
|
+
sig { params(tax_id_type: String).void }
|
|
215
|
+
attr_writer :tax_id_type
|
|
216
|
+
|
|
217
|
+
# Website. TCR website. Optional, and worth sending: carriers weigh it when
|
|
218
|
+
# vetting, so a brand that has one and omits it is vetted on less than it could
|
|
219
|
+
# be.
|
|
220
|
+
sig { returns(T.nilable(String)) }
|
|
221
|
+
attr_reader :website
|
|
222
|
+
|
|
223
|
+
sig { params(website: String).void }
|
|
224
|
+
attr_writer :website
|
|
225
|
+
|
|
226
|
+
# Business identity. The identity the registration is filed against. Omit to have
|
|
227
|
+
# none; { "inherit": true } to register under your organization's.
|
|
228
|
+
sig do
|
|
229
|
+
params(
|
|
230
|
+
business_name: String,
|
|
231
|
+
city: String,
|
|
232
|
+
contact_email: String,
|
|
233
|
+
contact_name: String,
|
|
234
|
+
contact_phone: String,
|
|
235
|
+
country: String,
|
|
236
|
+
ein_issuing_country: String,
|
|
237
|
+
entity_type:
|
|
238
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::OrSymbol,
|
|
239
|
+
inherit: T::Boolean,
|
|
240
|
+
legal_name: String,
|
|
241
|
+
postal_code: String,
|
|
242
|
+
state: String,
|
|
243
|
+
street: String,
|
|
244
|
+
tax_id: String,
|
|
245
|
+
tax_id_type: String,
|
|
246
|
+
website: String
|
|
247
|
+
).returns(T.attached_class)
|
|
248
|
+
end
|
|
249
|
+
def self.new(
|
|
250
|
+
# Public-facing name. TCR displayName — the name recipients would recognise. Named
|
|
251
|
+
# for what it holds rather than for TCR's field, which is why it is not
|
|
252
|
+
# `display_name`. Required when `compliance.brand.inherit != true`.
|
|
253
|
+
business_name: nil,
|
|
254
|
+
# City. Required when `compliance.brand.inherit != true`.
|
|
255
|
+
city: nil,
|
|
256
|
+
# Contact email. TCR email. Required when `compliance.brand.inherit != true`.
|
|
257
|
+
contact_email: nil,
|
|
258
|
+
# Responsible contact. Split into TCR's firstName/lastName on submission.
|
|
259
|
+
# BrandService refuses a blank one, so a missing name is reported here rather than
|
|
260
|
+
# thrown after the profile was written. Required when
|
|
261
|
+
# `compliance.brand.inherit != true`.
|
|
262
|
+
contact_name: nil,
|
|
263
|
+
# Contact phone. TCR sends it as both phone and mobilePhone, so it is asked for
|
|
264
|
+
# once. Named for the contact it belongs to rather than as a bare `phone` on a
|
|
265
|
+
# block that also carries an address. Required when
|
|
266
|
+
# `compliance.brand.inherit != true`.
|
|
267
|
+
contact_phone: nil,
|
|
268
|
+
# Country of registration. Two letters — US. The country spelled out in full is
|
|
269
|
+
# accepted too and stored as its code, which is what a read answers with and what
|
|
270
|
+
# is filed. Required when `compliance.brand.inherit != true`.
|
|
271
|
+
country: nil,
|
|
272
|
+
# Country that issued the tax id. TCR einIssuingCountry — where the tax id was
|
|
273
|
+
# issued, which is not always where the business trades. Defaults to `country`
|
|
274
|
+
# when omitted, which is right for most. Takes the code or the country spelled
|
|
275
|
+
# out, as `country` does.
|
|
276
|
+
ein_issuing_country: nil,
|
|
277
|
+
# Entity type. TCR entityType. Decides which vetting TCR applies and, for
|
|
278
|
+
# SOLE_PROPRIETOR, fixes the campaign fee regardless of volume. Also refused at
|
|
279
|
+
# submission if absent. Required when `compliance.brand.inherit != true`.
|
|
280
|
+
entity_type: nil,
|
|
281
|
+
# Run on the organization's brand. True to register under the parent
|
|
282
|
+
# organization's identity rather than one of this profile's own; every field below
|
|
283
|
+
# is then neither asked for nor accepted. Omitted, the brand is the organization's
|
|
284
|
+
# unless this block supplies identity fields, which says plainly enough that it
|
|
285
|
+
# wants one of its own.
|
|
286
|
+
inherit: nil,
|
|
287
|
+
# Registered legal name. TCR companyName — the name on the incorporation
|
|
288
|
+
# documents, which is often not the name recipients would recognise. Required when
|
|
289
|
+
# `compliance.brand.inherit != true`.
|
|
290
|
+
legal_name: nil,
|
|
291
|
+
# Postal code. Required when `compliance.brand.inherit != true`.
|
|
292
|
+
postal_code: nil,
|
|
293
|
+
# State or region. TCR state. Two letters for a US registration. Required when
|
|
294
|
+
# `compliance.brand.inherit != true`.
|
|
295
|
+
state: nil,
|
|
296
|
+
# Street address. Required when `compliance.brand.inherit != true`.
|
|
297
|
+
street: nil,
|
|
298
|
+
# Tax identifier. TCR ein. TcrBrandSubmissionValidator refuses a submission
|
|
299
|
+
# without one, so it is wanted here rather than discovered at filing time.
|
|
300
|
+
# Required when `compliance.brand.inherit != true`.
|
|
301
|
+
tax_id: nil,
|
|
302
|
+
# Kind of tax identifier. Which kind of identifier `tax_id` is, e.g. us_ein.
|
|
303
|
+
# Derived onto the brand form, and not itself sent to TCR. Required when
|
|
304
|
+
# `compliance.brand.inherit != true`.
|
|
305
|
+
tax_id_type: nil,
|
|
306
|
+
# Website. TCR website. Optional, and worth sending: carriers weigh it when
|
|
307
|
+
# vetting, so a brand that has one and omits it is vetted on less than it could
|
|
308
|
+
# be.
|
|
309
|
+
website: nil
|
|
310
|
+
)
|
|
311
|
+
end
|
|
312
|
+
|
|
313
|
+
sig do
|
|
314
|
+
override.returns(
|
|
315
|
+
{
|
|
316
|
+
business_name: String,
|
|
317
|
+
city: String,
|
|
318
|
+
contact_email: String,
|
|
319
|
+
contact_name: String,
|
|
320
|
+
contact_phone: String,
|
|
321
|
+
country: String,
|
|
322
|
+
ein_issuing_country: String,
|
|
323
|
+
entity_type:
|
|
324
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::OrSymbol,
|
|
325
|
+
inherit: T::Boolean,
|
|
326
|
+
legal_name: String,
|
|
327
|
+
postal_code: String,
|
|
328
|
+
state: String,
|
|
329
|
+
street: String,
|
|
330
|
+
tax_id: String,
|
|
331
|
+
tax_id_type: String,
|
|
332
|
+
website: String
|
|
333
|
+
}
|
|
334
|
+
)
|
|
335
|
+
end
|
|
336
|
+
def to_hash
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
# Entity type. TCR entityType. Decides which vetting TCR applies and, for
|
|
340
|
+
# SOLE_PROPRIETOR, fixes the campaign fee regardless of volume. Also refused at
|
|
341
|
+
# submission if absent. Required when `compliance.brand.inherit != true`.
|
|
342
|
+
module EntityType
|
|
343
|
+
extend Sentdm::Internal::Type::Enum
|
|
344
|
+
|
|
345
|
+
TaggedSymbol =
|
|
346
|
+
T.type_alias do
|
|
347
|
+
T.all(
|
|
348
|
+
Symbol,
|
|
349
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType
|
|
350
|
+
)
|
|
351
|
+
end
|
|
352
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
353
|
+
|
|
354
|
+
PRIVATE_PROFIT =
|
|
355
|
+
T.let(
|
|
356
|
+
:PRIVATE_PROFIT,
|
|
357
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::TaggedSymbol
|
|
358
|
+
)
|
|
359
|
+
PUBLIC_PROFIT =
|
|
360
|
+
T.let(
|
|
361
|
+
:PUBLIC_PROFIT,
|
|
362
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::TaggedSymbol
|
|
363
|
+
)
|
|
364
|
+
NON_PROFIT =
|
|
365
|
+
T.let(
|
|
366
|
+
:NON_PROFIT,
|
|
367
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::TaggedSymbol
|
|
368
|
+
)
|
|
369
|
+
SOLE_PROPRIETOR =
|
|
370
|
+
T.let(
|
|
371
|
+
:SOLE_PROPRIETOR,
|
|
372
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::TaggedSymbol
|
|
373
|
+
)
|
|
374
|
+
GOVERNMENT =
|
|
375
|
+
T.let(
|
|
376
|
+
:GOVERNMENT,
|
|
377
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::TaggedSymbol
|
|
378
|
+
)
|
|
379
|
+
|
|
380
|
+
sig do
|
|
381
|
+
override.returns(
|
|
382
|
+
T::Array[
|
|
383
|
+
Sentdm::Channels::MarketCompliance::Brand::EntityType::TaggedSymbol
|
|
384
|
+
]
|
|
385
|
+
)
|
|
386
|
+
end
|
|
387
|
+
def self.values
|
|
388
|
+
end
|
|
389
|
+
end
|
|
390
|
+
end
|
|
391
|
+
|
|
392
|
+
class Campaign < Sentdm::Internal::Type::BaseModel
|
|
393
|
+
OrHash =
|
|
394
|
+
T.type_alias do
|
|
395
|
+
T.any(
|
|
396
|
+
Sentdm::Channels::MarketCompliance::Campaign,
|
|
397
|
+
Sentdm::Internal::AnyHash
|
|
398
|
+
)
|
|
399
|
+
end
|
|
400
|
+
|
|
401
|
+
# What this programme sends. TCR description: what recipients will get and why, in
|
|
402
|
+
# a sentence. The only one of these TCR takes verbatim as a description of the
|
|
403
|
+
# programme, which is why it is asked for rather than derived from the customer's
|
|
404
|
+
# name. Required when `compliance.campaign.inherit != true`.
|
|
405
|
+
sig { returns(T.nilable(String)) }
|
|
406
|
+
attr_reader :description
|
|
407
|
+
|
|
408
|
+
sig { params(description: String).void }
|
|
409
|
+
attr_writer :description
|
|
410
|
+
|
|
411
|
+
# Help keywords. TCR helpKeywords, comma separated, e.g. HELP,INFO. Required when
|
|
412
|
+
# `compliance.campaign.inherit != true`.
|
|
413
|
+
sig { returns(T.nilable(String)) }
|
|
414
|
+
attr_reader :help_keywords
|
|
415
|
+
|
|
416
|
+
sig { params(help_keywords: String).void }
|
|
417
|
+
attr_writer :help_keywords
|
|
418
|
+
|
|
419
|
+
# Help reply. TCR helpMessage. Its presence is what sets subscriberHelp. Required
|
|
420
|
+
# when `compliance.campaign.inherit != true`.
|
|
421
|
+
sig { returns(T.nilable(String)) }
|
|
422
|
+
attr_reader :help_message
|
|
423
|
+
|
|
424
|
+
sig { params(help_message: String).void }
|
|
425
|
+
attr_writer :help_message
|
|
426
|
+
|
|
427
|
+
# Run on the organization's campaign. True to register under the parent
|
|
428
|
+
# organization's programme rather than one of this profile's own; every field
|
|
429
|
+
# below is then neither asked for nor accepted. Owning the identity and inheriting
|
|
430
|
+
# the campaign is refused — a campaign is filed against an identity registration,
|
|
431
|
+
# and chk_tcr_inheritance forbids that pairing outright.
|
|
432
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
433
|
+
attr_reader :inherit
|
|
434
|
+
|
|
435
|
+
sig { params(inherit: T::Boolean).void }
|
|
436
|
+
attr_writer :inherit
|
|
437
|
+
|
|
438
|
+
# Consent narrative. TCR messageFlow: how recipients opt in, in prose. Under 40
|
|
439
|
+
# characters is refused, and carriers reject vague descriptions — say where opt-in
|
|
440
|
+
# happens, that the box is unchecked by default, and that consent is not a
|
|
441
|
+
# condition of purchase. Required when `compliance.campaign.inherit != true`.
|
|
442
|
+
sig { returns(T.nilable(String)) }
|
|
443
|
+
attr_reader :message_flow
|
|
444
|
+
|
|
445
|
+
sig { params(message_flow: String).void }
|
|
446
|
+
attr_writer :message_flow
|
|
447
|
+
|
|
448
|
+
# Opt-in keywords. TCR optinKeywords, comma separated, e.g. START,YES. Required
|
|
449
|
+
# when `compliance.campaign.inherit != true`.
|
|
450
|
+
sig { returns(T.nilable(String)) }
|
|
451
|
+
attr_reader :opt_in_keywords
|
|
452
|
+
|
|
453
|
+
sig { params(opt_in_keywords: String).void }
|
|
454
|
+
attr_writer :opt_in_keywords
|
|
455
|
+
|
|
456
|
+
# Opt-in confirmation. TCR optinMessage. Should state message frequency and that
|
|
457
|
+
# rates may apply. Its presence is what sets subscriberOptin. Required when
|
|
458
|
+
# `compliance.campaign.inherit != true`.
|
|
459
|
+
sig { returns(T.nilable(String)) }
|
|
460
|
+
attr_reader :opt_in_message
|
|
461
|
+
|
|
462
|
+
sig { params(opt_in_message: String).void }
|
|
463
|
+
attr_writer :opt_in_message
|
|
464
|
+
|
|
465
|
+
# Opt-out keywords. TCR optoutKeywords, comma separated. STOP, END, CANCEL,
|
|
466
|
+
# UNSUBSCRIBE and QUIT are honoured regardless of what is declared. Required when
|
|
467
|
+
# `compliance.campaign.inherit != true`.
|
|
468
|
+
sig { returns(T.nilable(String)) }
|
|
469
|
+
attr_reader :opt_out_keywords
|
|
470
|
+
|
|
471
|
+
sig { params(opt_out_keywords: String).void }
|
|
472
|
+
attr_writer :opt_out_keywords
|
|
473
|
+
|
|
474
|
+
# Opt-out confirmation. TCR optoutMessage. Its presence is what sets
|
|
475
|
+
# subscriberOptout. Required when `compliance.campaign.inherit != true`.
|
|
476
|
+
sig { returns(T.nilable(String)) }
|
|
477
|
+
attr_reader :opt_out_message
|
|
478
|
+
|
|
479
|
+
sig { params(opt_out_message: String).void }
|
|
480
|
+
attr_writer :opt_out_message
|
|
481
|
+
|
|
482
|
+
# Privacy policy URL. TCR privacyPolicyLink. Required when
|
|
483
|
+
# `compliance.campaign.inherit != true`.
|
|
484
|
+
sig { returns(T.nilable(String)) }
|
|
485
|
+
attr_reader :privacy_policy_link
|
|
486
|
+
|
|
487
|
+
sig { params(privacy_policy_link: String).void }
|
|
488
|
+
attr_writer :privacy_policy_link
|
|
489
|
+
|
|
490
|
+
# Terms and conditions URL. TCR termsAndConditionsLink. Required when
|
|
491
|
+
# `compliance.campaign.inherit != true`.
|
|
492
|
+
sig { returns(T.nilable(String)) }
|
|
493
|
+
attr_reader :terms_and_conditions_link
|
|
494
|
+
|
|
495
|
+
sig { params(terms_and_conditions_link: String).void }
|
|
496
|
+
attr_writer :terms_and_conditions_link
|
|
497
|
+
|
|
498
|
+
# Use cases. What the campaign sends, and an example of each. One to five entries;
|
|
499
|
+
# how they register is decided by volume, never declared. Required when
|
|
500
|
+
# `compliance.campaign.inherit != true`.
|
|
501
|
+
sig do
|
|
502
|
+
returns(
|
|
503
|
+
T.nilable(
|
|
504
|
+
T::Array[Sentdm::Channels::MarketCompliance::Campaign::UseCase]
|
|
505
|
+
)
|
|
506
|
+
)
|
|
507
|
+
end
|
|
508
|
+
attr_reader :use_cases
|
|
509
|
+
|
|
510
|
+
sig do
|
|
511
|
+
params(
|
|
512
|
+
use_cases:
|
|
513
|
+
T::Array[
|
|
514
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::OrHash
|
|
515
|
+
]
|
|
516
|
+
).void
|
|
517
|
+
end
|
|
518
|
+
attr_writer :use_cases
|
|
519
|
+
|
|
520
|
+
# Expected monthly volume. Decides how the campaign registers and which fee tier
|
|
521
|
+
# applies: below the low-volume threshold it registers as LOW_VOLUME with
|
|
522
|
+
# sub-use-cases, above it as a single use case or MIXED. Omitting it registers the
|
|
523
|
+
# campaign at the higher-fee standard tier.
|
|
524
|
+
sig { returns(T.nilable(String)) }
|
|
525
|
+
attr_reader :volume
|
|
526
|
+
|
|
527
|
+
sig { params(volume: String).void }
|
|
528
|
+
attr_writer :volume
|
|
529
|
+
|
|
530
|
+
# Messaging campaign. What the programme sends and how recipients consented. Omit
|
|
531
|
+
# to run on your organization's; supplying it takes one of your own. { "inherit":
|
|
532
|
+
# true } says so outright. Required when `compliance.campaign.inherit != true`.
|
|
533
|
+
sig do
|
|
534
|
+
params(
|
|
535
|
+
description: String,
|
|
536
|
+
help_keywords: String,
|
|
537
|
+
help_message: String,
|
|
538
|
+
inherit: T::Boolean,
|
|
539
|
+
message_flow: String,
|
|
540
|
+
opt_in_keywords: String,
|
|
541
|
+
opt_in_message: String,
|
|
542
|
+
opt_out_keywords: String,
|
|
543
|
+
opt_out_message: String,
|
|
544
|
+
privacy_policy_link: String,
|
|
545
|
+
terms_and_conditions_link: String,
|
|
546
|
+
use_cases:
|
|
547
|
+
T::Array[
|
|
548
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::OrHash
|
|
549
|
+
],
|
|
550
|
+
volume: String
|
|
551
|
+
).returns(T.attached_class)
|
|
552
|
+
end
|
|
553
|
+
def self.new(
|
|
554
|
+
# What this programme sends. TCR description: what recipients will get and why, in
|
|
555
|
+
# a sentence. The only one of these TCR takes verbatim as a description of the
|
|
556
|
+
# programme, which is why it is asked for rather than derived from the customer's
|
|
557
|
+
# name. Required when `compliance.campaign.inherit != true`.
|
|
558
|
+
description: nil,
|
|
559
|
+
# Help keywords. TCR helpKeywords, comma separated, e.g. HELP,INFO. Required when
|
|
560
|
+
# `compliance.campaign.inherit != true`.
|
|
561
|
+
help_keywords: nil,
|
|
562
|
+
# Help reply. TCR helpMessage. Its presence is what sets subscriberHelp. Required
|
|
563
|
+
# when `compliance.campaign.inherit != true`.
|
|
564
|
+
help_message: nil,
|
|
565
|
+
# Run on the organization's campaign. True to register under the parent
|
|
566
|
+
# organization's programme rather than one of this profile's own; every field
|
|
567
|
+
# below is then neither asked for nor accepted. Owning the identity and inheriting
|
|
568
|
+
# the campaign is refused — a campaign is filed against an identity registration,
|
|
569
|
+
# and chk_tcr_inheritance forbids that pairing outright.
|
|
570
|
+
inherit: nil,
|
|
571
|
+
# Consent narrative. TCR messageFlow: how recipients opt in, in prose. Under 40
|
|
572
|
+
# characters is refused, and carriers reject vague descriptions — say where opt-in
|
|
573
|
+
# happens, that the box is unchecked by default, and that consent is not a
|
|
574
|
+
# condition of purchase. Required when `compliance.campaign.inherit != true`.
|
|
575
|
+
message_flow: nil,
|
|
576
|
+
# Opt-in keywords. TCR optinKeywords, comma separated, e.g. START,YES. Required
|
|
577
|
+
# when `compliance.campaign.inherit != true`.
|
|
578
|
+
opt_in_keywords: nil,
|
|
579
|
+
# Opt-in confirmation. TCR optinMessage. Should state message frequency and that
|
|
580
|
+
# rates may apply. Its presence is what sets subscriberOptin. Required when
|
|
581
|
+
# `compliance.campaign.inherit != true`.
|
|
582
|
+
opt_in_message: nil,
|
|
583
|
+
# Opt-out keywords. TCR optoutKeywords, comma separated. STOP, END, CANCEL,
|
|
584
|
+
# UNSUBSCRIBE and QUIT are honoured regardless of what is declared. Required when
|
|
585
|
+
# `compliance.campaign.inherit != true`.
|
|
586
|
+
opt_out_keywords: nil,
|
|
587
|
+
# Opt-out confirmation. TCR optoutMessage. Its presence is what sets
|
|
588
|
+
# subscriberOptout. Required when `compliance.campaign.inherit != true`.
|
|
589
|
+
opt_out_message: nil,
|
|
590
|
+
# Privacy policy URL. TCR privacyPolicyLink. Required when
|
|
591
|
+
# `compliance.campaign.inherit != true`.
|
|
592
|
+
privacy_policy_link: nil,
|
|
593
|
+
# Terms and conditions URL. TCR termsAndConditionsLink. Required when
|
|
594
|
+
# `compliance.campaign.inherit != true`.
|
|
595
|
+
terms_and_conditions_link: nil,
|
|
596
|
+
# Use cases. What the campaign sends, and an example of each. One to five entries;
|
|
597
|
+
# how they register is decided by volume, never declared. Required when
|
|
598
|
+
# `compliance.campaign.inherit != true`.
|
|
599
|
+
use_cases: nil,
|
|
600
|
+
# Expected monthly volume. Decides how the campaign registers and which fee tier
|
|
601
|
+
# applies: below the low-volume threshold it registers as LOW_VOLUME with
|
|
602
|
+
# sub-use-cases, above it as a single use case or MIXED. Omitting it registers the
|
|
603
|
+
# campaign at the higher-fee standard tier.
|
|
604
|
+
volume: nil
|
|
605
|
+
)
|
|
606
|
+
end
|
|
607
|
+
|
|
608
|
+
sig do
|
|
609
|
+
override.returns(
|
|
610
|
+
{
|
|
611
|
+
description: String,
|
|
612
|
+
help_keywords: String,
|
|
613
|
+
help_message: String,
|
|
614
|
+
inherit: T::Boolean,
|
|
615
|
+
message_flow: String,
|
|
616
|
+
opt_in_keywords: String,
|
|
617
|
+
opt_in_message: String,
|
|
618
|
+
opt_out_keywords: String,
|
|
619
|
+
opt_out_message: String,
|
|
620
|
+
privacy_policy_link: String,
|
|
621
|
+
terms_and_conditions_link: String,
|
|
622
|
+
use_cases:
|
|
623
|
+
T::Array[
|
|
624
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase
|
|
625
|
+
],
|
|
626
|
+
volume: String
|
|
627
|
+
}
|
|
628
|
+
)
|
|
629
|
+
end
|
|
630
|
+
def to_hash
|
|
631
|
+
end
|
|
632
|
+
|
|
633
|
+
class UseCase < Sentdm::Internal::Type::BaseModel
|
|
634
|
+
OrHash =
|
|
635
|
+
T.type_alias do
|
|
636
|
+
T.any(
|
|
637
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase,
|
|
638
|
+
Sentdm::Internal::AnyHash
|
|
639
|
+
)
|
|
640
|
+
end
|
|
641
|
+
|
|
642
|
+
# Sample messages. TCR sample1..sample5 for this use case. One to five, each
|
|
643
|
+
# carrying the brand name and an opt-out instruction.
|
|
644
|
+
sig { returns(T::Array[T.anything]) }
|
|
645
|
+
attr_accessor :sample_messages
|
|
646
|
+
|
|
647
|
+
# Use case. What this entry sends. MIXED and LOW_VOLUME are refused — volume
|
|
648
|
+
# decides those.
|
|
649
|
+
sig do
|
|
650
|
+
returns(
|
|
651
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::OrSymbol
|
|
652
|
+
)
|
|
653
|
+
end
|
|
654
|
+
attr_accessor :use_case
|
|
655
|
+
|
|
656
|
+
sig do
|
|
657
|
+
params(
|
|
658
|
+
sample_messages: T::Array[T.anything],
|
|
659
|
+
use_case:
|
|
660
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::OrSymbol
|
|
661
|
+
).returns(T.attached_class)
|
|
662
|
+
end
|
|
663
|
+
def self.new(
|
|
664
|
+
# Sample messages. TCR sample1..sample5 for this use case. One to five, each
|
|
665
|
+
# carrying the brand name and an opt-out instruction.
|
|
666
|
+
sample_messages:,
|
|
667
|
+
# Use case. What this entry sends. MIXED and LOW_VOLUME are refused — volume
|
|
668
|
+
# decides those.
|
|
669
|
+
use_case:
|
|
670
|
+
)
|
|
671
|
+
end
|
|
672
|
+
|
|
673
|
+
sig do
|
|
674
|
+
override.returns(
|
|
675
|
+
{
|
|
676
|
+
sample_messages: T::Array[T.anything],
|
|
677
|
+
use_case:
|
|
678
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::OrSymbol
|
|
679
|
+
}
|
|
680
|
+
)
|
|
681
|
+
end
|
|
682
|
+
def to_hash
|
|
683
|
+
end
|
|
684
|
+
|
|
685
|
+
# Use case. What this entry sends. MIXED and LOW_VOLUME are refused — volume
|
|
686
|
+
# decides those.
|
|
687
|
+
module UseCase
|
|
688
|
+
extend Sentdm::Internal::Type::Enum
|
|
689
|
+
|
|
690
|
+
TaggedSymbol =
|
|
691
|
+
T.type_alias do
|
|
692
|
+
T.all(
|
|
693
|
+
Symbol,
|
|
694
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase
|
|
695
|
+
)
|
|
696
|
+
end
|
|
697
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
698
|
+
|
|
699
|
+
MARKETING =
|
|
700
|
+
T.let(
|
|
701
|
+
:MARKETING,
|
|
702
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
703
|
+
)
|
|
704
|
+
ACCOUNT_NOTIFICATION =
|
|
705
|
+
T.let(
|
|
706
|
+
:ACCOUNT_NOTIFICATION,
|
|
707
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
708
|
+
)
|
|
709
|
+
CUSTOMER_CARE =
|
|
710
|
+
T.let(
|
|
711
|
+
:CUSTOMER_CARE,
|
|
712
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
713
|
+
)
|
|
714
|
+
FRAUD_ALERT =
|
|
715
|
+
T.let(
|
|
716
|
+
:FRAUD_ALERT,
|
|
717
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
718
|
+
)
|
|
719
|
+
USE_CASE_2_FA =
|
|
720
|
+
T.let(
|
|
721
|
+
:"2FA",
|
|
722
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
723
|
+
)
|
|
724
|
+
DELIVERY_NOTIFICATION =
|
|
725
|
+
T.let(
|
|
726
|
+
:DELIVERY_NOTIFICATION,
|
|
727
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
728
|
+
)
|
|
729
|
+
SECURITY_ALERT =
|
|
730
|
+
T.let(
|
|
731
|
+
:SECURITY_ALERT,
|
|
732
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
733
|
+
)
|
|
734
|
+
M2_M =
|
|
735
|
+
T.let(
|
|
736
|
+
:M2M,
|
|
737
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
738
|
+
)
|
|
739
|
+
HIGHER_EDUCATION =
|
|
740
|
+
T.let(
|
|
741
|
+
:HIGHER_EDUCATION,
|
|
742
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
743
|
+
)
|
|
744
|
+
POLLING_VOTING =
|
|
745
|
+
T.let(
|
|
746
|
+
:POLLING_VOTING,
|
|
747
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
748
|
+
)
|
|
749
|
+
PUBLIC_SERVICE_ANNOUNCEMENT =
|
|
750
|
+
T.let(
|
|
751
|
+
:PUBLIC_SERVICE_ANNOUNCEMENT,
|
|
752
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
753
|
+
)
|
|
754
|
+
|
|
755
|
+
sig do
|
|
756
|
+
override.returns(
|
|
757
|
+
T::Array[
|
|
758
|
+
Sentdm::Channels::MarketCompliance::Campaign::UseCase::UseCase::TaggedSymbol
|
|
759
|
+
]
|
|
760
|
+
)
|
|
761
|
+
end
|
|
762
|
+
def self.values
|
|
763
|
+
end
|
|
764
|
+
end
|
|
765
|
+
end
|
|
766
|
+
end
|
|
767
|
+
end
|
|
768
|
+
end
|
|
769
|
+
end
|
|
770
|
+
end
|