Mail Search & Destroy Agent

I need to create a database that will house a seek and destroy agent and its log. What I am looking for is an agent that can go out to every database on a server and perform the following tasks.

1) Find and report a specified message.
2) Delete that occurrence in every database and log them.

We are running Lotus Notes 5.0.13 on Windows 2000 Server. Basically what we are looking for is if a certain e-mail has gone out to a distribution list we need the ability to recall that message, deleting from everyone's Inbox. We have mail databases and mail-in databases that would need to be touched that reside on 3 different servers and are located in multiple directories. If we can get an agent that just does it on one server recursing all subdirectories in the data directory we can modify it to meet our needs across multiple servers. What we need is the code to look at databases in multiple locations and delete documents from them.

The reasoning behind this are the following scenarios:

1) Person sends out incorrect information to a large distribution and we need to retract it.
2) Automated Notification agent is incorrectly activated so we need to retract those e-mails.
3) Person spams company directory with large size e-mail and we want to retract it.
4) Dangerous email gets through firewall, spam & virus filter, and virus shield and we need to destroy it. (This one is a slim possibility but always the chance exists)

As I am green when it comes to actual scripting, I need some direction in this type of agent. I have not been able to find any example code either so I turn to the experts here.

BlackmoorianDirector of Professional ServicesAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

brwwigginsIT ManagerCommented:
There's a 3rd party product called fetch. Maybe interesting for you.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
BlackmoorianDirector of Professional ServicesAuthor Commented:
Thanks, but we are looking for an in-house solution as there is no budget available for this project other than man-hours.
U have a huge requirement and I am sure none of the Experts here may help you.
You are asking for a Code, which may not be possible to provide. Its a huge task and may need lots of time to prepare logic and give some skeleton code.

Cloud Class® Course: Microsoft Office 2010

This course will introduce you to the interfaces and features of Microsoft Office 2010 Word, Excel, PowerPoint, Outlook, and Access. You will learn about the features that are shared between all products in the Office suite, as well as the new features that are product specific.

Sjef BosmanGroupware ConsultantCommented:
I tend to agree with Madheeswar: this is a major project indeed.

Some well-meant answers to your scenarios:
1) this person should be reprimanded or fired; programming against incompetence is a waste of time
2) see 1: test, test, and test again
3) large-seize e-mails can be blocks by simple means; see kSpam of
4) train you rpeople to recognize viruses and spam mails
BlackmoorianDirector of Professional ServicesAuthor Commented:
So what you are saying is NO ONE has had a need to do something like this before? I was not expecting someone to write this from scratch, I was hoping someone had code they had previously used and was willing to share.

As far as responses to sjef bosman's answers to my scenarios:

1) Agreed - Unfortunately management doesn't (since they are our most frequent flyers - LOL)
2) For some reason when you make a change to a live agent that is to act upon new or modified documents. It looks at the change to the agent as "hey all documents are new for me since I am new or modified" for some reason. So we end up confusing our populus now and then when changes to live agents are necessary. Inconvenience to others is only downfall, would be nice to be able to retract note to save HelpDesk heartache. So testing won't help for this.
3) Would be great if we were to block all large e-mails. However we unfortunately have a business need for some large emails between a few of our groups. The need to pull unwanted large e-mails without blocking all is the solution we were looking for.
4) Like I said this is so infrequent it is almost not worth mentioning except for impact. We have only had this happen once. The virus had spoofed an address so the user actually thought they were opening up a business proposal from one of their clients. Twas a very tricky virus, I know I was impressed by the legitimate look of it. Of course this scenario in particular won't be happening again due to our filter that is now in place that eliminates spoofed addressing. However not everything is 100% efficient so possibility still exists. Therefore need to retract known harm would be nice.

I can understand the scope of this project and if no one has ever done anything like this, I will eventually figure it out, Thanks for everyone's time. Unfortunately I have to do this, luckily no ETA has been set in stone yet.

However if someone has already done this in the past/present any assistance or code would be appreciated.
Sjef BosmanGroupware ConsultantCommented:
I don't think anybody felt the need to do what you're looking for. It looks like narrowing the likelihood of a virus on a system from 0.01% to 0.005%. Don't try to avoid everything, it's almost impossible and very ineffective. Let the anti-virus guys do that. Better stay focused on your business.

1) All the more reason to act!
2) I (almost) never have to change agents. That's mostly because the agent code itself only contains ONE call to a function that's in a Script library. And that library can be changed freely without recompiling the agent.
If "created or modified" is not specific enough, then don't use it. My agents all use a date-field in some profile document that contains its last run date and time. Anything created or modigfied after that date-field is then to be addressed by the agent.
3) you tried kSpam?
4) a good and regularly updated virusscanner is usually enough (I have AntiVir, or
BlackmoorianDirector of Professional ServicesAuthor Commented:
Would everyone agree that no solution was offered up for this request and as such this question should be deleted?

Or should this question be closed and the points split between all those that offered up alternate solutions. Please let me know which you feel would be the fair means to handle this question.

Thanks for all those that offered suggestions and I look forward to your responses regarding the disposition of this question.
Sjef BosmanGroupware ConsultantCommented:
Whether a solution was offered is up to you, isn't it? I suppose, by your last comment, our comments weren't quite to the point. Your problem isn't solved, are you still stuck or did you find some other way? If you really think NOTHING here helped you, then ask for a Refund in the Community Support TA. Otherwise reward those who you think offered the best info. Please don't give a C, then it's better to ask for the Refund.

I'm sorry I couldn't have been more helpful.

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Lotus IBM

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.