Lecture à partir d’entités Twilio
Prérequis
Un objet Twilio à partir duquel vous souhaitez lire. Vous aurez besoin du nom de l’objet, comme SMS-Message ou SMS-CountryPricing.
Entités prises en charge pour la source :
| Entité | utilisateur | Peut être filtré | Limit prise en charge | Order by prise en charge | Select prise en charge* | Partitionnement pris en charge |
|---|---|---|---|---|---|---|
| SMS-Message | REST | Oui | Oui | Non | Oui | Oui |
| SMS-CountryPricing | REST | Non | Non | Non | Oui | Non |
| Voice-Call | REST | Oui | Oui | Non | Oui | Non |
| Voice-Application | REST | Oui | Oui | Non | Oui | Non |
| Voice-OutgoingCallerID | REST | Oui | Oui | Non | Oui | Non |
| Voice-Queue | REST | Oui | Oui | Non | Oui | Non |
| Conversations-Conversation | REST | Oui | Oui | Non | Oui | Non |
| Conversations-User | REST | Non | Oui | Non | Oui | Non |
| Conversations-Role | REST | Non | Oui | Non | Oui | Non |
| Conversations-Configuration | REST | Non | Non | Non | Oui | Non |
| Conversations-AddressConfiguration | REST | Oui | Oui | Non | Oui | Non |
| Conversations-WebhookConfiguration | REST | Non | Non | Non | Oui | Non |
| Conversations-ParticipantConversation | REST | Non | Non | Non | Oui | Non |
| Conversations-Credential | REST | Non | Oui | Non | Oui | Non |
| Conversations-ConversationService | REST | Non | Oui | Non | Oui | Non |
Exemple :
twilio_read = glueContext.create_dynamic_frame.from_options( connection_type="twilio", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "sms-message", "API_VERSION": "2010-04-01", "Edge_Location": "sydney.us1" }
Détails des entités et des champs Twilio :
| Entité | Champ | Type de données | Opérateurs pris en charge |
|---|---|---|---|
| SMS-Message | account_sid | Chaîne | N/A |
| api_version | Chaîne | N/A | |
| body | Chaîne | N/A | |
| date_created | Datetime | N/A | |
| date_sent | Datetime | >=, <=, = | |
| date_updated | Datetime | N/A | |
| direction | Chaîne | N/A | |
| error_code | Entier | N/A | |
| error_message | Chaîne | N/A | |
| from | Entier | = | |
| messaging_service_sid | Chaîne | N/A | |
| num_media | Chaîne | N/A | |
| num_segments | Chaîne | N/A | |
| prix | Chaîne | N/A | |
| price_unit | Struct | N/A | |
| sid | Entier | N/A | |
| status | Chaîne | N/A | |
| subresource_uris | Map | N/A | |
| to | Entier | = | |
| uri | Datetime | N/A | |
| SMS-CountryPricing | country | Chaîne | N/A |
| iso_country | Chaîne | N/A | |
| url | Chaîne | N/A | |
| outbound_sms_prices | Liste | N/A | |
| inbound_sms_prices | Liste | N/A | |
| price_unit | Chaîne | N/A | |
| Voice-Call | account_sid | Chaîne | N/A |
| annotation | Chaîne | N/A | |
| answered_by | Chaîne | N/A | |
| api_version | Chaîne | N/A | |
| caller_name | Chaîne | N/A | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| direction | Chaîne | N/A | |
| duration | Chaîne | N/A | |
| end_time | Datetime | >=, <=, = | |
| forwarded_from | Chaîne | N/A | |
| from | Chaîne | = | |
| from_formatted | Chaîne | N/A | |
| group_sid | Chaîne | N/A | |
| parent_call_sid | Chaîne | N/A | |
| phone_number_sid | Chaîne | N/A | |
| prix | Chaîne | N/A | |
| price_unit | Chaîne | N/A | |
| sid | Chaîne | N/A | |
| start_time | Datetime | >=, <=, = | |
| status | Chaîne | = | |
| subresource_uris | Chaîne | N/A | |
| to | Chaîne | = | |
| to_formatted | Chaîne | N/A | |
| trunk_sid | Chaîne | N/A | |
| uri | Chaîne | N/A | |
| queue_time | Chaîne | N/A | |
| Voice-Application | account_sid | Chaîne | N/A |
| api_version | Chaîne | N/A | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| friendly_name | Chaîne | = | |
| message_status_callback | Chaîne | N/A | |
| sid | Chaîne | N/A | |
| sms_fallback_method | Chaîne | N/A | |
| sms_fallback_url | Chaîne | N/A | |
| sms_method | Chaîne | N/A | |
| sms_status_callback | Chaîne | N/A | |
| sms_url | Chaîne | N/A | |
| status_callback | Chaîne | N/A | |
| status_callback_method | Chaîne | N/A | |
| uri | Chaîne | N/A | |
| voice_caller_id_lookup | Booléen | N/A | |
| voice_fallback_method | Chaîne | N/A | |
| voice_fallback_url | Chaîne | N/A | |
| voice_method | Chaîne | N/A | |
| voice_url | Chaîne | N/A | |
| public_application_connect_enabled | Booléen | N/A | |
| Voice-OutgoingCallerID | sid | Chaîne | N/A |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| account_sid | Chaîne | N/A | |
| friendly_name | Chaîne | = | |
| phone_number | Chaîne | = | |
| uri | Chaîne | N/A | |
| Voice-Queue | date_created | Datetime | N/A |
| date_updated | Datetime | N/A | |
| current_size | Entier | N/A | |
| friendly_name | Chaîne | N/A | |
| uri | Chaîne | N/A | |
| account_sid | Chaîne | N/A | |
| average_wait_time | Entier | N/A | |
| sid | Chaîne | N/A | |
| max_size | Entier | N/A | |
| Conversations-Conversation | account_sid | Chaîne | N/A |
| chat_service_sid | Chaîne | N/A | |
| messaging_service_sid | Chaîne | N/A | |
| sid | Chaîne | N/A | |
| friendly_name | Chaîne | N/A | |
| unique_name | Chaîne | N/A | |
| attributs | Chaîne | N/A | |
| state | Chaîne | = | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| timers | Struct | N/A | |
| url | Chaîne | N/A | |
| links | Struct | N/A | |
| bindings | Struct | N/A | |
| start_date | Datetime | = | |
| end_date | Datetime | = | |
| Timers.DateInactive | Chaîne | N/A | |
| Timers.DateClosed | Chaîne | N/A | |
| Conversations-User | sid | Chaîne | N/A |
| account_sid | Chaîne | N/A | |
| chat_service_sid | Chaîne | N/A | |
| role_sid | Chaîne | N/A | |
| une | Chaîne | N/A | |
| friendly_name | Chaîne | N/A | |
| attributs | Chaîne | N/A | |
| is_online | Booléen | N/A | |
| is_notifiable | Booléen | N/A | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| url | Chaîne | N/A | |
| links | Struct | N/A | |
| Conversations-Role | sid | Chaîne | N/A |
| account_sid | Chaîne | N/A | |
| chat_service_sid | Chaîne | N/A | |
| friendly_name | Chaîne | N/A | |
| type | Chaîne | N/A | |
| des autorisations | Chaîne | N/A | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| url | Chaîne | N/A | |
| Conversations-Configuration | account_sid | Long | N/A |
| default_chat_service_sid | Chaîne | N/A | |
| default_messaging_service_sid | Chaîne | N/A | |
| default_inactive_timer | Chaîne | N/A | |
| default_closed_timer | Chaîne | N/A | |
| url | Chaîne | N/A | |
| links | Map | N/A | |
| Conversations-AddressConfiguration | sid | Chaîne | N/A |
| account_sid | Chaîne | N/A | |
| type | Chaîne | N/A | |
| adresse | Chaîne | N/A | |
| friendly_name | Chaîne | N/A | |
| auto_creation | Struct | N/A | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| url | Chaîne | N/A | |
| address_country | Chaîne | N/A | |
| AutoCreation.Enabled | Booléen | N/A | |
| AutoCreation.Type | Chaîne | N/A | |
| AutoCreation.ConversationServiceSid | Chaîne | N/A | |
| AutoCreation.WebhookUrl | Chaîne | N/A | |
| AutoCreation.WebhookMethod | Chaîne | N/A | |
| AutoCreation.WebhookFilters | Liste | N/A | |
| AutoCreation.StudioFlowSid | Chaîne | N/A | |
| AutoCreation.StudioRetryCount | Entier | N/A | |
| Conversations-WebhookConfiguration | account_sid | Chaîne | N/A |
| méthode | Chaîne | N/A | |
| filtres | Liste | N/A | |
| pre_webhook_url | Chaîne | N/A | |
| post_webhook_url | Chaîne | N/A | |
| cible | Chaîne | N/A | |
| url | Chaîne | N/A | |
| Converations-ParticipantConversation | account_sid | Chaîne | N/A |
| chat_service_sid | Chaîne | N/A | |
| participant_sid | Chaîne | N/A | |
| participant_user_sid | Chaîne | N/A | |
| participant_identity | Chaîne | N/A | |
| participant_messaging_binding | Struct | N/A | |
| Conversation_sid | Chaîne | N/A | |
| conversation_unique_name | Chaîne | N/A | |
| conversation_friendly_name | Chaîne | N/A | |
| conversation_attributes | Chaîne | N/A | |
| conversation_date_created | Datetime | N/A | |
| conversation_date_updated | Datetime | N/A | |
| conversation_created_by | Chaîne | N/A | |
| conversation_state | Chaîne | N/A | |
| conversation_timers | Struct | N/A | |
| links | Map | N/A | |
| adresse | Chaîne | = | |
| une | Chaîne | = | |
| Conversation-Credentials | sid | Chaîne | N/A |
| account_sid | Chaîne | N/A | |
| friendly_name | Chaîne | N/A | |
| type | Chaîne | N/A | |
| sandbox | Chaîne | N/A | |
| date_created | Datetime | N/A | |
| dated_updated | Datetime | N/A | |
| url | Chaîne | N/A | |
| certificat | Chaîne | N/A | |
| private_key | Chaîne | N/A | |
| api_key | Chaîne | N/A | |
| secret | Chaîne | N/A | |
| Conversations-ConversationService | sid | Chaîne | N/A |
| account_sid | Chaîne | N/A | |
| friendly_name | Chaîne | N/A | |
| date_created | Datetime | N/A | |
| date_updated | Datetime | N/A | |
| url | Chaîne | N/A | |
| links | Map | N/A |
Requêtes de partitionnement
Champs prenant en charge le partitionnement :
Dans Twilio, les champs de type de données DateTime prennent en charge le partitionnement basé sur les champs.
Vous pouvez indiquer les options Spark supplémentaires PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND et NUM_PARTITIONS si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d’origine serait divisée en NUM_PARTITIONS nombres de sous-requêtes pouvant être exécutées simultanément par les tâches Spark.
PARTITION_FIELD: le nom du champ à utiliser pour partitionner la requête.LOWER_BOUND: une valeur limite inférieure inclusive du champ de partition choisi.Pour le champ Datetime, nous acceptons le format d’horodatage Spark utilisé dans les requêtes SQL Spark.
Exemples de valeurs valides :
"2024-05-01T20:55:02.000Z"UPPER_BOUND: une valeur limite supérieure exclusive du champ de partition choisi.NUM_PARTITIONS: le nombre de partitions.
Exemple :
twilio_read = glueContext.create_dynamic_frame.from_options( connection_type="twilio", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "sms-message", "API_VERSION": "2010-04-01", "PARTITION_FIELD": "date_sent" "LOWER_BOUND": "2024-05-01T20:55:02.000Z" "UPPER_BOUND": "2024-06-01T20:55:02.000Z" "NUM_PARTITIONS": "10" }