虚位以待,此位置招租
虚位以待,此位置招租
虚位以待,此位置招租
虚位以待,此位置招租
虚位以待,此位置招租
虚位以待,此位置招租
DeepSook聚合登录 阿里云服务器 99元/年 大流量卡 - 免开卡,免运费 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租 此位置招租
输入验证码,即可复制
扫描二维码输入:jiuge,即可获取验证码
只需要3秒时间
返回列表 发布新帖

[模板插件] 告别复杂配置!密码下载+多平台机器人,一键搞定

14 0
发表于 5 天前 | 查看全部 阅读模式
前言

这是一个用于WordPress的附件密码下载,对接公众号 提供API 方便其他程序调用 支持多平台机器人 如 QQ官方机器人 TG机器人等 密码随机生成,支持ai大模型。程序永久免费且开源 开源地址 https://github.com/naigoucn/ngdown
前台下载样式参考 6KE论坛的子比下载插件
微信机器人参考http://github.com/wangvsa/wechat-robothttps://github.com/shiheme/wechat-robot-guoqing
图标样式采用开源icon库 https://remixicon.com
不对接公众号的版本 下载地址
防止资源丢失,建议先转存到网盘
请打开外部链接进行下载


支持功能

  • 输入密码下载附件
  • 对接微信公众号随机密码
  • 公众号推送文章
  • 单篇文章密码30分钟自动切换
  • 对接AI大模型实现自动聊天
  • 提供api接口 方便其他机器人框架调用
  • 支持多平台机器人 如QQ/TG等 (取决于您的机器人框架)
  • 后台设置页面 自定义回复设置 大模型设置 api密钥设置
  • 自动识别网盘链接展示对应图标
  • 支持选择开启或关闭密码下载

演示图
截图202502272125033582.png

截图202502272125302549.png 截图202502272125449647.png 截图202502272126048554.png


使用方法

文章页


新建文章后,如果想在文章底部加上密码下载就在编辑器底部找到下图设置

截图202502272126593599.png

填写对应内容即可,选项留空前台不显示该内容,显示选项 选择隐藏前台也不显示该内容。

对接微信公众号

截图202502272127352721.png 截图202502272127543895.png

在这里输入你的微信公众号 开发者ID(AppID) 和 开发者密码(AppSecret)

如何获取开发者ID(AppID) 和 开发者密码(AppSecret)?
登录微信公众号平台 mp.weixin.qq.com 登录账号 找到 设置与开发 点击 开发接口管理 如下图

截图202502272128369961.png
复制appid粘贴到上面的位置,密钥点击重置,扫码后重新获取 记得把服务器ip设置为IP白名单。
截图202502272128585918.png

服务器地址改为 https://你的域名/?wechat token填写wechat 消息加解密方式选择明文模式。

对接AI大模型

后台找到微信机器人 AI模型 按要求填写

截图202502272129297555.png

这个适配的是openai的,大部分大模型都支持,所以改接口 改密钥 改模型代码 理论支持所有大模型,例如腾讯混元 阿里通义千问 DeepSeek等。 预装了部分ai大模型 如通义千问 腾讯混元 deepseek kimi 模型记得选择正确 不然会失败。

API秘钥


插件提供api用来获取密码 采用post形式 API Token按你需要的设置。

截图202502272130107888.png

接口请求方式
api_token就是你设置的token postid就是你开启密码下载的文章
  1. URL: https://域名/wp-json/ngapi/v1/get-password
  2. Method: POST
  3. Headers: Content-Type: application/json
  4. Body (JSON):
  5. {
  6.     "api_token": "your_api_token_here",
  7.     "postid": your_post_id_here
  8. }
复制代码

对接其他机器人
QQ机器人
我使用的是 AstrBot 机器人框架 对接的QQ官方机器人 AstrBot安装教程 和使用教程 这里就不赘述 需要的请自行前往仓库获取。

插件代码及仓库地址
https://github.com/naigoucn/astrbot_plugin_ngdown
  1. from astrbot.api.event import filter, AstrMessageEvent, MessageEventResult
  2. from astrbot.api.star import Context, Star, register
  3. from astrbot.api import logger
  4. import requests

  5. @register("article_password", "奶狗", "奶狗WordPress文章密码下载插件", "1.0.0", "repo url")
  6. class ArticlePasswordPlugin(Star):
  7.     def __init__(self, context: Context):
  8.         super().__init__(context)
  9.         self.api_token = "966877"  # 在这里配置 API Token
  10.         self.website_url = "https://www.naigou.cn"  # 在这里配置网站 URL后面不要加/
  11.    
  12.     # 注册指令的装饰器。指令名为 文章密码。注册成功后,发送 `/文章密码 xxx` 就会触发这个指令,并回复 密码信息
  13.     @filter.command("文章密码")
  14.     async def article_password(self, event: AstrMessageEvent):
  15.         '''这是一个获取文章密码的指令''' # 这是 handler 的描述,将会被解析方便用户了解插件内容。建议填写。
  16.         user_name = event.get_sender_name()
  17.         message_str = event.message_str.strip() # 用户发的纯文本消息字符串
  18.         
  19.         # 解析命令参数
  20.         parts = message_str.split(maxsplit=1)
  21.         if len(parts) != 2:
  22.             yield event.plain_result(f"格式错误,请使用 `/文章密码 文章ID` 格式。")
  23.             return
  24.         
  25.         command, post_id_str = parts
  26.         
  27.         # 检查 post_id 是否为数字
  28.         if not post_id_str.isdigit():
  29.             yield event.plain_result(f"格式错误,请使用 `/文章密码 文章ID` 格式,文章ID必须是数字。")
  30.             return
  31.         
  32.         post_id = int(post_id_str.strip())
  33.         
  34.         if not post_id:
  35.             yield event.plain_result(f"无效的文章ID,请重新输入。")
  36.             return
  37.         
  38.         # 构建API请求数据
  39.         data = {
  40.             "api_token": self.api_token,
  41.             "postid": post_id
  42.         }
  43.         
  44.         # 调用API获取密码
  45.         api_url = f"{self.website_url}/wp-json/ngapi/v1/get-password"
  46.         try:
  47.             response = requests.post(api_url, json=data)
  48.             response.raise_for_status()
  49.             data = response.json()
  50.             
  51.             # 统一返回 API 返回的消息内容
  52.             message = data["data"].get("message", "未知错误")
  53.             yield event.plain_result(f"{message}")
  54.         
  55.         except requests.exceptions.HTTPError as e:
  56.             logger.error(f"HTTP 错误: {e}")
  57.             try:
  58.                 data = response.json()
  59.                 message = data["data"].get("message", "未知错误")
  60.             except (ValueError, KeyError):
  61.                 message = "无法解析API响应"
  62.             yield event.plain_result(f"{message}")
  63.         except requests.exceptions.RequestException as e:
  64.             logger.error(f"请求API时发生错误: {e}")
  65.             yield event.plain_result(f"请求API时发生错误: {str(e)}")
复制代码


TG机器人

部分框架提供对接其他平台的功能 参考QQ机器人的对接方式

文件下载

夸克网盘UC网盘GitHub
转载:https://www.naigou.cn/681.html

免责声明

本社区仅提供信息交流平台,帖子内容由用户自行发布,不代表社区立场。用户对发布内容负全责,包括版权、隐私、诽谤等,社区不承担因使用社区内容导致的损失。禁止发布侵权、隐私信息,发现侵权请联系我们。社区不负责第三方内容,用户因访问第三方内容产生的损失,社区不担责。用户须遵守规则和法律,不得发布违法、不当内容,违规内容将被删除。发表帖子即同意本声明,不同意请勿发帖。


特别提醒:网络空间并非法外之地,请广大用户自觉遵守法律法规,共同营造健康、文明、有序的网络环境。

本社区运营团队

联系我们: 如有疑问或发现违规行为,请联系管理员:kefu@foxccs.com

远方路灯明灭,银河倾斜,一斛星斗洒满天街。

回复

快捷回复: 经历想经历的,成为想成为的 - 九歌社区
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

投诉/建议联系

foxccs@qq.com

网站内容来源于网络,版权争议与本站无关。
请在下载后的24小时内从您的设备中彻底删除上述内容。

  • QQ交流群
  • 添加微信客服
Copyright © 2004-2025 九歌社区 版权所有 All Rights Reserved.
关灯 在本版发帖
扫一扫添加微信客服
官方QQ交流群
手机扫一扫访问
返回顶部
快速回复 返回顶部 返回列表