Saltar para o conteúdo principal
Versão: 21 R3 BETA

IMAPNotifier

The IMAPNotifier class allows you to manage IMAP IDLE notifications for a selected mailbox.

História
ReleaseMudanças
21 R3Classe adicionada

The IMAPNotifier class is available from the 4D class store.

An IMAPNotifier object is associated with an IMAP transporter and provides access to mailbox notification management.

All IMAPNotifier class functions are thread-safe.

Exemplo

// Define listener callbacks
var $parameter : Object
var $transporter : 4D.IMAPTransporter

$parameter:=New object
$parameter.authenticationMode:=IMAP authentication OAUTH2
$parameter.host:="Outlook.office365.com"
$parameter.port:=993
$parameter.accessTokenOAuth2:=$myToken
$parameter.user:="myaddress@email.com"
$parameter.listener:=cs.IMAPListener.new()

$transporter:=IMAP New transporter($parameter)
$transporter.selectBox("INBOX")

$transporter.notifier.start()

IMAPNotifier object

An IMAPNotifier object provides the following properties and functions:

.isStarted : Boolean
indicates whether the notifier is started (true) or stopped (false)
.start() : Object
starts the subscription to server notifications and activates IMAP listener callbacks
.stop() : Object
stops the notification subscription

4D.IMAPNotifier.new()

4D.IMAPNotifier.new() : 4D.IMAPNotifier

ParâmetroTipoDescrição
Resultados4D.IMAPNotifier<-New IMAPNotifier object

Descrição

The 4D.IMAPNotifier.new() function creates a new IMAPNotifier object.

.isStarted

.isStarted : Boolean

Descrição

The .isStarted property indicates whether the notifier is started (true) or stopped (false). Essa propriedade é somente leitura.

.start()

.start() : Object

ParâmetroTipoDescrição
ResultadosObject<-Operation status

Descrição

The .start() function starts the subscription to server notifications and activates IMAP listener callbacks.

A mailbox must be selected using selectBox() before calling .start().

Callback functions are executed in the worker where .start() is called.

Notas
  • When the notifier is started, other transporter functions (such as getMail() or send()) are not available. You must call .stop() before using these functions, then call .start() again to resume notifications.

  • IMAP IDLE notifications indicate that a change has occurred but do not provide updated mailbox data. To refresh the mailbox state, you must stop the notifier, retrieve the updated data (for example using getMail()), and then restart it.

Objeto devolvido

PropriedadeTipoDescrição
successParâmetrosTrue se a operação for bem sucedida, False caso contrário
statusTextTextMensagem de estado devolvida pelo servidor IMAP, ou último erro devolvido na pilha de erros 4D
errorsCollection4D error stack (not returned if a server response is received)
[].errcodeNumberCódigo de erro 4D
[].messageTextDescrição do erro
[].componentSignatureTextSignature of the component that returned the error

.stop()

.stop() : Object

ParâmetroTipoDescrição
ResultadosObject<-Operation status

Descrição

The .stop() function stops the notification subscription. Calling .stop() is required before using other transporter functions (such as getMail() or send()).

Objeto devolvido

PropriedadeTipoDescrição
successParâmetrosTrue se a operação for bem sucedida, False caso contrário
statusTextTextMensagem de estado devolvida pelo servidor IMAP, ou último erro devolvido na pilha de erros 4D
errorsCollection4D error stack (not returned if a server response is received)
[].errcodeNumberCódigo de erro 4D
[].messageTextDescrição do erro
[].componentSignatureTextSignature of the component that returned the error