Our users wanted and I have a created a custom history tab for a contact. This page has all the comments, attribute changes, messages sent, tasks completed, etc in chronological order with a consistent time and users stamp. It looks much like the comments page but includes much more info and intersperses comments with other information - its one place to look to see how a contact has related to our organization. I will attempt to generalize this page and include it with the cvs.openacs.org install of contacts in the next few days. this page has the view of contact message log info.
I don't mind mail-tracking being called mail-tracking. The reason I added the table seperately is threefold:
- That table mimics the saved contact messages in cr_items which allows me to save the title, description (i.e. subject in an email) and content (i.e. body in the email). This lets me use a institutional name such as "Admissions: introductory letter for international students" that our staff uses in the history page and have a link to the actual message sent. A staff member knows that the contents of that form letter is and doesn't have to read the specfics unless they want to. So, if we were to use mail-tracking only I would want a title attribute that can be used for this purpose
- Mail-tracking logs all login messages for users, forum notifications, etc. i.e. way too much info for us where many of our contacts will also be users (and dotLRN users at that) all those messages being logged will significantly decrease the usefulness of mail tracking for us since there will be a lot of noise. All our staff cares about is the official notices sent to contacts and those will all be sent via the messages interface in contacts. I can see why some people would want everything logged, we just don't
- I was in a big hurry and didn't look into customizing mail-tracking to fit our needs since creating one table and one proc to add info to that table was much faster than negotiating how to make mail-tracking fit our needs when i was preparing to show my progress to some other collegues
I think there is a place for mail-tracking and a place for the contacts mail log, but not both simultaniously. So maybe we should have a parameter that sets how much logging of messages should be done and selecting the appropriate place? Or is there a way in which mail tracking could be used for our needs?
As far as default groups go... I agree that an application group for the contacts instance is the way to go for now. In the long run we will want to be able to allow users or groups to have their own contact lists that aren't shared part of an instances default list. But having an application group for now should do it. I guess well just need a sweeper proc that runs every 60 seconds or so and finds any new users/organizations and adds them to the ocntacts instance.
Lastly, the "any attribute mail merge" would work easily the way you suggest but not quickly when doing a 500 letter mailing (which our school needs to be able to do). My issue is in figuring out a way to do it quickly with large mailings... without requiring a trip to the database per attribute per party_id. Although I agree that it shouldn't be too hard... i should have that working within the next day or so.