Home - ntplab/mbaas-chat GitHub Wiki

はじめに

まず最初に本モジュールにおける言語を定義します

言語の定義

項目 概要 メモ
ユーザ ユーザはグループ毎に異なる名称を持つ、そのためデータベース定義上非正規化している グループ毎ユーザ
グループ グループ名は、非ユニーク グループチャットが可能
メッセージ チャットメッセージ システムメッセージを含む
データベース チャットデータベースは、sqlite3(ファイルデータベース)を採用 つまり、boost::async_io/crow/node.js等のシングルプロセス・マルチスレッド・非同期イベントでの実装に限定されます

API 一覧

本サービスは、rest-fullインタフェイスによって サービスを提供します

  • ユーザ系
  • グループ系
  • メッセージ(チャット)系
  • サマリ系
  • イベント受信系

の各エントリポイントがあります

ユーザ

no. method entry point 概要 link
1 GET /v1/mb/user/{gid}/{uid} ユーザ情報を取得 get_user
2 DELETE /v1/mb/user/{gid}/{uid} ユーザを削除 del_user
3 POST /v1/mb/user/{gid}/{token} グループ毎ユーザを生成 new_user
4 PUT /v1/mb/user/{gid}/{token} グループ毎ユーザ更新 upd_user

グループ

no. method entry point 概要 link
1 GET /v1/mb/group グループ内・ユーザ一覧を取得 get_group
2 GET /v1/mb/group/{gid} グループ一覧を取得 get_group
3 DELETE /v1/mb/group/{gid} グループを削除 del_group
4 POST /v1/mb/group グループを生成 new_group

メッセージ(チャット)

no. method entry point 概要 link
1 GET /v1/mb/chat/{gid}/{lastmid} グループ内・チャット一覧取得 get_message
2 DELETE /v1/mb/chat/{gid}/{uid}/{mid} メッセージを削除 del_message
3 POST /v1/mb/chat/{gid}/{uid} メッセージを生成 new_message

サマリ

no. method entry point 概要 link
1 GET /v1/mb/info/{gid}/{uid}/{lastmid} サマリ取得 get_info

イベント受信

no. method entry point 概要 link
1 GET /v1/mb/notify/{gid} 指定グループのイベント受信 notify_group
2 GET /v1/mb/notify 全体イベント受信 notify_all