taolib.testing.email_service.providers.protocol#

é‚®ä»¶ęä¾›å•†åč®®å’Œę•°ę®ē»“ęž„ć€‚

å®šä¹‰é‚®ä»¶å‘é€ęä¾›å•†ēš„ē»Ÿäø€ęŽ„å£å’Œčæ”å›žē»“ęžœć€‚

Classes#

SendResult

ęä¾›å•†å‘é€ē»“ęžœć€‚

ProviderHealthStatus

ęä¾›å•†å„åŗ·ēŠ¶ę€ć€‚

EmailProviderProtocol

é‚®ä»¶ęä¾›å•†åč®®ć€‚

Module Contents#

class taolib.testing.email_service.providers.protocol.SendResult#

ęä¾›å•†å‘é€ē»“ęžœć€‚

success: bool#
provider_name: str#
provider_message_id: str | None = None#
error_message: str | None = None#
latency_ms: float = 0.0#
class taolib.testing.email_service.providers.protocol.ProviderHealthStatus#

ęä¾›å•†å„åŗ·ēŠ¶ę€ć€‚

provider_name: str#
is_healthy: bool#
consecutive_failures: int = 0#
last_check: datetime.datetime | None = None#
last_error: str | None = None#
class taolib.testing.email_service.providers.protocol.EmailProviderProtocol#

Bases: Protocol

é‚®ä»¶ęä¾›å•†åč®®ć€‚

ę‰€ęœ‰é‚®ä»¶ęœåŠ”ęä¾›å•†åæ…é”»å®žēŽ°ę­¤åč®®ć€‚

property name: str#

ęä¾›å•†åē§°ć€‚

async send(email: taolib.testing.email_service.models.email.EmailDocument) SendResult#

å‘é€å•å°é‚®ä»¶ć€‚

å‚ę•°:

email -- 邮件文攣

čæ”å›ž:

å‘é€ē»“ęžœ

async send_bulk(emails: list[taolib.testing.email_service.models.email.EmailDocument]) list[SendResult]#

ę‰¹é‡å‘é€é‚®ä»¶ć€‚

å‚ę•°:

emails -- é‚®ä»¶ę–‡ę”£åˆ—č”Ø

čæ”å›ž:

å‘é€ē»“ęžœåˆ—č”Ø

async check_health() ProviderHealthStatus#

ę£€ęŸ„ęä¾›å•†å„åŗ·ēŠ¶ę€ć€‚

čæ”å›ž:

å„åŗ·ēŠ¶ę€