The sharedID's are the names of collectionNodes used for identifying them on the server for that room. So, collectionNodes should all have unique sharedIDs in a room, if the user doesn't assign, it gets assigned to some default value.
When we do a dynamic switching, we don't want to destroy the entire model and recreate everything and rather resync the messages for the new room. This saves work and other technical complications.
No, that approach doesn't work, unfortunately. While it does reconnect to the new room URL, the history pane in the chat pod is cleared but never updated with the history from the new room. As you may recall from the last discussion, I created a workaround that involved subclassing SimpleChat, and adding an "unsubscribe" method, using the attached code.