web-dev-qa-db-ja.com

Webhookを作成するにはどうすればよいですか?

だから、私はTropoとNexmoを使用してclick2callアプリを作成しています。この時点で、webhookの設定に助けが必要です。どちらもWebhookを指す場所を提供しますが、今はそこに何を含めるべきかわかりません。 PHPファイルですか?またはjson?私はすでにPHPを作成しようとしましたが、次のものがありました:

<?php
    header('Content-Type: application/json');
    ob_start();
    $json = file_get_contents('php://input'); 
    $request = json_decode($json, true);
    $action = $request["result"]["action"];
    $parameters = $request["result"]["parameters"];
    $output["contextOut"] = array(array("name" => "$next-context", "parameters" =>
    array("param1" => $param1value, "param2" => $param2value)));
    $output["speech"] = $outputtext;
    $output["displayText"] = $outputtext;
    $output["source"] = "whatever.php";
    ob_end_clean();
    echo json_encode($output);
?>

後でWebhookから情報を取得してDBに保存するにはどうすればよいですか?私はコードの断片を見ましたが、どこにそれを含めるべきかわかりません...それは私のwebhookが指すphpファイルの私のapiですか??前もって感謝します。

7
ines pelaez

そこで、非常に簡単な方法でそれを見つけました。次のコードでwebhookをphpに向けるだけです:

<?php

header('Content-Type: application/json');
$request = file_get_contents('php://input');
$req_dump = print_r( $request, true );
$fp = file_put_contents( 'request.log', $req_dump );
?>

そして、情報は投稿され、「request.log」を通じてアクセス可能になります

将来、他の人の役に立つことを願っています。

8
ines pelaez

Webhook urlは、上記のプロバイダーが何かが発生し、知っておく必要があるときにデータを送信するサーバー上の場所です。たとえば、smsが送信されるたびに、またはsmsが失敗するたびにリクエストを受け取る場合があります送信し、その情報に基づいて、ユーザーの電話番号が無効になったというマークを付けるなど、さらにアクションを実行できます。

あなたのwebhook URLがhttps://www.yoursite.com/webhooks.phpwebhooks.phpファイルには、PHPコードを配置する必要があります。このコードは、着信要求を読み取り、それに含まれる情報を使用して処理を行います。

4
Twisted1919