Giter VIP home page Giter VIP logo

emailqueue's People

Contributors

aaron-ritter avatar dependabot[bot] avatar jlemley avatar maikuolan avatar marco-pm avatar orthographic-pedant avatar tin-cat avatar wankata avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

emailqueue's Issues

Manually injected messages must have is_sent, is_cancelled and is_blocked set to 0

The database fields is_sent, is_cancelled, is_blocked are NULL by default and their labels say "Do not specify this field when manually inserting.".
However if a message is manually inserted into the table, it won't be delivered unless those fields are 0 (condition in delivery.php), in fact the inject function of emailqueue_inject_class sets them to 0.

So I'd either change their default values to 0 instead of NULL, or change their description specifying to set them to 0.

Server error 500

Hi there, this might not be an issue and more my setup, but is there a way to enable some sort of debug output of the delivery part?

I've a dedicated host running PLESK and I have a domain setup with email (email works fine with outlook, secure, port authentication required on 465 etc.). I unzipped your package to a folder, did the configuration, database setup and download PHPMailer from their git, dumped those files into the PHPMailer folder you had.

Now emails are added to the queue/db, the cron is triggered, the email gets flagged as being in process of being sent but nothing happens after that and it remains as "sending now". If I run the delivery.php directly in my browser it takes some time, 30 sec maybe before it gives me a server 500 error message (so I guess the issue is there). BTW if I run it without an email pending it will give me some output;

Emailqueue · Delivery
Maximum delivery timeout: 50 sec.
Delivery interval: 0,10 seconds
Maximum emails to deliver: 1000
Process started on: 19/1/2017 22:40.55
No emails on queue.
Process ended on: 19/1/2017 22:40.55

I've tried with SMTP_SERVER set to localhost, 127.0.0.1 and the server IP with same result. I've not configured anything with PHPMailer as I presumed that's controlled by your system. The timeout only happens with port 465 (which is what I use), using any other port gives a "Could not connect to SMTP host." and similar

UPDATED; foud this from my general server log:
`2017-01-20 00:03:04 Error myip 500 GET /assets/custom/plugins/emailqueue/scripts/delivery.php HTTP/1.0 1.76 K Apache SSL access

2017-01-20 00:03:50 Warning myip mod_fcgid: read data timeout in 45 seconds Apache error

2017-01-20 00:03:50 Error myip End of script output before headers: delivery.php Apache error`

From where I am, what I did to install, and the error 500 received only when it tried to process an email, any clue as to get some error debug output or what I can try next?

Chris

Frontend for addressees to see via web the messages they've received.

To be able to add a link to each sent email like: "Can't see this message? Click here to see it in your browser"

Should be secure: Generated links to see each email should be secured with a unique, strong hash so only the individual addressee knows it. If not implemented properly, it could easily lead to a serious bug where anyone can see any sent message.

Return-Path

Hello,

I configured the script to use either one to set the Return-Path and it does not work. I am on PHP 7.3. Does anyone know of a fix for this. Thanks.

$mail->addCustomHeader('Return-Path: [email protected]');
OR
$this->mail->Sender = '[email protected]';

buildPhpMailer SMTPSecure

It did not send me an email using SMTP, it showed an error: "SMTP Error: Could not connect to SMTP host.".
In common.inc.php I added the line "$mail->SMTPSecure = SMTP_SECURE;" and in config line add "define("SMTP_SECURE", "ssl");", emailing works.

if (SMTP_IS_AUTHENTICATION) {
  $mail->SMTPAuth = true;
  $mail->SMTPSecure = SMTP_SECURE; // ADD LINE
  $mail->Username = SMTP_AUTHENTICATION_USERNAME;
  $mail->Password = SMTP_AUTHENTICATION_PASSWORD;
}

Thanks for the update

It just crossed my mind to check on emailqueue today and was very happy to see there had been an update. I'll be updating my tiny implementation soon and love the emailqueue_inject::inject parameter option! Hope there's more improvements and updates due :) keep up the good work.

Send Sluggish

Hi

Thanx for the code, I improved it and added "to_name" and also changed mktime() to time() as that results is some warnings , time() more efficient for timestamp 'now', my research suggests.

Ok I have 30 000 emails queued and it is sending at about 3/sec, am using SendGrid API Free with 40 000 emails free to test, by this rate I will finish sending in 25 hours, now I have a list of 120 000 subscribers, this would take I think3-4 days, how to speedy things up?

Delivery:

I am calling the delivery.php directly via wget from cron job (not secure), my server wont fire the bash file, is the bash script file calling better that calling the delivery.php directly? If so why?

My setting are the default:

EnvironmentProduction
Maximum delivery timeout50 seconds
Delivery interval100 ms.
Maximum retry attempts3
Maximum delivers per call1,500
SMTP serversmtp.sendgrid.net

Bulk email example

The example is great for sending one email to queue, but how do I send many at the same time? Could you please provide an example for that?

Twig template

Hi is it possible to implement twig template when sending email? If yes how to achieve it without altering your library? Many thanks

TO Name

Hi,
If I'm not completely wrong, I think PHPMailer accepts TO_NAME and not only the email of the recipient.
It would be a simple and easy enhancement that 'should' help delivery performance.
Thanks for your great job.
Ais

Any planned updates

Hi Tin Cat, just here to say "hello" and to check if you're still using this... not yet critical, but hoping see an update this year adressing anything posted as issues, some improvement and fixing of anything potentialyl flagged as "depricated" as to fully support php 8. Loving this tool and still using it but concerned it might stop working sooner or later.

Explore the entire email queue

Right now, only the last N messages in the queue are shown on the frontend. Improve this so the admin can browser through the entire queue and even perform searches and filterings.

Email character size restriction?

Before I debug this further, is there a character limit or something for the email content? It seems my emails are cut short (just stops mid-sentence) on the content side after some 62k+ characters through using the inject class.

emailqueue not trigger mail

Hello,

I have AWS EC2 instance. I have integrated emailqueue but when I trying to send email its added into database but mail can't send and "Messages in queue" is increment. Please do me needful help.

Thank you
emailqueue-error

Fix the log to files feature

File logging has been commented because some errors were found when emailqueue tried to write/create log files without filesystem permissions.

Organize the code

Code is so old that it's not really following any coding conventions. Even tabbing is broken. Reorganize the code, function names, tabbing and coding conventions to make it look clean and tidy.

PHPMailler Set Options

I don't know if it's a issue, but I had to add the lines attached to work on port 587 in CPANEL when

define("SMTP_PORT", 587); // The port of the SMTP server
define("SMTP_IS_AUTHENTICATION", true); // True to use SMTP server Authentication

$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);

I attach the example
smtpoption

Blacklisted Emails Fix

Hello,

I discovered today that the blacklist email feature did not work. Emails were sent to users who were blacklisted. I am on PHP 7.3.3

Here are the two fixes to get it to work:

function deliver_email(&$mail, $email, $isOutputVerbose = false) {

global $blacklisted_emails; // Declare $blacklisted_emails as a global variable because this array is not sent to the function.

  1. Add a return false so that the email is not sent to the blacklisted user.
    // Check black list
    if (isset($blacklisted_emails))
    if (is_array($blacklisted_emails) and in_array(strtolower(trim($email["to"])), $blacklisted_emails)) {
    if ($isOutputVerbose)
    echo " / Black listed";
    add_incidence($email["id"], "Recipient is on the black list: ".$email["to"]);
    cancel($email["id"]);
    $logger->add_log_incidence(
    array(
    $email["id"],
    $email["to"],
    "Email cancelled",
    "Recipient is on the black list"
    )
    );
    return false;
    }

Blank Page

Hello,

The PHP version on the server is PHP 7.3.17

I just see a blank page when I go to the frontend. The API POST request does not send. The response is blank.

Any idea what could be the problem? Thanks!

Support for attachments

Add support for file attachments, specially for attaching images that are used in the email's HTML itself. Should be difficult, because attached files should be stored somewhere while the email is in the queue (or even when it's been already sent).

Can lead to huge storage usage: Imagine sending 100k newsletter emails, each email on the queue having its own file attached, stored on disk even when the file is the same for all of those 100k emails. This should be addresses in a way that attached files become referenced from each mail to files stored by emailqueue, so the same file is only stored once even if there are lots of emails on the queue referencing to that file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.