我正在使用 PHPMailer 发送短信。我有一个可以通过短信发送命令的设备。该设备有一张 tmobile SIM 卡和一个 tmobile 电话号码。当我发送电子邮件时,我将其作为 XXXXXXXXXX@tmomail.net 发送到设备。由于某种原因,我认为设备没有接受这些命令。例如,如果我希望设备运行 2 分钟,我将发送文本命令 $SLEEP=2。当我使用 PHPMailer 并在我的普通手机上输入相同的内容时,我收到的文本没有问题。 (XXXXXXXXXX@txt.att.net)。有任何想法吗?我在下面附上了我的代码。
$bk = '$SLEEP='.$sleep;
while($row = $result->fetch_assoc()) {
$txt= $row["devicePhoneNumber"]. "@tmomail.net";
}
$phpMail = new PHPMailer();
$phpMail->isSMTP();
$phpMail->SMTPDebug = 2;
$phpMail->IsHTML(true);
$phpMail->Username = 'XXX';
$phpMail->Password = 'XXX';
$phpMail->From = "";
$phpMail->FromName = "";
$phpMail->Subject = "";
$phpMail->Body = $bk;
$phpMail->AddAddress($txt);
$phpMail->AddAddress('XXXXXXXXXX@txt.att.net');
$phpMail->Send();
最佳答案
某些邮件服务器如果不满足安全电子邮件的一些最低要求,就会拒绝邮件。在此之前,您应该检查:
- 运行脚本后检查 SMTP 日志是否有任何错误消息(在输入
$phpMail->SMTPDebug = 2;
时激活) - 如果您可以访问 XXXXXXXXXX@tmomail.net 的网络邮件界面,请检查您的邮件是否已移至垃圾邮件文件夹。
当您撰写 smtp 消息时,某些服务器需要一些最少的信息,以便检查消息是否安全:
- 发件人:一般与 SMTP 用户名(有效的电子邮件地址)相同
- 主题:一个简单的主题,不能为空
- 正文:不要在内容中放置链接
关于PHPMailer 无法向跟踪设备发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46367165/