armondhonore / red5-websocket-chat

Add web sockets to a custom streaming application
Apache License 2.0
0 stars 0 forks source link

2 chatroom scopes #2

Open armondhonore opened 9 years ago

armondhonore commented 9 years ago

Configure the application to support 2 chatroom scopes so that users can join one scope and add messages.

Test Scenerios:

Chat room1 browser1: tab1 broswer1:tab2 Chat room2 browser2: tab1 broswer2:tab2

Chat room1 browser1: tab1 broswer2:tab1 Chat room2 browser1: tab2 broswer2:tab2

ddburnes commented 9 years ago

Have reviewed client and server code. I (ideally) would like to leverage a persistence layer exposed by the parent Red 5 Server container to track separate chat room scopes. It looks like the current persistence available is only local to the server. For now, I will separate chat rooms using a unique key stored in the client application scope. Still working on this.

armondhonore commented 9 years ago

@ddburnes Yeah let me know were you get because the server can generate these scopes on the fly.

armondhonore commented 9 years ago

@ddburnes to repeat what I was talking about when a user connects to the videoconference application that is setup in the other project a scope object is created if this is a new room. There is a connectionId that is created as well as other stuff that is overridden from the default connection method. In this case part of the connection method involves a web service call to authenticate the connecting user.

When a user first connects they connect to a scope /videoconference/public/{someId-orname} , with some an array of params. These params is what is used to Auth the user with the PHP service.

So what will happen next is once the user is connected and Authed the next step will be for the client to connect to the chat server and the char server will query a method on the VideoConference to say hey this is my user info and hash created by the client and basically the VideoConference server will do a lookup and get the session id that is to be used for that particular scope /videoconference/public/{someId-orname}

Yes this is fairly complicated and could cause us some problems but something we could do is have the user connect to the same server and just use the java JsessionId or just drop a cookie. I am jut not sure about cookies with Actionscribpt. So this is where the Java Script solution may be better.