2012-05-08 19 views
2

Gmailのメッセージを取得するためにZend Frameworkを使用しています。 私が認証し、次のコードを使用してZendのフレームワークを使用して、すべてのメッセージを取得することができました:Zend FrameworkのGmail URLハッシュを使用してGmailメッセージを取得する方法

$storage = new Zend_Mail_Storage_Imap($imap); 

for ($i = 1; $i <= $storage->countMessages() && $i <=10; $i++){ 
    echo htmlentities($storage->getMessage($i)->subject); 
    echo $storage->getMessage($i)->getContent(); 
} 

しかし、私は通常、私たちがメッセージを読んだときにGmailのURLに表示されたハッシュを使用してメールを取得したいです。以下のURLでたとえば:

https://mail.google.com/mail/?shva=1#inbox/137261701dcae0a6 最後のスラッシュの後の部分は、私が進であるとし、ハッシュ(137261701dcae0a6)です。 このハッシュを使用してZend Frameworkを使用してメッセージを取得するにはどうすればよいですか?助けてください。

答えて

1

あなたが提供したGoogleのリンク(https://mail.google.com/mail/?shva=1#inbox/137261701dcae0a6)は会話全体(スレッド全体)を指しています。

137261701dcae0a6は、GmailのスレッドID(16進数)です。

このスレッドのメッセージを検索するには、X-GM-THRID GmailのIMAP拡張機能を使用することができます。

私は、Zendを知らないので、私はコードのお手伝いをすることはできませんが、次のようにIMAP通信はなります

C: 20eeec4bb07a44be UID SEARCH X-GM-THRID 1401511523692802395 
S: * SEARCH 13622 
S: 20eeec4bb07a44be OK SEARCH completed (Success) 
+0

私は右の認証を行った後、あなたのソリューションを試してみましたが、応答がサーバから返されました** "悪い検索は現在できません" **です。 Zend Framework APIを使用してXLISTコマンドを使用することはできますが、検索を実行できません。 GmailのIMapドキュメントでは、カスタムIMAP拡張機能を使用していることも読んでいます。これらのカスタムIMAP拡張機能を一般的なIMAP APIでどのように使用することができ、私がやろうとしていることに関連しているのですか?また、もう1つのことを明確にしてください、imapコマンドの前に付いたこの "20eeec4bb07a44be"文字列は何ですか? – khalid

+0

最初にフォルダを選択しましたか? –

+0

20eeec4bb07a44beはランダムなコマンドIDです。IMAPによって要求されています –

関連する問題