Server protokolu IMAP je popsán jako stavový automat. V každou chvíli se nachází v jednom z definovaných stavů. Pro každý stav je definována určitá množina příkazů. V této kapitole budou popsány příkazy protokolu IMAP, které se neváží na žádný stav, nebo jsou pro všechny stavy serveru protokolu IMAP společné.
3.1. Příkaz NOOP
Příkaz NOOP se vždy podaří, nedělá nic. Je možné jej použít pro periodické načítání
nových zpráv nebo aktualizace stavu poštovní schránky (například, zda nebyla doručena nová zpráva) během doby bez aktivity. Příkazu NOOP je možné také použít k resetování časovače serveru pro
automatické odhlášení.
parametry: žádné
data: žádné
výsledek:
OK - příkaz NOOP se provedl
BAD - neznámý příkaz nebo špatný argument
Příklad:
C: a002 NOOP
S: a002 OK NOOP completed
. . .
3.2. Příkaz CAPABILITY
Na příkaz CAPABILITY server vrátí neoznačenou odpověď, ve které oznamuje svoje možnosti.
parametry: žádné
data: neoznačená odpověď: CAPABILITY
výsledek:
OK - příkaz capability dokončen
BAD - neznámý příkaz nebo špatný argument
Příklad:
C: abcd CAPABILITY
S: * CAPABILITY IMAP4rev1 AUTH=KERBEROS_V4
S: abcd OK CAPABILITY completed
3.3. Příkaz LOGOUT
Příkaz LOGOUT informuje server, že klient ukončuje relaci. Server musí odeslat neoznačenou
odpověď BYE před označenou odpovědí OK a následně ukončit TCP spojení.
parametry: žádné
data: neoznačená odpověď: BYE
výsledek:
OK - odhlášení dokončeno
BAD - neznámý příkaz nebo špatný argument
Příklad:
C: A023 LOGOUT
S: * BYE IMAP4rev1 Server logging out
S: A023 OK LOGOUT completed
(Server i klient následně ukončí TCP spojení)
3.4. Cvičení
Vymyslete sekvenci příkazů, kterou zjistíte možnosti IMAP serveru a následně regulérně pomocí příkazu protokolu IMAP ukončíte TCP spojení se serverem. Svou myšlenku
ověřte pomocí klienta služby Telnet a vysvětlete odpověď, která vám přišla.