Broadcast to offline users?

This issue appears in both Gaim 1.5 and Spark 1.0.4

When a user ‘‘broadcasts’’ a message to all users on the list, the message does not get through to offline users (but appears to all online users). Is there a way to broadcast an ‘‘announcement’’ so that ALL users (online and offline) can get the message?

Hi,

broadcasting to online users, that’'s how the broadcast plugin currently works. Your question seems to me to be a new feature request.

I think it could be very annoying to read a lot of broadcast messages after holiday, but a broadcast with a selectable TTL for each broadcast sounds very interesting.

LG

Hey guys,

Just a small piece of information. Messages are not being stored offline when broadcasted to ALL users in the system. However, messages sent to groups are being stored offline if a group member is not currently available.

Regards,

– Gato

So I’'d be best off to set up a “staff” broadcast group rather than using all@broadcast.DOMAIN?

Something like a staff@broadcast.DOMAIN would then send announcements to all staff members so that when they log on, they would receive the announcement? Or would they have to check their logs?

I think broadcasting is ment for Online users only. If you need to do some announcement with long TTL you just use email No need to burden IM with a lot of offline messages (IM means Instant). Though i like the idea of configurable TTL of broadcast message

Hi Ryan,

Wildfire sends a normal Message packet as soon as the user becomes available (online). Every client should notify the user about a new message (flashing, sound, …) and if configured also open a window to display it.

LG

PS: How would be so nice to update the broadcast plugin documentation so one can read this there instead of searching for this thread?

Hi Oleg,

for announcements like planned server downtimes we usually use the intranet. We have a lot of business processes where external enterprises are involved, a SLA of 24x7 high availability is too expensive. Emails and the current IM implementation don’'t have a TTL, so this is not the right way to inform the possibly affected users about a 2 hour non-availability. The intranet and the recorded message of the hotline are updated immediately but the users must either look at the intranet page or call the hotline to get the information. An IM with a TTL should be fine.

LG

As it currently works, messages are not queued for offline users when they log on. The broadcast plugin just sends to online users.

Is there some additional script that would let a broadcast ‘‘announcement’’ be uploaded to our blog, perhaps?

(The ‘‘announcements’’ that staff users require need to be stored somewhere, so that if a member is currently ‘‘offline’’, they will still get the announcement of meetings, etc. Email is an option, but is an ‘‘extra piece’’ that I was hoping the Wildfire/Spark migration would allow us to forego)

Hi Ryan,

as Gato said if you broadcast to “staff@broadcast.domain” then the messages will be stored for offline users. If you are still using Spark 1.0.3 then it will not be displayed.

For your blog, I think it is easier to write a short java application which uses Smack to send the broadcast message and then does the “upload”. You could make a standalone application or even a java CGI program if you use it only sometimes and want a web front-end.

LG

I’‘ve been curious about broadcasting to online and offline users also. However, I am still unclear about using groupname@broadcast.domain. Here’‘s what I’'ve tried:

  • Adding groupname@broadcast.domain to my contacts. It remains pending no matter how many members of groupname are on/offline.

  • Sending a chat directly to groupname@broadcast.domain. This reports the user will get the message at next login. Any users who are members of groupname do not get the message once online.

  • Adding groupname@broadcast.domain to contact groups. This group is always listed as “There are no contacts in this group.”

It’'s possible I am just missing something, but it would be nice to send a message to all members of a group and store the message if they were offline.

(Sorry for not posting sooner, other tech troubles have interfered with reading my forum posts regularly)

I’'ve tried implementing a “staff@broadcast.DOMAIN”, as jscott has tried. My offline users (in fact, online users, too) DO NOT receive the message.

Is there a plugin (or other server) setting that needs updating? It seems that the message is not being forwarded to anyone.

Thanks for the responses; I’'ll be sure to check back often!

Hey Ryan,

Are online users getting the broadcast message? If they do and the offline users are not getting them when they are back online then:

  1. Check in the admin console that offline message storing is enabled and that the quota has not been exceeded. Check in the database that the messages are present in the jiveOffline table. If you are using the embedded DB you will have to stop the server to force a flush to be able to find the jiveOffline messages.

  2. Which client are you using? Could this be a client issue?

BTW, try also updating to the latest broadcast plugin version.

Regards,

– Gato

Tasks:

  • updated the broadcast.jar file to the current version

  • added a new ‘‘user’’ called “staff@broadcast.DOMAIN” which is a broadcast to the group ‘‘staff’’

  • checked offline storage – all OK (as per dombiak_gaston’'s response)

Results (when send announcement with ‘‘staff’’ group):

  • GAIM crashes

  • SPARK doesn’'t send the announcement

Results (when send announcement to all users “all@broadcast.DOMAIN”):

  • online users receive announcement

  • offline users don’'t get announcement

Thoughts:

  • may be a GAIM issue

  • should I also update to latest version of Wildfire? (currently am running 2.4.2)

Hey Ryan,

Results (when send announcement with ‘‘staff’’ group):

  • GAIM crashes
  • SPARK doesn’'t send the announcement

I tried using Gaim 1.5.0 from FC4 and WinXMP and was able to send and receive broadcast messages sent to a group. The only case where Gaim crashed was when I was using the debugger window and I tried to close a chat window. This problem in Gaim happens not only with broadcast messages but when closing a chat window.

I also was able to send and receive broadcast messages using Spark. Make sure that you are using the correct address to send the broadcast message.

Results (when send announcement to all users

“all@broadcast.DOMAIN”):

  • online users receive announcement
  • offline users don’'t get announcement

That’'s correct. When sending messages to all@broadcast.[myserver] the message will only be sent to connected users. Not connected users will not get the message. In other words, it is not stored offline for not connected users.

Thoughts:

  • may be a GAIM issue
  • should I also update to latest version of Wildfire?

(currently am running 2.4.2)

Many important bugs were fixed so I would definitely recommend upgrading to the latest Wildfire release. This Thursday we are going to release Wildfire 2.5.1 that includes other important bug fixes so you may want to wait until this Thursday to make the upgrade.

Regards,

– Gato

Message was edited by: dombiak_gaston

Should it matter that:

  • my Wildfire server runs on Windows 2000 Server?

  • my domain is shs.net ? (does the decimal make a difference?)

I’'ve updated Spark and Wildfire. Still get the message

The user is offline and will receive the message on their next login.

when I send to Staff@broadcast.shs.net

Hey Ryan,

OS and domain are fine. One thing to consider is that the group name should only contain lowercase letters (and no white space). Try making that change and see how it goes. BTW, it may also be possible that Spark is incorrectly showing that message even though the message was sent to the group members. Once you have sent the message log in as another group member and check if you get the offline message. You can also see the content in the jiveOffline table in the database (before the other group member logs in).

Regards,

– GAto

when I send to Staff@broadcast.shs.net

how are u sending it? please tell this step by step. Have you created some group and added broadcast contact in there. Are you just doubleclicking this contact (this will send simple message, not a broadcast) or you are selecting Send broadcast to this group in this group context menu?

Step-by-step:

  1. In GAIM, go to “Add Buddy”

  2. Fill in

    Screen Name: Staff@broadcast.shs.net
    

Alias: ANNOUNCEMENT

Group: Staff

  1. ANNOUNCEMENT appears in the Staff group.

  2. Double-click ANNOUNCEMENT and enter message.

  3. GAIM dies.

(replacing "all@broadcast.shs.net" generates a correct announcement, but only to all online members)

Same steps for Spark:

  1. Start up Spark 1.1.1

  2. Go to >Contact >’‘Add Contact’’

  3. Fill in info:

    JabberID = Staff@broadcast.shs.net

Alias = ANNOUNCEMENT

Group = Staff

  1. Double-click ANNOUNCEMENT in the Staff group, type in message.

  2. Spark says “The user is offline and will receive the message on their next login.”

  3. Tested with offline user. No message appears to offline user nor to any online user.

Thanks for the help, folks. Much appreciated!

Ok. That’'s more clear.

Can you make sure all your software is up to date?

Here’'s my testing environment (everything on the same machine, but i think should work the same). Windows 2000, Wildfire 2.5.1, Broadcast plugin 1.5.0, Spark 1.1.2, Exodus 0.9.1.0, Gaim 1.5.0, Psi 0.10, Miranda IM 0.4.0.3, JBother 0.8.9, neos 1.2.1, JAJC 0.0.8.114.

Before trying to send any broadcast you should change group name to lower case letters only. I’‘m speaking only about group’'s username, not a Display name. So in Gaim, in Screen name you should enter staff@… not Staff@…

I have shared group - users (display name: ALL Users) with all these 8 users (8 different clients) in it.

Gaim:

  1. In GAIM, go to “Add Buddy”

  2. Fill in

Screen Name: users@broadcast.wroot

Alias: SEND

Group: ALL Users

  1. SEND appears in the ALL Users group as Online.

  2. Double-click SEND and enter message.

  3. All users get this message. And offline ones get this too when they go online. I’'m not getting any message as “The user is offline and will receive the message on their next login.”, becase contact SEND in my roster is always online as long as Broadcast plugin is working.

Must say, that this is not a broadcast style message. Most of clients has a separate style windows for broadcast and simple message. So, every client is getting this message like a simple message from Gaim user. Well, probably no big deal with that. As it does broadcast what you wanted to say to a multiple users at once. But if there are different styles, i think it should be used or removed as obsolete feature. Have pointed to this (as long about Spark different behaviour with broadcasts) in my thread:

http://www.jivesoftware.org/community/thread.jspa?threadID=18545&tstart=0

Sorry for a little offtop Getting back to your problem. As Gato have guaranteed that domain is ok, you should really try to change group’'s name to lower case.

Spark:

  1. Start up Spark 1.1.2

  2. Go to >Contact >’‘Add Contact’’

  3. Fill in info:

JabberID = users@broadcast.wroot

Alias = SEND

Group = Broadcast (because with Spark i cant add contacts in client to a shared group)

  1. Double-click SEND in the Broadcast group, type in message.

  2. Again, no “The user is offline and will receive the message on their next login.” message i get. Again this is not a broadcast style message. And offline users get that message when they go online.

Actually, in Spark, to send a real broadcast message you have to right-click Broadcast group (not a SEND contact, but just group’‘s name) and select “Broadcast message to group”. Type in some message and send it. Then you’‘ll get a broadcast style messages in all clients (except of Miranda and JBother, these clients will show it like simple message again). BUT, offline clients wount get that message, and nothing is stored in Offline storage. So, there IS a bug. Probably Spark’'s one.

One more thing i have mentioned in that my thread above. Is that broadcast send with “Broadcast message to group” function in Spark is actually send like offline message, even when users ARE online. Maybe timestamp is included. I’'m speaking about window styles again.

And last one, if i say use Exodus built-in broadcast feature (right click group’‘s name and select “Broadcast Message”), which is sending a separate message to every group’‘s member without using Broadcast plugin. Then i’'ll get these messages even if users were offline upon sending. And styles would be:

Spark - simple message

Gaim - simple message

neos - simple message

Psi - broadcast message (Online style)

JBother - broadcast message (the same style for Online and Offline)

JAJC - broadcast message (Online style)

Miranda IM - simple message (probably worst XMPP implementation )

When sending with Psi built-in broadcast, the same results. Exodus is getting this like broadcast message (Online style).

That’'s all from me