use rdx\imap\IMAPMailbox; require 'env.php'; require 'autoload.php'; header('Content-type: text/plain'); try { $mbox = new IMAPMailbox(IMAP_BOUNCES_HOST, IMAP_BOUNCES_USER, IMAP_BOUNCES_PASS, 'INBOX', ['ssl']); } catch (\Exception $ex) { exit($ex->getMessage()); } print_r($mbox->msgInfo()); echo "\n"; // print_r($mbox->headers(false)); // echo "\n"; if (true) { // LOAD MANY $messages = $mbox->messages(['newestFirst' => false, 'limit' => 20]); var_dump(count($messages)); echo "\n"; } else { // LOAD ONE $messages = [$mbox->message(4)]; } foreach ($messages as $message) { echo "\n\n"; echo '[' . $message->msgNumber() . '] [' . date('Y-m-d H:i:s', $message->utc()) . '] ' . $message->subject() . "\n"; // continue; echo "\n"; // print_r($message->headers()); // print_r($message->parameters()); // $printSection = function($section) use ($message) { // $body = imap_fetchbody($message->mailbox->imap(), $message->msgNumber(), $section, FT_PEEK);
<?php use rdx\imap\IMAPMailbox; require 'env.php'; require 'autoload.php'; header('Content-type: text/plain'); $mbox = new IMAPMailbox(IMAP_HELPDESK_HOST, IMAP_HELPDESK_USER, IMAP_HELPDESK_PASS, 'INBOX', ['novalidate-cert']); print_r($mbox->headers()); $messages = $mbox->messages(); var_dump(count($messages)); print_r($messages); exit; $headers = imap_headers($mbox); print_r($headers); foreach ($headers as $hd) { if (preg_match('/(\\d+)\\)/', $hd, $match)) { $msgNum = $match[1]; $hd = imap_headerinfo($mbox, $msgNum); $new = !!trim($hd->Unseen); if ($new) { // subject -- should contain #code# $title = get_plain_text_subject($mbox, $msgNum, $hd); $code = preg_match('/#(\\d+)#$/', $title, $match) ? (int) $match[1] : 0; echo $title . "\n"; // body -- get only last part (no conversation history) $attachments = array(); $full_body = get_plain_text_body($mbox, $msgNum, $attachments); $body = get_last_body_part($full_body); if ($attachments) { $body .= "\n\n== Attachments:\n* " . implode("\n* ", $attachments); }
<?php use rdx\imap\IMAPMailbox; require 'env.php'; require 'autoload.php'; header('Content-type: text/plain'); $mbox = new IMAPMailbox(IMAP_11NK5_HOST, IMAP_11NK5_USER, IMAP_11NK5_PASS, 'INBOX', ['ssl', 'novalidate-cert']); $messages = $mbox->messages(false); echo count($messages) . " new messages...\n\n"; exit; foreach ($messages as $message) { $title = $message->subject(); var_dump($title); $message->parts(); $body = $message->plainBody; if ($body) { $text = $body->content(); if (preg_match('#^https?://[a-z0-9]#i', $text)) { $tags = preg_split('/\\s+/', $text); $url = array_shift($tags); $tags = implode(' ', $tags); if ($tags) { var_dump($url); var_dump($tags); if ($message->unseen) { $q = compact('title', 'url', 'tags'); $qs = http_build_query($q); $rsp = @file_get_contents('http://hotblocks.nl/tags/index.php?' . $qs); echo "SUBMIT URL: "; if ($rsp) { var_dump(strlen($rsp));