Hi again Danci. Keep the great questions coming! :)
On Jun 27, 2012, at 08:19 AM, Danci Emanuel wrote:
I am back with some questions in regard to the aliases. After a persons becomes a member of a particular list, subscribing with its primary email address (the address at which he/she will receive the replies), how can that person add the additional email addresses (aliases) to the database?
Yes. Subscriptions (i.e. memberships) are completely separate from addresses, which again are separate from users. Users and addresses can each be added separately at any time. Many of the doctests in src/mailman/model/docs illustrate this. In mm3 terminology, these separately added users and addresses are "unlinked".
Usually addresses and users are linked, and an address can point to exactly one user, while users can point to many addresses.
Members link a mailing list to either a user or an address, but not both. A user can be linked only if it has a preferred address, in which case message delivery will be to that preferred address. This allows a user to subscribe to many mailing lists with their preferred address, and then change their preferred address in one swoop to change all of their deliveries.
So, to answer your second question, the way a user adds additional addresses is fairly simple. Given an IUser object, you can just call the .register() method to both register a new email and to link that to the user. The address will be unverified though, so in order to accept postings from that new email, it has to be verified (which through the internal API is just setting a flag).
Does that answer the question?