

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Accédez à l’analytique Contact Lens des contacts vocaux et par chat à l’aide d’Amazon Kinesis Data Streams
<a name="contact-analysis-segment-streams"></a>

Les flux de segments d’analyse des contacts vous permettent d’accéder à l’analytique Contact Lens pour les contacts vocaux et par chat. Le streaming permet de surmonter les limites de mise à l'échelle des [analyses APIs d'appels et de chat](contact-lens-api.md) existantes. Pour les contact vocaux, cela donne également accès à un segment de données appelé `Utterance` qui vous permet d’accéder à des transcriptions partielles. Cela vous permet de répondre aux exigences de latence extrêmement faible pour aider les agents lors des appels en direct. 

Cette section explique comment intégrer Amazon Kinesis Data Streams pour le streaming.

Grâce au streaming, vous pouvez recevoir les types d’événements suivants : 
+ Les événements STARTED publiés au début de la session d’analyse des contact.
+ Les événements SEGMENTS publiés lors des sessions d’analyse de contact. Ces événements contiennent une liste de segments contenant des informations analysées.
+ Les événements COMPLETED ou FAILED publiés à la fin d’une session d’analyse de contact.

**Topics**
+ [Activation des flux de segments d’analyse de contact](enable-contact-analysis-segment-streams.md)
+ [Voix : modèle de données pour les flux de segments d’analytique conversationnelle](real-time-contact-analysis-segment-streams-data-model.md)
+ [Chat : modèle de données pour les flux de segments d’analytique conversationnelle](chat-real-time-contact-analysis-segment-streams-data-model.md)
+ [Voix : exemple de flux de segments d’analytique conversationnelle](sample-real-time-contact-analysis-segment-stream.md)
+ [Chat : exemple de flux de segments d’analytique conversationnelle](chat-sample-real-time-contact-analysis-segment-stream.md)

# Activation des flux de segments d’analyse des contacts pour analyser les conversations Contact Lens
<a name="enable-contact-analysis-segment-streams"></a>

Les flux de segments d’analyse de contact en temps réel ne sont pas activés par défaut. Cette rubrique explique comment les activer. 

## Étape 1 : créer un flux Amazon Kinesis
<a name="enable-segment-streams-step1"></a>

Créez le flux de données sur le même compte et dans la même région que ceux où réside l’instance d’Amazon Connect. Pour obtenir des instructions, consultez [Étape 1 : créer un flux de données](https://docs.aws.amazon.com/streams/latest/dev/tutorial-stock-data-kplkcl-create-stream.html) dans *Guide du développeur Amazon Kinesis Data Streams*.

**Astuce**  
Nous vous recommandons de créer un flux distinct pour chaque type de données. Bien qu’il soit possible d’utiliser le même flux pour les flux de segments de l’analyse de contact, les événements de l’agent et les enregistrements de contacts, il est beaucoup plus facile de gérer et d’obtenir des données à partir du flux lorsque vous en utilisez un distinct pour chacun d’entre eux. Pour plus d’informations, consultez le [Guide du développeur Amazon Kinesis Data Streams](https://docs.aws.amazon.com/streams/latest/dev/introduction.html). 

## Étape 2 : configurer le chiffrement côté serveur pour le flux Kinesis (facultatif mais recommandé)
<a name="enable-segment-streams-step2"></a>

Il existe plusieurs méthodes pour le faire. 
+ Option 1 : utilisez Kinesis Clé gérée par AWS (`aws/kinesis`). Cela fonctionne sans configuration supplémentaire de votre part.
+ Option 2 : utilisez la même clé gérée par le client pour les enregistrements d’appels, les transcriptions de chat ou les rapports exportés dans l’instance d’Amazon Connect.

  Activez le chiffrement et utilisez la même clé gérée par le client pour les enregistrements d’appels, les transcriptions de chat ou les rapports exportés dans l’instance d’Amazon Connect. Choisissez ensuite la même clé KMS pour le flux de données Kinesis. Cette clé possède déjà l’autorisation (accord) requise pour être utilisée.
+ Option 3 : utilisez une autre clé gérée par le client.

  Utilisez une clé gérée par le client existante ou créez-en une nouvelle et ajoutez les autorisations requises pour que le rôle Amazon Connect puisse utiliser la clé. Pour ajouter des autorisations à l’aide des accords AWS KMS , reportez-vous à l’exemple suivant :

  ```
  aws kms create-grant \
      --key-id your key ID \
      --grantee-principal arn:aws:iam::your AWS account ID:role/aws-service-role/connect.amazonaws.com/AWSServiceRoleForAmazonConnect_11111111111111111111 \
      --operations GenerateDataKey \
      --retiring-principal arn:aws:iam::your AWS account ID:role/adminRole
  ```

  Où `grantee-principal` correspond à l’ARN du rôle lié au service associé à l’instance d’Amazon Connect. Pour trouver l’ARN du rôle lié au service, dans la console Amazon Connect, accédez à **Aperçu**, **Paramètres de distribution**, **Rôle lié à un service**. 

## Étape 3 : associer le flux Kinesis
<a name="enable-segment-streams-step3"></a>

Utilisez l'[AssociateInstanceStorageConfig](https://docs.aws.amazon.com/connect/latest/APIReference/API_AssociateInstanceStorageConfig.html)API Amazon Connect pour associer les types de ressources suivants :
+ Pour les contacts vocaux, utilisez `REAL_TIME_CONTACT_ANALYSIS_VOICE_SEGMENTS`
+ Pour les contacts par chat, utilisez `REAL_TIME_CONTACT_ANALYSIS_CHAT_SEGMENTS`

**Note**  
`REAL_TIME_CONTACT_ANALYSIS_SEGMENTS` est obsolète, mais continue d’être pris en charge et ne s’applique qu’aux contacts vocaux. Utilisez `REAL_TIME_CONTACT_ANALYSIS_VOICE_SEGMENTS` pour les contacts vocaux futurs.  
Si vous avez déjà associé un flux à `REAL_TIME_CONTACT_ANALYSIS_SEGMENTS`, aucune action n’est nécessaire pour mettre à jour le flux à `REAL_TIME_CONTACT_ANALYSIS_VOICE_SEGMENTS`.

Spécifiez le flux Kinesis dans lequel les segments d’analyse des contacts en temps réel seront publiés. Vous aurez besoin de l’ID de l’instance et de l’ARN du flux Kinesis. Le code suivant en présente un exemple :

```
// Build request
  const request: Connect.Types.AssociateInstanceStorageConfigRequest = {
    InstanceId: 'your Amazon Connect instance ID',
    ResourceType: 'REAL_TIME_CONTACT_ANALYSIS_VOICE_SEGMENTS or REAL_TIME_CONTACT_ANALYSIS_CHAT_SEGMENTS',
    StorageConfig: {
      StorageType: 'KINESIS_STREAM',
      KinesisStreamConfig: {
        StreamArn: 'the ARN of your Kinesis stream',
      },
    }
  };
```

### AWS CLI
<a name="step3-cli"></a>

L’exemple suivant concerne les contacts de chat.

**Astuce**  
Si vous n'incluez pas la AWS région (`--region`), elle utilise la région par défaut en fonction du profil de la CLI.  
La valeur du paramètre `--storage-config` ne doit pas être incluse entre guillemets simples (’). Dans le cas contraire, cela génère une erreur.

```
aws connect associate-instance-storage-config \
--region "us-west-2" \
--instance-id your Amazon Connect instance ID \
--resource-type REAL_TIME_CONTACT_ANALYSIS_CHAT_SEGMENTS \
--storage-config StorageType=KINESIS_STREAM,KinesisStreamConfig={StreamArn=the ARN of your Kinesis stream}
```

### AWS SDK
<a name="step3-sdk"></a>

L’exemple suivant concerne les contacts vocaux.

```
import { Connect } from 'aws-sdk';

async function associate (): Promise <void> {
  const clientConfig: Connect.ClientConfiguration = {
    region: 'the Region of your Amazon Connect instance',
  };

  const connect = new Connect(clientConfig);

  // Build request
  const request: Connect.Types.AssociateInstanceStorageConfigRequest = {
    InstanceId: 'your Amazon Connect instance ID',
    ResourceType: 'REAL_TIME_CONTACT_ANALYSIS_VOICE_SEGMENTS',
    StorageConfig: {
      StorageType: 'KINESIS_STREAM',
      KinesisStreamConfig: {
        StreamArn: 'the ARN of your Kinesis stream',
      },
    }
  };

  try {
    // Execute request
    const response: Connect.Types.AssociateInstanceStorageConfigResponse = await connect.associateInstanceStorageConfig(request).promise();

    // Process response
    console.log('raw response: ${JSON.stringify(response, null, 2)}');
  } catch (err) {
    console.error('Error calling associateInstanceStorageConfig. err.code: ${err.code},' +
      'err.message: ${err.message}, err.statusCode: ${err.statusCode}, err.retryable: ${err.retryable}');
  }
}

associate().then(r => console.log('Done'));
```

## Étape 4 : activer Contact Lens pour votre instance Amazon Connect
<a name="enable-segment-streams-step4"></a>

Pour obtenir des instructions, consultez [Activation de l’analytique conversationnelle dans Amazon Connect Contact Lens](enable-analytics.md).

## Étape 5 (facultatif) : examiner un exemple de flux de segments
<a name="enable-segment-streams-step5"></a>

Nous vous recommandons d’examiner des exemples de flux de segments [vocal](sample-real-time-contact-analysis-segment-stream.md) et de [chat](chat-sample-real-time-contact-analysis-segment-stream.md) pour vous familiariser avec leur apparence.

# Modèle de données pour les flux de segments d’analytique conversationnelle afin d’analyser les contacts vocaux dans Contact Lens
<a name="real-time-contact-analysis-segment-streams-data-model"></a>

Les flux de segments d’analyse de contact en temps réel sont générés au format JSON. Les blobs JSON d’événements sont publiés dans le flux associé pour chaque contact pour lequel l’analytique conversationnelle en temps réel est activée. Les types d’événements suivants peuvent être publiés pour une session d’analytique conversationnelle d’un contact vocal :
+ Événements STARTED : chaque session d’analytique conversationnelle publie un événement STARTED au début de la session.
+ Événements SEGMENTS : chaque session d’analytique conversationnelle peut publier zéro événement SEGMENTS ou plus au cours de la session. Ces événements contiennent une liste de segments contenant des informations analysées. Pour les contacts vocaux, la liste des segments peut inclure des segments « `Utterance` », « `Transcript` », « `Categories` » ou « `PostContactSummary` ».
+ Événements COMPLETED or FAILED : chaque session d’analytique conversationnelle publie un événement COMPLETED or FAILED à la fin de la session.

## Propriétés communes incluses dans tous les événements des contacts vocaux
<a name="segment-streams-data-model-common-properties"></a>

Chaque événement inclut les propriétés suivantes :

**Version**  
Version du schéma de l’événement.   
Type : String

**Channel**  
Type de canal de ce contact.  
Type : String  
Valeurs valides : `VOICE`, `CHAT`, `TASK`  
Pour plus d’informations sur les canaux, consultez [Canaux et simultanéité pour le routage des contacts dans Amazon Connect](channels-and-concurrency.md).

**AccountId**  
Identifiant du compte sur lequel ce contact a lieu.  
Type : Chaîne

**ContactId**  
Identifiant du contact en cours d’analyse.  
Type : Chaîne

**InstanceId**  
Identifiant de l’instance où ce contact a lieu.  
Type : Chaîne 

**LanguageCode**  
Code de langue associé à ce contact.  
Type : String   
Valeurs valides : code de langue de l’une des [langues prises en charge pour l’analytique d’appel en temps réel par Contact Lens](supported-languages.md#supported-languages-contact-lens). 

**EventType**  
Type d’événement publié.  
Type : String  
Valeurs valides : `STARTED`, `SEGMENTS`, `COMPLETED`, `FAILED` 

## Événement STARTED
<a name="segment-streams-data-model-started-event"></a>

Les événements `STARTED` incluent uniquement les propriétés communes :
+ Version
+ Channel
+ AccountId
+ ContactId
+ LanguageCode
+ EventType: COMMENCÉ

## Événement SEGMENTS
<a name="segment-streams-data-model-segments-event"></a>

Les événements `SEGMENTS` incluent les propriétés suivantes :
+ Version
+ Channel
+ AccountId
+ ContactId
+ LanguageCode
+ EventType: SEGMENTS
+ Segments : outre les propriétés communes, les événements `SEGMENTS` incluent une liste de segments contenant des informations analysées.

  Type : tableau d’objets [Segment](#segment)
+ PostContactSummary: Informations sur le résumé post-contact pour un segment de contact vocal.

  Type : [PostContactSummary](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-contact-lens_PostContactSummary.html)objets 

  Obligatoire : non

**Segment**  
Segment analysé pour une session d’analyse en temps réel.  
Chaque segment est un objet avec les propriétés facultatives suivantes. Une seule de ces propriétés est présente, selon le type de segment :  
+ Énoncé
+ Transcription
+ Catégories
+ PostContactSummary

**Énoncé**  
Énoncé analysé.  
Obligatoire : non  
+ **Id**

  Identifiant de l’énoncé.

  Type : Chaîne
+ ** TranscriptId**

  Identifiant de la transcription associée à cet énoncé.

  Type : Chaîne
+ **ParticipantId**

  Identifiant du participant.

  Type : Chaîne
+ ** ParticipantRole**

  Rôle du participant. Par exemple, s’agit-il d’un client, d’un agent ou d’un système.

  Type : Chaîne
+ ** PartialContent**

  Contenu de l’énoncé.

  Type : Chaîne
+ ** BeginOffsetMillis**

  Décalage initial dans le contact pour cette transcription.

  Type : Integer
+ ** EndOffsetMillis**

  Décalage final dans le contact pour cette transcription.

  Type : Integer

**Transcription**  
Transcription analysée.  
Type : objet [Transcript](https://docs.aws.amazon.com/contact-lens/latest/APIReference/API_Transcript.html)   
Obligatoire : non

**Catégories**  
Règles de catégorie correspondantes.  
Type : objet [Categories](https://docs.aws.amazon.com/contact-lens/latest/APIReference/API_Categories.html)  
Obligatoire : non

**PostContactSummary**  
Informations sur le résumé post-contact pour un segment de contact vocal.  
Type : objet [PostContactSummary](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-contact-lens_PostContactSummary.html)  
Obligatoire : non

## Événement COMPLETED
<a name="segment-streams-data-model-completed-event"></a>

Les événements `COMPLETED` incluent uniquement les propriétés communes suivantes :
+ Version
+ Channel
+ AccountId
+ ContactId
+ LanguageCode
+ EventType: TERMINÉ

## Événement FAILED
<a name="segment-streams-data-model-failed-event"></a>

Les événements `FAILED` incluent uniquement les propriétés communes suivantes :
+ Version
+ Channel
+ AccountId
+ ContactId
+ LanguageCode
+ EventType: ÉCHEC

# Modèle de données pour que les flux de segments d’analytique conversationnelle analysent les chats Contact Lens
<a name="chat-real-time-contact-analysis-segment-streams-data-model"></a>

Les flux de segments d’analytique conversationnelle pour les contacts de chat sont générés au format JSON. Les blobs JSON d’événements sont publiés dans le flux associé pour chaque contact pour lequel l’analytique conversationnelle en temps réel est activée. Les types d’événements suivants peuvent être publiés pour une session d’analytique conversationnelle de contact par chat :
+ Événements STARTED : chaque session d’analytique conversationnelle publie un événement STARTED au début de la session.
+ Événements SEGMENTS : chaque session d’analytique conversationnelle peut publier zéro événement SEGMENTS ou plus au cours de la session. Ces événements contiennent une liste de segments contenant des informations analysées. Pour les contacts de chat, la liste des segments peut inclure des segments « `Attachments` », « `Transcript` », « `Categories` », « `Events` », « `Issues` » ou « `PostContactSummary` ».
+ Événements COMPLETED or FAILED : chaque session d’analytique conversationnelle publie un événement COMPLETED or FAILED à la fin de la session.

## Propriétés communes incluses dans tous les événements pour les contacts de chat
<a name="chat-segment-streams-data-model-common-properties"></a>

Chaque événement inclut les propriétés suivantes :

**Version**  
Version du schéma de l’événement. Pour les contacts de chat, il s’agit de la version 2.0.0.  
Type : String

**Channel**  
Type de canal de ce contact.  
Type : String  
Valeurs valides : `VOICE`, `CHAT`, `TASK`  
Pour plus d’informations sur les canaux, consultez [Canaux et simultanéité pour le routage des contacts dans Amazon Connect](channels-and-concurrency.md).

**AccountId**  
Identifiant du compte sur lequel ce contact a lieu.  
Type : Chaîne

**InstanceId**  
Identifiant de l’instance où ce contact a lieu.  
Type : Chaîne 

**ContactId**  
Identifiant du contact en cours d’analyse.  
Type : Chaîne

**StreamingEventType**  
Type d’événement publié.  
Type : String   
Valeurs valides : `STARTED`, `SEGMENTS`, `COMPLETED`, `FAILED`

**StreamingSettings**  
Les paramètres Contact Lens de ce contact  
Type : objet [StreamingSettings](#streamingsettingsobject) 

## StreamingSettings objet
<a name="streamingsettingsobject"></a>

**LanguageCode**  
Code de langue associé à ce contact.  
Type : String   
Valeurs valides : code de langue de l’une des [langues prises en charge pour l’analytique d’appel en temps réel par Contact Lens](supported-languages.md#supported-languages-contact-lens). 

**Output**  
Type de sortie Contact Lens activé pour ce contact.  
Type : String  
Valeurs valides : `Raw`, `Redacted`, `RedactedAndRaw` 

**RedactionTypes**  
Type de rédaction activé pour ce contact.  
Type : tableau de chaînes  
Valeurs valides : `PII` 

**RedactionTypesMetadata**  
Les métadonnées de rédaction pour chaque type de rédaction.  
Type : RedactionType chaîne vers [RedactionMetadata](#redactionmetadata)objet   
Valeurs valides : `PII` 

## RedactionMetadata objet
<a name="redactionmetadata"></a>

Fournit des informations sur les paramètres de rédaction.

**RedactionMaskMode**  
Paramètre de remplacement de rédaction des données  
Type : String   
Valeurs valides : `PII`, `EntityType`

## Événement STARTED
<a name="chat-segment-streams-data-model-started-event"></a>

Les événements `STARTED` incluent uniquement les propriétés communes :
+ Version
+ Channel
+ AccountId
+ ContactId
+ StreamingEventType: COMMENCÉ
+ StreamingSettings

## Événement SEGMENTS
<a name="chat-segment-streams-data-model-segments-event"></a>

Les événements `SEGMENTS` incluent les propriétés suivantes :
+ Version
+ Channel
+ AccountId
+ OutputType
  + Le type de sortie Contact Lens du segment en cours
  + Type : String
  + Valeurs valides : `Raw`, `Redacted`
+ ContactId
+ StreamingEventType: SEGMENTS
+ StreamingSettings
+ Segments
  + Une liste de segments contenant des informations analysées.
  + Type : tableau d’objets [Segment](#chat-segment)

**Segment**  
Segment analysé pour une session d’analyse en temps réel.  
Chaque segment est un objet avec les propriétés facultatives suivantes. Une seule de ces propriétés est présente, selon le type de segment :  
+  [Pièces jointes](#chat-attachments)
+  [Catégories](#chat-category)
+  [Event](#chat-event)
+  [Problèmes](#chat-issues)
+  [Transcription](#chat-transcript)
+ [PostContactSummary](#chat-postcontactsummary)

**Pièces jointes**  
Pièces jointes analysées.  
Obligatoire : non  
Type : objet [RealTimeContactAnalysisSegmentAttachments](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealTimeContactAnalysisSegmentAttachments.html)

**Catégories**  
Règles de catégorie correspondantes.  
Type : objet [RealTimeContactAnalysisSegmentCategories](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealTimeContactAnalysisSegmentCategories.html)  
Obligatoire : non

**Événement**  
Type de segment décrivant un événement de contact.  
Type : objet [RealTimeContactAnalysisSegmentEvent](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealTimeContactAnalysisSegmentEvent.html)  
Obligatoire : non

**Problèmes**  
Type de segment contenant une liste des problèmes détectés.  
Type : objet [RealTimeContactAnalysisSegmentIssues](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealTimeContactAnalysisSegmentIssues.html)  
Obligatoire : non

**Transcription**  
Segment de transcription analysé.  
Type : objet [RealTimeContactAnalysisSegmentTranscript](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealTimeContactAnalysisSegmentTranscript.html)  
Obligatoire : non

**PostContactSummary**  
Informations sur le résumé post-contact pour un segment de contact en temps réel pour le chat.  
Type : objet [RealTimeContactAnalysisSegmentPostContactSummary](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealTimeContactAnalysisSegmentPostContactSummary.html)   
Obligatoire : non

## Événement COMPLETED
<a name="chat-segment-streams-data-model-completed-event"></a>

Les événements `COMPLETED` incluent uniquement les propriétés communes suivantes :
+ Version
+ Channel
+ AccountId
+ InstanceId
+ ContactId
+ StreamingEventType: TERMINÉ
+ StreamingSettings

## Événement FAILED
<a name="chat-segment-streams-data-model-failed-event"></a>

Les événements `FAILED` incluent uniquement les propriétés communes suivantes :
+ Version
+ Channel
+ AccountId
+ InstanceId
+ ContactId
+ StreamingEventType: ÉCHEC
+ StreamingSettings

# Exemples de flux de segments d’analytique conversationnelle pour analyser les appels à l’aide de Contact Lens
<a name="sample-real-time-contact-analysis-segment-stream"></a>

Cette rubrique donne des exemples de flux de segments pour les événements STARTED, SEGMENTS, COMPLETED et FAILED qui peuvent se produire lors d’un contact vocal. 

## Exemple d’événement STARTED
<a name="sample-started-event"></a>
+ EventType: COMMENCÉ
+ Publié au début de la session d’analytique conversationnelle.

```
{
    "Version": "1.0.0",
    "Channel": "VOICE",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "LanguageCode": "en-US", // the language code of the contact
    "EventType": "STARTED"
}
```

## Exemple d’événement SEGMENTS
<a name="sample-segments-event"></a>
+ EventType: SEGMENTS
+ Publié pendant une session d’analytique conversationnelle. Cet événement contient une liste de segments contenant des informations analysées. La liste des segments peut inclure des segments « `Utterance` », « `Transcript` », « `Categories` » ou « `PostContactSummary` ».

```
{
    "Version": "1.0.0",
    "Channel": "VOICE",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "LanguageCode": "en-US", // the language code of the contact
    "EventType": "SEGMENTS",
    "Segments": [
        {
            "Utterance": {
                "Id": "7b48ca3d-73d3-443a-bf34-a9e8fcc01747",
                "TranscriptId": "121d1581-905f-4169-9804-b841bb4df04a",
                "ParticipantId": "AGENT",
                "ParticipantRole": "AGENT",
                "PartialContent": "Hello, thank you for calling Example Corp. My name is Adam.",
                "BeginOffsetMillis": 19010,
                "EndOffsetMillis": 22980
            }
        },
        {
            "Utterance": {
                "Id": "75acb743-2154-486b-aaeb-c960ae290e88",
                "TranscriptId": "121d1581-905f-4169-9804-b841bb4df04a",
                "ParticipantId": "AGENT",
                "ParticipantRole": "AGENT",
                "PartialContent": "How can I help you?",
                "BeginOffsetMillis": 23000,
                "EndOffsetMillis": 24598
            }
        },
        {
            "Transcript": {
                "Id": "121d1581-905f-4169-9804-b841bb4df04a",
                "ParticipantId": "AGENT",
                "ParticipantRole": "AGENT",
                "Content": "Hello, thank you for calling Example Corp. My name is Adam. How can I help you?",
                "BeginOffsetMillis": 19010,
                "EndOffsetMillis": 24598,
                "Sentiment": "NEUTRAL"
            }
        },
        {
            "Transcript": {
                "Id": "4295e927-43aa-4447-bbfc-8fccc2027530",
                "ParticipantId": "CUSTOMER",
                "ParticipantRole": "CUSTOMER",
                "Content": "I'm having trouble submitting the application, number AX876293 on the portal. I tried but couldn't connect to my POC on the portal. So, I'm calling on this toll free number",
                "BeginOffsetMillis": 19010,
                "EndOffsetMillis": 22690,
                "Sentiment": "NEGATIVE",
                "IssuesDetected": [
                    {
                        "CharacterOffsets": {
                            "BeginOffsetChar": 0,
                            "EndOffsetChar": 81
                        }
                    }
                ]
            }
        },
        {
            "Categories": {
                "MatchedCategories": [
                    "CreditCardRelated",
                    "CardBrokenIssue"
                ],
                "MatchedDetails": {
                    "CreditCardRelated": {
                        "PointsOfInterest": [
                            {
                                "BeginOffsetMillis": 19010,
                                "EndOffsetMillis": 22690
                            }
                        ]
                    },
                    "CardBrokenIssue": {
                        "PointsOfInterest": [
                            {
                                "BeginOffsetMillis": 25000,
                                "EndOffsetMillis": 29690
                            }
                        ]
                    }
                }
            }
        },
        {
            "PostContactSummary": {
                "Content": "Customer contacted Example Corp because of an issue with their application",
                "Status": "COMPLETED"
            }
        }
    ]
}
```

## Exemple d’événement COMPLETED
<a name="sample-completed-event"></a>
+ EventType: TERMINÉ
+ Publié à la fin de la session d’analytique conversationnelle si l’analyse s’est terminée avec succès.

```
{
    "Version": "1.0.0",
    "Channel": "VOICE",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "LanguageCode": "en-US", // the language code of the contact
    "EventType": "COMPLETED"
}
```

## Exemple d’événement FAILED
<a name="sample-failed-event"></a>
+ EventType: ÉCHEC
+ Publié à la fin de la session d’analytique conversationnelle en cas d’échec de l’analyse.

```
{
    "Version": "1.0.0",
    "Channel": "VOICE",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "LanguageCode": "en-US", // the language code of the contact
    "EventType": "FAILED"
}
```

# Exemples de flux d’analytique conversationnelle pour analyser les chats dans Contact Lens
<a name="chat-sample-real-time-contact-analysis-segment-stream"></a>

Cette rubrique donne des exemples de flux de segments pour les événements STARTED, SEGMENTS, COMPLETED et FAILED qui surviennent lors d’un contact par chat. 

## Exemple d’événement STARTED
<a name="chat-sample-started-event"></a>
+ EventType: COMMENCÉ
+ Publié au début de la session d’analytique conversationnelle.

```
{
    "Version": "2.0.0",
    "Channel": "CHAT",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "StreamingEventType": "STARTED",
    "StreamingSettings": {
      "LanguageCode": "en-US", // the language code of the contact
      "Output": "RedactedAndRaw",
      "RedactionTypes": [
          "PII"
      ],
      "RedactionTypesMetadata": {
        "PII": {
            "RedactionMaskMode": "PII"
         }
       }
    }
}
```

## Exemple d’événement SEGMENTS
<a name="chat-sample-segments-event"></a>
+ EventType: [SEGMENTS](chat-real-time-contact-analysis-segment-streams-data-model.md#chat-segment-streams-data-model-segments-event) 
+ Publié pendant une session d’analytique conversationnelle. Cet événement contient une liste d'[RealtimeContactAnalysisSegment](https://docs.aws.amazon.com/connect/latest/APIReference/API_RealtimeContactAnalysisSegment.html)objets contenant des informations analysées. La liste des segments peut inclure des segments `"Transcript"` `"Categories"``"Issue"`,`"Event"`,`"Attachment"`,, ou PostContactSummary « ».

```
{
    "Version": "2.0.0",
    "Channel": "CHAT",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "OutputType": "Redacted",
    "StreamingEventType": "SEGMENTS",
    "StreamingSettings": {
        "LanguageCode": "en-US", // the language code of the contact
        "Output": "RedactedAndRaw",
        "RedactionTypes": [
            "PII"
        ],
        "RedactionTypesMetadata": {
            "PII": {
                "RedactionMaskMode": "PII"
            }
        }
    },
    "Segments": [{
        "Transcript": {
            "Id": "07a2d668-5c9e-4f69-b2fe-986261b0743a",
            "ParticipantId": "a309ac1e-ca87-44ca-bb5d-197eca8ed77a",
            "ParticipantRole": "AGENT",
            "DisplayName": "[PII]",
            "Content": "Hello, thank you for contacting Example Corp. My name is Ray.",
            "ContentType": "text/markdown",
            "Time": {
                "AbsoluteTime": "2024-03-14T19:39:26.715Z"
            },
            "Sentiment": "NEUTRAL"
        }
    }, {
        "Categories": {
            "MatchedDetails": {
                "Hi": {
                    "PointsOfInterest": [{
                        "TranscriptItems": [{
                            "Id": "5205b050-8aa9-4645-a381-a308801649ab",
                            "CharacterOffsets": {
                                "BeginOffsetChar": 0,
                                "EndOffsetChar": 40
                            }
                        }]
                    }]
                }
            }
        }
    }, {
        "Issues": {
            "IssuesDetected": [{
                "TranscriptItems": [{
                    "Content": "I have an issue with my bank account",
                    "Id": "0e5574a7-2aeb-4eab-8bb5-3a7f66a2284a",
                    "CharacterOffsets": {
                        "BeginOffsetChar": 7,
                        "EndOffsetChar": 43
                    }
                }]
            }]
        }
    }, {
        "Attachments": {
            "Id": "06ddc1eb-2302-4a8e-a73f-37687fe41aa9",
            "ParticipantId": "7810b1de-cca8-4153-b522-2498416255af",
            "ParticipantRole": "CUSTOMER",
            "DisplayName": "Customer",
            "Attachments": [{
                "AttachmentName": "Lily.jpg",
                "ContentType": "image/jpeg",
                "AttachmentId": "343e34da-391a-4541-8b7e-3909d931fcfa",
                "Status": "APPROVED"
            }],
            "Time": {
                "AbsoluteTime": "2024-03-14T19:39:26.715Z"
            }
        }
    }, {
        "Event": {
            "Id": "fbe61c5f-d0d8-4345-912a-4e81f5734d3b",
            "ParticipantId": "7810b1de-cca8-4153-b522-2498416255af",
            "ParticipantRole": "CUSTOMER",
            "DisplayName": "Customer",
            "EventType": "application/vnd.amazonaws.connect.event.participant.left",
            "Time": {
                "AbsoluteTime": "2024-03-14T19:40:00.614Z"
            }
        }
    },
    {
        "PostContactSummary": {
            "Content": "Customer contacted Example Corp because of an issue with their bank account",
            "Status": "COMPLETED"
        }
    }]
}
```

## Exemple d’événement COMPLETED
<a name="chat-sample-completed-event"></a>
+ EventType: TERMINÉ
+ Publié à la fin de la session d’analytique conversationnelle si l’analyse s’est terminée avec succès.

```
{
    "Version": "2.0.0",
    "Channel": "CHAT",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "StreamingEventType": "COMPLETED",
    "StreamingEventSettings": {
        "LanguageCode": "en-US", // the language code of the contact
        "Output": "RedactedAndRaw",
        "RedactionTypes": ["PII"],
        "RedactionTypesMetadata": {
            "PII": {
                "RedactionMaskMode": "PII"
            }
        }
    }
}
```

## Exemple d’événement FAILED
<a name="chat-sample-failed-event"></a>
+ EventType: ÉCHEC
+ Publié à la fin de la session d’analytique conversationnelle en cas d’échec de l’analyse.

```
{
    "Version": "2.0.0",
    "Channel": "CHAT",
    "AccountId": "123456789012", // your AWS account ID
    "InstanceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",  // your Amazon Connect instance ID
    "ContactId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", // the ID of the contact
    "StreamingEventType": "FAILED",
    "StreamingEventSettings": {
        "LanguageCode": "en-US",
        "Output": "RedactedAndRaw",
        "RedactionTypes": ["PII"],
        "RedactionTypesMetadata": {
            "PII": {
                "RedactionMaskMode": "PII"
            }
        }
    }
}
```