Skip to content

Tatamo/socketchat

 
 

Repository files navigation

Table of Contents

SocketChat

WebSocket+MongoDB Chat

version

0.3.0

required

  • Socket.IO
  • node-mongodb-native
  • express

event formats

->events.txt

log formats

  {
    name: "String",
    time: ISODate,
    ip  : "String",
    comment: CommentObject,
    (syslog: true),
  }

CommentObject

one of:

  • "String"
  • [CommentObject,]

on-browser JavaScript API

  //Global variable: factory
  factory.getChat(function(chat){
    chat.api.on("log",function(log){
      chat.api.inout("Alice");
      chat.api.say("foo",log._id,"bar");	//comment, response, channel
    });
  });

API formats

最初のリクエストでsessionIdを取得した後は、そのsessionIdをリクエストに加えること(sessionId=(String))

定期的なリクエスト

GET: /api/

入退室

GET: /api/inout?name=(String)

発言

GET: /api/say?comment=(String)

レスポンス

通常時


Userinfo
ユーザー一覧を完全に取得

 {"name": "users",
  "users": {
            "users": [Userobj, Userobj, ...],
            "roms":25,	//ROM数
            "actives":1,//入室者数
           }
 }

新しいユーザーが出現


既存のユーザーが入退室

 {"name": "inout",
  "user": {
           "rom": false, //ROMかどうか
           "id": 3,	 //ユーザーのID
           "name": String, //ユーザーの名前
          }
 }

ユーザーが消滅

 {"name":"deluser",
  "id": Id	//ユーザーのID
 }

エラー時


Hashtag validation

  • スペースを含まない
  • #を含まない
  • スラッシュで始まらない
  • スラッシュで終わらない
  • スラッシュが連続しない

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 66.1%
  • TypeScript 28.9%
  • HTML 2.8%
  • CSS 2.2%