Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证"Active Crm" систем нь авто засвар, үсчин, худалдааны газруудад хэрэглэгчийн мэдээллийг хялбар цуглуулж, улирлын ачааллыг урьдчилан зохицуулах боломжийг олгоно.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Жижиг, дунд бизнесүүдэд (авто засвар, үсчин, үйлчилгээ, худалдаа) зориулсан харилцагчийн бүртгэл, цаг захиалга, ажлын урсгалын систем. Next.js (App Router) + PostgreSQL (Supabase).
Гол боломжууд:
src/lib/plans.ts-д.ACRM-XXXXXX код → платформын админ "Орлого орсон" дарна) эсвэл QPay (төлөгдөхөд автоматаар идэвхжинэ).| Админ | Менежер | Ажилтан | |
|---|---|---|---|
| Ажил | ✔ бүгдийг засна | ✔ бүгдийг засна | ✔ өөрт оноогдсоныг |
| Өөрийн профайл, багцын төлөв | ✔ | ✔ | ✔ |
| Харилцагч (нэмэх, засах), цаг захиалга, тайлан | ✔ | ✔ | — |
| Харилцагч устгах, өгөгдөл экспорт/импорт | ✔ | — | — |
| Тохиргоо, ажилчид, анкет, сануулга, үйлдлийн түүх, багц төлөх | ✔ | — | — |
Эрхийн дүрэм src/lib/roles.ts-д. Эрхэд нээлттэй бус хуудсыг src/proxy.ts тухайн эрхийн нүүр хуудас руу шилжүүлнэ; API бүр эрхээ өөрөө шалгана (requireAuth({ admin: true }), requireAuth({ roles: MANAGER_ROLES })).
npm install
cp .env.example .env.local # утгуудыг бөглөнө (доорх хүснэгтийг үзнэ үү)
npm run db:migrate # мэдээллийн сангийн хүснэгтүүдийг үүсгэнэ / шинэчилнэ
npm run dev # http://localhost:3000
Локал PostgreSQL ашиглах бол: DATABASE_URL=postgres://postgres:postgres@localhost:5432/activecrm, DATABASE_SSL=false.
db/migrations/ доторх SQL файлууд нэрийн дарааллаар ажиллана. npm run db:migrate нь ажилласан файлуудыг
schema_migrations хүснэгтэд тэмдэглэж, зөвхөн шинийг нь ажиллуулна (npm run db:migrate -- --list — төлөв харах).
00000000_baseline_schema.sql — анх Supabase UI-аар үүсгэсэн үндсэн хүснэгтүүд. Аппын кодонд ашиглагдаж буй
баганаас сэргээн бичсэн тул production-той зөрүү байж болзошгүй; шалгах бол
pg_dump --schema-only --no-owner "$DATABASE_URL"-ийн гаралттай харьцуулна.IF NOT EXISTS) тул өмнө нь гараар ажиллуулсан production DB дээр
npm run db:migrate-ийг анх удаа ажиллуулахад өөрчлөгдсөн зүйлгүй файлууд зүгээр л тэмдэглэгдэнэ.db/scripts/ — нэг удаагийн өгөгдөл цэвэрлэх скриптүүд (migration биш, гараар ажиллуулна).| Хувьсагч | Тайлбар |
|---|---|
DATABASE_URL | PostgreSQL (Supabase) холболт |
DATABASE_SSL | Локал / CI-ийн SSL-гүй PostgreSQL-д false. Бусад үед (Supabase) SSL-ээр холбогдоно |
DB_POOL_MAX | Нэг процессын DB холболтын дээд тоо (анхдагч 5) |
SESSION_SECRET | Session JWT болон нууц үг сэргээх кодын HMAC түлхүүр (32+ тэмдэгт санамсаргүй) |
GMAIL_USER, GMAIL_APP_PASSWORD | Имэйл илгээх (Gmail SMTP, nodemailer). GMAIL_APP_PASSWORD нь Google бүртгэлийн App Password. Тохируулаагүй бол dev-д console-д хэвлэнэ |
CRON_SECRET | Өдөр бүрийн сануулгын cron (/api/cron/reminders, vercel.json)-ийг хамгаалах нууц түлхүүр. Vercel нь Authorization: Bearer <CRON_SECRET> толгойгоор дууддаг |
SMS_API_URL, SMS_API_TOKEN, SMS_SENDER | Сануулгыг SMS-ээр илгээх gateway (заавал биш). SMS_API_URL руу {"to","text","from"} JSON POST хийнэ, токеныг Authorization: Bearer-ээр илгээнэ. Gateway өөр формат шаарддаг бол src/lib/sms.ts-ийг тохируулна. Тохируулаагүй бол зөвхөн имэйлээр илгээнэ |
APP_URL | Имэйл баталгаажуулах холбоос, QPay callback-ийн үндсэн хаяг (жнь https://activecrm.mn). Хоосон бол хүсэлтийн хаягийг ашиглана |
PLATFORM_ADMIN_EMAILS | Платформын (Active CRM-ийн өөрийн) админуудын имэйл, таслалаар. Тэд профайлын цэсний "Платформ"-оос бүх компанийн багц, банкны шилжүүлэг, нүүр хуудасны контент, багцын үнийг удирдана |
QPAY_USERNAME, QPAY_PASSWORD, QPAY_INVOICE_CODE, QPAY_BASE_URL | QPay merchant тохиргоо (заавал биш). Тохируулсан үед "QPay-ээр төлөх" идэвхжинэ; QPAY_BASE_URL анхдагч https://merchant.qpay.mn (туршилтад sandbox) |
TRUSTED_PROXY_HOPS | Апп хэдэн итгэмжлэгдсэн proxy / load balancer-ийн ард ажиллаж байгаа (анхдагч 1). Rate limit-д клиентийн IP-г X-Forwarded-For-ийн баруун талаас энэ тоогоор авна, ингэснээр IP-г хуурах боломжгүй. Proxy-гүй бол 0. Vercel дээр хамаарахгүй |
DATABASE_URL нь Supabase-ийн transaction pooler (порт 6543).vercel.json дахь cron өдөр бүр 01:00 UTC (Улаанбаатарын 09:00)-д /api/cron/reminders-ийг дуудна; CRON_SECRET заавал.