I was confronted with the issue to inform users about new alerts and announcements which don't have an email account. Besides reloading a page with visible announcement portlet, there is no way to do so at the moment. I know about the option in social office to show news in the dockbar so I created a struts action hook to implement a similar feature. The project source is attached to this ticket.
As you can see in the attached image, this feature shows counts for alerts and announcements. Alerts are only visible if there's >0 entries and announcements are visible always. If there are no announcements, it's blue with white text, otherwise it's red with black text. Clicking on the text (except if it shows 0 announcements) will link to the maximized portlet.
The checkboxes for showing announcements on the website at the users "My Account" setting now is available. This feature is not fully implemented because this hook just checks if the checkbox for "general" is enabled. If it's enabled, the dockbar shows these announcement counts, otherwise it doesn't show anything.
The interal for checking the counts is set to 1 minute in code. An option to allow admins to set the interval would be a good idea.
Moreover this hook highlights unread (red border) and important (red title) announcements.
It would be nice to have something like this in the core implementation for the announcements plugin.