Closed nesium closed 5 months ago
Upon calling destroyRoom
I'm getting the following error:
[ERROR] Failed deleting channel Error: Room is already connected (org.prose.channel.viegfr7m@groups.prose.org.local).
Could the destroyRoom
method be adjusted so that the room is left before it gets destroyed, so that the implementor doesn't have to handle the complexity of leaving before destroying? (and complexity of failure recovery if room is left but then removal fails, then we'd be left in a dangling state).
Other than this error, it's been implemented.
Other than that:
roomParticipantsChanged
delegate event handlerparticipants
everywhere instead of members
/ occupants
availability
from participants
Blocking issues:
destroyRoom
throwing an error, see commentavailability
not fully reactive as expected, see issue@nesium input needed on those blocking issues.
A couple of things went wrong here:
join
instead of destroyRoom
Thanks, bumped the core client library and it's now working.
Oops on the join()
call, this was a typo. I tested with destroyRoom()
right before refactoring to the current state, the error was there.
It's now working, thanks!
There are a couple of changes in the latest core lib: https://gist.github.com/nesium/f1c21dfb0d345b8c223017f418343a4e/revisions
members
andoccupants
inRoom
have been merged into a single propertyparticipants
(I've already changed that here) which is an array ofParticipantInfo
s.Most importantly
ParticipantInfo::jid
is optional to honor the fact that MUC rooms can be anonymous and we might not know the real JID of a participant.isSelf
might be handy for displaying purposes, butaffiliation
should probably be ignored until we have figured out our permissions system.Also
destroyRoom
is now public onProseClient
…There's also a new event handler
roomParticipantsChanged
that is called when the list of participants of a room is changed in some way (user joins/is kicked, etc.)