トークルーム管理
トークルーム管理
概要
トーク機能の基盤となるトークルーム(チャンネル / DM)を、講師が作成・管理する機能。講師は自分の講座内に複数のルームを作り、会員とのコミュニケーション場を用意する。
トークルームは 2 種類:
- トークチャンネル: 講座の講師陣(メイン講師 + サブ講師)と会員全員のコミュニケーション場
- トーク DM: 講座の講師陣(メイン講師 + サブ講師)と特定の会員 1 名との DM
ルームには以下の設定で振る舞いを制御できる:
- 公開 / 非公開(下書き状態)
- アーカイブ(運用終了後の退避)
- 講師限定投稿(会員は投稿不可にする)
- スレッド限定投稿(会員はスレッド内のみ投稿可、講師はルーム直下にも投稿可)
- 過去トーク制限(契約開始前のトークを会員に見せない)
- ユーザーへのデフォルト通知設定(新規入会者の購読デフォルト)
- 無料公開 / 有料
- 制限プラン(特定の料金プラン契約者のみアクセス可)
管理操作(作成・更新・削除・並び順変更・詳細閲覧)は講師(メイン講師 / サブ講師)のみが行える。会員は自分にアクセス権のあるルームを閲覧できるが、ルーム自体の管理はできない。
利用シナリオ
シナリオ 1: 講師が新しいチャンネルを作る
メイン講師が講座内に「Q&A」チャンネルを新規作成。ルーム名・説明・各種設定を決めて投稿を受け付ける。作成時に講座の契約会員全員が通知対象として自動で購読設定される。
シナリオ 2: 個別 DM ルームの開設
講師が特定の会員を指定して DM ルームを作成。会員は講師陣(メイン講師 + サブ講師)との個別のやり取りができるようになる。他の会員からは見えない。
シナリオ 3: 下書きとして準備、後で公開
講師がまずルームを「非公開」で作成、内容を整えてから「公開」に切り替えて会員に見せる。非公開状態では投稿はできるが通知は飛ばない。
シナリオ 4: 過去コースを片付ける(アーカイブ)
募集終了した講座のルームをアーカイブに移動。会員の一覧画面から消えるが、データは保持される。必要なら解除して戻せる(ただしルーム数上限に達していると戻せない)。
シナリオ 5: 上位プラン限定の VIP ルーム
制限プランを設定し、特定の料金プラン(例: 上位講座)に入っている会員のみアクセスできるルームを作る。
シナリオ 6: ルームの並び替え
講師が、講座内のルーム表示順を講座ダッシュボードで並び替える。会員側は次に一覧を開き直した時点で新しい並び順になる。
利用可否(権限別)
講座権限軸
| 操作 | 非会員 | 会員 | サブ講師 | メイン講師 |
|---|---|---|---|---|
| ルーム作成(チャンネル) | × | × | ○(※1) | ○ |
| ルーム作成(DM) | × | × | ○(※1) | ○ |
| ルーム更新(設定変更) | × | × | ○(※1) | ○ |
| ルーム削除 | × | × | ○(※1) | ○ |
| ルーム並び順変更 | × | × | ○(※1) | ○ |
| ルーム詳細(管理用)取得 | × | × | ○(※1) | ○ |
| 講座内ルーム一覧(閲覧用)取得 | ○(※2) | ○(※3) | ○(※4) | ○(※4) |
| ルームの中身(トーク本文)の閲覧 | × | ○(※3) | ○ | ○ |
| アーカイブ済み / 非公開ルームの閲覧 | × | × | ○ | ○ |
| 自分 DM(自分用メモ)の保有・閲覧(v2.32.0) | × | ○(本人のみ) | ○(本人のみ) | ○(本人のみ) |
| 自分 DM への投稿(v2.32.0) | × | ○(本人のみ) | ○(本人のみ) | ○(本人のみ) |
| 自分 DM の編集・削除・並び替え(v2.32.0) | × | ×(不可) | ×(不可) | ×(不可) |
- ※1: 仕様としてはメイン・サブ両方に許可。サブ講師ケースの実挙動をテストで固定する作業を FIN-422 で追跡中
- ※2: 非会員でも一覧取得は可能で、公開済み・非アーカイブのチャンネルと自分宛の DM が返る。ただし「契約していない」状態が付随し、ルームの中身(トーク本文)の閲覧は別途ブロックされる
- ※3: 「公開済み」「非アーカイブ」かつ「自分がアクセス権のあるルーム」のみ取得できる(制限プラン設定時は自身の契約プラン価格帯が合致するものに絞られる)
- ※4: 講師は非公開・アーカイブ含め全ルームを閲覧可
横断軸
| 操作 | 運営アドミン | テストユーザー | 投稿禁止 |
|---|---|---|---|
| ルーム管理系操作(作成 / 更新 / 削除 / 並び順) | ×(運営アドミン経由の専用操作経路は存在しない) | (通常と同じ) | (運用上、講師が投稿禁止になるケースは想定外) |
| ルーム閲覧 | ×(通常ユーザー経路は未実装) | (通常と同じ) | (通常と同じ、閲覧は可) |
機能詳細(ふるまい)
ルームの作成(チャンネル)
新しいチャンネルを講座内に作る操作。講師が以下の情報を指定する:
- ルーム名(必須、全角 1〜20 文字)
- ルーム説明(任意、全角 50 文字まで)
- 公開 / 非公開(必須)
- 無料 / 有料(必須)
- 講師限定投稿(必須)
- スレッド限定投稿(任意、デフォルト OFF)
- ユーザーへのデフォルト通知設定(必須。新規入会者の購読デフォルト)
- 過去トーク制限(任意)
- 表示順(必須)
- 制限プラン(任意。指定した料金プラン契約者のみアクセス可に絞る)
作成時の自動処理:
- 講座の契約会員 + 作成した講師本人をルームの通知対象として登録(ただしデフォルト通知設定が ON の場合)
- 制限プランを指定した場合、各プラン価格の存在チェックが走る
ルームの作成(DM)
特定の会員 1 名を対象としたダイレクトメッセージ用ルーム。講師が DM 相手となる会員を指名して作成する。DM ルームの特徴:
- DM 相手(会員)1 名を指定(複数は不可)
- 初期値としてルーム名に「DM: {会員名}」、説明に「講師とのダイレクトメッセージ」が設定される
- 通知対象は「DM 相手 + メイン講師 + サブ講師」(トーク通知 参照)
- 設定項目は一部に限定される(UI が別画面)
ルームの更新(設定変更)
既存ルームの設定を変更する操作。部分更新方式で、送信したフィールドだけが更新される。
更新できるフィールド(UI 上):
- チャンネル名 / 概要
- ユーザーの投稿権限(投稿可能 / スレッドのみ投稿可能 / 投稿不可 の 3 段階。※ feature flag オフ時は「投稿できる / できない」の 2 択)
- 公開範囲(講座内限定公開 / 一般公開)
- プラン限定公開(講座内限定公開時のみ)と対象プラン複数選択
- 公開設定(公開 / 非公開)
- ユーザーへのデフォルト通知設定(オン / オフ)
- 過去トーク制限(一般公開時は設定不可)
重要な挙動:
- アーカイブに切り替えると、そのルームの配下のトークは残ったまま、会員の一覧から非表示になる
- アーカイブから戻すには、講座のアクティブルーム数がチャンネル上限(50)または DM 上限(10,000)に達していないこと
- 非公開 → 公開に切り替えると、既に投稿されていたトークも含めて会員が閲覧可能になる(公開前投稿が自動的に見える化される)
- 「ユーザーへのデフォルト通知設定」の挙動:
- この設定はルーム内の新規入会ユーザーへのデフォルト適用を制御する
- 設定変更時に既存ユーザーの通知購読は変化しない(ON → OFF で解除されない / OFF → ON で一括登録されない)
- 新規入会(新規契約完了)時に、アクセス可能な各ルームの本設定が参照され、ON のルームは自動で購読登録される
- 既存ユーザーが受信を止めたい / 始めたい場合は、個別に通知設定を操作する必要あり
ルームの削除
ルームを会員・講師の一覧画面から消し、運用停止する操作。
- 削除扱いのフラグが立つだけで、内部的にはデータが残る(運営側は後から参照可能)
- 配下の子データ(投稿・アナウンス・通知設定・制限プラン)は連動して削除されない。ルーム自体が表示されなくなることで実質アクセス不可になるのみ
- ユーザー操作で復旧する手段はない。削除後に取り消したい場合は dev 対応が必要
- 実装上、子データの孤児化が起こり得るため(例: 削除したルームと同名の新ルームを作っても、旧ルームの投稿は復活しない)、完全にクリーンな状態を作りたい場合は dev 対応が必要
アーカイブ vs 削除の使い分け
| 操作 | データ保持 | 会員からの表示 | 講師の復帰 |
|---|---|---|---|
| アーカイブ | 保持 | 非表示 | 可能(上限あり) |
| 削除 | 内部保持(表示はされない) | 非表示 | 不可(復旧機能なし) |
運用中に一時的に止めたいならアーカイブ、完全に撤去したいなら削除。
ルームの並び順変更
同一講座内の複数ルームを一括で並び替える操作。講座ダッシュボードの UI から講師が編集する。会員側は次に一覧を開き直した時点で新しい並び順になる。
ルーム一覧の取得
講座ごとのルーム一覧を取得する(講師編集画面・会員閲覧画面などで使用)。一覧取得自体は認証済みユーザーであれば誰でも実行可能(非会員含む)。返る内容はユーザー種別で変わる:
- 会員 / 非会員: 公開済み・非アーカイブのチャンネル、および自分宛の DM。ルームの中身(トーク本文)閲覧は別途契約チェックされるため、非会員は一覧に現れても実際の投稿は見えない
- 講師: 非公開・アーカイブ含む全ルーム
ルーム詳細(管理用)取得
ルーム編集画面で使われる詳細情報取得。制限プランなど講師用の情報も取得できる。メイン講師 / サブ講師のみ取得可能(会員は見つからない扱い)。
ルーム設定フラグ一覧
| 設定 | 挙動 | 典型用途 |
|---|---|---|
| 公開 / 非公開 | 非公開: 会員から見えない。投稿はできるが通知も発火しない(トーク通知) | 公開前の準備、一時非表示 |
| アーカイブ | 会員の一覧から消える。講師は解除可(ルーム数上限に達していなければ) | 運用終了したルームの退避 |
| 講師限定投稿 | 会員は投稿不可、講師(メイン / サブ)のみ投稿可能(トーク投稿 予定で詳述) | お知らせ専用ルーム |
| スレッド限定投稿 | ルーム直下への新規投稿不可、スレッドコメントのみ投稿可(講師は例外でスレッド外にも投稿可) | お題投稿 → スレッドコメント形式のルーム |
| 過去トーク制限 | 会員に、自分の契約開始日より前に投稿されたトークを見せない(講師は常に全部見える) | 途中入会者に古い議論を見せない |
| ユーザーへのデフォルト通知設定 | 新規入会者の通知購読デフォルト ON / OFF。既存ユーザーには影響せず、新規入会者のみ自動購読登録される(受信挙動の詳細は トーク通知) | ルーム単位の通知デフォルト。UI ラベルは「ユーザーへのデフォルト通知設定」 |
| 無料 / 有料 | 有料ルーム(= 無料公開 OFF)は講座契約済みでないとアクセスできない | 契約者限定ルーム |
| 制限プラン | 指定した料金プラン契約者のみアクセス可(下述) | VIP ルーム等の上位プラン限定 |
DM ルームの固有仕様
- DM 相手は 1 名固定。複数者 DM は未サポート(講師陣は全員が受信側に含まれる、トーク通知 参照)
- 編集画面が通常チャンネルとは別(DM 専用画面)
- DM ルームの通知ターゲットはルーム作成時の通知設定に関わらず仕様として「DM 相手 + メイン講師 + サブ講師」に固定される(トーク通知 参照)
- 作成後の設定変更はできない。DM 編集画面で可能な操作は「アーカイブ」「アーカイブ復旧」「削除」のみで、ルーム名・説明・公開 / 非公開・デフォルト通知設定などチャンネルの設定項目は存在しない
- DM のルーム名は作成時に「DM: {会員名}」で自動設定され、以後変更できない
自分 DM(自分用メモ、v2.32.0)
各ユーザーが自分専用のメモとして使えるダイレクトメッセージチャンネル。左ペインの DM カテゴリーの最上部のルームとして固定表示され(通常の DM と別枠ではなく、同じ DM 枠の中で最上段)、ラベルは「[自分] {自分の名前}」。ルームを開いた際のヘッダ説明文は「ここでのメッセージは自分専用のメモです。他の誰にも届きません」(v2.33.4 で「自分用メモ」から変更。他のユーザーには届かないことを明示するため)。
- 保有できる人: その講座に在籍する メイン講師 / サブ講師 / 契約済み会員。未入会・退会済みのユーザーには表示されない
- 作られるタイミング: 講座への入会(契約成立)や講師としての登録時に自動で用意される。機能公開時点で既に在籍していたユーザーには、運営側の一括処理で後から用意される
- 投稿できるのは本人のみ: 自分 DM には保有者本人だけが投稿でき、他者は投稿・閲覧できない(完全に個人専用)
- 設定変更・削除・並び替えはできない: 自分 DM はルーム名変更・削除・並び順変更といった編集操作の対象外で、常に DM 最上部に固定される。通常のチャンネル / DM のような編集画面を持たない
- 退会すると消える: 講座を退会(契約終了)すると自分 DM も表示されなくなる
- 自分専用のため、通知・メンション・通知設定一覧の対象外(トーク通知 / トーク / メンション 参照)
制限プラン(料金プラン別アクセス制御)
特定の料金プラン契約者のみアクセス可能なルームを作る仕組み。
- 講師がルーム作成・更新時に「この料金プランに入っている会員のみアクセス可」という形で複数の料金プランを指定
- 会員がアクセス権を得るには、指定された料金プランのいずれかに契約している必要がある
- 講師は制限プランに関わらず常にアクセス可
- 設定した料金プランが後から削除された場合、ルーム側の紐付きは残る(孤児状態)が、該当契約がないため実質的にアクセス不可になる
- 料金プランの限定公開設定の連動(v2.33.3): 料金プラン側で「限定公開設定の連動」(講座管理 / プラン設定)が設定されている場合、連動先プランはこの制限プラン選択で「(連動設定中)」と表示され、手動では選べない。連動先プランへのアクセス可否は連動元プランの設定に従って自動で揃えられる(連動元を制限プランに指定すると連動先プランの契約者も同じルームにアクセスできるようになる)
チャンネルのカテゴリー所属(v2.31.0 で追加)
チャンネル作成・編集時にカテゴリーを指定できる。詳細は トーク / チャンネルカテゴリー 参照。
- カテゴリーを指定しない(未選択)チャンネルは固定カテゴリー「チャンネル」に表示される
- カテゴリー所属は同一講座内のカテゴリーのみ指定可(他講座のカテゴリー ID を渡しても拒否される)
- 削除済みカテゴリーに属していたチャンネルは固定カテゴリー「チャンネル」にまとめて表示される(孤児化抑止)
- DM ルームはカテゴリー所属の対象外(会員の左ペインで最上部固定の専用枠に常駐)
ルーム数の上限
講座ごとに以下の上限が定められている:
- チャンネル最大 50 個(アクティブ)
- DM 最大 10,000 個(アクティブ)
- アーカイブ最大 2,450 個(チャンネル + DM 合算)
- 総数(上記すべて合算)最大 12,500 個
アーカイブされたルームを通常状態に戻すとき、該当するアクティブ上限(チャンネルなら 50、DM なら 10,000)に既に達している場合は復帰できない(エラーメッセージが表示される)。
エッジケース
- 非公開ルームに投稿: 可能だが、通知は発火しない(トーク通知 参照)
- 非公開 → 公開: 公開前の投稿も含めて一括で会員に可視化される(公開時刻のマーキングはない)
- 過去トーク制限と非公開の併用: 公開ルームでのみ設定可能(無料公開ルームでは設定不可の UI 制約あり)
- 制限プラン指定中に料金プラン自体が削除: ルームの制限プラン紐付けは残るが、契約情報が消えるため実質的にアクセス者がいなくなる
- ルーム名の重複: 同一講座内で重複が許可される(重複禁止の制約なし)。UI 上は運用で注意する想定だが、誤って同名ルームを複数作ることが可能
関連ドキュメント
- 関連 PSD: トーク通知(通知設定初期化、DM の通知固定), トーク / アナウンス(ルーム内のアナウンス機能), トーク投稿(投稿、未作成)