powered by Jive Software

Multiuser chat for football teams

Hello

I’m trying to create a multi-user chat for football teams.

When any player at one team starts a chat with another team, all players on both sides should be added to a private chat room.

What’s the best primitive to use to achieve this? MultiUserChatManager?

Thanks

Do you want to tackle this from the client or from the server side?

Some off the cuff thoughts

clientside:

  • Have the initiating party create a private MUC room
  • Send MUC invites to all people that need to join

server side:

  • organize teams in groups
  • have a MUC room created in the MUC Manager
  • add the corresponding groups as participants to the newly created room
  • (maybe send out invitations so that the clients are aware that a new room is to be joined)
1 Like

Thank you for the super quick reply @guus.

I think we would probably be best handling it at the server in the first instance…

So my aim is that any player at any football team, can start a conversation with another “football team”.

I understand this is effectively Player (user level) -> Entire Team (multi-user level) chat initialisation.

This may happen between many teams, and may also be between multiple teams… i.e.

Player -> Entire Team A, Entire Team B.

One further requirement is that when a chat is started by a player, all of his own team mates are also added.

So I think (if I understand your design)…

  • I organise all players into team groups (can you give me the XEP for this? I see a few).

  • I create a new MUC room in the MUC manager each time a new bilateral chat is started. (how do I know a user has started a new chat between teams?)

  • Add the groups (teams) as needed

I greatly appreciate your help.

Best
John

Hi John,

Groups are an Openfire proprietary concept. In its essence, it’s a collection of users. I’m assuming here that all players are users of the local Openfire instance.

Without knowing exactly how messages are going to be structured, it’s hard to specify exactly what you need to build. I’m guessing that you’ll build some sort of combination of a mechanism that turns a one-to-one chat in a multi-user chat, with maybe an Openfire PacketInterceptor to add some server-sided magic.

Sounds good to me, thanks for the help @guus!

Last thing, this approach would work across domains would it?

If players existed under their own domain, and own open fire server? or would that dramatically change the approach?

Using multiple XMPP domains voids the approach that I outlined completely. Also: I’ve given this two, maybe three minutes of thought. Before you start implementing anything, you should hash things out further!

Thanks @guus!

I think groups may work for me.

Is it possible to create groups on multiple OF servers in various domains, make them queryable by an IQ stanza, and then allow a user at one domain to message the group at another?

Using a plugin like this (https://www.igniterealtime.org/projects/openfire/plugins/1.9.2/broadcast/readme.html) it seems possible :slight_smile:

I don’t think so.