MUC and Derby don't match...
I am sorry to say this. We have found a bug in the MUC component which breaks it for the Derby database. So at the moment MUC component won't work on installations using Derby database. A fix is already ready and will be released later today. I am sorry for all the inconvenience.
35, kobit//tigase.org, 2008-11-13 12:19
The first bug report for the new release...
Just received the first bug report:
#99. If anybody else experienced problems like this please send me the report immediately. Ideally with as much information as possible. Have a look at the comments to this ticket for details what information are useful to me. And also please send me your contact info so I could respond directly.
34, kobit//tigase.org, 2008-11-13 10:31
300 page views in an hour!
New version of the Tigase server has been released. Article published and within an hour the article read counter turned 300 views...
33, kobit//tigase.org, 2008-11-12 22:16
XMPP/Jabber service restarts
We are planing the XMPP server upgare works in coming days to the most recent version. Therefore please be adviced there might be service disruptions in coming days.
32, kobit//tigase.org, 2008-10-03 13:57
Minis from XMPP are back
Due to a significant code rework and changes in many places of the Tigase server short-news were temporarly not working.
This was mainly related to clustering implementation in the Tigase server and need for major code cleanup. The implementation has been finished and slowly all parts of the system are back....
31, kobit//tigase.org, 2008-07-02 10:27
Yes, you are very close. process() method is the one to modify. You have to look at in_subscribe and out_subscribe events to modify subscription on your end.
To set subscription to whatever value you need just use helper class: tigase.xmpp.impl.Roster and method:
updateBuddySubscription.
Let me know if you have any problems...
1. yes
2. user B is connected to an unknown xmpp server. so I don't manage the roster of UserA. But if I reply a "suscribed" message, the unknown server will add UserB to the roster of UserA.
I have take a look at Presence class. I think I need to modify process() method; in case "in_subscribe" just call sendPresence(StanzaType.subscribed, packet.getElemFrom(), session.getJID(), results, null); and add userA to the roster of UserB with subscription 'both' (I don't know how to do that for now). Am I in the right way ?
Thanks very much for all your replies.
Ok, let's go one step further with details.
All these subscriptions and presence stuff is quite complex so to make things simple do I correctly understand that is UserA want to subscribe to UserB it actually means that server should:
If this is a case and you want it to work for all users than indeed you should rewrite Presence class (which would be much simpler in your case) and load it instead of standard Presence class provided in Tigase server.
Hi,
what I want is when a jabber user (user A) subscribes to one of my tigase user (user B), my tigase server auto reply "subscribed" to user A. I don't want to bother user B with subscription stuff. Moreover I want this feature on server side in order to be client independent.
Am I clear ?
Thanks for your attention and advices.
Hi again,
I was hoping that you give us more info about your problem. Presence class is one of the most complex classes as presence design is quite complex in XMPP. So I would rather avoid modifying it.
The better option would be probably to implement another processor which could catch selected presence stanzas and do what you want.
My worry is however, that it still might not be the most efficient solution for your case. If you could tell us what exactly you need and why you need it we could give you better advice/solution or we could even help you implement extension for your needs.
First thanks for your fast answer.
Yes, I want to implement it on server level. I will have a look at tigase.xmpp.impl.Presence class and I hope to success. I keep you inform.
Hm, not sure if I understand you correctly.
You want to implement it on server level right? Why? I just found similar feature in the last Psi version. So Psi can automatically accept and authorize all subscription requests. Isn't it enough?
I am asking because I just need to understand your requirements correctly. There are quite a few possible ways to implement it in Tigase but selecting proper way depends on you use case.
The most strightforward way would be to reimplement tigase.xmpp.impl.Presence class to change behaviour on subscription request. The downside of such solution is that then you change behavior for ALL subscription requests. The more flexible approach would be to create another Presence which could coexists with existing one and for selected subscription requests it could execute desired action.
I was about to write a developers guide how to create new extensions for Tigase server. Well, it could be a good starting point...