Solved

Email using perl

Posted on 2008-06-19
7
213 Views
Last Modified: 2013-12-17
Having been forced to upgrade my old W98 machine to Vista, I now need to revamp everything software-wise.
I am connected with an organisation that I send out a regular email to. I used to use my own purpose-written Visual Basic program that used vbSendMail, and that worked very well. (I used a data file that contained all the email addresses so there was no fancy SQL database or similar - simply a text file that my program read)
However VB6 is no longer supported on Vista and I am trying to upgrade a perl module that I have that does (basically) the same thing - ie sends out emails
The trouble is, the variations of perl email programs that I have used (MIME::LITE, and a couple of others) don't work ALL that well - the smtp connections either crash out after a certain number of email sends OR something else doesn't work OR the perl module that someone else recommends doesn't actually do the job I want.
Therefore - I want a reliable, easy to use perl email module that will enable me to send 400-500 emails in a short period of time, that will not time out in a connection, won't cost me anything and will be fairly easy to use, and must run on Windows.
Does anyone know of such a beast - ie a perl equivalent of vbSendMail that works?
0
Comment
Question by:GSD4ME
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 48

Accepted Solution

by:
Tintin earned 125 total points
ID: 21826959
For sending out large numbers of email, I can recommend the Mail::Bulkmail module.

See http://search.cpan.org/~jimt/Mail-Bulkmail-3.12/Bulkmail.pm

0
 

Author Comment

by:GSD4ME
ID: 21833883
Hello again Tintin - your clueless perl user here once again!

Does bulkmail work without any sort of glitches/features/problems/restrictions? EG Someone recommended MIME::Lite but that only allowed me to send 5 messages at a time before the smtp connection dropped and I got a silly "document not open .. " type message when it was nothing to do with documents at all.

Have you come across vbsendmail? Excellent piece of kit - I may well try and get in touch with the authors and get them to write the perl equivalent.

WIll give bulkmail the quick once over and see what appears.
0
 
LVL 48

Expert Comment

by:Tintin
ID: 21834802
I'm not familar with vbsendmail myself, but the other alternative is to use windows sendmail.

http://glob.com.au/sendmail/
0
Is Your DevOps Pipeline Leaking?

Is your CI/CD pipeline a hodge-podge of randomly connected tools? You’ve likely got a tool to fix one problem & then a different tool to fix another, resulting in a cluster of tools with overlapping functionality. Learn how to optimize your pipeline with Gartner's recommendations

 
LVL 48

Expert Comment

by:Tintin
ID: 21834807
Another sendmail version is http://www.indigostar.com/sendmail.htm
0
 

Author Comment

by:GSD4ME
ID: 21863408
I have looked at Mail::Bulkmail and it seems very impressive.
HOWEVER - I can't get it to work!
I have played about with it and have done the following:
I have edited the bulkconfig file to reflect my bits and pieces (server names, defaults etc.).
I Have set up my server information in a 'servers' file
I have edited the Mail::Bulkmail::Server pm module to say "disconnect('quietly')" as I kept getting a "server won't respond to 'quit' message"  when I tried to send bulk mail. (In this respect the error file was being populated by error messages to help me)
However havingtried a bulkmail sendthis morning (an important AGM notification) - everything seems to go through - the error log is empty BUT there is nothing in the BADLIST or GOODLIST files. There seems to be have been no sending of any messages (nobody has received them) so I am now stuck. No errors but no emails either.
Any help?
I am going to try and do a 'conversation' log next.

Relevant code is this:
@totalDisList = [];
...etc etc.
then for each member I do a
     push (@totalDisList, $memberemailaddress);
... more code ...
my $bulk = Mail::Bulkmail->new() || die Mail::Bulkmail->error();
$bulk->LIST(@totalDisList);
$bulk->From($formParam{'emailFromAddress'} ."\n");
$bulk->Sender($formParam{'emailFromAddress'} ."\n");
$bulk->ReplyTo($formParam{'emailFromAddress'} ."\n");
$bulk->Subject($formParam{'subjectLineText'} . "\n");
$bulk->Message($formParam{'messageBody'}."\n\n");
$bulk->HTML(1);
$bulk->BAD ('C:\Users\Alan\Desktop\badlist.txt');
$bulk->GOOD('C:\Users\Alan\Desktop\goodlist.txt');
$bulk->bulkmail() || die $bulk->error;
0
 

Author Comment

by:GSD4ME
ID: 21863625
This is all that is in the conversation file when Itry to do a mail send:

Said to server: 'EHLO'
      Server replied: '250-anchor-post-35.mail.xxxx.xxx Hello xxxxxxxx [xx.xxx.xxx.xxx]'
      Server replied: '250-SIZE'
      Server replied: '250-PIPELINING'
      Server replied: '250 HELP'

where I have blanked out the identities f my server and machine
0
 

Author Closing Comment

by:GSD4ME
ID: 31468983
Tintin, many thnaks for your help again.
Have muddled through using a combination of a couple of programs which do the job for me.
0

Featured Post

Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Resolve DNS query failed errors for Exchange
When you try to extract and to view the contents of a Microsoft Update Standalone Package (MSU) for Windows Vista, you cannot extract the files from the MSU. Here we are going to explain how to extract those hotfix details without using any third pa…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
The basic steps you have just learned will be implemented in this video. The basic steps are shown to configure an Exchange DAG in a live working Exchange Server Environment and manage the same (Exchange Server 2010 Software is used in a Windows Ser…

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question