Expand my Community achievements bar.

Radically easy to access on brand approved content for distribution and omnichannel performant delivery. AEM Assets Content Hub and Dynamic Media with OpenAPI capabilities is now GA.

How To Create Private WhiteBoard in SingleRoom

Avatar

Former Community Member

Hi

   I want to create a multiple private conferences in single  room.Each conference will contain Chat ,Whiteboard,Audio/Video and FileSharing.  I am able to create private chat by using the groupname and we can do audio also like that.But my problem is how to create Private Whiteboard  and  FileSharing .I didn't find any "groupname" property for those. Can anyone guide me how to achieve this?

Thanks&Regards

Sudhakar Reddy.N

4 Replies

Avatar

Former Community Member

For the FileSharing and WhiteBoard , you can use sharedID property or give it an id. This sharedID will be hashed while creating collectionNodes , so all whiteboards with same sharedID will be sharing their contents.

Similarly is the case with FileShare too. All FileShare Pods with same sharedIDs will be visible together.

Hope this helps.

Thanks

Hironmay Basu

Avatar

Former Community Member

Hi Hironmay Basu

  Thank You for your quick replay.I tried to use the sharedID property like when first user comes i am creating whiteboard with sharedID is "xyz" and i am sharing the same sharedID "xyz" to the other user it is working fine but in one case that while this conference is going if i tried to do conference in  other room  there white borads are not sharing .

now i am using like this     wb.sharedID=user1.name + user2.name;

i don't know wheather we have to use SharedWBModel or not? presently i am not using SharedWBModel .

can u share any example on this.

Thanks&Regards

Sudhakar Reddy.N

Avatar

Former Community Member

Hi,

Tell me if I got wrong.

So basically you mean to say , when you have couple of users with sharedID 'xyz' , they are fine. But in the same room, when you are sharing another set of users a whiteboard with different sharedIDs its not working.

Users subscribing in white boards with same sharedID should be able to see each other. Is that the problem? I did't get this part ' i tried to do conference in other room there white borads are not sharing' . Is it another room with same sharedID or same room with different sharedID ?

Please clarify

Thanks

Hironmay Basu

Avatar

Level 1

Hi guys!

Firstly, thanks for great service and realy good framework.

I has the same issue and have changed whiteboard class, using your advice..

This is extended SharedWhiteBoard class:

package components{
    import com.adobe.coreUI.events.WBModelEvent;
    import com.adobe.rtc.events.CollectionNodeEvent;
    import com.adobe.rtc.pods.SharedWhiteBoard;
    import com.adobe.rtc.pods.sharedWhiteBoardClasses.SharedWBModel;

    public class WhiteBoard extends SharedWhiteBoard{
        private const DEFAULT_SHARED_ID:String = "default_WB";
        protected var _groupName:String;
        public function WhiteBoard():void{
            super();
        }
        /**
         * @private
         */
        public function set groupName(p_groupName:String):void
        {
            if ( p_groupName != _groupName){
                var model:SharedWBModel = _model as SharedWBModel;
                if (model) {
                    model.close();
                    model.removeEventListener(WBModelEvent.MY_ROLE_CHANGE, onMyRoleChange);
                    model.removeEventListener(WBModelEvent.SYNCHRONIZATION_CHANGE, onSyncChange);
                }
                _model = null ;
                _groupName = p_groupName ;
                subscribe();
            }
        }
        public function get groupName():String{
            return _groupName;
        }
        override public function subscribe():void{
            if ( !_model ) {
                if ( id == null ){
                    if ( sharedID == null ) {
                        sharedID = DEFAULT_SHARED_ID ;
                    }
                }else {
                    if ( sharedID == null ) {
                        sharedID = id ;
                    }
                }
               
               
               if ( _groupName != null ) {
                    sharedID += _groupName ;
                }
               
                _model = new SharedWBModel();
                _canvas.model = _model;
                var sharedWBModel:SharedWBModel = SharedWBModel(_model) ;
                sharedWBModel.sessionDependent = sessionDependent;
                sharedWBModel.sharedID = sharedID;
                sharedWBModel.connectSession = _connectSession ;
                sharedWBModel.addEventListener(WBModelEvent.MY_ROLE_CHANGE, onMyRoleChange);
                sharedWBModel.addEventListener(WBModelEvent.SYNCHRONIZATION_CHANGE, onSyncChange);
                sharedWBModel.subscribe();
            }
        }
    }
}

Just merged code from SimpleChat and SharedWhiteBoard and works well.