powered by Jive Software

Any support for whispering in chat rooms?

Hello!

Does Openfire technically support message whispering in chat rooms? Many web chats allow to write private messages to a special user in a public chat room by using some special syntax like “/w user message”. Is that functionality supported by Openfire? I don’t mean the special syntax but whispering in rooms in general.

Thanks for your answers in advance!

Lars

Hi Lars,

What you describe is the IRC-style mapping as it is described in MUC-45. But AFAIK this is a client feature and should be therefore server independant. I have used Psi 0.11 which supports /msg <roomnick> (comment). Try the following commands with your client of choice.

Michael

Command

Function

/ban <roomnick>

bans user with that roomnick from this room (client translates roomnick to bare JID)

/invite <jid>

invites user with that JID to this room

/join <roomname>

joins room on this service (roomnick is same as nick in this room)

/kick <roomnick>

kicks user with that roomnick from this room

/msg <roomnick> <foo>

sends private message “foo” to roomnick

/nick <newnick>

changes nick in this room to “newnick”

/part

exits this room (some IRC clients also support /leave)

/topic <foo>

changes subject of this room to “foo”

Hi Michael,

thanks for your answer. I already supposed that this sould be implemented as a client feature. Does it need to be implemented that way, that when any user sends a private message it is handled as a direct chat message to the target user. Is there any technical difference between messages shared in chats and messages shared between two users?

Thanks a lot.

Lars

Hi Lars,

p2p chat messages are sent to the JID of the receiver, like

<message id="a1" from="Lars@example.com/spark"
to="Max@example.com/spark"  type="chat">...</message>

Private MUC messages are sent to the temporary JID one has in MUC, like

<message id="a2" from="Lars@example.com/spark"
to="roomname@conference.example.com/Max" type="chat">...</message>

and Max will receive a message like

<message id="a2" from="roomname@conference.example.com/Lars"
to="Max@example.com/spark" type="chat">...</message>

. Spark opens a new window for such messages instead of displaying “Lars whispers: Hello” within the MUC room which you would prefer.

LG

Hi it2000,

for me it seems that this is a special behaviour/implementation of Spark. One could also display this message in the chat room and adding a remark that this message is received as a private (whispered) instead of opening a new chat window in which P2P messages are can be exchanged. Do you agree, it2000? How can whispered messages be distinguished from normal messages that are visible for users in a MUC? When I look at your example code (thanks for that!) there is no special flag indication the message type. The only way could be to examine the message’s receiver whether it being send from a JID or from a temporary room JID. Do you agree here, too?

With best regards (LG),

Lars

So, as i thought this is about private messages in MUC. Well, as Spark is tabbed client i think it’s more convinient to have private talk just in the next tab than in MUC. And so you wount say anything private in MUC accidentically.

Hi wroot,

whispering is a special kind of sending messages in a multi user chat (MUC). Normally all messages being send in a MUC are visible for all users taking part in a MUC as you know. Since sometimes an user instantly wants to send a message to another user of that MUC without starting a private chat (P2P chat) he can send a whispered message. When he marks that message as whispered (usually by using a special syntax, like listed in grutto’s post above, it also appears in the MUC for the aimed user but it is only visible for him not for the other ones. I will give you a short example:

Chris enters a chat room and two messages appear:

Tom: hello everyone

Susi: hello

Now Chris sends a private message to Susi be entering “/w Susi Hi Susi, I don’t like Tom”. Susi now has the following output:

Tom: hello everyone

Susi: hello

Whispered message from Chris: Hi Susi, I don’t like Tom

Tom cannot see that message, but Susi can do.

Now my question is whether there is a special support for whispered message or whether I have to use “direct message transfer”.

Hi Lars,

one could indeed display it within the same window, and for web based chats this is a good solution. As Oleg did say it will happen occasionally that one types “7msg Elfie I love you” and all MUC users will notice it.

type=“groupchat” are public MUC messages, you may want to take a look at http://www.xmpp.org/extensions/xep-0045.html

LG

As i said in Spark you just doubleclick user in participants list and there you have a tab with private chat. Easy. I agree that whispering is a good thing for web based chats.

Thanks for your answers. it2000 gave a good hint: his linked document XEP-0045: MUC describes how to send a private message in MUCs in chapter 7.8Sending a Private Message (see http://www.xmpp.org/extensions/xep-0045.html#privatemessage) for details.

Thank you for all your answers.

Lars