北京4网站建设,东莞证券官网,手机网站应该怎么做,wordpress插件汉化下载目的
一直有读 epub 电子书的习惯#xff0c;摘录段落复制下来段落很难看#xff0c;把自己写的排版器的逻辑复制下来#xff0c;写成了一个排版机器人所有发给机器人的文字#xff0c;都会经过排版#xff0c;后转发到读书频道
前提
本来最好方法是直接把机器人架在服…目的
一直有读 epub 电子书的习惯摘录段落复制下来段落很难看把自己写的排版器的逻辑复制下来写成了一个排版机器人所有发给机器人的文字都会经过排版后转发到读书频道
前提
本来最好方法是直接把机器人架在服务器上 没钱之前就折中放在自己笔记本电脑上开机运行开机运行还不起作用所以都是自己手动启动 此电脑 - 管理 - 计算机管理 - 系统工具 - 任务计划程序放置脚本在 C:\Users\You\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 目录下放置脚本在 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 目录下都不起作用…… 随身 Wifi 限速连接 Telegram 需要科学上网导致直接连不上 行里不准拉宽带说是被黑客黑过于是总行禁止了全国的 WLAN 设备 想到了部署在手机上
需求
机器人手机部署能随时开启和关闭
工具
一台 Root 过的手机Root 很重要否则读取不了文件Termux 应用程序代理软件需要放行 Termux否则下不了软件包写好的 Telegram Bot 程序代码编译后版本否则还要自己编译一遍科学上网软件黑名单模式
步骤
拷贝 Telegram Bot 程序代码到 Termux 用户主目录任意文件夹下 准备运行环境 本 Bot 使用 Grammy 框架一个使用 JavaScript 写成的框架所以需要下载 Node # termux 也使用 apt
apt install node
npm install grammy npm 下载有些慢需要 Termux 也通过代理 开启调试环境可选 Grammy 设置一个环境变量即可看到 bot 的运行情况 export DEBUGgrammy* 设置终端通过代理否则 bot 发送的请求无法到达 Telegram 服务器 export http_proxyproxy-address:port
export https_proxyproxy-address:port 运行即可 sudo -E node main.js 一定要使用 sudo否则 Android 系统禁止 Termux 自带的用户读取 /data/data/com.termux/files/home 下的文件 -E 携带当前的环境变量直接进入 sudo 的 root 环境否则 node 使用 root 权限运行还是没有调试的环境变量也就看不到调试信息而且也不能通过代理
备注
代理软件一定要是黑名单模式 黑名单模式默认其他程序为白名单通过通过 Termux 程序启动的进程是从 Android 系统 fork 出来的子进程而该子进程因为不是手机里的 apk没有包名所以使用系统的代理如果代理软件使用白名单模式相当于同时禁止了系统的代理权限所以 Bot 一定连不上 Telegram 的 API 一定要设置终端的代理并让程序启动时携带当前的环境变量sudo -E 最主要还是让终端启动的进程能够通过代理 如果还需要运行其他程序可以在 tmux 或者 screen 等终端复用软件上运行
附录
简易启动脚本
# 设置 shell 脚本安全性
set -Eexuo pipefail
# 开启调试环境
export DEBUGgrammy*
# 设置终端代理需要更改为自己的代理地址和端口
export http_proxyproxy-address:port
export https_proxyproxy-address:port
# 运行程序需要更改为自己的路径
sudo -E node main.js
启动 Log
~ $ ./run-bot.sh
allexport off
braceexpand on
emacs off
errexit on
errtrace on
functrace off
hashall on
histexpand off
history off
ignoreeof off
interactive-comments on
keyword off
monitor off
noclobber off
noexec off
noglob off
nolog off
notify off
nounset on
onecmd off
physical off
pipefail off
posix off
privileged off
verbose off
vi off
xtrace onexport DEBUGgrammy*DEBUGgrammy*export http_proxyproxy-address:porthttp_proxyproxy-address:portexport https_proxyproxy-address:porthttps_proxyproxy-address:portsudo -E node /data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/main.jsgrammy:bot Initializing bot 0msgrammy:core Calling getMe 0msgrammy:core Calling deleteWebhook 33ms
(node:30291) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.
(Use node --trace-deprecation ... to show where the warning was created)grammy:bot I am TinySnowRebornBot! 3sgrammy:bot Starting simple long polling 0msgrammy:core Calling getUpdates 3sgrammy:core Calling getUpdates 31sgrammy:core Calling getUpdates 30sgrammy:bot Processing update 124801012 15mgrammy:core Calling sendMessage 24sgrammy:core Calling getUpdates 1msgrammy:core Calling getUpdates 30sgrammy:bot Processing update 124801013 2mgrammy:core Calling sendMessage 7sgrammy:core Calling getUpdates 0msgrammy:core Calling getUpdates 32sgrammy:core Calling getUpdates 30sgrammy:bot Processing update 124801014 1mgrammy:core Calling sendMessage 27sgrammy:core Calling getUpdates 3msgrammy:bot Processing update 124801015 28sgrammy:core Calling sendMessage 28sgrammy:core Calling getUpdates 2msgrammy:core Calling getUpdates 31sgrammy:core Calling getUpdates 31sgrammy:error HttpError: Network request for getUpdates failed!grammy:error at /data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/node_modules/grammy/out/core/error.js:85:15grammy:error at process.processTicksAndRejections (node:internal/process/task_queues:105:5)grammy:error at async ApiClient.call (/data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/node_modules/grammy/out/core/client.js:54:29)grammy:error at async ApiClient.callApi (/data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/node_modules/grammy/out/core/client.js:86:22)
grammy:error at async Bot.fetchUpdates (/data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/node_modules/grammy/out/bot.js:400:27)grammy:error at async Bot.loop (/data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/node_modules/grammy/out/bot.js:375:29)grammy:error at async Bot.start (/data/data/com.termux/files/home/ChinesePassagesTypesetBotForTelegram/node_modules/grammy/out/bot.js:314:9) 0msgrammy:error Call to getUpdates failed, retrying in 3 seconds ... 2msgrammy:core Calling getUpdates 16sgrammy:core Calling getUpdates 31sgrammy:core Calling getUpdates 30sgrammy:core Calling getUpdates 30sgrammy:core Calling getUpdates 30sgrammy:bot Processing update 124801016 6mgrammy:core Calling sendMessage 22sgrammy:core Calling getUpdates 3msgrammy:core Calling getUpdates 32sgrammy:core Calling getUpdates 30sgrammy:core Calling getUpdates 30sgrammy:core Calling getUpdates 31sgrammy:core Calling getUpdates 30sgrammy:core Calling getUpdates 30sgrammy:core Calling getUpdates 31sgrammy:core Calling getUpdates 31sgrammy:bot Processing update 124801017 5m
只要没有 Error 就可以Log 中的 Error 是因为当时网络断了如果在 grammy:core Calling deleteWebhook 这一步停留了太长时间说明没有连接上 API 服务器 本文由博客一文多发平台 OpenWrite 发布