Aller au contenu principal
Version: 3.6.0

Interaction Client

Aperçu​

Le message d'Interaction Client analyse les données de conversation pour fournir des insights complets, incluant l'analyse de sentiment, l'évaluation des risques, et d'autres réponses spécialisées.

Référence API​

Point de Terminaison​

  • URL WebSocket : wss://ws-{{tenant}}.oco.optave.{{tld}}
  • Point de Terminaison REST (POST): https://{{tenant}}.oco.optave.{{tld}}/message/customerinteraction

Pour pouvoir envoyer des messages, il est nécessaire de s'authentifier d'abord.

Charge Utile de Requête​

Le message customerinteraction nécessite une charge utile contenant l'historique de conversation (conversations), connections.threadId, et context.organizationId (l'identifiant d'organisation spécifique à votre client). Les autres champs sont optionnels.

{
session: {
sessionId: "a1b2c3d4-e5f6-7890-abcd-123456789012",
channel: { language: "en-US" },
interface: { type: "chat" }
},
request: {
requestId: "a1b2c3d4-e5f6-7890-1234-56789ab2345",
attributes: {
variant: "A"
},
connections: {
journeyId: "",
parentId: "",
threadId: "9e8d7c6b-5a49-3827-1605-948372615abc" // REQUIS
},
context: { // généré par optave
organizationId: "f7e8d9c0-b1a2-3456-7890-123456789abc", // REQUIS
},
scope: {
conversations: [ // REQUIS
{
conversationId: "",
participants: [
{
participantId: "2c4f8a9b-1d3e-5f70-8293-456789012def",
displayName: "John Doe",
role: "user"
},
{
participantId: "5b8c9d0e-2f4a-6b1c-9d8e-123456789abc",
displayName: "Sarah Smith",
role: "operator"
}
],
messages: [
{
content: "Hi, can you help me?",
participantId: "2c4f8a9b-1d3e-5f70-8293-456789012def",
timestamp: "2024-01-15T10:30:00.000Z"
},
{
content: "Hello! I'd be happy to assist you today. What can I help you with?",
participantId: "5b8c9d0e-2f4a-6b1c-9d8e-123456789abc",
timestamp: "2024-01-15T10:30:15.000Z"
}
],
metadata: {}
}
]
}
}
}

Réponses​

🟢 Succès (200-201)

Lors de l'utilisation du WebSocket, plusieurs superpouvoirs et différentes mises à jour d'état seront reçus, tels que :

  • Analyse de Sentiment
  • Évaluation des Risques (Média, Hacker, Financier)
  • Besoin d'Escalade
  • Identification de Langue
  • Exigences de Recherche

Chaque superpouvoir sera envoyé comme un message séparé avec son actionType spécifique et les résultats pertinents.

🔴 Erreur

Les messages d'erreur sont similaires en format aux messages de succès, mais contiennent un état d'erreur et un objet JSON "response" :

{
action: "superpower",
actionType: "<superpower-name>",
state: "error",
message: {
results: [
{
response: [
{
content: 'Erreur lors de la récupération des résultats'
}
]
}
]
}
}

curl
--request POST
--url https://{{tenant}}.oco.optave.{{tld}}/message/customerinteraction --header "Authorization: Bearer your-access-token-here" --header "Content-Type: application/json" -d '{
"session": {
"sessionId": "a1b2c3d4-e5f6-7890-abcd-123456789012",
"channel": { "language": "en-US" },
"interface": { "type": "chat" }
},
"request": {
"requestId": "a1b2c3d4-e5f6-7890-1234-56789ab2345",
"attributes": {
"variant": "A"
},
"connections": {
"threadId": "9e8d7c6b-5a49-3827-1605-948372615abc"
},
"context": {
"organizationId": "f7e8d9c0-b1a2-3456-7890-123456789abc"
},
"scope": {
"conversations": [
{
"conversationId": "7f6e5d4c-3b2a-1098-fedc-ba9876543210",
"participants": [
{
"participantId": "2c4f8a9b-1d3e-5f70-8293-456789012def",
"displayName": "John Doe",
"role": "user"
},
{
"participantId": "5b8c9d0e-2f4a-6b1c-9d8e-123456789abc",
"displayName": "Sarah Smith",
"role": "operator"
}
],
"messages": [
{
"content": "Hi, can you help me?",
"participantId": "2c4f8a9b-1d3e-5f70-8293-456789012def",
"timestamp": "2024-01-15T10:30:00.000Z"
},
{
"content": "Hello! I would be happy to assist you today. What can I help you with?",
"participantId": "5b8c9d0e-2f4a-6b1c-9d8e-123456789abc",
"timestamp": "2024-01-15T10:30:15.000Z"
}
],
"metadata": {}
}
]
}
}
}'
{
action: "superpower",
actionType: "<superpower-name>",
state: "completed",
message: {
results: [
{
response: [
{
// Le contenu dépend du superpouvoir
}
]
}
]
}
}