向应用程序用户发送通知/请求(Facebook - C#)

Posted

技术标签:

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

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

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

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

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

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

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

【问题讨论】:

【参考方案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 的发送方式有很大帮助。谢谢。 这个可以用来发送通知吗?

以上是关于向应用程序用户发送通知/请求(Facebook - C#)的主要内容,如果未能解决你的问题,请参考以下文章

Facebook 用户到用户请求自定义消息问题

Facebook iOS SDK - 向 facebook 用户发送应用请求

使用 Facebook ID 向特定用户发送 Parse 推送通知无法在 Android 上运行

如何为使用 Facebook 登录的用户发送游戏请求推送通知?

向朋友发送应用邀请

未经用户同意向 Web 应用程序发送推送通知