Openfire user synchronization & online availibility instantly

We are having three websites where user comes & registers. All three sites have same username style ( XXX123 ). There are pretty rare chances that a username in site1 ( ABC123 ) & username in site2 can be same. They both get added in different group however ofUser table has username as primary key.
I want single instance of openfire to cater the 1-2-1 chat needs for all three sites. I created three groups for three websites. Each website is mapped to each usergroup. I mean user coming on one website will be shown users for that website only by showing mapped group.

User are getting added to Openfire as & when they invoke the Jwchat instantly. We are seeing that sometime that user who is added instantly when he click on JWchat is getting added to Openfire however he is not available in Online list but available in Openfire database.

I am feeling that there is some delay in synchronization of users in openfire which are added instantly & which are added long back. I am not sure what can be done to add user instantly & can go for chat immediately.

We are not adding user using the XML Pluggin for adding the users however we are doing it by adding mysql query on ofUser, OfGroupuser & ofRoster tables.

Please can someone guide the best way.

Additionally to above query, I found that I need to everytime stop & start the openfire instance so that the user can avail the chat. However stoping & starting is going hamper other users who are online that time.

Rgds,

Please can someone help me for above query. I am eagarly waiting for reply