使用Facebook API使用访问令牌访问Facebook私人消息

时间:2017-02-23 17:00:14

标签: c# facebook facebook-graph-api facebook-c#-sdk facebook-access-token

我们有角度和角度C#web应用程序。 我们计划使用我们的Facebook页面来处理我们的客户问题和投诉。 我们将在我们的网站上显示Facebook访客帖子,以便我们的代表注意并回复。 (可能是新评论或回复现有)

我们的代表要求客户发送私信,然后用户向我们发送消息,然后我们可以在我们的网站上看到该消息并通过我们的网站回复该消息。 通过这种方式,我们将能够通过我们的应用程序解决客户的问题。

public static FacebookClient GetClientApplicationAccessToken(FacebookClient client)
{
    dynamic accessToken = client.Get("oauth/access_token", new
    {
        client_id = "my_ApplicationId",
        client_secret = "my_AppSecretKey",
        grant_type = "client_credentials"
    });
    client.AccessToken = accessToken.access_token;
    return client;
}


public static dynamic GetFacebookPosts(string pageId)
{
    var client = new FacebookClient();
    GetClientApplicationAccessToken(client);
    dynamic postObject = client.Get("/" + pageId + "/feed?fields=message,from,created_time,full_picture");
    dynamic postJson = JsonConvert.DeserializeObject(posts);
    return postJson;
}

通过此访问令牌,我们可以获取Facebook帖子,但是当我们尝试在我们的Facebook页面和我们的Facebook页面之间获取对话时,这是不可能的。我们的客户通过私人消息。

dynamic postdaObject = newclient.Get("me?fields=conversations{messages{created_time,message}}");

我认为当我们使用来自上面方法的访问令牌ieGetClientApplicationAccessToken()时,它无效。但如果我更换硬编码的用户访问令牌,那么它正在工作。由于我们的应用程序最终用户将看到Facebook消息并将回复它们,因此它不需要FaceBook登录按钮。我们需要一些永久访问令牌,通过它我们可以从Facebook获取私人消息而无需任何登录按钮。请帮我解决这个问题。

0 个答案:

没有答案