timbot 2026.2.10-beta.1 → 2026.2.10-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +141 -37
- package/dist/src/onboarding.d.ts.map +1 -1
- package/dist/src/onboarding.js +13 -11
- package/dist/src/onboarding.js.map +1 -1
- package/package.json +13 -7
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Tencent Cloud IM Channel Plugin for
|
|
1
|
+
# Tencent Cloud IM Channel Plugin for OpenClaw
|
|
2
2
|
|
|
3
3
|
Maintainer: longyuqi@tencent.com
|
|
4
4
|
|
|
@@ -8,19 +8,49 @@ Status: Tencent Cloud IM intelligent bot via webhooks + REST API.
|
|
|
8
8
|
|
|
9
9
|
### Option A: Install from npm
|
|
10
10
|
```bash
|
|
11
|
-
|
|
12
|
-
clawdbot plugins enable timbot
|
|
13
|
-
clawdbot gateway restart
|
|
11
|
+
openclaw plugins install timbot
|
|
14
12
|
```
|
|
15
13
|
|
|
16
14
|
### Option B: Local development (link)
|
|
17
15
|
```bash
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
git clone <repo-url> && cd timbot
|
|
17
|
+
pnpm install && pnpm build
|
|
18
|
+
bash install-timbot.sh
|
|
21
19
|
```
|
|
22
20
|
|
|
23
|
-
##
|
|
21
|
+
## Quick Start
|
|
22
|
+
|
|
23
|
+
### Step 1: Create IM App and Get Credentials
|
|
24
|
+
|
|
25
|
+
1. Go to [Tencent Cloud IM Console](https://console.cloud.tencent.com/im)
|
|
26
|
+
2. Click **Create Application**, enter a name, select **China** data center
|
|
27
|
+
3. In the app detail page, record:
|
|
28
|
+
- **SDKAppID** — unique app identifier
|
|
29
|
+
- **SecretKey** — key for generating UserSig
|
|
30
|
+
|
|
31
|
+
### Step 2: Create Bot Account and Configure Callbacks
|
|
32
|
+
|
|
33
|
+
1. In the IM console sidebar, click **REST API Debug**
|
|
34
|
+
2. Select your app → **Bot → Create Bot**, set UserID / Nick / FaceUrl, then submit
|
|
35
|
+
3. In the sidebar, click **Callback Configuration → Chat**:
|
|
36
|
+
- **URL**: `http://<your-server-ip>:18789/timbot`
|
|
37
|
+
- Check **Enable Authentication**
|
|
38
|
+
- **Token**: a custom string (e.g. `mysecrettoken`)
|
|
39
|
+
- Check **Bot Event Callback** under Bot Events
|
|
40
|
+
|
|
41
|
+
### Step 3: Configure and Activate
|
|
42
|
+
|
|
43
|
+
#### Interactive Setup (Recommended)
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
openclaw onboard
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Select **Tencent IM (plugin)** in the channel list, then follow the prompts to enter SDKAppID, SecretKey, and Token.
|
|
50
|
+
|
|
51
|
+
#### Manual Configuration
|
|
52
|
+
|
|
53
|
+
Edit `~/.openclaw/openclaw.json`:
|
|
24
54
|
|
|
25
55
|
```json5
|
|
26
56
|
{
|
|
@@ -30,38 +60,60 @@ clawdbot gateway restart
|
|
|
30
60
|
webhookPath: "/timbot",
|
|
31
61
|
sdkAppId: "YOUR_SDK_APP_ID",
|
|
32
62
|
secretKey: "YOUR_SECRET_KEY",
|
|
33
|
-
botAccount: "
|
|
34
|
-
apiDomain: "https://console.tim.qq.com",
|
|
63
|
+
botAccount: "@RBT#001",
|
|
35
64
|
token: "YOUR_CALLBACK_TOKEN",
|
|
36
|
-
welcomeText: "Hello!",
|
|
37
65
|
dm: { policy: "open" }
|
|
38
66
|
}
|
|
39
67
|
}
|
|
40
68
|
}
|
|
41
69
|
```
|
|
42
70
|
|
|
43
|
-
|
|
71
|
+
Then activate:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
openclaw onboard # select Tencent IM in the channel list
|
|
75
|
+
openclaw gateway restart
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Step 4: Open Network Access
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
openclaw config set gateway.bind lan
|
|
82
|
+
openclaw gateway restart
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Ensure port **18789** is open in your server firewall.
|
|
86
|
+
|
|
87
|
+
### Step 5: Verify
|
|
88
|
+
|
|
89
|
+
Send a message to the bot through your IM client. If the bot responds, the integration is working.
|
|
90
|
+
|
|
91
|
+
## Configuration Options
|
|
44
92
|
|
|
45
93
|
| Option | Description |
|
|
46
94
|
|--------|-------------|
|
|
47
|
-
| `webhookPath` | Webhook endpoint path |
|
|
95
|
+
| `webhookPath` | Webhook endpoint path (default: `/timbot`) |
|
|
48
96
|
| `sdkAppId` | Tencent Cloud IM SDK App ID |
|
|
49
|
-
| `secretKey` | Secret key for generating UserSig
|
|
97
|
+
| `secretKey` | Secret key for generating UserSig |
|
|
50
98
|
| `botAccount` | Bot account ID |
|
|
51
|
-
| `apiDomain` | Tencent IM API domain |
|
|
99
|
+
| `apiDomain` | Tencent IM API domain (default: `console.tim.qq.com`) |
|
|
52
100
|
| `token` | Callback token for signature verification |
|
|
53
101
|
| `welcomeText` | Welcome message for new conversations |
|
|
54
102
|
| `dm.policy` | DM policy: `pairing`, `allowlist`, `open`, or `disabled` |
|
|
55
103
|
|
|
56
104
|
## Notes
|
|
57
105
|
|
|
58
|
-
- Webhooks require public HTTPS
|
|
59
|
-
-
|
|
106
|
+
- Webhooks require public HTTPS or HTTP with firewall rules. Only expose the webhook path.
|
|
107
|
+
- `sdkAppId` and `secretKey` are obtained from the [Tencent Cloud IM Console](https://console.cloud.tencent.com/im).
|
|
60
108
|
- Supports multiple accounts via the `accounts` configuration.
|
|
61
109
|
|
|
110
|
+
## WeChat Mini Program Integration
|
|
111
|
+
|
|
112
|
+
For integrating with WeChat Mini Programs via Tencent Cloud IM, see the [WeChat Mini Program Quick Start Guide](https://mp.weixin.qq.com/s/6iq-w023LGuYr6N9SR_kvw).
|
|
113
|
+
|
|
62
114
|
---
|
|
63
115
|
|
|
64
|
-
#
|
|
116
|
+
# OpenClaw 腾讯云 IM 通道插件
|
|
65
117
|
|
|
66
118
|
维护者:longyuqi@tencent.com
|
|
67
119
|
|
|
@@ -71,19 +123,49 @@ clawdbot gateway restart
|
|
|
71
123
|
|
|
72
124
|
### 方式 A:从 npm 安装
|
|
73
125
|
```bash
|
|
74
|
-
|
|
75
|
-
clawdbot plugins enable timbot
|
|
76
|
-
clawdbot gateway restart
|
|
126
|
+
openclaw plugins install timbot
|
|
77
127
|
```
|
|
78
128
|
|
|
79
129
|
### 方式 B:本地开发(link)
|
|
80
130
|
```bash
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
131
|
+
git clone <repo-url> && cd timbot
|
|
132
|
+
pnpm install && pnpm build
|
|
133
|
+
bash install-timbot.sh
|
|
84
134
|
```
|
|
85
135
|
|
|
86
|
-
##
|
|
136
|
+
## 快速开始
|
|
137
|
+
|
|
138
|
+
### 第一步:创建 IM 应用并获取凭证
|
|
139
|
+
|
|
140
|
+
1. 登录 [腾讯云即时通信 IM 控制台](https://console.cloud.tencent.com/im)
|
|
141
|
+
2. 点击**创建新应用**,输入名称,数据中心选择**中国**
|
|
142
|
+
3. 进入应用详情页,记录以下参数:
|
|
143
|
+
- **SDKAppID** — 应用唯一标识 ID
|
|
144
|
+
- **SecretKey** — 用于生成鉴权签名的密钥
|
|
145
|
+
|
|
146
|
+
### 第二步:创建机器人账号并配置消息回调
|
|
147
|
+
|
|
148
|
+
1. 在 IM 控制台左侧菜单点击 **REST API 调试**
|
|
149
|
+
2. 选择应用 → **机器人 → 创建机器人**,设置 UserID / Nick / FaceUrl,点击发起调用
|
|
150
|
+
3. 在左侧菜单选择 **回调配置 → 消息服务 Chat**:
|
|
151
|
+
- **URL**:`http://<你的服务器IP>:18789/timbot`
|
|
152
|
+
- 勾选**开启鉴权**
|
|
153
|
+
- **鉴权 Token**:自定义字符串(如 `mysecrettoken`)
|
|
154
|
+
- 勾选机器人事件下的**机器人事件回调**
|
|
155
|
+
|
|
156
|
+
### 第三步:配置并激活
|
|
157
|
+
|
|
158
|
+
#### 交互式配置(推荐)
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
openclaw onboard
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
在通道列表中选择 **Tencent IM (plugin)**,按提示输入 SDKAppID、SecretKey 和 Token。
|
|
165
|
+
|
|
166
|
+
#### 手动配置
|
|
167
|
+
|
|
168
|
+
编辑 `~/.openclaw/openclaw.json`:
|
|
87
169
|
|
|
88
170
|
```json5
|
|
89
171
|
{
|
|
@@ -91,33 +173,55 @@ clawdbot gateway restart
|
|
|
91
173
|
timbot: {
|
|
92
174
|
enabled: true,
|
|
93
175
|
webhookPath: "/timbot",
|
|
94
|
-
sdkAppId: "
|
|
95
|
-
secretKey: "
|
|
96
|
-
botAccount: "
|
|
97
|
-
|
|
98
|
-
token: "YOUR_CALLBACK_TOKEN",
|
|
99
|
-
welcomeText: "你好!",
|
|
176
|
+
sdkAppId: "16000xxxxx", // 第一步获取的 SDKAppID
|
|
177
|
+
secretKey: "xxxxxx", // 第一步获取的 SecretKey
|
|
178
|
+
botAccount: "@RBT#001",
|
|
179
|
+
token: "mysecrettoken", // 第二步设置的鉴权 Token
|
|
100
180
|
dm: { policy: "open" }
|
|
101
181
|
}
|
|
102
182
|
}
|
|
103
183
|
}
|
|
104
184
|
```
|
|
105
185
|
|
|
106
|
-
|
|
186
|
+
然后激活:
|
|
187
|
+
|
|
188
|
+
```bash
|
|
189
|
+
openclaw onboard # 在通道列表中选择 Tencent IM
|
|
190
|
+
openclaw gateway restart
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### 第四步:开放网络权限
|
|
194
|
+
|
|
195
|
+
```bash
|
|
196
|
+
openclaw config set gateway.bind lan
|
|
197
|
+
openclaw gateway restart
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
确保服务器防火墙放行 **18789** 端口。
|
|
201
|
+
|
|
202
|
+
### 第五步:验证
|
|
203
|
+
|
|
204
|
+
通过 IM 客户端向机器人发送消息,收到回复即表示接入成功。
|
|
205
|
+
|
|
206
|
+
## 配置项说明
|
|
107
207
|
|
|
108
208
|
| 配置项 | 说明 |
|
|
109
209
|
|--------|------|
|
|
110
|
-
| `webhookPath` | Webhook
|
|
210
|
+
| `webhookPath` | Webhook 回调路径(默认 `/timbot`) |
|
|
111
211
|
| `sdkAppId` | 腾讯云 IM SDK 应用 ID |
|
|
112
|
-
| `secretKey` | 密钥,用于动态生成 UserSig
|
|
212
|
+
| `secretKey` | 密钥,用于动态生成 UserSig |
|
|
113
213
|
| `botAccount` | 机器人账号 ID |
|
|
114
|
-
| `apiDomain` | 腾讯 IM API
|
|
214
|
+
| `apiDomain` | 腾讯 IM API 域名(默认 `console.tim.qq.com`) |
|
|
115
215
|
| `token` | 回调签名验证 Token |
|
|
116
216
|
| `welcomeText` | 新会话欢迎语 |
|
|
117
217
|
| `dm.policy` | 私聊策略:`pairing`、`allowlist`、`open` 或 `disabled` |
|
|
118
218
|
|
|
119
219
|
## 说明
|
|
120
220
|
|
|
121
|
-
- Webhook
|
|
122
|
-
- `sdkAppId` 和 `secretKey` 需从[腾讯云 IM 控制台](https://console.cloud.tencent.com/im)
|
|
221
|
+
- Webhook 需要公网可访问。出于安全考虑,建议只对外暴露 webhook 路径。
|
|
222
|
+
- `sdkAppId` 和 `secretKey` 需从[腾讯云 IM 控制台](https://console.cloud.tencent.com/im)获取。
|
|
123
223
|
- 支持通过 `accounts` 配置多账号。
|
|
224
|
+
|
|
225
|
+
## 微信小程序接入
|
|
226
|
+
|
|
227
|
+
如需通过腾讯云 IM 接入微信小程序,请参考[微信小程序快速接入指南](https://mp.weixin.qq.com/s/6iq-w023LGuYr6N9SR_kvw)。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/onboarding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAKzB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/onboarding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAKzB,MAAM,qBAAqB,CAAC;AAoH7B,eAAO,MAAM,uBAAuB,EAAE,wBA0HrC,CAAC"}
|
package/dist/src/onboarding.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { addWildcardAllowFrom, DEFAULT_ACCOUNT_ID
|
|
1
|
+
import { addWildcardAllowFrom, DEFAULT_ACCOUNT_ID } from "openclaw/plugin-sdk";
|
|
2
2
|
import { resolveTimbotAccount } from "./accounts.js";
|
|
3
3
|
const channel = "timbot";
|
|
4
4
|
function setTimbotDmPolicy(cfg, dmPolicy) {
|
|
@@ -73,12 +73,13 @@ async function promptTimbotAllowFrom(params) {
|
|
|
73
73
|
}
|
|
74
74
|
async function noteTimbotCredentialHelp(prompter) {
|
|
75
75
|
await prompter.note([
|
|
76
|
-
"1) Go to Tencent Cloud IM Console
|
|
76
|
+
"1) Go to Tencent Cloud IM Console: https://console.cloud.tencent.com/im",
|
|
77
77
|
"2) Create an app or select an existing one",
|
|
78
78
|
"3) Get SDKAppID from the app overview page",
|
|
79
|
-
"4) Get SecretKey from
|
|
80
|
-
"5)
|
|
81
|
-
|
|
79
|
+
"4) Get SecretKey from the app overview page (click Show to reveal)",
|
|
80
|
+
"5) Go to Callback Configuration → select your app",
|
|
81
|
+
" Set callback URL to http://<your-server>:18789/timbot",
|
|
82
|
+
" Enable authentication and set a Token",
|
|
82
83
|
].join("\n"), "Tencent IM credentials");
|
|
83
84
|
}
|
|
84
85
|
const dmPolicy = {
|
|
@@ -127,30 +128,31 @@ export const timbotOnboardingAdapter = {
|
|
|
127
128
|
});
|
|
128
129
|
if (!keep) {
|
|
129
130
|
sdkAppId = String(await prompter.text({
|
|
130
|
-
message: "Enter SDKAppID",
|
|
131
|
+
message: "Enter SDKAppID (from IM console app overview)",
|
|
131
132
|
validate: (value) => (value?.trim() ? undefined : "Required"),
|
|
132
133
|
})).trim();
|
|
133
134
|
secretKey = String(await prompter.text({
|
|
134
|
-
message: "Enter SecretKey",
|
|
135
|
+
message: "Enter SecretKey (from IM console app overview, click Show)",
|
|
135
136
|
validate: (value) => (value?.trim() ? undefined : "Required"),
|
|
136
137
|
})).trim();
|
|
137
138
|
token = String(await prompter.text({
|
|
138
|
-
message: "Enter Webhook Token",
|
|
139
|
+
message: "Enter Webhook Token (from Callback Configuration)",
|
|
139
140
|
validate: (value) => (value?.trim() ? undefined : "Required"),
|
|
140
141
|
})).trim();
|
|
141
142
|
}
|
|
142
143
|
}
|
|
143
144
|
else {
|
|
144
145
|
sdkAppId = String(await prompter.text({
|
|
145
|
-
message: "Enter SDKAppID",
|
|
146
|
+
message: "Enter SDKAppID (from IM console app overview)",
|
|
147
|
+
placeholder: "e.g. 1600012345",
|
|
146
148
|
validate: (value) => (value?.trim() ? undefined : "Required"),
|
|
147
149
|
})).trim();
|
|
148
150
|
secretKey = String(await prompter.text({
|
|
149
|
-
message: "Enter SecretKey",
|
|
151
|
+
message: "Enter SecretKey (from IM console app overview, click Show)",
|
|
150
152
|
validate: (value) => (value?.trim() ? undefined : "Required"),
|
|
151
153
|
})).trim();
|
|
152
154
|
token = String(await prompter.text({
|
|
153
|
-
message: "Enter Webhook Token",
|
|
155
|
+
message: "Enter Webhook Token (from Callback Configuration)",
|
|
154
156
|
validate: (value) => (value?.trim() ? undefined : "Required"),
|
|
155
157
|
})).trim();
|
|
156
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/onboarding.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/onboarding.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "timbot",
|
|
3
|
-
"version": "2026.2.10-beta.
|
|
3
|
+
"version": "2026.2.10-beta.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Clawdbot Tencent Cloud IM intelligent bot channel plugin",
|
|
6
6
|
"author": "longyuqi@tencent.com",
|
|
@@ -18,11 +18,10 @@
|
|
|
18
18
|
"timbot",
|
|
19
19
|
"chatbot"
|
|
20
20
|
],
|
|
21
|
-
"scripts": {
|
|
22
|
-
"build": "tsc && mkdir -p dist/src/debug && cp src/debug/GenerateTestUserSig-es.js src/debug/lib-generate-test-usersig-es.min.js dist/src/debug/"
|
|
23
|
-
},
|
|
24
21
|
"openclaw": {
|
|
25
|
-
"extensions": [
|
|
22
|
+
"extensions": [
|
|
23
|
+
"./dist/index.js"
|
|
24
|
+
],
|
|
26
25
|
"channel": {
|
|
27
26
|
"id": "timbot",
|
|
28
27
|
"label": "Tencent IM",
|
|
@@ -31,7 +30,11 @@
|
|
|
31
30
|
"docsPath": "/channels/timbot",
|
|
32
31
|
"docsLabel": "timbot",
|
|
33
32
|
"blurb": "Tencent Cloud IM bot via webhooks + REST API.",
|
|
34
|
-
"aliases": [
|
|
33
|
+
"aliases": [
|
|
34
|
+
"tencentim",
|
|
35
|
+
"腾讯im",
|
|
36
|
+
"即时通信"
|
|
37
|
+
],
|
|
35
38
|
"order": 85
|
|
36
39
|
},
|
|
37
40
|
"install": {
|
|
@@ -47,5 +50,8 @@
|
|
|
47
50
|
},
|
|
48
51
|
"peerDependencies": {
|
|
49
52
|
"openclaw": ">=2026.1.30"
|
|
53
|
+
},
|
|
54
|
+
"scripts": {
|
|
55
|
+
"build": "tsc && mkdir -p dist/src/debug && cp src/debug/GenerateTestUserSig-es.js src/debug/lib-generate-test-usersig-es.min.js dist/src/debug/"
|
|
50
56
|
}
|
|
51
|
-
}
|
|
57
|
+
}
|