質問: Monacaを使ってチャットアプリを作っています。 ユーザがチャットをしたい場合は新規にチャットの部屋を立ち上げるようにし、他のユーザも立ち上げられた部屋に入場できるような実装を考えています。 部屋がいくつも出来てくると、各部屋の識別IDのようなものが必要な気がしているのですが、どのような実装をとれば良いか解らずにいます。お力をかしてください。
回答: 自分でしたら、安直にサーバーサイド側の部屋クラスが作られる際に(コンストラクタ)に、識別子として日付と時間(ミリ秒まで含む)をつけて、それをIDとして使用するかなと思います。 実際、MongoDBというNoSQLデータベースシステムのid割当も似たような方法でやっておりますので、割と問題ないような。 もっとも、IDでの重複を避けるのはもちろんのこと、部屋名の重複を避ける工夫も必要かもしれません。 それと、残念ながらMonaca単体ではチャットアプリは作れないのが現状でしょうか、ちゃんとNode.jsなどでソケット通信を受け取れとれ、捌けるサーバーが必要かと思います。 ちょっと興味深い日本のStack Overflowの記事を見つけたので掲載しておきます。 monaca - monacaでSocket通信は可能でしょうか? - スタック・オーバーフロー