Gdy dokument zostanie dodany do kolekcji, rozszerzenie pobierze go do przetworzenia w celu 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,SUCCESSlubERROR. - startTime:sygnatura czasowa rozpoczęcia przetwarzania e-maila.
- endTime: sygnatura czasowa zakończenia przetwarzania e-maila (czyli zakończenia w stanie
SUCCESSlubERROR). - Błąd: 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
PROCESSINGpowinien być traktowany jako 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 state na RETRY, aby rozszerzenie ponownie spróbowało dostarczyć e-maila (i zwiększyło liczbę attempts).delivery