Transferencia del bot a un agente humano

Cuando los usuarios se comunican con los agentes, sus expectativas se establecen según la forma se presenta y redacta los mensajes que recibe. Cada vez que un agente envía un mensaje, puede identificar si un agente automatizado (BOT) o en vivo (HUMAN) representante redactaste el mensaje. Los usuarios ven esta información en la conversación ayuda a los usuarios a comprender qué tipos de interacciones pueden esperar en un determinado momento. en un momento determinado.

Si un agente admite a los representantes BOT y HUMAN, es importante proporcionar contexto cuando alternas entre ambos. Cuando cambies de BOT a Representante de HUMAN, enviar un REPRESENTATIVE_JOINED evento anterior enviar mensajes del representante de HUMAN y etiquetarlos correctamente siguiendo mensajes de agentes humanos de los representantes de HUMAN. Cuando El agente en vivo abandona la conversación y envía un evento de REPRESENTATIVE_LEFT. Estos enmarcar eventos informan a los usuarios que pueden hacer preguntas más complicadas esperas más respuestas de formato libre.

En este flujo de conversación, las primeras interacciones del usuario son con un respondedor que envía mensajes como representante de BOT, pero se une un agente humano la conversación y envía mensajes como representante de HUMAN. La transmisión en vivo los mensajes del agente se enmarcan en REPRESENTATIVE_JOINED y REPRESENTATIVE_LEFT eventos.

  1. El usuario inicia la conversación con el agente.
  2. Una vez que el usuario comienza a escribir una respuesta, envía un evento de escritura al agente.

    {
      "agent": "brands/1111/agents/2222",
      "conversationId": "3333",
      "customAgentId": "live-agent-handoff",
      "requestId": "1234567890",
      "userStatus": {
        "isTyping": "true",
        "createTime": "2020-10-02T15:01:23.045123456Z",
      },
      "sendTime": "2020-10-02T15:01:24.045123456Z",
    }
    
  3. El usuario envía "Hola, tengo un problema". como un mensaje.

    {
      "agent": "brands/1111/agents/2222",
      "conversationId": "3333",
      "customAgentId": "live-agent-handoff",
      "requestId": "123123123",
      "message": {
        "messageId": "4444",
        "name": "conversations/12345/messages/67890",
        "text": "Hi, I have a problem",
        "createTime": "2020-10-02T15:05:23.045123456Z",
      },
      "context": {
        "entryPoint": "PLACESHEET",
        "userInfo": {
          "displayName": "Michael",
          "userDeviceLocale": "en",
        },
        "resolvedLocale": "en",
      }
      "sendTime": "2020-10-02T15:05:24.045123456Z",
    }
    
  4. El agente te envía "Gracias por comunicarte con nosotros. Lo informaré cuando un esté disponible para chatear contigo". como mensaje de un BOT representante.

    curl -X POST "https://businessmessages.googleapis.com/v1/conversations/3333/messages" \
    -H "Content-Type: application/json" \
    -H "`oauth2l header --json path/to/service/account/key.json businessmessages`" \
    -d "{
      'messageId': '5555',
      'text': 'Thanks for contacting us. I'll pass this along when a live agent is available to chat with you.',
      'representative': {
        'avatarImage': 'https://live.agent/bot-avatar.jpg',
        'displayName': 'Hello World Agent',
        'representativeType': 'BOT'
      }
    }"
    
  5. Un agente humano estará disponible.

  6. El agente envía un evento REPRESENTATIVE_JOINED antes de enviar el primero mensaje del agente humano.

    curl -X POST "https://businessmessages.googleapis.com/v1/conversations/12345/events?eventId=6666" \
    -H "Content-Type: application/json" \
    -H "`oauth2l header --json /path/to/service/account/key.json businessmessages`" \
    -d "{
      'eventType': 'REPRESENTATIVE_JOINED',
      'representative': {
        'avatarImage': 'https://live.agent/human-avatar.jpg',
        'displayName': 'Jane Doe',
        'representativeType': 'HUMAN',
      },
    }"
    
  7. El agente envía el mensaje "Veo que tienes un problema. How can I help?” (¡Hola! ¿Cómo puedo ayudarte?). como mensaje de un representante de HUMAN.

    curl -X POST "https://businessmessages.googleapis.com/v1/conversations/3333/messages" \
    -H "Content-Type: application/json" \
    -H "`oauth2l header --json path/to/service/account/key.json businessmessages`" \
    -d "{
      'messageId': '7777',
      'text': 'I see you have a problem. How can I help?',
      'representative': {
        'avatarImage': 'https://live.agent/human-avatar.jpg',
        'displayName': 'Jane Doe',
        'representativeType': 'HUMAN'
      }
    }"
    
  8. El agente humano y el usuario intercambian mensajes hasta que la solicitud del usuario se cumpla. Todos los mensajes redactados por el agente humano se envían desde un Representante de HUMAN.

  9. El agente envía un evento REPRESENTATIVE_LEFT cuando el agente humano sale de la conversación.

    curl -X POST "https://businessmessages.googleapis.com/v1/conversations/12345/events?eventId=6666" \
    -H "Content-Type: application/json" \
    -H "`oauth2l header --json /path/to/service/account/key.json businessmessages`" \
    -d "{
      'eventType': 'REPRESENTATIVE_LEFT',
      'representative': {
        'avatarImage': 'https://live.agent/human-avatar.jpg',
        'displayName': 'Jane Doe',
        'representativeType': 'HUMAN',
      },
    }"
    
  10. El agente envía todos los mensajes posteriores con los representantes de BOT, a menos que otro agente humano se une a la conversación.