私は、Cで電子メールのGmailラベル(x-gm-labels
)を取得する方法を理解しようとしています。 libetpanサポートx-gm-labels
のビルドを確認しました。電子メールのx-gm-labelを取得する方法
サンプルコードをどのようにまとめて書き込むのですか?
私は、Cで電子メールのGmailラベル(x-gm-labels
)を取得する方法を理解しようとしています。 libetpanサポートx-gm-labels
のビルドを確認しました。電子メールのx-gm-labelを取得する方法
サンプルコードをどのようにまとめて書き込むのですか?
this check-in from the original authorのトレースから、libetpanのIMAPサポートのデフォルト処理動作にコードが溶けていることがわかりました。あなたのチケットはstruct mailimap_msg_att_item
で、コードの私のバックトレースによると
static char * get_msg_att_msg_content(struct mailimap_msg_att * msg_att,
size_t * p_msg_size)
{
clistiter * cur;
/* iterate on each result of one given message */
for(cur = clist_begin(msg_att->att_list) ; cur != NULL ;
cur = clist_next(cur)) {
struct mailimap_msg_att_item * item;
item = clist_content(cur);
if (item->att_type != MAILIMAP_MSG_ATT_ITEM_STATIC) {
continue;
}
...
:
まあ、それはここで、著者provides an example of how to set up an IMAP connection successfully.代わりのコードのすべてを出しスプールが判明あなたが関係しなければならないビットです。ここで探しているatt_type
はMAILIMAP_MSG_ATT_ITEM_EXTENSION
です。MAILIMAP_EXTENSION_XGMLABELS
が見つかるまで、そこからデータ構造を歩いてください。このような
何かがそれらを分離する必要があります。
if (item->att_type == MAILIMAP_MSG_ATT_ITEM_EXTENSION) {
if (item->att_data.att_extension_data->ext_type ==
MAILIMAP_EXTENSION_XGMLABELS) {
// ... do something ...
}
}
(警告:未テストコード)
ここから、使用されている構造体のより深く疑問検査を行うことができます。顕著なファイルはすべて、the test fileを除いて、src/low-level/imap
に含まれています。がんばろう!
これは非常によくMrGomezです、よくできました。 –
IMAP拡張の多くはGmail IMAP ExtensionsとGmail Labels
いくつかの例を参照。..あります
Label message with Gmail system label
がまた良いexplinationを与えるMrGomezのコメントをチェックあなたが求めている機能について
-1どうすればOPを助けることができるかわかりません(メールを取り出すことを除いて) – RedX
私は最後の更新の参照を入れます –
@RedX私の答えがかなり澄んでいるとき!、! –
あなたは確かlibのチェックはstackoverflowをチェックしますか?直接に尋ねる方がよいでしょうか? https://github.com/dinhviethoa/libetpan/commit/01b2aedbd3ff8febe85beb7227f81895bb2eee3a彼らはこれを3ヶ月前に約束しました。 –
私はかなり誰かがこれを試したと確信しています。どんな指示(IMAP呼び出し自体のような)も役に立つでしょう –
あなたが求める機能は['src/low-level/imap/xgmlabels.c']にあります(https://github.com/dinhviethoa/libetpan/ blob/master/src/low-level/imap/xgmlabels.c)と[そのヘッダファイル](https://github.com/dinhviethoa/libetpan/blob/master/src/low-level/imap/xgmlabels.h)を参照してください。 )。著者がどのようにこれを解析しているかは不明ですが、[含まれているテストファイルの小さなセット](https://github.com/dinhviethoa/libetpan/tree/master/tests)にはありません。使い方のドキュメントと堅牢な例がないことを考えると、これは実際に著者に尋ねるべき良いシナリオです。 – MrGomez