PROBLEMA WEBHOOK DIALOGFLOW
Publicado por Jeronimo (1 intervención) el 10/01/2020 17:58:56
Hola que tal buenas tardes, tengo un problema con el WebHook, la parte de adquirir los datos y guardalos a una base de datos ya lo pude hacer , tengo dificultad cuando quiero mandarle dependiendo lo que me escriba el cliente, mandarle yo un texto, en este caso un simple texto, luego lo traere desde la BDD.
Mi codigo es el siguiente:
El JSON de DialogFlow:
PD: Cuando lo testeo en postman, con el mismo JSON, y le pongo hola en parametro , o en el queryText me devuelve correctamente los valores con el texto que puse en el código.
Desde ya muchas gracias por la ayuda, saludos!
Mi codigo es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
$method = $_SERVER['REQUEST_METHOD'];
if($method == 'POST'){
$requestBody = file_get_contents('php://input');
$json = json_decode($requestBody);
$text = $json->queryResult->queryText; // ACCEDO POR queryText para que sea más sencillo, e igualmente no anda. En realidad debería ser queryResult->parameters->text;
switch ($text) {
case 'hola':
$speech = "Hola";
break;
case 'chau':
$speech = "Chau";
break;
case 'Cualquiera':
$speech = "Cualquiera.";
break;
default:
$speech = "Perdon, no entendí lo que dijiste";
break;
}
$response = $json;
$responde->queryResult;
$response->fulfillmentText = $speech;
$response->fulfillmentMessages = array(
array(
"text" => array(
"text" => array($speech)
)
)
);
$myjson= json_encode($response);
echo $myjson;
}
else
{
echo "Metodo no encontrado";
}
?>
El JSON de DialogFlow:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
{
"responseId": "5adc7750-242e-4f6e-b317-c94bc8872a3c-b4ef8d5f",
"queryResult": {
"queryText": "e",
"parameters": {
"text": ""
},
"allRequiredParamsPresent": true,
"fulfillmentText": "",
"fulfillmentMessages": [
{
"text": {
"text": [
""
]
}
}
],
"outputContexts": [
{
"name": "projects/agenteprueba-wfbkiv/agent/sessions/80fc8c10-f22e-d40c-6471-fa0c0c0944fe/contexts/__system_counters__",
"lifespanCount": 1,
"parameters": {
"text": "",
"no-match": 0,
"text.original": "",
"no-input": 0
}
}
],
"intent": {
"name": "projects/agenteprueba-wfbkiv/agent/intents/745681af-0080-4a0b-86ac-1a859c6a40f4",
"displayName": "General"
},
"intentDetectionConfidence": 1,
"diagnosticInfo": {
"webhook_latency_ms": 650
},
"languageCode": "es"
},
"webhookStatus": {
"code": 14,
"message": "Webhook call failed. Error: UNAVAILABLE."
}
}
PD: Cuando lo testeo en postman, con el mismo JSON, y le pongo hola en parametro , o en el queryText me devuelve correctamente los valores con el texto que puse en el código.
Desde ya muchas gracias por la ayuda, saludos!
Valora esta pregunta


0