I have follow problem - I have flash client that automatically reconnect to the jabber client if connection lost. If open two such clients, that clients will be kicked one by one. Can I know if I already connected at the server side or disable possibility to login if I already logged in? Thanks.
You can limit to 1 session, and ejabberd will close old
In Jabber, the user can login to his account multiple times if he uses different resources. For example bob@example.org/Home and at the same time bob@example.org/Work and bob@example.org/laptop.
In ejabberd 2.0.0 it is possible to limit how many different sessions, check 'Limiting Opened Sessions with ACL' in the ejabberd guide. If you only want 1 session allowed, you can put:
{access, max_s2s_connections, [{1, all}]}.In Jabber, the user can only have one session with a specific resource. For example, he can only have one session bob@example.org/laptop . If he tries to login with another client in another machine to bob@example.org/laptop, then ejabberd will close the old session and allow the new session.
It is not configurable in ejabberd wether to close the old or the new session: ejabberd will always close the old session. Check the related feature request ticket:
Is there any way to know why
Is there any way to know why the old session is being closed? Such as "User Logged on Another Machine" or something? The Exception I get on connectionClosedOnError does not really tell me anything.
.....
Thanks,
D