【问题标题】:Sending notifications / requests to application users (Facebook - C#)向应用程序用户发送通知/请求(Facebook - C#)
【发布时间】:2012-11-27 22:29:47
【问题描述】:

标题可能无法描述我真正想要的内容,但我希望这不是一个重复的问题,因为我在搜索中找不到相关答案。

我正在为我自己的魔兽世界公会开发一个 Facebook 团队管理器应用程序,我想要它做的是:

  • 当警官创建突袭时,向所有应用程序用户发送通知(或应用请求),无论他们是否是警官的朋友。
  • 此请求可以是用户对用户或应用对用户的请求,唯一重要的是它必须在 Facebook 端触发通知。

再次声明,我并不是要向非应用程序用户发送应用程序请求。我只是想要一种向由用户事件触发的应用程序用户发送请求的方法。

应用程序已经拥有“Facebook 群组”授权,这意味着所有应用程序用户都是特定 Facebook 群组(而非页面)的成员。

这可以通过 Facebook 对话框实现吗?

【问题讨论】:

    标签: c# facebook facebook-requests


    【解决方案1】:

    下面是一些使用 C# SDK 发送应用请求的粗略代码:

    private string getAppAccessToken()
    {
        string facebookAppId = ConfigurationProvider.GetSetting("FacebookAppId");
        string facebookAppSecret = ConfigurationProvider.GetSetting("FacebookAppSecret");
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(
            String.Format("https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id={0}&client_secret={1}",
            facebookAppId, facebookAppSecret));
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        var responseStream = new StreamReader(response.GetResponseStream());
        var responseString = responseStream.ReadToEnd();
    
        if (responseString.Contains("access_token="))
        {
            return responseString.Replace("access_token=", string.Empty);
        }
    
        return "";
    }
    
    private void postRequest(string id, string message)
    {
        FacebookClient app = new FacebookClient(this.getAppAccessToken());
        dynamic parameters = new ExpandoObject();
        parameters.message = message;
        parameters.title = "Please use our app";
        dynamic myId = app.Post(id + "/apprequests", parameters);
    }
    

    通知应出现在 App Center / Requests 下。

    希望这会有所帮助。

    【讨论】:

    • 这对我了解 apprequests 的发送方式有很大帮助。谢谢。
    • 这个可以用来发送通知吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-13
    • 1970-01-01
    相关资源
    最近更新 更多