Re: scheduled mailing from URL error

 
From: "Justin J" <justin@PROTECTED>
Date: August 30th 2012

These errors are interesting:

On Aug 30, 2012, at 2:34 PM, Mary Ann Kelley wrote:

Here are all the recent errors from a test list that got the same result: [Thu Aug 30 11:49:45 2012] scheduled_mailings pl: Can't use an undefined value as a HASH reference at scheduled_mailings pl line 774 [Thu Aug 30 11:50:28 2012] scheduled_mailings pl: 403 Forbidden at //DADA/MailingList/Schedules pm line 1173

They have to do with accessing things through a password protected directory - and basically, the login isn't working Had something changed there? Obviously, I can access,

http://www
menus4moms
com/todays_task_email
php

without a user/pass, so it's curious that this is failing Trying it with my own test Dada Mail, I get almost the same error I wonder if you're server is blocking HTTP requests from Dada Mail? That's usually done, by just looking at the User Agent (dumbly) and blocking things that looks suspicious In my copy of Dada Mail, here's what the method that grabs content from a URL looks like:

/dada/DADA/MailingList/Schedules pm

sub fromurl {

my $self    = shift; 
my $url     = shift; 
my $type    = shift; 
my $record  = shift; 

# Create a user agent object
require LWP::UserAgent;
my $ua = LWP::UserAgent->new;

$ua->agent("MyApp/0 1 ");

if(defined($record->{$type 
 '_ver'}->{proxy})){ 
    $ua->proxy(
        ['http', 'ftp'], 
        $record->{$type 
 '_ver'}->{proxy}
    ); 
}

# Create a request
my $req = HTTP::Request->new(
            GET => $url
        );
# Pass request to the user agent and get a response back
my $res = $ua->request($req);
if(
  defined($record->{$type 
 '_ver'}->{url_username}) && 
  defined($record->{$type 
 '_ver'}->{url_password})
){ 
   $res->authorization_basic(
        $record->{$type 
 '_ver'}->{url_username}, 
        $record->{$type 
 '_ver'}->{url_password}
    );
}
# Check the outcome of the response
if ($res->is_success) {
    return $res->content;
}
else {
    warn $res->status_line;
    return undef; 
}

}

If I just explicitly add a name to our "Browser",

$ua->agent('Mozilla/5
0 (compatible; ' 
 $DADA::CONFIG::PROGRAM_NAME 
 ')'); 

it seems to work!:

sub fromurl {

my $self    = shift; 
my $url     = shift; 
my $type    = shift; 
my $record  = shift; 

# Create a user agent object
require LWP::UserAgent;
my $ua = LWP::UserAgent->new;



$ua->agent('Mozilla/5
0 (compatible; ' 
 $DADA::CONFIG::PROGRAM_NAME 
 ')');



if(defined($record->{$type 
 '_ver'}->{proxy})){ 
    $ua->proxy(
        ['http', 'ftp'], 
        $record->{$type 
 '_ver'}->{proxy}
    ); 
}

# Create a request
my $req = HTTP::Request->new(
            GET => $url
        );
# Pass request to the user agent and get a response back
my $res = $ua->request($req);
if(
  defined($record->{$type 
 '_ver'}->{url_username}) && 
  defined($record->{$type 
 '_ver'}->{url_password})
){ 
   $res->authorization_basic(
        $record->{$type 
 '_ver'}->{url_username}, 
        $record->{$type 
 '_ver'}->{url_password}
    );
}
# Check the outcome of the response
if ($res->is_success) {
    return $res->content;
}
else {
    warn $res->status_line;
    return undef; 
}

}

You can grab the entire file to try here:

https://gist
github
com/3540628

This exact change was made in the rest of Dada Mail, I don't know why it wasn't in Beatitude - I'll go ahead and fix that for the next release,

  • This mailing list is a public mailing list - anyone may join or leave, at any time.
  • This mailing list is a group discussion list (unmoderated)
  • Start a new thread, email: dadadev@dadamailproject.com

This is the developer discussion mailing list for Dada Mail.

If you are just looking for support Dada Mail, consult the message boards at:

https://forum.dadamailproject.com

Documentation for Dada Mail:

https://dadamailproject.com/d

Specifically, see the Error FAQ:

https://dadamailproject.com/d/FAQ-errors.pod.html

To post to this list, send a message to:

mailto:dadadev@dadamailproject.com

All subscribers of this list may post to the list itself.

Topics that are welcome:

  • Constructive critiques on the program (I like, "x", but, "y" needs some work - here's an idea on how to make this better...)
  • Bug/Error reports
  • Bug fixes
  • Request For Comments on any changes to the program
  • Help customizing Dada Mail for your own needs
  • Patches
  • Language Translations
  • Support Documentation/Doc editing, FAQ's, etc.
  • Discussion of any changes that you would like to be committed to the next version of Dada Mail -

Dada Mail is on Github:

https://github.com/justingit/dada-mail/

If you would like to fork, branch, send over PRs, open up issues, etc.

Privacy Policy:

This Privacy Policy is for this mailing list, and this mailing list only.

Email addresses collection through this mailing list are used explicitly to work within this email discussion list.

We only collect email addresses through our Closed-Loop Opt-In system.

We don't use your email address for any other purpose.

We won't be sharing your email address with any other entity.

Unsubscription can be done at any time. Please contact us at: justin@dadamailproject.com for any help regarding your subscription, including removal from the mailing list.

All mailing list messages sent from us will include a subscription removal link, which will allow you to remove yourself from this mailing list automatically, and permanently.

All consent to use your email address for any other purpose stated at the time of the mailing list subscription will also be revoked upon mailing list removal.