Esempio n. 1
0
    //returns true if signature is valid
    return hash_hmac('sha256', $timestamp . $token, $apiKey) === $signature;
}
if (isset($_POST)) {
    webhooks_debug("category: '" . $_POST["event"] . "' for: " . $_POST["recipient"]);
    if (verify($webhooks_mailgun_api_key, $_POST["token"], $_POST["timestamp"], $_POST["signature"]) == true) {
        if (filter_var($_POST["recipient"], FILTER_VALIDATE_EMAIL)) {
            switch ($_POST["event"]) {
                case "dropped":
                    webhooks_soft_bounce($_POST["recipient"], $_POST["code"]);
                    break;
                case "bounced":
                    webhooks_soft_bounce($_POST["recipient"], $_POST["code"]);
                    break;
                case "complained":
                    webhooks_spam_report($_POST["recipient"]);
                    break;
                case "error":
                    event_error($_POST["event"]);
                    break;
                default:
                    webhooks_debug(" == Invalid category: '" . $_POST["event"] . "' for: " . $_POST["recipient"] . " ==");
            }
        } else {
            // invalid email address
            webhooks_debug(" == Invalid email address: '" . $_POST["recipient"] . "' ==");
        }
        // if (filter_var($event["recipient"],FILTER_VALIDATE_EMAIL))
    } else {
        // if(verify)
        webhooks_debug(" == Invalid request: '" . $_POST["Message-Id"] . "' ==");
Esempio n. 2
0
             webhooks_hard_bounce($event['msg']['email'], $event['msg']['bounce_description']);
             break;
         case "soft_bounce":
             webhooks_soft_bounce($event['msg']['email'], $event['msg']['bounce_description']);
             break;
         case "open":
             event_open($event);
             break;
         case "click":
             event_click($event);
             break;
         case "spam":
             webhooks_spam_report($event['msg']['email']);
             break;
         case "spamreport":
             webhooks_spam_report($event['msg']['email']);
             break;
         case "unsub":
             event_unsubscribe($event);
             break;
         case "reject":
             webhooks_hard_bounce($event['msg']['email'], "reject: " . $event['msg']['bounce_description']);
             break;
         default:
             webhooks_debug(" == Invalid category: '" . $event["category"] . "' for: " . $event["recipient"] . " ==");
     }
 } else {
     // invalid email address
     webhooks_debug(" == Invalid email address: '" . $event['msg']['email'] . "' ==");
 }
 // if (filter_var($event["recipient"],FILTER_VALIDATE_EMAIL))
Esempio n. 3
0
             event_unsubscribe($event);
             break;
         case "hard_bounce":
             webhooks_hard_bounce($event["recipient"], $event["status-code"]);
             break;
         case "soft_bounce":
             webhooks_soft_bounce($event["recipient"], $event["status-code"]);
             break;
         case "bounce":
             webhooks_soft_bounce($event["recipient"], $event["status-code"]);
             break;
         case "blocked":
             event_blocked($event);
             break;
         case "spam_report":
             webhooks_spam_report($event["recipient"]);
             break;
         case "filtered":
             event_filtered($event);
             break;
         case "error":
             event_error($event);
             break;
         default:
             webhooks_debug(" == Invalid category: '" . $event["category"] . "' for: " . $event["recipient"] . " ==");
     }
 } else {
     // invalid email address
     webhooks_debug(" == Invalid email address: '" . $event["recipient"] . "' ==");
 }
 // if (filter_var($event["recipient"],FILTER_VALIDATE_EMAIL))