Closed matsu0228 closed 8 years ago
・退出したユーザがいたら、クライアントからサーバへ、delete_userAPIをリクエスト
delete_userAPI
HTTP Method: Delete
Argument: window_id, room_id
Return: true / false
サーバ側処理内容
1.当該のwidをもつユーザが所属しているroomの男女数を更新
2.当該のwidをもつユーザのレコード削除
依頼いただいたAPI実装しました。確認お願いします。
男女比に偏りがあった場合に 合コンできない問題の解決策は、、、合コン待ち人数をトップページに記述するとか? 機能どうこうというよりかはこのサービスの根本的な難しさだね。。。
@hiro: deleteAPI実装ありがとー!
サーバ側処理内容 1.当該のwidをもつユーザが所属しているroomの男女数を更新 2.当該のwidをもつユーザのレコード削除
2の方実装してもらったと思うので、後でいいので1の機能も実装お願いします! 例:widに該当するユーザーが男なら、そのユーザーが所属するルームの男の人数を1減らす
1)満室前の場合 1-1.退室ボタンを押したユーザは、画面から「ビデオ枠」「名前」「性別」を非表示にする 1-2.人数を補充する。具体的には、退室ボタンを押したユーザ枠分、あとからユーザが入れるようにする。 例:男が退室したら、もう一人男が入れる 1-3.ブラウザごと終了した場合の処理は、要検討 1-4.画面更新など、実際には退室していないが、skyway側で退出扱い(peerが切れた場合)は、要検討
2)満室後の場合 2-1.退室ボタンを押したユーザは、画面から「ビデオ枠」「名前」「性別」を非表示にする 2-2.人数を補充しない。 例:満室後に男が退室しても、他のユーザは入れない
1-1.2-1. →deleteAPIにて実装済み
1-2.2-2. →未実装。担当:ヒロ →deleteAPIがリクエストされたタイミングで、サーバ側の処理の追加が必要
1-3.1-4. →要検討。担当:松木 →skayway側のユーザ管理の仕様を調査する →1-3の課題は、他ユーザ退室時(skywayからのcallback)に、deleteAPIをリクエストするようにすれば解決可能だが、 1-4の場合に過剰に削除してしまう
modelの設計変えようか。 今はvote画面でroom idに紐づくユーザを検索してるけど、それだと一度roomに入って抜けたときに削除する処理が必要になる。 人数決まってるならroomモデルでユーザを管理した方が良い気がする。
もう一つ理由があって、ユーザのアクティベーションを後で取りたいんだよね。 そうするとroomでユーザ管理した方が後々便利。
userモデルとroomモデルにstatusを追加
APIにroomから退出したときの処理を追加
試験して気づいたこと。
現状の仕様だと、性別に偏りがある場合に、永遠に合コンできない ・roomのステータス管理(長時間使用されていない部屋の破棄)ができていない ・性別ごとに最小indexのroomに入手する →男:index=100、女:index=2のような状況が生じるため、永遠に合コンできなくなっていまう。
対応案) ・作成されたが合コンが始まらないroomは、一定時間(例:15分)たったら破棄する