- ChatThread per client/provider and channel; messages get files, internal notes, source (bot/mini app) and delivery errors; reply templates. Migration moves old concierge messages into threads. - Routing: subscribers write to the concierge, others to support; /support and /concierge in the client bot; staff can take, transfer, close and move threads. - Telegram: photos/documents from clients and providers, replies with the channel header, files sent from storage, notifications only to the assignee or the channel's staff, "Reply" into a specific thread. - New admin: /chats with list, conversation, notes, files, templates, client panel; "Message" button on the client card; dashboard counts threads awaiting reply. - Client mini app: in-app chat screen sharing the same conversation. - Old admin keeps working on the same data (notes hidden there). - Tests for routing, notes, assign/close/move, lists, recipients; separate test DB via TEST_DB_NAME; dev:chats-demo script. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
32 lines
693 B
JSON
32 lines
693 B
JSON
{
|
|
"name": "@barev/services",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"exports": {
|
|
".": "./src/index.ts",
|
|
"./queue": "./src/queue.ts",
|
|
"./env": "./src/env.ts",
|
|
"./telegram": "./src/telegram.ts",
|
|
"./storage": "./src/storage.ts"
|
|
},
|
|
"scripts": {
|
|
"test": "vitest run",
|
|
"typecheck": "tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@aws-sdk/client-s3": "^3.1152.0",
|
|
"@barev/core": "workspace:*",
|
|
"@barev/db": "workspace:*",
|
|
"@barev/i18n": "workspace:*",
|
|
"bullmq": "^5.81.5",
|
|
"dotenv": "^17.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/pg": "^8.15.0",
|
|
"dotenv": "^17.0.0",
|
|
"pg": "^8.16.0",
|
|
"vitest": "^4.1.0"
|
|
}
|
|
}
|