Phase 2 refinements: Firebase config, dev environment fixes, phase 3 requirement draft
- Integrated Firebase SDK in both Flutter apps (google-services, firebase_options) - Fixed auth flow, API client, and pairing/status blocs for dev environment - Added full Flutter project scaffolds (android, ios, web, etc.) - Added phase 3 chat engine requirement document - Added bugreport zip pattern to gitignore Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
41
requirement/phase3.md
Normal file
41
requirement/phase3.md
Normal file
@@ -0,0 +1,41 @@
|
||||
# PRD: Chat Engine
|
||||
|
||||
# Overview
|
||||
|
||||
**Goal:** To build chat engine between Mitra and Customer
|
||||
|
||||
**Success looks like:** When paired, Mitra and Customer can chat in a chat room. Chat will be visible on active chat page. Closed chat will be listed on the chat history
|
||||
|
||||
|
||||
## Background
|
||||
- We need capability to do chat between Mitra and Customer
|
||||
- We need capability for Customer and Mitra to see their previous chat session
|
||||
- We need to be able to give closing statement from both Mitra and Customer when the chat is ended
|
||||
|
||||
# Functional Requirement
|
||||
|
||||
## Bi Directional Chat
|
||||
Functional requirement:
|
||||
- After pairing success, both Mitra and Customer can communicate bidirectional
|
||||
- When Mitra or Customer communication interupted (either when app is killed or network is down or app is inactive), both will still able to receive message notification
|
||||
- On Mitra's App, when push notification is coming and clicked, it must be immediately goes to specific chat with specific customer. e.g. When push notif were come for chatting with Customer A, it should be redirected to exact customer A chat, not just list of chat room
|
||||
- All chat must be recorded in database in chronological order
|
||||
- When app is opened after shutdown, it must be able to populate all conversation along
|
||||
- User (both Mitra and Customer) must be able to re read all chat history
|
||||
|
||||
## Chat Closure
|
||||
- Chat session is a limited time session. For now, it is 2 minutes, but make it configurable through control center
|
||||
- When chat is going to end (1 minutes left), shows remaining time on the chat screen
|
||||
- When chat session is finished there will be following functionality:
|
||||
- Customer Application:
|
||||
- Show dialog window whether Customer want to extend the session
|
||||
- If Customer do not want to extend, show closing message input
|
||||
-
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Tech Stack
|
||||
- Push Notification using FCM
|
||||
- Websocket
|
||||
Reference in New Issue
Block a user