使用Webhook从google脚本发送嵌入到discord



我现在正在研究在触发时发送通知,从Google脚本发送嵌入式消息给discord。

我已经通过了多种资源,但不能找到一个工作。我可以得到一个简单的消息发送跨使用webhooks然而任何时候试图插入嵌入它似乎没有发送,但没有得到任何错误出现。


var discordUrl = 'https://discord.com/api/webhooks/814799155587055667/4NuUkPYbXqgvpiAmxURnisPLGC6eJUO3uMH2jEzP0-cQkzy1Ohy2LyhB6OK5kKQdwOuM';
var options = {
muteHttpExceptions: true,
"method": "post",
"payload": JSON.stringify({
"username": "Compensation Notifier",
"avatar_url": "https://i.pinimg.com/originals/46/f2/cb/46f2cb9bd2c4be10400634ff47ba23ae.png",
"embeds": [{
"author":{
"name": "Record Added!",
},
"title": staff + " Recorded " + user + "Compensation",
"color": 15258703,
"fields": [
{
"name": "Staff Name",
"value": staff,
"inline": true
},
{
"name": "Compensated's Name",
"value": user,
"inline": true
},
{
"name": "Rubio Link",
"value": rubio
}
],
"footer": {
"text": "Compensation Recorder v1"
}
}] 
}),

};
var response = UrlFetchApp.fetch(discordUrl, options);
Logger.log(response.getContentText());
}
function test(){
var staff = "johnny";
var user = "timmy";
var rubio = "www.ogm.com";
var amount = "155555";
postAddRecordMessageToDiscord(user,staff,rubio,amount);
}

到目前为止,这对于发送消息非常好,但是似乎很少有关于如何使嵌入工作与谷歌脚本。

我知道这是可以做到的,因为我看到一个人把他的信息从他的谷歌表格发送到他的文档,他也创建了一个用户表单,但每次尝试似乎都打破了一切。

我已经尝试添加像disdiss API说的嵌入,但它似乎不起作用,现在我在一个损失。

在您的脚本中,请将contentType: "application/json"添加到options中,并再次测试。

:

var options = {
muteHttpExceptions: true,

:

var options = {
contentType: "application/json",  // <--- Added
muteHttpExceptions: true,

注意:

  • 当我使用您的请求体测试修改后的脚本时,我可以确认修改后的脚本有效。由此,我认为您的payload对象为"嵌入"。是正确的。

引用:

  • 获取(url, params)
  • <
  • 嵌入对象/gh>

最新更新