6

//更新: 以下の回答を読むことができます。解決策は、Facebook チャット API を使用してチャットを構築することです (メッセージング システムではなく、チャットとして使用する必要がありますが、メッセージが表示されます)。

それで、Facebookで私(HiQ)とマグナスの間で次の会話をしています。私が理解しているように、グラフ API から会話を開始する方法はありませんが、 https://developers.facebook.com/docs/reference/api/using-comments/に従ってメッセージに応答できるはずです 。

2 つの問題があります。(私の試みた解決策は次のとおりです) 1. 個々のコメントを取得できません。図 2 (コメントのコレクションを取得できます 図 3) 2. コメントに返信できません。図 2.

また、許可するようにすべてのアクセス許可が設定されていることに注意してください。グラフ API エクスプローラーを使用しなかった場合は、リクエストの前にアクセス許可を要求する必要があります。

図 1. メッセージ/会話 会話に対する json レスポンス

図 2. 個々のコメントを取得できません (ログイン ユーザーが投稿したコメントをクリックします)。 Json エラー メッセージ

図 3. 正常に機能するコメントのみに対する応答。 Json レスポンスとリクエスト コメント コレクション

試行された解決策: ドキュメントには、次のようなコメントへの返信の投稿が記載されています : https://developers.facebook.com/docs/reference/api/publishing/ /

コメントと返信の作成

/comments 接続を持つオブジェクトの個々のコメントは、API 呼び出しで作成できます。

POST /{object-id}/comments? message='This is my message' メッセージは、この API 呼び出しの唯一のパラメーターです。コメント テキストを含む文字列である必要があります。

そこで、次のことを試しました(/コメントの後の疑問符の有無にかかわらず)。図 4. コメントにコメントを投稿しようとする: json でのエラー応答とリクエスト

そしてコメントIDに直接(疑問符の有無にかかわらず): json エラーコードとリクエスト

どんな提案でも歓迎します。私は真剣に立ち往生しています! 実装は Facebook C# SKD で行われます

4

2 に答える 2

4

グラフ API を介してプライベート メッセージに返信することは、実際には不可能だと思います。特に「コメント」接続があるため、これが混乱しているように見える理由がわかります。ドキュメントから収集できるものからhttps://developers.facebook.com/docs/reference/login/extended-permissions/ 「publish_actions」権限「アプリがコンテンツ、コメント、いいねをユーザーのストリームに投稿できるようにします」注ユーザーのSTREAMに投稿するだけです。

アプリがユーザーにスパムを送信する可能性があるため、Facebook はこの機能を廃止したと思います。彼らが必要とするのは、1 つの正当なメッセージだけであり、常にコメントで返信することができます。また、メッセージページhttps://developers.facebook.com/docs/reference/api/message/には、具体的にはオプションとして「読み取り」のみがリストされています。

この投稿でも反応を見ることができます

Accessstokenを使用してグラフAPIを介してFacebookの友人にメッセージを送信する方法

ただし、興味深いのは、ユーザーが最初に開始した場合、Page アカウントはプライベート メッセージに返信できることです。また、ユーザーからの返信がなければ、ページは 2 件の返信しか送信できません。私の推測では、これにより 1 つの「自動応答」が可能になり、その後、ユーザーに宛てた誰かからの実際の返信が可能になりますhttps://developers.facebook.com/docs/reference/api/page/#messages これはおそらく企業が返信できるようにするためです顧客に。

私の推測では、ユーザーの access_token を取得すると、スパムの可能性が非常に高くなるため、どのアプリでもプライベート メッセージを送信することはできません。これに対処する送信ダイアログが明らかにありますが、あなたのケースでは、新しいメッセージを作成するのではなく、メッセージに返信したいと思っています。

「送信」ボタンは、メールを送信する場合など、プライベートな会話の場合に使用する必要があることを示しています。

https://developers.facebook.com/docs/reference/dialogs/send/

アプリの状況では、これが現実的に意味することは、「read_mailbox」権限を要求することです。その後、特定のユーザーからの未読メッセージがあることをアプリのユーザーに通知できます。次に、送信ダイアログを作成し、最初にメッセージを送信した友人の uid を「to」フィールドに事前入力します。これは、API エクスプローラーの「コメント」接続の一部として表示されます (私はこれをテストしました)。

唯一の注意点は、もちろん、ユーザーが送信ダイアログに追加の名前を追加して、新しいコンボを開始できることです。

お役に立てれば

于 2013-10-23T21:17:31.293 に答える