Tutti i comandi IMAP4rev1 vengono rappresentati da metodi con lo stesso nome sia in maiuscolo che minuscolo.
Tutti gli argomenti per i comandi vengono convertiti in stringhe,
eccetto che per "AUTHENTICATE", e l'ultimo argomento per
"APPEND" che viene passato come letterale IMAP4. Se necessario
(la stringa contiene caratteri sensibili per il protocollo IMAP4 e non
è chiuso tra parentesi o doppie virgolette) ogni stringa viene
quotata. Comunque, l'argomento password per il comando
"LOGIN" viene sempre quotato. Se si vuole evitare di avere una
stringa argomento quotata (per esempio: l'argomento flags per
"STORE") includere la stringa tra parentesi (per esempio:
r'(\Deleted)').
Ogni comando restituisce una tupla
(type, [data, ...]) in cui type è
abitualmente 'OK' o 'NO', e data è, sia il testo
della risposta del comando, che il risultato generato dal comando.
Ogni data è, sia una stringa, che una tupla. Se è una tupla, la
prima parte è l'intestazione della risposta, e la seconda parte
contiene i dati (per esempio: valore 'literal').
Una istanza IMAP4 ha i seguenti metodi:
| mailbox, flags, date_time, message) |
| func) |
| ) |
| ) |
| message_set, new_mailbox) |
| mailbox) |
| mailbox) |
| ) |
| message_set, message_parts) |
| mailbox) |
| root) |
| mailbox) |
| [directory[, pattern]]) |
| user, password) |
| user, password) |
| ) |
| [directory[, pattern]]) |
| ) |
| host, port) |
read, readline, send e shutdown.
Questo metodo può essere sovrascritto.
| message_num, message_part, start, length) |
| user) |
| size) |
| ) |
| ) |
None se non ci sono nuovi messaggi, altrimenti il valore
della risposta "RECENT".
| oldmailbox, newmailbox) |
| code) |
None. Restituisce il codice
passato, al posto del tipo abituale.
| charset, criterion[, ...]) |
None, nel cui caso
nessun "CHARSET" verrà specificato nella richiesta al server.
Il protocollo IMAP richiede che al massimo venga specificato un
criterio; verrà sollevata un'eccezione quando il server restituisce
un errore.
Esempio:
# M è un'istanza di IMAP4 connessa... msgnums = M.search(None, 'FROM', '"LDJ"') # o: msgnums = M.search(None, '(FROM "LDJ")')
| [mailbox[, readonly]]) |
'INBOX'. Se l'opzione
readonly viene impostata, non sono autorizzate modifiche alla
mailbox.
| data) |
data al server remoto. Questo metodo può essere
sovrascritto.
| mailbox, who, what) |
| root, limits) |
| ) |
open. Questo metodo può
essere sovrascritto.
| ) |
| sort_criteria, charset, search_criterion[, ...]) |
sort è una variante di search con la
semantica del sorting per il risultato. I dati restituiti
contengono una lista separata da spazi dei numeri del messaggi
corrispondenti.
Sort ha due argomenti prima dell'argomento/i search_criterion;
una lista di sort_criteria tra parentesi ed il charset
di ricerca. Notare che, diversamente da search, il parametro
charset è obbligatorio. Esiste anche un comando
uid sort che corrisponde a sort, alla stessa maniera
di come uid search corrisponde a search. Il comando
sort, prima cerca la mailbox per i messaggi che verificano il
criterio di ricerca indicato usando l'argomento charset per
l'interpretazione delle stringhe del criterio di ricerca.
Restituisce il numero di messaggi corrispondenti.
Questo comando è previsto dall' estensione "IMAP4rev1".
| mailbox, names) |
| message_set, command, flag_list) |
| mailbox) |
| threading_algorithm, charset, search_criterion[, ...]) |
thread è una variante della ricerca search
dei risultati, con semantica threading. I dati restituiti
contengono una lista separata da spazi dei membri del thread.
I membri thread consistono in zero o più messaggi delimitati da spazi, che indicano successivi genitori e figli.
Thread possiede due argomenti prima dell'argomento/i
search_criterion: un threading_algorithm ed il
charset di ricerca. Notare che, diversamente da
search, l'argomento di ricerca charset è obbligatorio.
Esiste anche un comando uid thread corrispondente a
thread, alla stessa maniera in cui uid search
corrisponde a search. Il comando thread cerca per
prima cosa le mailbox i cui messaggi trovino corrispondenza con il
criterio di ricerca indicato usando l'argomento charset per
l'interpretazione delle stringhe nel criterio di ricerca. Quindi
restituisce i corrispondenti messaggi threaded in accordo con
l'algoritmo di threading passato.
Questo è un comando di estensione "IMAP4rev1". Nuovo nella versione 2.4.
| command, arg[, ...]) |
| mailbox) |
| name[, arg[, ...]]) |
Le istanze di IMAP4_SSL hanno solamente un metodo aggiuntivo:
| ) |
I seguenti attributi vengono definiti sull'istanza di IMAP4:P4:
Debug del modulo.
Valori più grandi di 3 tracciano ogni comando.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.