powered by Jive Software

Managing rosters in MSSQL 2000 database

Managing rosters in MSSQL 2000 database.

How does server store the roster/group in the database?

At first it seemed like it would be easy,

the tables jiveRoster & jiveRosterGroups

But if I manually make changes to the tables, such as adding a user to an entry to a users roster or if I delete a user from a users roster, they have no effect on the clients. Is there somewhere else that the roster/group information is stored by the server?


2 users “test” and “test2”, if I do…

insert into jiveRoster

(rosterID, username, jid, sub, ask, recv, nick)


(2, ‘‘test2’’,’‘test@server’’, 3, -1, -1, ‘‘test’’)

insert into jiveRosterGroups

(rosterID, rank, groupName)



There is no effect on the clients, the “test” user does have the testgroup nor the “test2” user.

BTW adding users to the roster/group works fine through the client.

I need to be able to create users/groups in the database to integrate into the rest of our systems. Any assistance is appreciated.


Are you making your changes to the database while Messenger is running?



Yes I was, I stopped and started the server and the changes took hold. Is there any way to have Jive reload from the database without having to restart the server, to avoid disconnecting users?


I’'ve been playing around with the same sort of thing using a PHP interface (see thread http://www.jivesoftware.org/forums/thread.jspa?threadID=13303&tstart=15)

The best way seems to be able to do this via the API. There has been a request logged for roster management to be added to the Management console (JM-65), but until then it is a case of either delving into Java and the Smack API, waiting for the Management console addin or restarting the server after changes have been made.

so carbollix and I got the SQL server stuff working using a stored Procedure, and when someone signs we can see the list of user and groups, but the only problem is we can’‘t see who’'s active? Basicly right now i have about 10 people on but no one is active.

what can i do to fix this?