Adición de sugerencias de entrada a mensajes con Bot Connector API
Al especificar una sugerencia de entrada para un mensaje, puede indicar si el bot acepta, espera o ignora la entrada del usuario después de que el mensaje se haya entregado al cliente. Para los canales que admiten este campo, esto permite a los clientes establecer en consecuencia el estado de los controles de entrada del usuario. Por ejemplo, si la sugerencia de entrada de un mensaje indica que el bot ignora la entrada de usuario, el cliente podría desactivar el micrófono y deshabilitar el cuadro de entrada para impedir que el usuario proporcione una entrada.
Aceptar entradas
Para indicar que el bot está listo pasivamente para la entrada, pero no espera una respuesta del usuario, establezca la inputHint
propiedad en acceptingInput dentro del objeto Activity que representa el mensaje. En muchos canales, esto hará que se habilite el cuadro de entrada del cliente y que el micrófono se desactive, sin dejar de estar accesible para el usuario.
En el ejemplo siguiente se muestra una solicitud que envía un mensaje y especifica que el bot acepta la entrada. En esta solicitud del ejemplo, Direct Line representa el identificador URI de base; el identificador URI de base para las solicitudes que emite el bot puede ser distinto. Para obtener más información sobre cómo establecer el URI base, consulte API Reference (Referencia de la API).
POST https://smba.trafficmanager.net/teams/v3/conversations/abcd1234/activities/5d5cdc723
Authorization: Bearer ACCESS_TOKEN
Content-Type: application/json
{
"type": "message",
"from": {
"id": "12345678",
"name": "sender's name"
},
"conversation": {
"id": "abcd1234",
"name": "conversation's name"
},
"recipient": {
"id": "1234abcd",
"name": "recipient's name"
},
"text": "Here's a picture of the house I was telling you about.",
"inputHint": "acceptingInput",
"replyToId": "5d5cdc723"
}
Esperar entradas
Para indicar que el bot espera de forma activa una respuesta del usuario, establezca la propiedad inputHint
en expectingInput en el objeto Actividad que representa el mensaje. En los canales que lo admiten, esto hará que se habilite el cuadro de entrada del cliente y que el micrófono se active.
En el ejemplo siguiente se muestra una solicitud que envía un mensaje y especifica que el bot está esperando la entrada. En esta solicitud del ejemplo, Direct Line representa el identificador URI de base; el identificador URI de base para las solicitudes que emite el bot puede ser distinto. Para obtener más información sobre cómo establecer el URI base, consulte API Reference (Referencia de la API).
POST https://smba.trafficmanager.net/teams/v3/conversations/abcd1234/activities/5d5cdc723
Authorization: Bearer ACCESS_TOKEN
Content-Type: application/json
{
"type": "message",
"from": {
"id": "12345678",
"name": "sender's name"
},
"conversation": {
"id": "abcd1234",
"name": "conversation's name"
},
"recipient": {
"id": "1234abcd",
"name": "recipient's name"
},
"text": "What is your favorite color?",
"inputHint": "expectingInput",
"replyToId": "5d5cdc723"
}
Ignorar entradas
Para indicar que el bot no está listo para recibir la entrada del usuario, establezca la inputHint
propiedad en ignoreingInput dentro del objeto Activity que representa el mensaje. En los canales que lo admiten, esto hará que se deshabilite el cuadro de entrada del cliente y que el micrófono se cierre.
En el ejemplo siguiente se muestra una solicitud que envía un mensaje y especifica que el bot está ignorando la entrada. En esta solicitud del ejemplo, Direct Line representa el identificador URI de base; el identificador URI de base para las solicitudes que emite el bot puede ser distinto. Para obtener más información sobre cómo establecer el URI base, consulte API Reference (Referencia de la API).
POST https://smba.trafficmanager.net/teams/v3/conversations/abcd1234/activities/5d5cdc723
Authorization: Bearer ACCESS_TOKEN
Content-Type: application/json
{
"type": "message",
"from": {
"id": "12345678",
"name": "sender's name"
},
"conversation": {
"id": "abcd1234",
"name": "conversation's name"
},
"recipient": {
"id": "1234abcd",
"name": "recipient's name"
},
"text": "Please hold while I perform the calculation.",
"inputHint": "ignoringInput",
"replyToId": "5d5cdc723"
}