###### tags: `cheer_watch` `Sequence`
**!!! このファイルは[こちら](https://hackmd.io/5WkkwXl9R3myXOxTIvoT_Q)へ移行済みです**
# 6.コメント一覧取得/コメント通報管理シーケンス
## 概要
特定のLiveルームのコメント一覧を取得して画面表示するシーケンスと、特定のコメントを通報する際のシーケンスになります。
## 6-1.コメント一覧取得シーケンス
```mermaid
sequenceDiagram
participant front as フロントApp
participant api as SPBL API
participant cms as SPBL CMS
participant dynamo as AWS DynamoDB
Note over front: コメント一覧ボタン押下
front ->> api: コメント一覧取得API<br>GET: /api/v5/cheer_watch/room/{room_id}/comments
api ->> cms:
cms ->> dynamo: コメント一覧要求<br>room_id
Note over dynamo: live_comments GSI<br>room_idでフィルタ<br>is_reported=false<br>posted_at降順ソート
dynamo -->> cms: コメント一覧
Note over cms: レスポンスリソース生成
cms -->> api:
api -->> front: コメント一覧<br>comments: [{comment_id, nickname, type, action, comments, amount}]
Note over front: コメント一覧表示
```
## 6-2.コメント通報シーケンス
```mermaid
sequenceDiagram
participant front as フロントApp
participant api as SPBL API
participant cms as SPBL CMS
participant db as SPBL DB
participant dynamo as AWS DynamoDB
Note over front: コメント一覧表示
Note over front: 通報ボタン押下
front ->> api: コメント通報API<br>POST: /api/v5/cheer_watch/room/{room_id}/comment/report<br>body: uid,comment_id,report_type
api ->> cms:
cms ->> db: 通報コメントテーブル生成要求<br>agora_uid,comment_id,report_type
Note over db: cheer_watch_comment_reports<br>レコード生成
db -->> cms:
cms ->> dynamo: 通報済み通知
Note over dynamo: cheer_watch_live_comments<br>is_report=true
dynamo -->> cms:
Note over cms: レスポンスリソース生成
cms -->> api:
api -->> front:
Note over front: 通報完了表示
```