2013-03-25 111 views
1

我使用PHP構建電子郵件管理軟件。我有點卡住了一些東西,並認爲這可能會提供一些見解。用戶檢索消息。消息得到回覆。我在想,我可以爲傳入的消息創建某種自定義散列,將數據和散列存儲在數據庫中,然後對於回覆,將自定義散列注入到消息頭中,以表示發送的消息是特定的傳入消息。PHP跟蹤電子郵件和回覆

  • 我回復郵件後,然後用戶重新回覆,注入的自定義散列會在郵件中?如果不是,它將被視爲新的傳入消息。
  • 我應該考慮將自定義哈希注入消息嗎?這甚至有可能嗎?這是一個好方法嗎?

這是一個很好的理論使用?任何建議或意見?我真的沒有這方面的經驗,我只是想找出實施的最佳方法。

**注意:如果有任何我可以反向工程的開源PHP電子郵件管理軟件,那也可能是我有興趣查看的內容。

回答

2

將自定義標頭注入消息是可能的,但它們很少會包含在回覆中。有時候,客戶端會包含一個In-Reply-To頭,它會引用原始消息ID並且可以使用它。

但是,最簡單和最常用的方法是使用自定義的從地址。如果您從[email protected]發送電子郵件,則任何退回或回覆將回到該電子郵件地址。如果下一條消息使用[email protected],那麼您可以輕鬆地確定哪個回覆是針對哪條原始消息。

有幾個選項接收電子郵件時:

  1. 使用POP3或IMAP
  2. 有郵件服務器初始化的消息被接收
  3. 使用這些郵件從轉換系統的腳本投票SMTP並將它們轉發爲HTTP

我寫了一個blog post outlining the methods to receive the messages,它是針對Ruby的,但同樣的原則都適用。不幸的是,我不知道任何PHP軟件。