69 lines
5.3 KiB
Markdown
69 lines
5.3 KiB
Markdown
# 🚀 Unified Help Desk Platform (MVP)
|
|
|
|
[](LICENSE)
|
|

|
|

|
|
|
|
## 🌟 ภาพรวมโครงการ (Project Overview)
|
|
|
|
โครงการนี้คือการพัฒนาแพลตฟอร์ม **Help Desk/Unified Inbox** ที่มีฟังก์ชันการทำงานพื้นฐานที่จำเป็น (Minimum Viable Product - MVP) สำหรับการจัดการ Ticket และการสนทนาระหว่างลูกค้าและ Agent
|
|
|
|
โครงการนี้เริ่มต้นจาก **`monorepo-starter-full-auth-web-app-template`** ซึ่งมีโครงสร้างพื้นฐานที่จำเป็น (Monorepo, High Availability, Authentication) ทำให้ลดเวลาในการตั้งค่าโครงสร้างพื้นฐานลงได้อย่างมาก
|
|
|
|
### 🎯 เป้าหมายของ MVP
|
|
|
|
1. สร้างระบบฐานข้อมูลหลักสำหรับจัดการ Ticket และ Agent
|
|
2. พัฒนาระบบ **Unified Inbox** สำหรับ Agent เพื่อจัดการและติดตามสถานะ Ticket ทั้งหมด
|
|
3. สร้างระบบ **Real-time Conversation** เพื่อให้ Agent และลูกค้าสามารถสื่อสารกันได้
|
|
|
|
---
|
|
|
|
## 📅 แผนการพัฒนาและไทม์ไลน์ (5-Day Sprint Plan)
|
|
|
|
การพัฒนาขั้นต้นนี้ถูกบีบอัดให้เหลือเพียง **5 วัน** โดยการตัดฟังก์ชันที่ซับซ้อน (เช่น Real-time Messaging, Task Queues) ออกทั้งหมด:
|
|
|
|
### 1. แผนภาพรวม (5-Day POC Breakdown)
|
|
|
|
| # | กิจกรรมหลัก | ระยะเวลา | สรุปเป้าหมาย (POC Focus) |
|
|
| :--- | :--- | :--- | :--- |
|
|
| **1** | **Cleanup & Data Model** | 1 วัน | จัดการโครงสร้าง, สร้างแอป **`helpdesk`**, และสร้าง **Core Model: Ticket** |
|
|
| **2** | **Backend API & Logic** | 2 วัน | สร้าง API (CRUD) สำหรับ Ticket, พัฒนาฟังก์ชัน **Update Status** และ **Assign Agent** |
|
|
| **3** | **Frontend UI & Read** | 1 วัน | พัฒนาหน้า Inbox UI พื้นฐาน, เชื่อมต่อ API เพื่อ **แสดงรายการ Ticket ทั้งหมด** |
|
|
| **4** | **Testing & Documentation** | 1 วัน | ทดสอบ End-to-End (Create $\rightarrow$ Read $\rightarrow$ Update) และจัดทำเอกสาร Setup |
|
|
| **รวม** | | **5 วัน** | **Ticket Management POC สำเร็จ** |
|
|
|
|
### 2. เทคโนโลยีและโครงสร้างที่ใช้ (Leveraged from Template)
|
|
|
|
* **Backend & Infrastructure:**
|
|
* **Authentication:** ระบบจัดการผู้ใช้และสิทธิ์ **JWT** (ตั้งค่าเสร็จแล้ว)
|
|
* **Database HA:** ฐานข้อมูลที่มีความพร้อมใช้งานสูง (CockroachDB)
|
|
* **Task Queue:** โครงสร้าง **Celery / Redis** ตั้งค่าไว้พร้อมใช้งาน (แต่ไม่ได้ใช้ใน POC นี้)
|
|
* **Frontend Base:** React Hooks / Redux Toolkit / TanStack Query
|
|
|
|
---
|
|
|
|
## ⚠️ ปัจจัยความซับซ้อน (Scope Complexity)
|
|
|
|
* **Real-time Messaging:** หากต้องเปลี่ยนจากการใช้ Polling ไปใช้ **WebSockets** (Django Channels/FastAPI) เพื่อให้การสนทนาเกิดขึ้นทันที อาจทำให้ระยะเวลาพัฒนาส่วนนี้เพิ่มขึ้น
|
|
* **AI Integration:** การเพิ่มฟีเจอร์ **AI Automation** (เช่น การจัดประเภท Ticket อัตโนมัติ) ถูกจัดอยู่ในขอบเขตการพัฒนาเฟสถัดไป และจะใช้เวลาพัฒนาแยกต่างหาก
|
|
|
|
---
|
|
|
|
## 🛠️ การเริ่มต้น (Getting Started)
|
|
|
|
### 1. Clone Project
|
|
|
|
```bash
|
|
git clone https://gitea.softwarecraft.tech/gitea/help-desk.git
|
|
cd help-desk
|
|
```
|
|
---
|
|
|
|
## คู่มือต่าง ๆ
|
|
|
|
คำแนะนำสำหรับ Developer ในการรันโปรเจคครั้งแรก [ที่นี่](docs/dev_manual.pdf)
|
|
|
|
คำแนะนำสำหรับการพัฒนา Django DRF ตามแนวคิด Clean Architecture [ที่นี่](docs/clean_architecture_in_django_drf_manual.pdf)
|
|
|
|
คำแนะนำสำหรับการพัฒนา Frontend [ที่นี่](docs/react_manual.pdf)
|