31 lines
1.2 KiB
Markdown
31 lines
1.2 KiB
Markdown
# 250903 슬랙 대화 표시 인디케이터 구현 완료
|
|
|
|
## 문제
|
|
프론트엔드 대화창에서 슬랙/웹 대화 구분 불가
|
|
|
|
## 해결 방법
|
|
conversation_logs 테이블의 slack_user_id 필드를 활용하여 슬랙 대화 시각적 표시
|
|
|
|
## 수정된 파일
|
|
|
|
### 백엔드 (2025-09-04)
|
|
1. **rb8001/app/state/database.py**
|
|
- get_recent_conversations(): SQL에 slack_user_id 추가, 반환값에 포함
|
|
- get_paginated_conversations(): SQL에 slack_user_id 추가, 반환값에 포함
|
|
|
|
2. **rb8001/main.py**
|
|
- /api/v1/messages 엔드포인트: formatted_messages에 slack_user_id 필드 추가
|
|
|
|
### 프론트엔드 (2025-09-04)
|
|
1. **frontend-customer/src/components/chat-interface.tsx**
|
|
- Message 인터페이스에 slack_user_id?: string 추가
|
|
- 아바타를 relative div로 감싸고 슬랙 아이콘 조건부 렌더링
|
|
- 아이콘: w-3 h-3, 위치 -top-1 -right-2 / -top-1 -left-2
|
|
- 타임스탬프 옆에 slack_user_id 있으면 "(Slack)" 텍스트 표시
|
|
|
|
2. **frontend-customer/src/services/robeing-api.ts**
|
|
- getMessages() 반환 타입에 slack_user_id?: string 추가
|
|
|
|
## 최종 동작
|
|
- 슬랙으로 보낸 메시지: 프로필 근처 슬랙 아이콘 + 시간 옆 "(Slack)" 표시
|
|
- 웹으로 보낸 메시지: 기존과 동일 |