Lecture à partir d’entités Twilio - AWS Glue

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" }