Establecer la disponibilidad de mensajería

Antes de que los usuarios puedan iniciar conversaciones con tu agente, debes configurar la disponibilidad de la mensajería de tu agente en Business Messages.

Si un usuario envía un mensaje a tu agente durante el horario disponible, recibe un mensaje de bienvenida y disparadores de conversación. Si la conversación comienza fuera del horario disponible, los usuarios verán el mensaje sin conexión del agente. Consulta Inicia la conversación para obtener más información sobre estos mensajes.

Bot y disponibilidad humana

Puedes especificar la disponibilidad de bots y personas representantes por separado.

Si tienes algún tipo de automatización que redacte mensajes para tu agente, ya sea que la automatización sea una respuesta automática que indique a los usuarios su lugar en una cola, un agente complejo de comprensión del lenguaje natural que tiene acceso dinámico a los detalles del usuario o cualquier otra opción, especifica la disponibilidad de mensajería bot.

La disponibilidad humana es obligatoria si deseas iniciar un agente en puntos de entrada administrados por Google, incluidos los puntos de entrada basados en la ubicación y los no locales (excepto Google Ads). Para la disponibilidad humana, solo especifica los días de la semana y el horario en el que tienes agentes humanos disponibles para responder preguntas.

Si hay representantes de bots disponibles las 24 horas, pero hay representantes humanos disponibles de 8 a.m. a 8 p.m., puedes especificarlos de forma independiente.

Además, si especificas la disponibilidad humana y la de un bot, puedes enviar sugerencias de solicitudes de agentes humanos para solicitar a los usuarios que soliciten agentes humanos si los representantes no pueden cumplir con sus necesidades.

Actualizar la disponibilidad de los mensajes

Para actualizar la disponibilidad de mensajes, realiza una solicitud PATCH con la API de Business Communications a fin de actualizar los campos primaryAgentInteraction y additionalAgentInteractions de un agente.

Cuando actualizas estos campos, debes incluir valores para todos los campos del objeto ManagedAgentInteraction. Las solicitudes de actualización reemplazan el contenido de todos los campos que editas, incluidos los campos secundarios. Por ejemplo, si realizas una solicitud para agregar una instancia a hours, también debes incluir todas las instancias de hours anteriores; de lo contrario, tu actualización las reemplazará.

Requisitos previos

Antes de actualizar la disponibilidad de mensajes, necesitas los siguientes elementos:

  • Ruta de acceso a la clave de la cuenta de servicio del proyecto de GCP en la máquina de desarrollo
  • El agente name (por ejemplo, "brands/12345/agents/67890")

    Si no conoces el name del agente, consulta Enumera todos los agentes de una marca.

  • Zonas horarias de disponibilidad de bots, días de la semana y horas

  • Zonas horarias de disponibilidad humana, días de la semana y horas

Si no conoces los valores actuales de primaryAgentInteraction y additionalAgentInteractions, consulta Obtén información del agente.

Enviar la solicitud de actualización

Para actualizar el agente, ejecuta el siguiente comando. Reemplaza las variables por los valores que identificaste en Requisitos previos.

Si tienes disponibilidad de bots y mensajería humana, especifica la disponibilidad de bots en primaryAgentInteraction y la disponibilidad humana en una instancia de additionalAgentInteractions.

Bot y humano


# This code updates the agent interaction of a bot and human representatives.
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__ and __AGENT_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.primaryAgentInteraction,businessMessagesAgent.additionalAgentInteractions" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "primaryAgentInteraction": {
      "interactionType": "BOT",
      "botRepresentative": {
        "botMessagingAvailability": {
          "hours": [
            {
              "startTime": {
                "hours": 20,
                "minutes": 0
              },
              "endTime": {
                "hours": 8,
                "minutes": 0
              },
              "timeZone": "America/Los_Angeles",
              "startDay": "MONDAY",
              "endDay": "SUNDAY"
            }
          ]
        }
      }
    },
    "additionalAgentInteractions": [
      {
        "interactionType": "HUMAN",
        "humanRepresentative": {
          "humanMessagingAvailability": {
            "hours": [
              {
                "startTime": {
                  "hours": 8,
                  "minutes": 0
                },
                "endTime": {
                  "hours": 20,
                  "minutes": 0
                },
                "timeZone": "America/Los_Angeles",
                "startDay": "MONDAY",
                "endDay": "SUNDAY"
              }
            ]
          }
        }
      }
    ]
  }
}'

Solo bot


# This code updates the primary agent interaction of a bot representative
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__ and __AGENT_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.primaryAgentInteraction" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "primaryAgentInteraction": {
      "interactionType": "BOT",
      "botRepresentative": {
        "botMessagingAvailability": {
          "hours": [
            {
              "startTime": {
                "hours": 20,
                "minutes": 0
              },
              "endTime": {
                "hours": 8,
                "minutes": 0
              },
              "timeZone": "America/Los_Angeles",
              "startDay": "MONDAY",
              "endDay": "SUNDAY"
            }
          ]
        }
      }
    }
  }
}'

Solo personas


# This code updates the primary agent interaction of a human representative
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__ and __AGENT_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.primaryAgentInteraction" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "primaryAgentInteraction": {
      "interactionType": "HUMAN",
      "humanRepresentative": {
        "humanMessagingAvailability": {
          "hours": [
            {
              "startTime": {
                "hours": 20,
                "minutes": 0
              },
              "endTime": {
                "hours": 8,
                "minutes": 0
              },
              "timeZone": "America/Los_Angeles",
              "startDay": "MONDAY",
              "endDay": "SUNDAY"
            }
          ]
        }
      }
    }
  }
}'

Para ver las opciones de formato y valor, consulta brands.agents.patch y SupportedAgentInteraction.