Codifica del flusso di eventi - Amazon Lex

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à.

Codifica del flusso di eventi

La codifica del flusso di eventi offre la comunicazione bidirezionale tramite messaggi tra un client e un server. I frame di dati inviati al servizio di streaming Amazon Lex V2 sono codificati in questo formato. Anche la risposta di Amazon Lex V2 utilizza questa codifica.

Ogni messaggio è composto da due sezioni: è costituita da due sezioni: l'introduzione e i dati. La sezione preludio contiene la lunghezza totale in byte del messaggio e la lunghezza in byte combinata di tutte le intestazioni. La sezione dati contiene le intestazioni e un payload.

Ogni sezione termina con un checksum intero big-endian a 4 byte. CRC Il CRC checksum del messaggio include la sezione preludio e la sezione dati. Amazon Lex V2 utilizza CRC32 (spesso indicato come GZIPCRC32) per calcolare entrambiCRCs. Per ulteriori informazioni in meritoCRC32, consulta la versione 4.3 delle specifiche GZIP del formato di file.

La lunghezza totale del messaggio, inclusi introduzione ed entrambi i checksum, è pari a 16 byte.

Il seguente diagramma mostra i componenti che compongono un messaggio e un'intestazione. Sono presenti più intestazioni per messaggio.

Diagram showing message structure with prelude, headers, payload, and CRC components.

Ogni messaggio contiene i seguenti componenti:

  • Introduzione: sempre una dimensione fissa di 8 byte, due campi di 4 byte ciascuno.

    • Primi 4 byte: la lunghezza totale dei byte. Si tratta della lunghezza in byte interi big-endian dell'intero messaggio, incluso il campo di 4 byte.

    • Secondi 4 byte: la lunghezza dei byte delle intestazioni. Si tratta della lunghezza in byte interi big-endian della porzione delle intestazioni del messaggio, escluso il campo della lunghezza delle intestazioni.

  • PreludeCRC: il CRC checksum a 4 byte per la parte preludio del messaggio, escluso il messaggio stesso. CRC Il preludio è separato CRC dal messaggio CRC per garantire che Amazon Lex V2 sia in grado di rilevare immediatamente informazioni danneggiate della lunghezza in byte senza causare errori come sovraccarichi del buffer.

  • Intestazioni: i metadati per l'annotazione del messaggio, come il tipo di messaggio, il tipo di contenuto e così via. I messaggi hanno più intestazioni, Le intestazioni sono coppie chiave-valore in cui la chiave è una stringa -8. UTF Le intestazioni possono essere visualizzate in qualsiasi ordine nella relativa porzione del messaggio e vengono visualizzate una sola volta. Per i tipi di intestazione richiesti, consulta le seguenti sezioni.

  • Payload: il contenuto audio o di testo inviato ad Amazon Lex.

  • MessaggioCRC: il CRC checksum a 4 byte dall'inizio del messaggio all'inizio del checksum. Ciò include tutto il contenuto del messaggio tranne il messaggio stesso. CRC

Ogni intestazione contiene i seguenti componenti. Sono presenti più intestazioni per frame.

  • Lunghezza in byte del nome dell'intestazione: la lunghezza dei byte del nome dell'intestazione.

  • Nome dell'intestazione: il nome dell'intestazione che indica il tipo di intestazione. Per i valori validi, consulta le seguenti descrizioni di frame.

  • Tipo di valore dell'intestazione: un'enumerazione che indica il tipo di valore dell'intestazione.

  • Lunghezza dei byte della stringa di valori: la lunghezza dei byte della stringa di valori dell'intestazione.

  • Valore dell'intestazione: il valore della stringa dell'intestazione. I valori validi per questo campo dipendono dal tipo di intestazione. Per i valori validi, consulta le seguenti descrizioni di frame.