How to give clients the ability to manage with who their employees can chat with only one server?

Hi everybody.

I am already with OpenFire installed and running very well.

I want to create a IM Server and give to my clients the ability to use Spark to connect to my IM Server and manage with who their employees can chat.

I am already using Packet Filter.

What I don’t know how to do is how I will do this for each client?

Do I have to create groups?

How I will manage them?

I want to give to a “master” user from each client the ability to manage their contact lists. Can I do this with open fire?

I will put it in example:

Company A

User: A1

This is the “master” user and can connect with everybody.

This user can manage the “Company A” contact lists (allow and block users).

User: A2

This user can connect ONLY with A1, A3, john@msn.com, johnjohn@gmail.com and aaa@xxx.com.

**
**

User: A3

This user can connect ONLY with A1, A2 and john@msn.com.

Company B

User: B1

This is the “master” user and can connect with everybody.

This user can manage the “Company B” contact lists (allow and block users).

User: B2

This user can connect ONLY with B1, B3 and all users from MSN.

User: B3

This user can connect ONLY with A1 and A2.

Don’t forget. Do this with only one server!

I hope you understand.

Thanks.

Hamilton

Hamilton,

Sorry it has taken me so long to reply. I think the main issue you’re dealing with is that you want to expose some elements of the Openfire admin console without allowing full access. I think the best option you have here would be to create your own end use app that communicated requests back to the Openfire server. This could be done in a couple ways :

  1. Have your app write to Openfire’s database. You would also need to clear the appropriate caches or wait for them to time out before your changes take effect.

  2. The better option would be to create your own Openfire plugin that exposed the services you need in a web service type way. Your custom admin application would then send request to it. The advantage of this is that you would be using native Openfire code to do things so you wouldn’t run the risk of not doing an associated tasks that come with a database insert (i.e. cache clearing, event firing etc…)

Hope that helps.

-Nate

Hi Nate,

I understand your suggestion.

Is there a “how to” begin to write plugin or something like that?

Where can I learn how to write code to Openfire?

Can you give me a way to start it?

Thanks.

Hamilton

“… Não esqueça de fazer parte da nossa comunidade Brasil!”

There is a guide here : http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/plugin-d ev-guide.html

I think almost every existing plugin has source code with it so there should be an example of almost anything you want to do.

-Nate

Thanks Nate!

Hamilton

“… Não esqueça de fazer parte da nossa comunidade Brasil!”