Gdy dokument zostanie dodany do kolekcji, rozszerzenie pobierze go do przetworzenia i wysłania e-mailem. Podczas przetwarzania e-maila rozszerzenie tworzy i aktualizuje pole delivery
w dokumencie.
Przetwarzanie dostarczania poczty e-mail
Pole delivery
może zawierać te pola:
- state: jeden z tych stanów:
PENDING
,PROCESSING
,SUCCESS
lubERROR
. - startTime:sygnatura czasowa rozpoczęcia przetwarzania e-maila.
- endTime: sygnatura czasowa zakończenia przetwarzania e-maila (czyli zakończenia w stanie
SUCCESS
lubERROR
). - error:jeśli wystąpił błąd dostarczania e-maila, pojawi się tu komunikat o błędzie.
- attempts: liczba prób dostarczenia tego e-maila.
- leaseExpireTime: w przypadku zawieszenia lub przekroczenia limitu czasu czas, w którym stan
PROCESSING
powinien być uznawany za błąd. - info: po pomyślnym dostarczeniu e-maila (na co najmniej 1 adres) to pole zostanie wypełnione tymi polami:
- messageId: identyfikator dostarczonego e-maila.
- accepted:tablica adresów e-mail, na które e-mail został dostarczony.
- rejected:tablica adresów e-mail, na które nie udało się dostarczyć e-maila.
- pending:tablica adresów e-mail, które zostały tymczasowo odrzucone przez SMTP.
- response: ostatnia odpowiedź z serwera SMTP.
E-mail zwykle przechodzi z PENDING
do PROCESSING
, a następnie do SUCCESS
lub ERROR
. Gdy dokument jest w stanie SUCCESS
lub ERROR
, dodatkowe zmiany w dokumencie nie spowodują wysłania kolejnego e-maila przez rozszerzenie. Aby ponownie wysłać e-maila z aktualizacjami dokumentu, możesz zmienić state
na PENDING
lub RETRY
.
Ręczne ponawianie
W niektórych przypadkach dostarczenie e-maila nie powiedzie się w sposób, który można naprawić, lub dokument można ręcznie poprawić, aby dostarczyć go prawidłowo, wprowadzając niewielkie zmiany. Ponowne próby nie są automatyczne, ale możesz ręcznie zmienić wartość w polu delivery
na RETRY
, aby rozszerzenie ponownie spróbowało dostarczyć e-maila (i zwiększyło liczbę attempts
).state