ボットの接続に使用したbashコマンドは次のとおりです。curl-ik-XPOST ' https://graph.facebook.com/v2.6/me/messages?access_token =#AccessToken '
私のエラーメッセージは次のとおりです。
{"error":{"message": "(#100)パラメータの受信者が必要です"、 "type": "OAuthException"、 "code":100、 "fbtrace_id": "EFqWAGq2ABs"}}
誰かそれを解決する方法はありますか?
誰かがこれを見逃した場合に備えて、誤って間違ったコンテンツタイプを使用したときにこの問題が発生しました-application/x-www-form-urlencoded
の代わりにapplication/json
を使用していました
だから私のアドバイスは全体的に、
受信者IDパラメータを送信する必要があります。試してください:
curl -X POST -H "Content-Type: application/json" -d '{ "recipient":{"id":"YOUR RECIPIENT ID" }, "message":{ "text":"hello from bot" }}' "https://graph.facebook.com/v2.6/me/messages?access_token=YOUR_ACCESSTOKEN"
宜しくお願いします。
APIエンドポイントとして「thread_settings」エンドポイント「 https://graph.facebook.com/v2.6/me/thread_settings "」を使用してください。
メッセージエンドポイントを使用しています。
しばらく前に同様のエラーが発生しました。 Postmanを使用してみてください。同じリクエストを試し、ユーザーIDとページアクセストークンを置き換えました。それはうまくいきます。
上部のImport
ボタンをクリックして、curlリクエストをrawの下に貼り付けます。次に、通話を実行してみてください。同じエラーが発生する場合は、本文に移動して変更してください。これをPostmanリクエストの本文部分に必ず入れてください。受信者IDを自分のものに置き換えます。
{
"recipient":
{
"id":"123456789"
},
"message":
{
"text":"hello, world!"
}
}
これは完全なcURL呼び出しです:受信者IDとページアクセストークンの変更
curl -X POST -H "Content-Type: application/json" -d '{ "recipient":{"id":"1234567" }, "message":{ "text":"hello from bot" }}' "https://graph.facebook.com/v2.6/me/messages?access_token=PASTETHETOKENHERE"
エンドポイントが間違っています。の代わりに https://graph.facebook.com/v2.6/me/messages?access_token=#AccessToken
、このエンドポイントを使用します
https://graph.facebook.com/v2.6/me/messenger_profile?access_token=<PAGE_ACCESS_TOKEN>
これは、ドキュメントを読まない場合に発生します。情報はここにあります https://developers.facebook.com/docs/messenger-platform/discovery/welcome-screen# 、 "Get Started Button Postbackの設定"。
それはあなたのボットのロジックに帰着します。このエラーも最近発生し、デバッグに数日かかりました。私にとっての問題は、messageData
オブジェクトをコンパイルした関数の外部でcallSendAPI(messageData)
メソッドを呼び出したことでした。
明らかに、コンパイルする関数の外にmessageData
を渡すと、コンパイルされたオブジェクトの代わりに空のオブジェクトが送信されます。したがって、エラーメッセージ(#100) The parameter recipient is required
。空のオブジェクトにreceipientId
が定義されていないという理由だけで。
コードのロジックをチェックして、私と同じ間違いをしなかったことを確認してください。これがお役に立てば幸いです:)ハッピープログラミング。
このエラーメッセージには別の理由があります。間違った文字(-tab-など)を送信すると、Facebookもこのエラーを返すので、特殊文字の戻りテキストを確認してください。
この問題は、コードにエラー(構文エラーまたは論理エラー)がある場合にも発生する可能性があります。私の場合、この部分はwebhook.php
(Facebookに登録されているコールバックページ)のコードに含まれていました。
$message = $input['entry'][0]['messaging'][0]['message']['text'];
"message":{
"text":"Sorry, we currently do not have an article related to "'.$message.'"."
}
https://domain.com/webhook.php をコールバックとして登録するまでに、まだ$message
を受信しないため、エラーが発生し、コールバックを受け入れません。 url。
コードをチェックして、チャレンジのみをエコーするようにしてください。
$challenge = $_REQUEST['hub_challenge'];
$verify_token = $_REQUEST['hub_verify_token'];
if ($verify_token === 'verify_token') {
echo $challenge;
}