{"repo":"musnows/Kook-Ticket-Bot","free":true,"listed":false,"github":"https://github.com/musnows/Kook-Ticket-Bot","clone":"git clone https://github.com/musnows/Kook-Ticket-Bot.git","description":"A Ticket Bot for KOOK (khl.py) 表单机器人，不会写代码也能自主化部署","language":"Python","stars":38,"topics":["python","kook","api","khl","bot"],"license":"MPL-2.0","category":"api-integrations-sdks","readme_excerpt":"Kook-Ticket-Bot 1.说明 A ticket bot for KOOK, 自托管 表单/工单系统机器人 工作流程 当用户B点击卡片消息的按钮后，创建一个只有用户B可见的文字频道 Bot会自动在该临时频道发送一条消息，并 @用户B 和处理表单的 @管理员 当处理完毕后，点击 关闭 按钮，Bot会删除该文字频道 文字频道删除后，Bot会给预先 设置好的log频道 和 开启ticket的用户 发送一条记录信息，并在服务器后端保存该ticket的聊天记录； 管理员可以使用 /tkcm 命令，指定ticket编号对该工单发表评论 附加功能 通过表情回应给用户添加对应角色 设置Bot动态 游戏/音乐 本README尽量详细，争取让没有写过python代码，但了解基本编程环境搭建的用户能配置成功并正常使用bot！ 无须服务器和环境搭建，在replit上部署本bot！WIKI教程。由于replit策略变动，此教程内容已失效。 如果您对本README还有完善的建议，十分欢迎您加入KOOK帮助频道与我联系，亦或者在仓库提出issue。 2.帮助命令 Bot的帮助命令为 /tkhelp 。 主要配置项均在配置文件中，后文有提及。 3.安装和运行 3.1 Python 运行 使用本机器人之前，请先确认您的python版本高于 3.9 , 安装以下依赖项 完成下方的配置后，就可以运行bot了。 如果是linux系统需要bot后台运行，使用如下命令 3.2 Docker 运行 提供了一个docker容器供不太熟悉Linux命令行的用户使用，镜像名字为 musnows/kook-ticket-bot 。 在使用镜像创建容器之前，您需要参考后文的教程，在本地准备一个存放配置文件的目录（包括 config.json 和 TicketConf.json ，并将该目录映射到容器内的 /app/config 中。 示例运行命令如下 如果您需要使用Webhook的方式对接机器人到kook，则还需要暴露容器内的40000端口。另外，您还需要开启宿主机服务器上该端口的防火墙，以保证外网可以正常连接这个端口。 如果您在创建docker容器后容器无法运行，且 docker logs 容器ID 的报错如下所示，这代表容器内的python没有办法通过DNS获取到kook服务器的IP地址。 一般这种情况都是DNS的配置问题，可以在run的时候加上如下命令设置DNS为字节跳动的公共DNS服务器。 使用run启动容器后，请使用 docker ps 检查机器人的容器是否正常运行，并使用如下命令查看日志，判断机器人是否正常启动。如果机器人的容器没有终止，且日志没有报错，那就可以去kook频道中尝试使用 /tkhelp 帮助命令呼出机器人了。 日志中出现如下两行，即为机器人正常启动。其中 fetch public channel success 为机器人启动成功标志。 4.Config 配置项（必看） 因为bot开机的时候就会打开下面的文件，若缺少字段，会影响bot的正常运行； 目前在 utils/file.py 的底部打开了所有的 配置文件 ，并添加了 create log file() 函数来自动创建不存在的数据文件。 以下README中对配置文件的示例仅供参考，若运行后出现了自动创建文件失败的报错，请采用REAMDE中的描述手动创建配置文件！ 4.1 机器人 token 配置 在 ./config 路径中添加 config.json ，并在里面填入config-exp.json的内容来初始化","default_branch":null,"files":null,"tree":[],"storefront":"/r/musnows","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/musnows/Kook-Ticket-Bot/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}