好的,这可能需要一两分钟来解释:
我正在努力创建一个电子邮件<>SMS 桥(如 Teleflip)。我有一些设置参数可以使用:
- Dreamhost 虚拟主机
- PHP 5(没有 PEAR)
- 后缀
- MySQL(如果需要)
我现在拥有的是一个万能的电子邮件地址,用于转发发送到 shell 帐户的电子邮件。 shell 帐户又将其转发到我的 PHP 脚本。
PHP 脚本读取它,剥离一些电子邮件 header 以确保它正确发送,然后将其转发到指定为收件人的号码。 5551234567@sms.bridge.gvoms.com 当然会发送短信到 +1 (555) 123-4567。
这非常有效,因为我正在解析“收件人”字段并仅获取它要发送到的电子邮件地址。但是,我意识到我没有考虑到多个收件人。例如,发送至 5551234567 和 1235554567 的电子邮件(使用收件人行、抄送行或它们的任意组合)。
当然,电子邮件的工作方式是,我收到两封电子邮件,最终分别解析每封电子邮件,而 5551234567 最终收到相同的消息两次。
如何处理这种情况最好的方法是让TO和CC中指定的每个号码都能得到一份消息。
此外,尽管我怀疑它的可能性:有没有办法以同样的方式处理密件抄送?
最佳答案
如果您检查邮件的标题,您应该找到一个 Message-ID 字段(根据 RFC2822 - section 3.6.4 )。因此,您可以测试您是否已经为具有相同 Message-ID 和电话号码的邮件发送了 SMS,以防止向同一号码发送相同的消息两次。
关于php - 在 PHP 中处理发往多个收件人的传入邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2545307/