Is there a configuration at the time of node creation?
Views
Replies
Total Likes
Yes , you can specify a configuration at the time of creating a node. You will many examples of this in our sources.
The createNode call in CollectionNode takes a NodecConfiguration, which you don't specify takes the default one. There is a nodeConfiguration parameter called sessionDependentItems , which is false by default. If you are creating a SimpleChatModel, you can do new SimpleChatModel(true), which will basically set this parameter to true. Otherwise if you are creating a node by yourself, you can do something like this
var nodeConfig:NodeConfiguration = new NodeConfiguration();
nodeConfig. sessionDependentItems = true;
collectionNode.createNode("yournodeName",nodeConfig);
Hope this helps. Refer to the docs of SimpleChatModel,NodeConfiguration and CollectionNode for details
Thanks
Regards
Hironmay Basu
Views
Replies
Total Likes
At the time of node creation I am setting value of sessionDependentItems to true . this change is not working / not giving the expected result
When user logged out and logged again, still user can see previous chat history
Following is my function in which i am setting the sessionDependentItems value to true[highlighted in yellow]
protected function onSynchronizationChange(event:CollectionNodeEvent):void {
if (_collectionNode.isSynchronized) {
//Creates the nodes if they don't exist
if (!_collectionNode.isNodeDefined(START_CHAT_LIST) && _collectionNode.canUserConfigure(connectSession.userManager.myUserID)) {
_collectionNode.createNode(START_CHAT_LIST, new NodeConfiguration(UserRoles.VIEWER, UserRoles.VIEWER, true, false, true,true, NodeConfiguration.STORAGE_SCHEME_QUEUE));
}
}
}
Views
Replies
Total Likes
Hi,
My first question, are you completely writing your own chat model or you are overriding our classes. You need to provide me a small test case where its not working and how you are trying it. You can pm me. SessionDependent Items has been there since beginning and has always worked. There could be something wrong in your code.
Thanks
Hironmay Basu
I am setting SessionDependent Items value to true inside onSynchronizationChange in my code.
Following are the two instance of onSynchronizationChange
Inside Connect session class
public function connectChat() :void
{
trace('connectChat');
_collectionNode =
new CollectionNode();
_collectionNode.sharedID = NOTIFICATION_COLLECTION_NODE;
_collectionNode.connectSession =
this.connectSession;
_collectionNode.addEventListener(CollectionNodeEvent.SYNCHRONIZATION_CHANGE, onSynchronizationChange,
false, 0, true);
_collectionNode.addEventListener(CollectionNodeEvent.ITEM_RECEIVE, onItemReceive,
false, 0, true);
_collectionNode.subscribe();
}
/**
* @private
* Handles the creation of a collection node if it does not already exist
*/
protected function onSynchronizationChange(event:CollectionNodeEvent):void {
if (_collectionNode.isSynchronized) {
//Creates the nodes if they don't exist
if (!_collectionNode.isNodeDefined(START_CHAT_LIST) && _collectionNode.canUserConfigure(connectSession.userManager.myUserID)) {
_collectionNode.createNode(START_CHAT_LIST,
new NodeConfiguration(UserRoles.PUBLISHER, UserRoles.PUBLISHER, true
Views
Replies
Total Likes
Views
Likes
Replies
Views
Likes
Replies