- 主要分为客户端代理和服务端代理, 一般情况下只需一个就可以了
客户端代理
clash 增强模式 / clash tun 模式
- 这种情况下 clash 已经接管了所有流量, 直接启动就可以了, 不需要额外设置
http agent
- 需要有一个可以访问的 http 代理, 比如 clash 默认启动的本地 http 代理
如果是手动写的 v2 配置文件, 可以参考 在 v2ray 中同时开启 socks 和 http 代理 来手动开启 http 代理服务
1 2 3 4 5 6 7 8
| const Telegraf = require('telegraf') const HttpsProxyAgent = require('https-proxy-agent')
const bot = new Telegraf('bot_token', { telegram: { agent: new HttpsProxyAgent('proxy url') } })
|
socks agent
- 同上, 只不过 agent 变成了 SocksAgent
1 2 3 4 5 6 7 8 9 10 11 12
| const Telegraf = require('telegraf'); const SocksAgent = require('socks5-https-client/lib/Agent'); const socksAgent = new SocksAgent({ socksHost: config.proxy.host, socksPort: config.proxy.port, socksUsername: config.proxy.login, socksPassword: config.proxy.psswd, });
const app = new Telegraf(token, { telegram: { agent: socksAgent } });
|
服务端代理
1 2 3 4 5 6
| const app = new Telegraf(token, { telegram: { // proxy for https://api.telegram.org apiRoot: 'https://tg-api-proxy-on-my-domain', }, })
|
参见
- https://github.com/telegraf/telegraf/issues/63