I've got something working using ejabberd but it requires that the server send a message individually to each connected user (User 1, User 2 etc) rather than to the feeds
I'm not quite sure what you mean about sending a message to a feed, as it's neither XMPP, usenet or atom usage.
The usual mechanism in XMPP for publishing to any user who is interested in a topic is to use publish-subscribe rather than a client maintaining the list of users to send messages to. XMPP is a push based technology, so when a node is updated, the server sends a message to any user registered to that node. So when you publish, you send one message to the server, then the server sends any number of messages to the subscribers. This page describes setting up ejabberd pub-sub.
Atom you publish to the web and users poll, so the users send a message to the server then the server replies with an update. It handles the server end, other software is required for the different users to subscribe to feeds.
(I don't really know how usenet works).
I'd go with XMPP pub-sub; it has mechanisms for what you seem to be wanting, and allows users to subscribed to different 'feeds'. The disadvantage is that it is quite complicated, and which features are implemented vary server to server. You might want to look at the personal event protocol too, which has simplified pub-sub guidelines.