PHP - 从Dialogflow Parse到URL

时间:2017-12-08 19:29:36

标签: php json webhooks dialogflow

尝试创建一个将从Dialogflow webhook接收JSON的php脚本。

然后需要解析数据并

<?php
$input = json_decode(file_get_contents('php://input'), true);
$messageId = $input["resolvedQuery"];
$text = print_r($input,true);
file_put_contents('output.txt', var_export($text, TRUE));
$url = "https://autoremotejoaomgcd.appspot.com/sendmessage?key=APAue83jLrt7xFeQoGjgKq&message=" . $messageId;  

    $data = array("result" => "resolvedQuery");
    $ch = curl_init($url);
    $data_string = json_encode($messageId);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    curl_setopt($ch, CURLOPT_POSTFIELDS, array("resolvedQuery"=>$data_string));
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER,
               array('Content-Type:application/json',
                      'Content-Length: ' . strlen($data_string))
               );

    $result = curl_exec($ch);
    curl_close($ch);
?>

我需要的数据来自resolvedQuery但我没有得到任何输出。

请有人指出我正确的方向

1 个答案:

答案 0 :(得分:0)

因此,根据我的理解,您希望在webhook中使用api.ai中的 resolvedQuery 。您需要做的就是改变:

$messageId = $input["resolvedQuery"];

$messageId = $input['result']['resolvedQuery'];

检查并告诉我它是否正常工作。我在php中进行了skype,fb和google集成,所以如果您需要任何帮助,请随时询问。