@dcrays/dcgchat-test 0.2.17 → 0.2.19

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/index.ts CHANGED
@@ -2,7 +2,7 @@ import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
2
2
  import { emptyPluginConfigSchema } from "openclaw/plugin-sdk";
3
3
  import { dcgchatPlugin } from "./src/channel.js";
4
4
  import { setDcgchatRuntime, setWorkspaceDir } from "./src/runtime.js";
5
- // import { monitoringToolMessage } from "./src/tool.js";
5
+ import { monitoringToolMessage } from "./src/tool.js";
6
6
 
7
7
  const plugin = {
8
8
  id: "dcgchat-test",
@@ -11,7 +11,7 @@ const plugin = {
11
11
  configSchema: emptyPluginConfigSchema(),
12
12
  register(api: OpenClawPluginApi) {
13
13
  setDcgchatRuntime(api.runtime);
14
- // monitoringToolMessage(api);
14
+ monitoringToolMessage(api);
15
15
  api.registerChannel({ plugin: dcgchatPlugin });
16
16
  api.registerTool((ctx) => {
17
17
  const workspaceDir = ctx.workspaceDir;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcrays/dcgchat-test",
3
- "version": "0.2.17",
3
+ "version": "0.2.19",
4
4
  "type": "module",
5
5
  "description": "OpenClaw channel plugin for 书灵墨宝 (WebSocket)",
6
6
  "main": "index.ts",
package/src/bot.ts CHANGED
@@ -316,7 +316,7 @@ export async function handleDcgchatMessage(params: {
316
316
 
317
317
  const route = core.channel.routing.resolveAgentRoute({
318
318
  cfg,
319
- channel: "dcgchat",
319
+ channel: "dcgchat-test",
320
320
  accountId: account.accountId,
321
321
  peer: { kind: "direct", id: userId },
322
322
  });
@@ -353,13 +353,13 @@ export async function handleDcgchatMessage(params: {
353
353
  ChatType: "direct",
354
354
  SenderName: userId,
355
355
  SenderId: userId,
356
- Provider: "dcgchat" as const,
357
- Surface: "dcgchat" as const,
356
+ Provider: "dcgchat-test" as const,
357
+ Surface: "dcgchat-test" as const,
358
358
  MessageSid: msg.content.message_id,
359
359
  Timestamp: Date.now(),
360
360
  WasMentioned: true,
361
361
  CommandAuthorized: true,
362
- OriginatingChannel: "dcgchat" as const,
362
+ OriginatingChannel: "dcgchat-test" as const,
363
363
  OriginatingTo: `user:${userId}`,
364
364
  ...mediaPayload,
365
365
  });
@@ -388,8 +388,7 @@ export async function handleDcgchatMessage(params: {
388
388
  });
389
389
 
390
390
  if (text === '/new') {
391
- log(`dcgchat[${accountId}]: skipping agent dispatch for /new`);
392
- await core.channel.reply.dispatchReplyFromConfig({
391
+ await core.channel.reply.dispatchReplyFromConfig({
393
392
  ctx: ctxPayload,
394
393
  cfg,
395
394
  dispatcher,
@@ -398,6 +397,39 @@ export async function handleDcgchatMessage(params: {
398
397
  onModelSelected: prefixContext.onModelSelected
399
398
  },
400
399
  });
400
+ log(`dcgchat[${accountId}]: skipping agent dispatch for /new`);
401
+ params.onChunk({
402
+ messageType: "openclaw_bot_chat",
403
+ _userId: msg._userId,
404
+ source: "client",
405
+ content: {
406
+ bot_token: msg.content.bot_token,
407
+ domain_id: msg.content.domain_id,
408
+ app_id: msg.content.app_id,
409
+ bot_id: msg.content.bot_id,
410
+ agent_id: msg.content.agent_id,
411
+ session_id: msg.content.session_id,
412
+ message_id: msg.content.message_id,
413
+ response: '好呀~我不会忘记我们之前的聊天,只是暂时翻篇,让我们更轻松地开启新话题。',
414
+ state: 'chunk',
415
+ },
416
+ });
417
+ params.onChunk({
418
+ messageType: "openclaw_bot_chat",
419
+ _userId: msg._userId,
420
+ source: "client",
421
+ content: {
422
+ bot_token: msg.content.bot_token,
423
+ domain_id: msg.content.domain_id,
424
+ app_id: msg.content.app_id,
425
+ bot_id: msg.content.bot_id,
426
+ agent_id: msg.content.agent_id,
427
+ session_id: msg.content.session_id,
428
+ message_id: msg.content.message_id,
429
+ response: '',
430
+ state: 'final',
431
+ },
432
+ });
401
433
  } else {
402
434
  log(`dcgchat[${accountId}]: dispatching to agent (session=${route.sessionKey})`);
403
435
  await core.channel.reply.dispatchReplyFromConfig({
package/src/channel.ts CHANGED
@@ -185,47 +185,47 @@ export const dcgchatPlugin: ChannelPlugin<ResolvedDcgchatAccount> = {
185
185
  // textChunkLimit: 25,
186
186
  textChunkLimit: 4000,
187
187
  sendText: async (ctx) => {
188
- const ws = getWsConnection()
188
+ // const ws = getWsConnection()
189
189
  const params = getMsgParams();
190
190
  const log = console.log;
191
- if (ws?.readyState === WebSocket.OPEN) {
192
- const {botToken} = resolveAccount(ctx.cfg, ctx.accountId);
193
- const content = {
194
- messageType: "openclaw_bot_chat",
195
- _userId: params.userId,
196
- source: "client",
197
- content: {
198
- bot_token: botToken,
199
- domain_id: params.domainId,
200
- app_id: params.appId,
201
- bot_id: params.botId,
202
- agent_id: params.agentId,
203
- response: ctx.text,
204
- session_id: params.sessionId,
205
- message_id: params.messageId || Date.now().toString(),
206
- },
207
- };
208
- ws.send(JSON.stringify(content));
209
- ws.send(JSON.stringify({
210
- messageType: "openclaw_bot_chat",
211
- _userId: params.userId,
212
- source: "client",
213
- content: {
214
- bot_token: botToken,
215
- domain_id: params.domainId,
216
- app_id: params.appId,
217
- bot_id: params.botId,
218
- agent_id: params.agentId,
219
- ssession_id: params.sessionId,
220
- message_id: params.messageId || Date.now().toString(),
221
- response: '',
222
- state: 'final',
223
- },
224
- }));
225
- log(`dcgchat[${ctx.accountId}]: channel sendText to ${params.userId}, ${JSON.stringify(content)}`);
226
- } else {
227
- log(`[dcgchat][${ctx.accountId ?? DEFAULT_ACCOUNT_ID}] outbound -> ${ws?.readyState}: ${ctx.text}`);
228
- }
191
+ // if (ws?.readyState === WebSocket.OPEN) {
192
+ // const {botToken} = resolveAccount(ctx.cfg, ctx.accountId);
193
+ // const content = {
194
+ // messageType: "openclaw_bot_chat",
195
+ // _userId: params.userId,
196
+ // source: "client",
197
+ // content: {
198
+ // bot_token: botToken,
199
+ // domain_id: params.domainId,
200
+ // app_id: params.appId,
201
+ // bot_id: params.botId,
202
+ // agent_id: params.agentId,
203
+ // response: ctx.text,
204
+ // session_id: params.sessionId,
205
+ // message_id: params.messageId || Date.now().toString(),
206
+ // },
207
+ // };
208
+ // ws.send(JSON.stringify(content));
209
+ // ws.send(JSON.stringify({
210
+ // messageType: "openclaw_bot_chat",
211
+ // _userId: params.userId,
212
+ // source: "client",
213
+ // content: {
214
+ // bot_token: botToken,
215
+ // domain_id: params.domainId,
216
+ // app_id: params.appId,
217
+ // bot_id: params.botId,
218
+ // agent_id: params.agentId,
219
+ // ssession_id: params.sessionId,
220
+ // message_id: params.messageId || Date.now().toString(),
221
+ // response: '',
222
+ // state: 'final',
223
+ // },
224
+ // }));
225
+ // log(`dcgchat[${ctx.accountId}]: channel sendText to ${params.userId}, ${JSON.stringify(content)}`);
226
+ // } else {
227
+ log(`[dcgchat][${ctx.accountId ?? DEFAULT_ACCOUNT_ID}] outbound -> : ${ctx.text}`);
228
+ // }
229
229
  return {
230
230
  channel: "dcgchat-test",
231
231
  messageId: `dcg-${Date.now()}`,