I've only just started looking at Nukes, and here are my initial thoughts. I'm still haven't gone into the Nukes code in any depth, but hope the following makes some kind of sense. I'd rather get a discussion going now and get what we are meant to be doing clear while figuring out Nukes. I'm not sure how big the changes to be made to Nukes will be, but I we will need to make some. How tight is the integration between the two meant to be?
All users, forums, topics and watches for nukes are currently stored in nukes db tables.
We will need to record local addresses meant for Nukes somewhere, both to allow for sending when relay is disabled, and to allow for delivery/posting. I guess we could expand the UserRepostitory for now to set up certain addresses as special and meant for Nukes.
A OUTGOING MAIL
When posts are made on the forum, they should be posted to all users who are watching the forum/and topic. Currently Nukes has its own code for handling this, but I take it we want to modify it to use mail services for sending instead?
B INCOMING MAIL
1 We essentially want to implement Mail Services to act as an additional incoming front-end for Nukes. i.e. in addition to the web ui that comes with it.
2 Each forum has its own email address that mails come from when sent to the subscribers (i.e. whoever is watching the forum/topic)
3 Subscribers can simply reply to the individual emails to post replies on the forums. We could probably fit in another (chainable?) maillistener (or do I mean mailhandler?), and messages intended for Nukes would then be posted on the forums.
4 When a reply is received from one of the subscribers it is posted on the forum:
b) The destination forum can be decided either by the stuff that goes in the header for each forum (i.e. ours has [Mail Services] in it), or by the address for the forum. Or even both.
c) The destination topic can be determined from the subject of the recieved mail. If several topics exists within the forum with the same titles the newest is selected, which goes some way to solve problems with double posts and cases where an old different post has the same title as a newer post.
d) For a)&c), and I guess b), more information somehow in order to nail down exactly who is posting to where wold be nice. a) can be narrowed down further by seeing what users with the address watch the forum/address. For c) we could parse the text of the email to look for the link containing all the information, but it sounds slow and painful.
5 It could/should be possible to sign up for notifications on a per forum basis by sending a message to the forum's email address. This would only be possible for users already registered in nukes.
I've probably left out a whole bunch of stuff, so would be good to hear more ideas. Once this discussion stabilizes a bit at our end we will probably need some comments from Julien.