ddns-go
ddns-go copied to clipboard
Webhook配置参考
可把大家常用的Webhook通知分享出来,只分享,不提问,无关的将被删除
企业微信
下载企业微信→左上角三横杠→全新创建企业→个人组件团队(创建个人的企业群聊), 进入群聊添加 [群机器人] 复制机器人Webhook地址填入ddns-go后台Webhook URL地址栏。 在RequestBody栏填入回调函数,格式:
{ "msgtype": "markdown","markdown": { "content": "公网IP变更:\n 新IPV6地址:#{ipv6Addr} \n 已解析的域名:#{ipv6Domains} \n 域名更新结果:#{ipv6Result}" } }
饭碗警告
链接:https://fwalert.com (含 aff,注册后会赠送 10 元余额)
支持通过 邮件(0.02元/次)、短信(0.1元/次)、电话(0.2元/次)、Telegram(免费)、饭碗警告App(免费) 的方式推送通知。
先点击右上角头像选择“联系方式”并在此对你所希望的通知渠道进行绑定,然后进入“转发规则”,点击加号新建规则,其中触发方式选择 Webhook,可参照下图添加模板变量,并依据你所设置的模板变量来设置通知正文,最后联系方式选择先前绑定的通知渠道即可。
保存转发规则后会生成一个 Webhook 地址,将该地址后添加
?result=#{ipv6Result}&addr=#{ipv6Addr}
(此处等号前的变量需与前面设置的一致) 填入 ddns-go 后台 Webhook URL 地址栏并保持 RequestBody 留空即可。
企业微信{"msgtype": "markdown","markdown": {"content": "#### 你的公网IP变了 \n - IPV4地址:#{ipv4Addr} \n - 域名更新结果:#{ipv4Result} \n - IPV6地址:#{ipv6Addr}\n - 域名更新结果:#{ipv6Result} \n"}}
Apprise的邮箱推送
- apprise webhook url https://你的公网域名:端口/notify/你的密钥 就是一个webhook url "你的密钥"是自建的{key}或者token,可以换成任意一个
- 设置推送邮箱 进入https://你的公网域名:端口/cfg/你的密钥 配置一下 mailto://邮箱账号:授权码@qq.com?name=📢DDNS-GO
- 配置DDNS-GO
在webhook url中填入第一步里的url
在request body中填入:
{ "title":
"公网IP变动了",
"format":
"html",
"body":
"新IPV4地址:#{ipv4Addr}
已解析的域名:#{ipv4Domains}
域名更新结果:#{ipv4Result}
------DDNS-GO------"} *其中的"title"、"type"、"format"、"body"都是apprise定义的,其中的#{ipv4Addr}、#{ipv4Domains}、#{ipv4Result}是DDNS-GO定义的
效果如图:
我在ddns-go的webhook通知方面主要用的是“方糖”和“爱语飞飞”,两者都是在微信(个人版)上推送通知给我的。免费用户在方糖上每天可以推送5次,爱语飞飞现在好像还是免费不限次。我用得比较初级,在此只是告诉大家有这两个渠道。它们有没有其他推送方式,例如短信,邮件,丁丁等,我也没深入研究,可否实现更复杂的功能,我也没有研究。
http://www.pushplus.plus/send? 请问下 这个直接get日志提示成功,但是收不到消息 post又无法识别到RequestBody的内容
Telegram
- Webhook url
https://api.telegram.org/bot{your token}/sendmessage
- RequestBody
{ "chat_id":"{notify room id}", "text":"外網IP改變:\n新IPV4地址:#{ipv4Addr}\n域名更新结果:#{ipv4Result}" }
- Result
-
ntfy : 免费免注册可自建的多平台推送方案。
-
使用官方/公共服务器,推荐以 uuid 为 topic :
-
uuidgen
:e056a473-c080-4f34-b49c-e62f9fcd1f9d
- URL :
https://ntfy.sh/
- RequestBody :
{ "topic": "e056a473-c080-4f34-b49c-e62f9fcd1f9d", "message": "IPv4已变更:#{ipv4Addr},域名 #{ipv4Domains} 更新#{ipv4Result}", "title": "DDNS-GO Cloudflare 更新", "priority": 2, "actions": [{ "action": "view", "label": "管理界面", "url": "http://192.168.0.1:9876/" }] }
- 客户端添加订阅topic:
e056a473-c080-4f34-b49c-e62f9fcd1f9d
,可设置别名。
-
-
自建服务并且设置了认证:
- 生成
auth
参数(*nix命令):echo -n "Basic `echo -n '<user>:<pass>' | base64`" | base64 | tr -d '='
(替换<user>
和<pass>
),请结合https
加密url,详细请参考ntfy文档。 - URL:
https://ntfy.example.com/?auth=<上一步生成的base64 auth参数>
- RequestBody :
{ "topic": "ddns-go", "message": "IPv4已变更:#{ipv4Addr},域名 #{ipv4Domains} 更新#{ipv4Result}", "title": "DDNS-GO Cloudflare 更新", "priority": 2, "actions": [{ "action": "view", "label": "管理界面", "url": "http://192.168.0.1:9876/" }] }
- 客户端在设置里更改默认服务器为自建:
https://ntfy.example.com/
,设置用户名和密码,然后添加订阅topic:ddns-go
。
- 生成
-
推送效果
https://api.telegram.org/bot{your token}/sendmessage
测试失败,返回内容: {"ok":false,"error_code":400,"description":"Bad Request: chat not found"} ,返回状态码: 400
Gotify
首先,登录到 Gotify 的 WebUI,点击 APPS
-> CREATE APPLICATION
来创建 Token,得到 Token 后回到 ddns-go
。
然后,登录到 ddns-go,找到 Webhook
,在 URL
处填入:
http://[IP]/message?token=[Token]
将 [IP]
替换为 Gotify 服务器的 IP,将 [Token]
替换为得到的 Token。
在 RequestBody
处填入:
{
"title": "你的公网 IP 变了",
"message": "IPv4 地址:#{ipv4Addr}\n域名更新结果:#{ipv4Result}",
"priority": 5,
"extras": {
"client::display": {
"contentType": "text/plain"
}
}
}
效果:
参考:
像是使用本地搭建的通知服务(设置了证书),ddns访问内网地址会提示“无法验证由服务器提供的证书“,请问这个如何解决
像是使用本地搭建的通知服务(设置了证书),ddns访问内网地址会提示“无法验证由服务器提供的证书“,请问这个如何解决
通过添加选项 -skipVerify
跳过证书验证。
Syncology Chat 整合
http://localhost:5000/chat/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=AABBCC
payload={"text":"IPv6变了#{ipv6Addr},域名更新结果:#{ipv6Result}"}
GO-CQHTTP机器人
http://ip:5700/send_msg?user_id=接收QQ号码&message= IPv6变了#{ipv6Addr},域名更新结果:#{ipv6Result}
Telegram
- Webhook url
https://api.telegram.org/bot{your token}/sendmessage
- RequestBody
{ "chat_id":"{notify room id}", "text":"外網IP改變:\n新IPV4地址:#{ipv4Addr}\n域名更新结果:#{ipv4Result}" }
- Result
![]()
如果是内地的动态ip服务器,用香港服务器反代了tg的api应该怎样修改呢
我在ddns-go的webhook通知方面主要用的是“方糖”和“爱语飞飞”,两者都是在微信(个人版)上推送通知给我的。免费用户在方糖上每天可以推送5次,爱语飞飞现在好像还是免费不限次。我用得比较初级,在此只是告诉大家有这两个渠道。它们有没有其他推送方式,例如短信,邮件,丁丁等,我也没深入研究,可否实现更复杂的功能,我也没有研究。
请教在ddnsgo具体配置iyuu的方法
http://www.pushplus.plus/send? 请问下 这个直接get日志提示成功,但是收不到消息 post又无法识别到RequestBody的内容
RequestBody里面需要传JSON
{
"content": "xxxx"
}
apprise最新版header里要加一句这个 Content-Type: application/json 不然没法识别
NoneBot+plugin to QQ or other
To QQ
- Webhook url
http://127.0.0.1:8080/report
- RequestBody
{
"token": "REPORT_TOKEN",
"title": "你的公网IP变了",
"content": "\n ipv4是:#{ipv4Addr} \n 域名更新结果:#{ipv4Result} \n 更新的域名是:#{ipv4Domains}",
"send_to": "QQ"
}
- Result
Telegram测试成功,不是用楼上的方案,填写{your token}和,{your id},要把{}去掉 URL:https://api.telegram.org/bot{your token}/sendMessage?chat_id={your id}&text=IPV4变更#{ipv4Result},IPV6变更#{ipv6Result},注意看下QQ和Wechat是否能上网
飞书的配置
{"msg_type": "post","content": {"post": {"zh_cn": {"title": "你的公网IP变了","content": [[{"tag": "text","text": "IPv4地址:#{ipv4Addr}"}] , [{"tag": "text","text": "域名更新结果:#{ipv4Result}"}],[{"tag": "text","text": "IPv6地址:#{ipv6Addr}"}] , [{"tag": "text","text": "域名更新结果:#{ipv6Result}"}]]}}}}
请教在ddnsgo具体配置iyuu的方法 https://iyuu.cn/【token】.send?title=你的公网IP变了&desp=主人IPv4变了#{ipv4Addr} , 域名更新结果:#{ipv4Result}
请教在ddnsgo具体配置iyuu的方法 https://iyuu.cn/【token】.send?title=你的公网IP变了&desp=主人IPv4变了#{ipv4Addr} , 域名更新结果:#{ipv4Result}
需要把title改为text,没有title这个参数了
Telegram测试成功,不是用楼上的方案,填写{your token}和,{your id},要把{}去掉
URL:https://api.telegram.org/bot{your token}/sendMessage?chat_id={your id}&text=IPV4变更#{ipv4Result},IPV6变更#{ipv6Result},注意看下QQ和Wechat是否能上网
是不是失效了,我用不行提示404
使用CF 反代TG api,通知自建BOT
新建CF Workers,填入以下内容,并使用自定义域
const tg_host = "api.telegram.org";
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
async function handleRequest(request) {
var u = new URL(request.url);
u.host = tg_host;
var req = new Request(u, {
method: request.method,
headers: request.headers,
body: request.body
});
const result = await fetch(req);
return result;
}
- 例如:你的
自定义域
为www.tiktok.com
,那么api.telegram.org
=www.tiktok.com
自建BOT
- 搜索
@BotFather
,按提示创建自己的BOT
DDNS-GOWebhook
填写
- URL:
# 注意:bot后直接接Token,没有其它符号
https://www.tiktok.com/bot<自建BOT Token>/sendmessage
- RequestBody:
{
"chat_id": "你自己的UserID",
"text": "主人!您的 IP 有变化\n\nIPv4: #{ipv4Result}\nIP: #{ipv4Addr}\n域名: telegram.org\n\nIPv6: #{ipv6Result}\nIP: #{ipv6Addr}\n域名: telegram.org"
}
用文本格式可在微信中直接看 Webhook地址填入ddns-go后台Webhook URL地址栏。 在RequestBody栏填入回调函数,格式:
{ "msgtype": "text","text": {"content": "公网IP变更:\n 新IP地址:#{ipv4Addr} \n 已解析的域名:#{ipv4Domains} \n 域名更新结果:#{ipv4Result} \n 新IP地址:#{ipv6Addr} \n 已解析的域名:#{ipv6Domains} \n 域名更新结果:#{ipv6Result}" } }" } }
webhook在slack上怎么配置?一直配置不好。
Slack配置webhook:
先去这个位置把webhook url复制下来。
RequestBody填写:
{"text": "您的公网IP已经变化:\n\n 新IPV4地址:#{ipv4Addr} \n 已解析的域名:#{ipv4Domains} \n 域名更新结果:#{ipv4Result} \n\n 新IPV6地址:#{ipv6Addr} \n 已解析的域名:#{ipv6Domains} \n 域名更新结果:#{ipv6Result}" }
Headers填写:
'Content-Type': 'application/json'
企业微信:
{ "msgtype": "markdown","markdown": { "content": "**公网IP变更:**\n >域名更新结果:<font color=\"warning\">#{ipv4Result}</font> \n>新ipv4地址:<font color=\"comment\">#{ipv4Addr}</font> \n>已解析的域名:<font color=\"comment\">#{ipv4Domains}</font>" } }
钉钉
{
"msgtype": "markdown",
"markdown": {
"title": "您的公网IP已变更:",
"text": "#### 公网IP已变更:\n #### ------IPv4------\n #### 域名更新结果:<font color=\"warning\">#{ipv4Result}</font> \n #### 新IPV4地址:#{ipv4Addr} \n #### 已解析的域名:#{ipv4Domains} \n #### ------IPv6------\n #### 域名更新结果:<font color=\"warning\">#{ipv6Result}</font> \n #### 新IPv6地址:#{ipv6Addr} \n #### 已解析的域名:#{ipv6Domains} \n #### ------DDNS-GO------\n"
}
}