Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Ricezione di file multimediali RCS in entrata
Gli utenti possono inviare contenuti multimediali (immagini, video, file audio e documenti) nelle conversazioni RCS con il proprio agente. Quando configuri lo storage multimediale in entrata, AWS End User Messaging scarica i file multimediali dal provider RCS, li carica nel tuo bucket Amazon S3 e pubblica una notifica sul tuo argomento Amazon SNS bidirezionale con la posizione S3 e i metadati del file.
Per informazioni generali sulla ricezione di messaggi RCS in entrata (testo, posizione e risposte ai suggerimenti), consulta. Ricezione di messaggi RCS in entrata Per informazioni sull'invio di contenuti multimediali avanzati agli utenti, consulta. Invio di messaggi RCS complessi
Come funzionano i contenuti multimediali in entrata
Quando un utente invia un file multimediale in una conversazione RCS, AWS End User Messaging elabora il messaggio attraverso i seguenti passaggi:
-
L'utente invia un'immagine, un video, un file audio o un documento dalla propria app di messaggistica RCS.
-
AWSEnd User Messaging scarica i file multimediali dal provider RCS.
-
AWSEnd User Messaging carica i file multimediali nel bucket S3 configurato utilizzando il ruolo IAM specificato.
-
AWSEnd User Messaging pubblica una notifica sull'argomento SNS bidirezionale. La notifica include il bucket S3, la chiave, il tipo MIME e i metadati dei messaggi.
Per tutti i tipi LOCATION di SUGGESTION messaggio, non viene effettuato alcun caricamento da S3. Il contenuto viene inviato direttamente nel corpo di notifica SNS. Per informazioni dettagliate su questi tipi di messaggi, vedereRicezione di messaggi RCS in entrata.
Configurazione dell'archiviazione multimediale in entrata
Per ricevere contenuti multimediali in entrata, configura i seguenti campi sul tuo agente RCS utilizzando l'API. UpdateRcsAgent Two-way la messaggistica deve essere abilitata sull'agente prima di configurare l'archiviazione multimediale.
| Campo | Richiesto | Descrizione |
|---|---|---|
TwoWayMediaS3BucketName |
Sì | Il nome del bucket S3 in cui AWS End User Messaging archivia i file multimediali in entrata. |
TwoWayMediaS3KeyPrefix |
No | Un prefisso opzionale per le chiavi degli oggetti S3. Se specificato, gli oggetti multimediali vengono memorizzati con questo prefisso nel bucket. |
TwoWayMediaS3Role |
Sì | L'ARN del ruolo IAM che AWS End User Messaging assume per caricare i file multimediali nel bucket S3. |
Il bucket S3 e il ruolo IAM sono necessari insieme. Se ne specifichi uno, devi specificarli entrambi.
Formato chiave S3
Gli oggetti multimediali vengono memorizzati con il seguente formato di chiave, in cui il nome del file originale viene aggiunto dopo un # separatore:
{prefix}/rcs/{messageId}#{fileName}
Ad esempio, se impostate il key prefix suinbound-media, un file multimediale potrebbe essere memorizzato come:
inbound-media/rcs/msg-abc123def456#photo_2026.jpg
Creazione del ruolo IAM per i contenuti multimediali in entrata
Crea un ruolo IAM che consenta al servizio AWS End User Messaging di caricare file multimediali nel tuo bucket S3. Il ruolo richiede una politica di fiducia che consenta al servizio di assumerlo e una politica di autorizzazione che garantisca l's3:PutObjectaccesso al tuo bucket.
Policy di attendibilità
La seguente politica di attendibilità consente al responsabile del servizio di messaggistica con l'utente AWS finale di assumere il ruolo. 123456789012Sostituiscilo con l'ID AWS del tuo account.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sms-voice.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }
Policy di autorizzazione
La seguente politica di autorizzazione concede al ruolo l'accesso alla scrittura di oggetti nel bucket S3. Sostituiscilo my-rcs-media-bucket con il nome del tuo bucket.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::my-rcs-media-bucket/*" } ] }
Nota
Ambita solo il ruolo IAM. s3:PutObject Il servizio non richiede s3:GetObject né altre autorizzazioni per s3:DeleteObject la distribuzione di contenuti multimediali in entrata.
Configurazione dell'archiviazione multimediale (CLI)
Il seguente comando AWS CLI configura l'archiviazione multimediale in ingresso su un agente RCS esistente:
aws pinpoint-sms-voice-v2 update-rcs-agent \ --rcs-agent-id rcs-agent-1234567890abcdef0 \ --two-way-media-s3-bucket-name my-rcs-media-bucket \ --two-way-media-s3-key-prefix "inbound-media" \ --two-way-media-s3-role arn:aws:iam::123456789012:role/RcsInboundMediaRole \ --region us-east-1
Payload di notifica multimediale in entrata
Quando AWS End User Messaging riceve un file multimediale, pubblica una notifica sull'argomento SNS bidirezionale. La notifica è un oggetto JSON con un messageBody campo che contiene un documento JSON con stringhe con lo stato del supporto e, in caso di successo, la posizione S3 e i metadati del file.
L'esempio seguente mostra una notifica multimediale in entrata riuscita:
{ "originationNumber": "+14255551234", "destinationNumber": "rcs-cb1e6e519e9049fabf8c0ae38e4d876b", "messageBody": "{\"mediaStatus\":\"SUCCESS\",\"s3Bucket\":\"my-rcs-media-bucket\",\"s3Key\":\"inbound-media/rcs/msg-abc123def456#photo_2026.jpg\",\"mimeType\":\"image/jpeg\",\"fileName\":\"photo_2026.jpg\",\"fileSizeBytes\":1211843}", "inboundMessageId": "8821d750-4bc5-4cb1-a8c3-c3d64a38d019" }
La notifica di primo livello contiene i seguenti campi:
originationNumber-
Il numero di telefono dell'utente che ha inviato il file multimediale.
destinationNumber-
L'identificatore dell'agente RCS che ha ricevuto il messaggio.
messageBody-
Un documento JSON con stringhe che descrive i file multimediali. Contiene i campi della tabella seguente.
inboundMessageId-
L'identificatore univoco del messaggio in entrata.
Il messageBody JSON contiene i seguenti campi:
mediaStatus-
Il risultato dell'elaborazione multimediale. I valori validi sono
SUCCESS,UPLOAD_FAILEDeROLE_ASSUME_FAILED. mediaStatusMessage-
Una descrizione dello stato leggibile dall'uomo. Presente quando
mediaStatusè un valore di errore. s3Bucket-
Il nome del bucket S3 in cui è archiviato il file multimediale. Regalo in caso di successo.
s3Key-
La chiave oggetto S3 per il file multimediale memorizzato. Regalo in caso di successo.
mimeType-
Il tipo MIME del file multimediale (ad esempio,
image/jpegvideo/mp4,application/pdf). fileName-
Il nome del file originale fornito dal dispositivo dell'utente.
fileSizeBytes-
La dimensione del file multimediale in byte.
Nota
La notifica multimediale in entrata non include attualmente un campo relativo al tipo di messaggio. Utilizzare per determinare il mediaStatus risultato.
Gestione degli errori di download dei file multimediali
Se AWS End User Messaging non è in grado di scaricare o archiviare file multimediali dal provider RCS, il servizio pubblica comunque una notifica sull'argomento SNS bidirezionale. messageBodyRiporta un errore mediaStatus (UPLOAD_FAILEDoROLE_ASSUME_FAILED) e una mediaStatusMessage descrizione della causa, senza campi di localizzazione S3.
Ad esempio, un errore nell'ipotesi di un ruolo IAM produce il seguente contenuto: messageBody
{ "mediaStatus": "ROLE_ASSUME_FAILED", "mediaStatusMessage": "Media received but could not assume the configured IAM role", "mimeType": "image/heic", "fileName": "IMG_7115.heic", "fileSizeBytes": 1211843 }
Le cause più comuni degli errori di download dei contenuti multimediali includono:
-
Il file multimediale non è più disponibile presso il provider RCS (ad esempio, è scaduto o è stato eliminato).
-
Il ruolo IAM non dispone dell'autorizzazione per scrivere nel bucket S3 specificato.
-
Il bucket S3 non esiste o si trova in una regione diversa da quella prevista.
Per risolvere i problemi di consegna non riusciti, verifica che le policy di fiducia e autorizzazione dei ruoli IAM siano configurate correttamente e che il bucket S3 esista e sia accessibile dal servizio. Monitora le CloudWatch metriche del tuo agente per rilevare eventuali errori di caricamento dei contenuti multimediali.
Tipi di file multimediali accettati
AWSEnd User Messaging accetta i seguenti tipi MIME multimediali in entrata:
-
Immagini:
image/jpeg,,image/jpgimage/gifimage/png -
Audio:
audio/aac,audio/mp3audio/mpeg,audio/mpg,audio/mp4,audio/mp4-latm,audio/3gpp,audio/ogg,application/ogg -
Video:
video/h263video/m4v,video/mp4,video/mpeg,video/mpeg4,video/webm -
Documenti:
application/pdf
Nota
AWSLa messaggistica per l'utente finale non impone limiti di dimensione per i media in entrata.
Best practice
-
Configura sempre l'archiviazione multimediale se prevedi che gli utenti inviino immagini, video o file nelle conversazioni RCS.
-
Utilizza un bucket S3 dedicato per i supporti RCS in entrata per isolare i controlli di accesso e le politiche del ciclo di vita.
-
Imposta una policy sul ciclo di vita di S3 per far scadere i vecchi oggetti multimediali (ad esempio, dopo 90 giorni) per gestire i costi di storage.
-
Elabora i file multimediali in entrata in modo asincrono utilizzando una funzione AWS Lambda attivata dal tuo argomento SNS.
-
Ambita solo il ruolo IAM.
s3:PutObjectIl servizio non richiede autorizzazioni più ampie. -
Monitora le CloudWatch metriche relative agli errori di caricamento dei file multimediali e imposta allarmi per rilevare problemi di configurazione.