【问题标题】:GroupMe Mention APIGroupMe 提及 API
【发布时间】:2019-04-19 06:17:04
【问题描述】:

我正在创建一个 GroupMe 机器人,它可以帮助我管理几个我是管理员的大型群组。目前,我决定在本地服务器上运行的简单 HTML 页面上使用 Javascript 构建一个简单的测试机器人,以使基本功能正常工作。我已经完成了我想要的大部分工作,但是提及功能是我仍然无法弄清楚的东西。将提及消息发送到组的相关 POST 的处理方式如下:

 $.ajax({
                    url: botPostUrl,
                    type:"POST",
                    success: function(result){
                            console.log(result);
                    },
                    error: function(error){
                            console.log(`Error ${error}`);
                    },
                    data: {
                            "text" : messageContents + "\n" + mentionedMessageBlock,
                             "bot_id" : "my_bot_id",
                            "attachments": [
                              {
                                "type": "mentions",
                                "user_ids": [mentionedMembersUserIds],
                                "loci": [loci]
                              }
                            ]
                    },
                    async: false
            });

“messageContents”是我要发送的实际消息文本,“提到的消息块”包含所有提及。所以理想情况下,当我发送此消息时,我希望在 GroupMe 中提出类似的内容:“大家好,请参加今晚的会议! @User1 @User2 ..."

但是,在当前状态下,这篇文章只是将所有内容作为引用文本块发送,这意味着实际提及功能不会触发,并且提及的用户实际上不会收到通知。

这就是奇怪的地方:如果我以与上面相同的方式对 Ajax 请求的数据部分和机器人的 POST URL 执行 curl -d,则提及将正常工作。我一生都无法弄清楚为什么它可以与 cURL 而不是 Ajax 一起使用,但也许有一些简单的修复或解决方法。

非常感谢您提供的任何帮助!

【问题讨论】:

  • 你有没有找到任何解决办法。

标签: javascript jquery json ajax groupme


【解决方案1】:

嘿,所以我遇到了类似的问题,它只会发送没有通知或提及的消息。我发现我正在使用我的用户 ID,但没有在它周围包含引号。你可能需要做类似的事情

"user_ids": [\"提到的MembersUserIds\"]

此外,发送的消息会给用户一个提及通知,但文本本身并没有在消息块中为我添加“@username”。也许它只是在使用应用程序时自动添加为消息的一部分。

【讨论】:

    猜你喜欢
    • 2016-11-23
    • 2018-09-09
    • 2019-05-17
    • 2015-09-22
    • 2015-02-04
    • 1970-01-01
    • 1970-01-01
    • 2021-05-10
    • 2012-06-26
    相关资源
    最近更新 更多