@zoulabo/line-hive 0.1.17 → 0.1.20
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 +15 -56
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/dist/i18n.js +21 -10
- package/dist/i18n.js.map +1 -1
- package/dist/index.js +18 -1
- package/dist/index.js.map +1 -1
- package/dist/line/messages.js +91 -15
- package/dist/line/messages.js.map +1 -1
- package/dist/line/webhook.js +113 -24
- package/dist/line/webhook.js.map +1 -1
- package/dist/server.js +63 -17
- package/dist/server.js.map +1 -1
- package/dist/store/messageStore.js +13 -1
- package/dist/store/messageStore.js.map +1 -1
- package/dist/tools/ask.js +46 -65
- package/dist/tools/ask.js.map +1 -1
- package/dist/tools/renderMarkdown.js +88 -0
- package/dist/tools/renderMarkdown.js.map +1 -0
- package/dist/tools/sendMessage.js +23 -55
- package/dist/tools/sendMessage.js.map +1 -1
- package/dist/util/sendWithTokenPool.js +16 -6
- package/dist/util/sendWithTokenPool.js.map +1 -1
- package/dist/util/toolHelpers.js +9 -2
- package/dist/util/toolHelpers.js.map +1 -1
- package/package.json +5 -3
- package/templates/line-notification.instructions.md +39 -114
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<a href="https://www.npmjs.com/package/@zoulabo/line-hive"><img src="https://img.shields.io/npm/v/@zoulabo/line-hive?color=cb3837&label=npm" alt="npm version"></a>
|
|
14
14
|
<img src="https://img.shields.io/badge/node-%3E%3D18-brightgreen" alt="Node.js ≥18">
|
|
15
15
|
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
|
|
16
|
-
<img src="https://img.shields.io/badge/tests-
|
|
16
|
+
<img src="https://img.shields.io/badge/tests-246%20passing-brightgreen" alt="246 tests passing">
|
|
17
17
|
</p>
|
|
18
18
|
|
|
19
19
|
<p align="center">
|
|
@@ -266,6 +266,7 @@ npx @zoulabo/line-hive init --editor cursor # switch editor type
|
|
|
266
266
|
| `line_check_messages` | Fetch unclaimed inbound messages | No |
|
|
267
267
|
| `line_list_agents` | List all active agents across editor windows | No |
|
|
268
268
|
| `line_read_file` | Read content from a received file (PDF text, scanned PDF→image, image resize, text decode) | No |
|
|
269
|
+
| `line_render_markdown` | Convert Markdown to HTML (built-in, no library install needed) | No |
|
|
269
270
|
|
|
270
271
|
### Recommended Pattern
|
|
271
272
|
|
|
@@ -285,28 +286,28 @@ Send these to your LINE bot:
|
|
|
285
286
|
|
|
286
287
|
| Command | Action |
|
|
287
288
|
|---------|--------|
|
|
288
|
-
|
|
|
289
|
-
|
|
|
289
|
+
| `?` / `s` | Show all agents with status |
|
|
290
|
+
| `q` | Show message queue with per-agent counts |
|
|
290
291
|
| Any other text | Route to targeted/waiting agent |
|
|
291
|
-
|
|
|
292
|
+
| ✅ Continue (button) | Send a reply token to keep the conversation going |
|
|
292
293
|
| 📊 Status (button) | Same as `?` |
|
|
294
|
+
| 📬 Queue (button) | Same as `q` |
|
|
295
|
+
| 🗑️ Delete (button) | Delete a queued message (shown when queue has messages) |
|
|
293
296
|
| 📬 N more (button) | Pop all queued messages to the agent at once |
|
|
297
|
+
| 1️⃣ 2️⃣ ... (buttons) | Switch between agents (shown when 2+ agents active) |
|
|
294
298
|
|
|
295
299
|
## Language Support
|
|
296
300
|
|
|
297
|
-
Auto-detected from the user's LINE profile. Currently **English** (default) and **Japanese**. All bot messages, buttons, and errors are localized. Agents can override via `line_set_status({ language: "ja" })`.
|
|
301
|
+
Auto-detected from the user's LINE profile. Currently **English** (default) and **Japanese**. All bot messages, buttons, and errors are localized. Agents can override via `line_set_status({ language: "ja" })`. New users see a welcome message with available triggers, buttons, and a language hint.
|
|
298
302
|
|
|
299
303
|
## Limitations
|
|
300
304
|
|
|
301
|
-
- **Push quota** — free tier: 200/month. Status queries via `?`
|
|
302
|
-
- **Reply token expiry** — ~15 min
|
|
303
|
-
- **Files** — receive images & files (stored as base64 in SQLite). Send
|
|
304
|
-
- **Read content** on demand with `line_read_file` — text PDF extraction, scanned PDF→image rendering (poppler), image resize (sharp).
|
|
305
|
-
- **Security** — PDF JavaScript execution disabled; `outputPath` scoped to workspace.
|
|
306
|
-
- Stickers, video, and audio are currently ignored.
|
|
305
|
+
- **Push quota** — free tier: 200/month. Status queries via `?` use reply tokens (free). Send `?` periodically to replenish the token pool.
|
|
306
|
+
- **Reply token expiry** — ~15 min. Falls back to push when exhausted.
|
|
307
|
+
- **Files** — receive images & files (stored as base64 in SQLite). Send via `imageBase64`, `imageFilePath`, or `filePath`. Stickers, video, and audio are currently ignored.
|
|
307
308
|
- **Single user** — designed for one developer per LINE channel.
|
|
308
309
|
- **Single webhook URL** — all agent instances share one tunnel endpoint.
|
|
309
|
-
- **Multi-workspace** — only the first editor
|
|
310
|
+
- **Multi-workspace** — only the first editor claims the webhook port/tunnel. Others piggyback via shared SQLite.
|
|
310
311
|
- **Claude Code** — `line_ask` can block up to 2 hours; ensure `MCP_TOOL_TIMEOUT` is not too short. Always use `--editor claude-code` for init.
|
|
311
312
|
|
|
312
313
|
## Development
|
|
@@ -345,45 +346,11 @@ For standalone `npm start`:
|
|
|
345
346
|
| `WEBHOOK_PORT` | No | `19780` |
|
|
346
347
|
| `SQLITE_PATH` | No | `~/.line-hive/line-hive.db` |
|
|
347
348
|
|
|
348
|
-
### Project Structure
|
|
349
|
-
|
|
350
|
-
```
|
|
351
|
-
src/
|
|
352
|
-
├── index.ts # Entry point
|
|
353
|
-
├── server.ts # MCP server + tool handlers
|
|
354
|
-
├── config.ts # Environment config
|
|
355
|
-
├── logger.ts # Pino (stderr only — stdout is MCP)
|
|
356
|
-
├── tunnel.ts # ngrok tunnel management
|
|
357
|
-
├── cli/
|
|
358
|
-
│ ├── init.ts # Setup wizard
|
|
359
|
-
│ ├── update.ts # Refresh instruction templates
|
|
360
|
-
│ ├── test-connection.ts # LINE API connection test
|
|
361
|
-
│ └── config-writer.ts # Generates mcp.json + instructions
|
|
362
|
-
├── tools/ # MCP tool implementations
|
|
363
|
-
│ ├── ask.ts # line_ask — send + wait for reply
|
|
364
|
-
│ ├── setStatus.ts # line_set_status
|
|
365
|
-
│ ├── readFile.ts # line_read_file — PDF/image/text extraction
|
|
366
|
-
│ ├── sendMessage.ts # line_send_message
|
|
367
|
-
│ ├── checkMessages.ts # line_check_messages
|
|
368
|
-
│ └── listAgents.ts # line_list_agents
|
|
369
|
-
├── line/
|
|
370
|
-
│ ├── client.ts # LINE API client
|
|
371
|
-
│ ├── messages.ts # Message builders, quick reply, postback
|
|
372
|
-
│ └── webhook.ts # Webhook handler + status responder
|
|
373
|
-
├── store/
|
|
374
|
-
│ ├── messageStore.ts # Message persistence (SQLite)
|
|
375
|
-
│ └── statusStore.ts # Agent status management
|
|
376
|
-
├── util/
|
|
377
|
-
│ └── sendWithTokenPool.ts # Reply token pool → push fallback
|
|
378
|
-
└── types/
|
|
379
|
-
└── index.ts
|
|
380
|
-
```
|
|
381
|
-
|
|
382
349
|
## Contributing
|
|
383
350
|
|
|
384
351
|
Designed for **AI-agent-driven development**. The repo includes skill files (`.github/skills/`) that teach agents the codebase. Point your agent at the repo and let it work.
|
|
385
352
|
|
|
386
|
-
- `npm test` must pass (~
|
|
353
|
+
- `npm test` must pass (~246 tests, <1s)
|
|
387
354
|
- `npx tsc --noEmit` must be clean
|
|
388
355
|
- Let the agents read skills first, then write the code
|
|
389
356
|
|
|
@@ -419,14 +386,6 @@ Use `--editor claude-code` whether you're running Claude Code as:
|
|
|
419
386
|
Don't use `--editor vscode` — that's for GitHub Copilot.
|
|
420
387
|
</details>
|
|
421
388
|
|
|
422
|
-
<details>
|
|
423
|
-
<summary><b>Reply tokens expire / push message quota exceeded</b></summary>
|
|
424
|
-
|
|
425
|
-
- Reply tokens expire after ~15 minutes. The server pools them aggressively but falls back to push messages when none are available.
|
|
426
|
-
- Free tier: 200 push messages/month. Status queries via `?` are free (use reply tokens).
|
|
427
|
-
- Tip: Send `?` in LINE periodically to replenish the token pool.
|
|
428
|
-
</details>
|
|
429
|
-
|
|
430
389
|
<details>
|
|
431
390
|
<summary><b>ngrok tunnel not starting</b></summary>
|
|
432
391
|
|
|
@@ -442,7 +401,7 @@ Don't use `--editor vscode` — that's for GitHub Copilot.
|
|
|
442
401
|
- **Heartbeat** every 10s — dead agents auto-cleaned after 2 min
|
|
443
402
|
- **Reply token pooling** — webhook saves tokens for free replies (saves push quota)
|
|
444
403
|
- **Session correlation** — `line_ask` creates a session, webhook fulfills it on reply
|
|
445
|
-
- **Multi-agent routing** — user selects agent
|
|
404
|
+
- **Multi-agent routing** — user selects agent via quick reply buttons, or auto-routes to `needs_input` agent
|
|
446
405
|
- **Embedded tunnel** — ngrok auto-managed as child process (optional; any tunnel to localhost:19780 works)
|
|
447
406
|
- **Cross-platform** — works on macOS, Linux, and Windows
|
|
448
407
|
|
package/dist/config.js
CHANGED
|
@@ -50,7 +50,7 @@ export function loadConfig() {
|
|
|
50
50
|
webhookPort: numberEnv("WEBHOOK_PORT", 19780),
|
|
51
51
|
webhookPath: process.env.WEBHOOK_PATH || "/webhook",
|
|
52
52
|
sqlitePath,
|
|
53
|
-
sessionTtlMs: numberEnv("SESSION_TTL_MS",
|
|
53
|
+
sessionTtlMs: numberEnv("SESSION_TTL_MS", 86400000),
|
|
54
54
|
cleanupIntervalMs: numberEnv("CLEANUP_INTERVAL_MS", 60000),
|
|
55
55
|
agentId: generateAgentId(workspacePath),
|
|
56
56
|
agentName: process.env.AGENT_NAME || deriveAgentName(workspacePath),
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,SAAS,SAAS,CAAC,IAAY,EAAE,QAAgB;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe;IACtB,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,gDAAgD;IAChD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAElE,OAAO;QACL,sBAAsB,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE;QACnE,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;QACxD,WAAW,EAAE,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC;QAC7C,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU;QACnD,UAAU;QACV,YAAY,EAAE,SAAS,CAAC,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;AAGpB,SAAS,SAAS,CAAC,IAAY,EAAE,QAAgB;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe;IACtB,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,gDAAgD;IAChD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAElE,OAAO;QACL,sBAAsB,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE;QACnE,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;QACxD,WAAW,EAAE,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC;QAC7C,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU;QACnD,UAAU;QACV,YAAY,EAAE,SAAS,CAAC,gBAAgB,EAAE,QAAQ,CAAC;QACnD,iBAAiB,EAAE,SAAS,CAAC,qBAAqB,EAAE,KAAK,CAAC;QAC1D,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC;QACvC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,eAAe,CAAC,aAAa,CAAC;QACnE,mBAAmB,EAAE,SAAS,CAAC,uBAAuB,EAAE,KAAK,CAAC;QAC9D,kBAAkB,EAAE,SAAS,CAAC,sBAAsB,EAAE,MAAM,CAAC;QAC7D,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,SAAS;KAC3D,CAAC;AACJ,CAAC"}
|
package/dist/i18n.js
CHANGED
|
@@ -29,10 +29,15 @@ const en = {
|
|
|
29
29
|
queuedHeader: () => "📬 Queued messages:",
|
|
30
30
|
ackQueued: (agent, info) => `📨 Queued for ${agent}${info}`,
|
|
31
31
|
nQueued: (n) => ` (${n} queued)`,
|
|
32
|
+
// Delete queue
|
|
33
|
+
deleteWhich: () => "🗑️ Which message to delete?",
|
|
34
|
+
deleteSuccess: () => "✅ Message deleted.",
|
|
35
|
+
deleteNotFound: () => "⚠️ Message not found (already consumed or deleted).",
|
|
36
|
+
btnDelete: () => "🗑️",
|
|
32
37
|
// Quick reply button labels
|
|
33
|
-
btnContinue: () => "
|
|
34
|
-
btnStatus: () => "📊
|
|
35
|
-
btnQueued: () => "📬
|
|
38
|
+
btnContinue: () => "✅",
|
|
39
|
+
btnStatus: () => "📊",
|
|
40
|
+
btnQueued: () => "📬",
|
|
36
41
|
btnOk: () => "✅ OK",
|
|
37
42
|
btnCancel: () => "❌ Cancel",
|
|
38
43
|
btnYes: () => "👍 Yes",
|
|
@@ -50,8 +55,9 @@ const en = {
|
|
|
50
55
|
hoursAgo: (h) => `${h}h ago`,
|
|
51
56
|
daysAgo: (d) => `${d}d ago`,
|
|
52
57
|
// Misc
|
|
53
|
-
tapToConnect: () => "
|
|
54
|
-
|
|
58
|
+
tapToConnect: () => "",
|
|
59
|
+
onboarding: () => `📱 LINE Hive\n\n── 💬 Triggers ──\n? → check status\nq → message queue\n\n── 🔘 Buttons ──\n✅ → send reply token\n📊 → check status\n📬 → message queue\n🗑️ → delete queued message\n1️⃣2️⃣… → switch agent\n\n── 💡 Tips ──\nTap ✅ regularly to keep reply tokens stocked.\n🌐 Language auto-detected from your LINE profile. Ask the agent to change it.`,
|
|
60
|
+
waitingForReply: (duration) => `— Waiting for your reply (${duration})`,
|
|
55
61
|
};
|
|
56
62
|
const ja = {
|
|
57
63
|
idle: (age) => `待機中 (${age})`,
|
|
@@ -70,9 +76,13 @@ const ja = {
|
|
|
70
76
|
queuedHeader: () => "📬 キューされたメッセージ:",
|
|
71
77
|
ackQueued: (agent, info) => `📨 ${agent}にキュー${info}`,
|
|
72
78
|
nQueued: (n) => ` (${n}件キュー)`,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
79
|
+
deleteWhich: () => "🗑️ どのメッセージを削除しますか?",
|
|
80
|
+
deleteSuccess: () => "✅ メッセージを削除しました。",
|
|
81
|
+
deleteNotFound: () => "⚠️ メッセージが見つかりません(消費済みまたは削除済み)。",
|
|
82
|
+
btnDelete: () => "🗑️",
|
|
83
|
+
btnContinue: () => "✅",
|
|
84
|
+
btnStatus: () => "📊",
|
|
85
|
+
btnQueued: () => "📬",
|
|
76
86
|
btnOk: () => "✅ OK",
|
|
77
87
|
btnCancel: () => "❌ キャンセル",
|
|
78
88
|
btnYes: () => "👍 はい",
|
|
@@ -86,8 +96,9 @@ const ja = {
|
|
|
86
96
|
minutesAgo: (m) => `${m}分前`,
|
|
87
97
|
hoursAgo: (h) => `${h}時間前`,
|
|
88
98
|
daysAgo: (d) => `${d}日前`,
|
|
89
|
-
tapToConnect: () => "
|
|
90
|
-
|
|
99
|
+
tapToConnect: () => "",
|
|
100
|
+
onboarding: () => `📱 LINE Hive\n\n── 💬 トリガー ──\n? → ステータス確認\nq → メッセージキュー\n\n── 🔘 ボタン ──\n✅ → リプライトークン送信\n📊 → ステータス確認\n📬 → メッセージキュー\n🗑️ → キューメッセージ削除\n1️⃣2️⃣… → エージェント切替\n\n── 💡 ヒント ──\n✅を定期的にタップしてトークンを補充しましょう。\n🌐 言語はLINEプロフィールから自動検出。エージェントに変更を依頼できます。`,
|
|
101
|
+
waitingForReply: (duration) => `— 返信を待っています (${duration})`,
|
|
91
102
|
};
|
|
92
103
|
const catalogs = { en, ja };
|
|
93
104
|
/** Get the message catalog for a locale */
|
package/dist/i18n.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,gEAAgE;AAChE,MAAM,UAAU,aAAa,CAAC,QAAwB;IACpD,IAAI,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+EAA+E;AAE/E,MAAM,EAAE,GAAG;IACT,iBAAiB;IACjB,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,SAAS,GAAG,GAAG;IACtC,OAAO,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE,CAAC,eAAe,IAAI,KAAK,GAAG,GAAG;IACtE,aAAa,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,eAAe,GAAG,GAAG;IACrD,UAAU,EAAE,CAAC,MAAc,EAAE,GAAW,EAAE,EAAE,CAAC,gBAAgB,MAAM,KAAK,GAAG,GAAG;IAC9E,kBAAkB,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,sBAAsB,GAAG,GAAG;IACjE,KAAK,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE,CAAC,UAAU,IAAI,KAAK,GAAG,GAAG;IAC/D,WAAW,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,UAAU,GAAG,GAAG;IAC9C,OAAO,EAAE,CAAC,IAAY,EAAE,UAAkB,EAAE,GAAW,EAAE,EAAE,CACzD,MAAM,IAAI,cAAc,UAAU,KAAK,GAAG,GAAG;IAC/C,cAAc,EAAE,GAAG,EAAE,CAAC,mBAAmB;IAEzC,QAAQ;IACR,WAAW,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IACvE,gBAAgB,EAAE,GAAG,EAAE,CAAC,uCAAuC;IAC/D,QAAQ,EAAE,GAAG,EAAE,CAAC,wBAAwB;IACxC,eAAe,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,iBAAiB,KAAK,GAAG;IAC7D,YAAY,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACzC,SAAS,EAAE,CAAC,KAAa,EAAE,IAAY,EAAE,EAAE,CAAC,iBAAiB,KAAK,GAAG,IAAI,EAAE;IAC3E,OAAO,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU;IAExC,
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,gEAAgE;AAChE,MAAM,UAAU,aAAa,CAAC,QAAwB;IACpD,IAAI,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+EAA+E;AAE/E,MAAM,EAAE,GAAG;IACT,iBAAiB;IACjB,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,SAAS,GAAG,GAAG;IACtC,OAAO,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE,CAAC,eAAe,IAAI,KAAK,GAAG,GAAG;IACtE,aAAa,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,eAAe,GAAG,GAAG;IACrD,UAAU,EAAE,CAAC,MAAc,EAAE,GAAW,EAAE,EAAE,CAAC,gBAAgB,MAAM,KAAK,GAAG,GAAG;IAC9E,kBAAkB,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,sBAAsB,GAAG,GAAG;IACjE,KAAK,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE,CAAC,UAAU,IAAI,KAAK,GAAG,GAAG;IAC/D,WAAW,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,UAAU,GAAG,GAAG;IAC9C,OAAO,EAAE,CAAC,IAAY,EAAE,UAAkB,EAAE,GAAW,EAAE,EAAE,CACzD,MAAM,IAAI,cAAc,UAAU,KAAK,GAAG,GAAG;IAC/C,cAAc,EAAE,GAAG,EAAE,CAAC,mBAAmB;IAEzC,QAAQ;IACR,WAAW,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;IACvE,gBAAgB,EAAE,GAAG,EAAE,CAAC,uCAAuC;IAC/D,QAAQ,EAAE,GAAG,EAAE,CAAC,wBAAwB;IACxC,eAAe,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,iBAAiB,KAAK,GAAG;IAC7D,YAAY,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACzC,SAAS,EAAE,CAAC,KAAa,EAAE,IAAY,EAAE,EAAE,CAAC,iBAAiB,KAAK,GAAG,IAAI,EAAE;IAC3E,OAAO,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU;IAExC,eAAe;IACf,WAAW,EAAE,GAAG,EAAE,CAAC,8BAA8B;IACjD,aAAa,EAAE,GAAG,EAAE,CAAC,oBAAoB;IACzC,cAAc,EAAE,GAAG,EAAE,CAAC,qDAAqD;IAC3E,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;IAEtB,4BAA4B;IAC5B,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG;IACtB,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM;IACnB,SAAS,EAAE,GAAG,EAAE,CAAC,UAAU;IAC3B,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ;IACtB,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO;IACpB,OAAO,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO;IAEtC,gBAAgB;IAChB,aAAa,EAAE,CAAC,IAAY,EAAE,UAAkB,EAAE,EAAE,CAClD,UAAU,IAAI,MAAM,UAAU,EAAE;IAElC,SAAS;IACT,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CACtB,aAAa,CAAC,kCAAkC;IAClD,YAAY,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,IAAI,6BAA6B;IACpE,eAAe,EAAE,GAAG,EAAE,CACpB,yEAAyE;IAE3E,OAAO;IACP,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU;IACzB,UAAU,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO;IACtC,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO;IACpC,OAAO,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO;IAEnC,OAAO;IACP,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;IACtB,UAAU,EAAE,GAAG,EAAE,CAAC,6VAA6V;IAC/W,eAAe,EAAE,CAAC,QAAgB,EAAE,EAAE,CACpC,6BAA6B,QAAQ,GAAG;CAC3C,CAAC;AAEF,MAAM,EAAE,GAAc;IACpB,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,GAAG,GAAG;IAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,IAAI,KAAK,GAAG,GAAG;IAC/C,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,GAAG,GAAG;IACzC,UAAU,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,SAAS,MAAM,KAAK,GAAG,GAAG;IACvD,kBAAkB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,GAAG,GAAG;IAC5C,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,QAAQ,IAAI,KAAK,GAAG,GAAG;IAC7C,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,GAAG,GAAG;IACpC,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CACjC,MAAM,IAAI,YAAY,UAAU,KAAK,GAAG,GAAG;IAC7C,cAAc,EAAE,GAAG,EAAE,CAAC,qBAAqB;IAE3C,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS;IACpC,gBAAgB,EAAE,GAAG,EAAE,CAAC,gCAAgC;IACxD,QAAQ,EAAE,GAAG,EAAE,CAAC,uBAAuB;IACvC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO;IAC9C,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;IACrC,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,KAAK,OAAO,IAAI,EAAE;IACpD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO;IAE7B,WAAW,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACxC,aAAa,EAAE,GAAG,EAAE,CAAC,iBAAiB;IACtC,cAAc,EAAE,GAAG,EAAE,CAAC,gCAAgC;IACtD,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;IAEtB,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG;IACtB,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI;IACrB,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM;IACnB,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS;IAC1B,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO;IACrB,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ;IACrB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG;IAE5B,aAAa,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAClC,GAAG,IAAI,aAAa,UAAU,EAAE;IAElC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CACd,WAAW,CAAC,2BAA2B;IACzC,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,qBAAqB;IACpD,eAAe,EAAE,GAAG,EAAE,CACpB,6CAA6C;IAE/C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM;IACrB,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI;IAC3B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK;IAC1B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI;IAExB,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;IACtB,UAAU,EAAE,GAAG,EAAE,CAAC,iPAAiP;IACnQ,eAAe,EAAE,CAAC,QAAQ,EAAE,EAAE,CAC5B,gBAAgB,QAAQ,GAAG;CAC9B,CAAC;AAMF,MAAM,QAAQ,GAA6B,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAEtD,2CAA2C;AAC3C,MAAM,UAAU,CAAC,CAAC,MAAc;IAC9B,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,EAAE,CAAC;AACzC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -93,13 +93,23 @@ async function main() {
|
|
|
93
93
|
messageStore,
|
|
94
94
|
statusStore,
|
|
95
95
|
lineClient,
|
|
96
|
-
logger
|
|
96
|
+
logger,
|
|
97
|
+
getUpdatedInstructions: () => {
|
|
98
|
+
if (instructionsUpdated && updatedInstructionsContent) {
|
|
99
|
+
instructionsUpdated = false; // Only return once
|
|
100
|
+
return updatedInstructionsContent;
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
97
104
|
});
|
|
98
105
|
const transport = new StdioServerTransport();
|
|
99
106
|
await server.connect(transport);
|
|
100
107
|
// Auto-update project instructions in background (non-blocking).
|
|
101
108
|
// Silently refreshes instruction files if they're outdated after a package upgrade.
|
|
109
|
+
// Sets instructionsUpdated flag so the first tool call can return the new instructions.
|
|
102
110
|
const projectDir = process.env.WORKSPACE_PATH || process.cwd();
|
|
111
|
+
let instructionsUpdated = false;
|
|
112
|
+
let updatedInstructionsContent = null;
|
|
103
113
|
(async () => {
|
|
104
114
|
try {
|
|
105
115
|
const isClaudeCode = fs.existsSync(path.join(projectDir, ".claude", "rules", "line-notification.md"));
|
|
@@ -108,6 +118,13 @@ async function main() {
|
|
|
108
118
|
: await installProjectInstructions(projectDir);
|
|
109
119
|
if (updated) {
|
|
110
120
|
logger.info({ path: updated }, "Auto-updated project instructions");
|
|
121
|
+
instructionsUpdated = true;
|
|
122
|
+
try {
|
|
123
|
+
updatedInstructionsContent = fs.readFileSync(updated, "utf-8");
|
|
124
|
+
}
|
|
125
|
+
catch {
|
|
126
|
+
// Non-critical — flag is still set
|
|
127
|
+
}
|
|
111
128
|
}
|
|
112
129
|
await ensureGitignoreEntries(projectDir);
|
|
113
130
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/line/messages.js
CHANGED
|
@@ -63,6 +63,13 @@ export function parsePostbackData(data) {
|
|
|
63
63
|
return { type: "continue" };
|
|
64
64
|
if (action === "show_queued")
|
|
65
65
|
return { type: "show_queued" };
|
|
66
|
+
if (action === "delete_queue")
|
|
67
|
+
return { type: "delete_queue" };
|
|
68
|
+
if (action === "delete_queue_item") {
|
|
69
|
+
const msgId = parseInt(params.get("messageId") || "0", 10);
|
|
70
|
+
if (msgId > 0)
|
|
71
|
+
return { type: "delete_queue_item", messageId: msgId };
|
|
72
|
+
}
|
|
66
73
|
return { type: "chat", text: data };
|
|
67
74
|
}
|
|
68
75
|
// ─── Quick Reply Builder ────────────────────────────────────────────────────
|
|
@@ -81,7 +88,7 @@ export function buildQuickReply(agents, locale = "en") {
|
|
|
81
88
|
type: "postback",
|
|
82
89
|
label: m.btnContinue(),
|
|
83
90
|
data: "action=continue",
|
|
84
|
-
displayText: "
|
|
91
|
+
displayText: "✅",
|
|
85
92
|
},
|
|
86
93
|
});
|
|
87
94
|
// Status button
|
|
@@ -94,28 +101,76 @@ export function buildQuickReply(agents, locale = "en") {
|
|
|
94
101
|
displayText: "?",
|
|
95
102
|
},
|
|
96
103
|
});
|
|
97
|
-
//
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
104
|
+
// Queue button
|
|
105
|
+
items.push({
|
|
106
|
+
type: "action",
|
|
107
|
+
action: {
|
|
108
|
+
type: "postback",
|
|
109
|
+
label: m.btnQueued(),
|
|
110
|
+
data: "action=show_queued",
|
|
111
|
+
displayText: "q",
|
|
112
|
+
},
|
|
113
|
+
});
|
|
114
|
+
// Agent selection buttons (only when 2+ agents; max 9 to stay under LINE's 13-item limit)
|
|
115
|
+
if (agents.length >= 2) {
|
|
116
|
+
const maxAgents = Math.min(agents.length, 9);
|
|
117
|
+
for (let i = 0; i < maxAgents; i++) {
|
|
118
|
+
const agent = agents[i];
|
|
119
|
+
const name = agent.agentName || agent.agentId.slice(0, 8);
|
|
120
|
+
const emoji = NUMBER_EMOJIS[i] || `${i + 1}`;
|
|
121
|
+
const icon = agent.isAlive === false
|
|
122
|
+
? "🔌"
|
|
123
|
+
: STATUS_ICONS[agent.status] || "❔";
|
|
124
|
+
// Build display name: "workspace/agentName" if workspace differs
|
|
125
|
+
const showWorkspace = agent.workspaceName && agent.workspaceName !== name;
|
|
126
|
+
const displayName = showWorkspace ? `${agent.workspaceName}/${name}` : name;
|
|
127
|
+
items.push({
|
|
128
|
+
type: "action",
|
|
129
|
+
action: {
|
|
130
|
+
type: "postback",
|
|
131
|
+
label: truncLabel(`${emoji}${icon} ${name}`),
|
|
132
|
+
data: new URLSearchParams({ action: "confirm_select", index: String(i + 1), agentId: agent.agentId }).toString(),
|
|
133
|
+
displayText: `${i + 1} ${displayName}`,
|
|
134
|
+
},
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return { items };
|
|
139
|
+
}
|
|
140
|
+
// ─── Text + Quick Reply Helpers ─────────────────────────────────────────────
|
|
141
|
+
/**
|
|
142
|
+
* Build quick reply for "which message to delete?" prompt.
|
|
143
|
+
* Shows Continue button + numbered emoji buttons (1️⃣, 2️⃣, ...) for each queued message.
|
|
144
|
+
*/
|
|
145
|
+
export function buildDeleteQueueReply(messages, locale = "en") {
|
|
146
|
+
const m = t(locale);
|
|
147
|
+
const items = [];
|
|
148
|
+
// Continue button (escape hatch)
|
|
149
|
+
items.push({
|
|
150
|
+
type: "action",
|
|
151
|
+
action: {
|
|
152
|
+
type: "postback",
|
|
153
|
+
label: m.btnContinue(),
|
|
154
|
+
data: "action=continue",
|
|
155
|
+
displayText: "✅",
|
|
156
|
+
},
|
|
157
|
+
});
|
|
158
|
+
// Numbered message buttons (max 9 to stay within LINE's 13-item limit)
|
|
159
|
+
const max = Math.min(messages.length, 9);
|
|
160
|
+
for (let i = 0; i < max; i++) {
|
|
102
161
|
const emoji = NUMBER_EMOJIS[i] || `${i + 1}`;
|
|
103
|
-
const icon = agent.isAlive === false
|
|
104
|
-
? "🔌"
|
|
105
|
-
: STATUS_ICONS[agent.status] || "❔";
|
|
106
162
|
items.push({
|
|
107
163
|
type: "action",
|
|
108
164
|
action: {
|
|
109
165
|
type: "postback",
|
|
110
|
-
label:
|
|
111
|
-
data:
|
|
112
|
-
displayText:
|
|
166
|
+
label: emoji,
|
|
167
|
+
data: new URLSearchParams({ action: "delete_queue_item", messageId: String(messages[i].id) }).toString(),
|
|
168
|
+
displayText: emoji,
|
|
113
169
|
},
|
|
114
170
|
});
|
|
115
171
|
}
|
|
116
172
|
return { items };
|
|
117
173
|
}
|
|
118
|
-
// ─── Text + Quick Reply Helpers ─────────────────────────────────────────────
|
|
119
174
|
/**
|
|
120
175
|
* Build minimal quick reply items when no agents are active.
|
|
121
176
|
* Provides Continue (token priming), Status (refresh), and Queued (orphan check).
|
|
@@ -130,7 +185,7 @@ function buildZeroAgentQuickReply(locale = "en") {
|
|
|
130
185
|
type: "postback",
|
|
131
186
|
label: m.btnContinue(),
|
|
132
187
|
data: "action=continue",
|
|
133
|
-
displayText: "
|
|
188
|
+
displayText: "✅",
|
|
134
189
|
},
|
|
135
190
|
},
|
|
136
191
|
{
|
|
@@ -148,7 +203,7 @@ function buildZeroAgentQuickReply(locale = "en") {
|
|
|
148
203
|
type: "postback",
|
|
149
204
|
label: m.btnQueued(),
|
|
150
205
|
data: "action=show_queued",
|
|
151
|
-
displayText: "
|
|
206
|
+
displayText: "q",
|
|
152
207
|
},
|
|
153
208
|
},
|
|
154
209
|
],
|
|
@@ -162,6 +217,27 @@ export function textWithQuickReply(text, agents, locale = "en") {
|
|
|
162
217
|
quickReply: agents.length > 0 ? buildQuickReply(agents, locale) : buildZeroAgentQuickReply(locale),
|
|
163
218
|
};
|
|
164
219
|
}
|
|
220
|
+
/** Text message with quick reply buttons + a 🗑️ delete button (for queue display with messages) */
|
|
221
|
+
export function textWithQueueQuickReply(text, agents, locale = "en") {
|
|
222
|
+
const m = t(locale);
|
|
223
|
+
const qr = agents.length > 0 ? buildQuickReply(agents, locale) : buildZeroAgentQuickReply(locale);
|
|
224
|
+
// Insert 🗑️ delete button after the 📬 queue button (index 2) — before any agent buttons
|
|
225
|
+
const deleteItem = {
|
|
226
|
+
type: "action",
|
|
227
|
+
action: {
|
|
228
|
+
type: "postback",
|
|
229
|
+
label: m.btnDelete(),
|
|
230
|
+
data: "action=delete_queue",
|
|
231
|
+
displayText: "🗑️",
|
|
232
|
+
},
|
|
233
|
+
};
|
|
234
|
+
qr.items.splice(3, 0, deleteItem);
|
|
235
|
+
return {
|
|
236
|
+
type: "text",
|
|
237
|
+
text,
|
|
238
|
+
quickReply: qr,
|
|
239
|
+
};
|
|
240
|
+
}
|
|
165
241
|
/** Error message (e.g., invalid agent number) with quick replies */
|
|
166
242
|
export function errorMessage(text, agents, locale = "en") {
|
|
167
243
|
return textWithQuickReply(text, agents, locale);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/line/messages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,CAAC,EAAe,MAAM,YAAY,CAAC;AAiD5C,+EAA+E;AAE/E,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,GAAG;IAChB,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,aAAa,GAAG;IACpB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IACjC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;CAC3B,CAAC;AAEF,+EAA+E;AAE/E,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE,SAAiB,IAAI;IACpE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IACpB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;IAC5D,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACzC,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACpC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY,EAAE,GAAG,GAAG,EAAE;IACxC,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,mBAAmB,CAAC,KAAqD;IACvF,OAAO,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/line/messages.ts"],"names":[],"mappings":"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"}
|