taolib.testing.email_service.services.tracking_service#
追踪和分析服务。
记录邮件追踪事件并提供分析数据。
Classes#
邮件分析数据。 |
|
追踪和分析服务。 |
Module Contents#
- class taolib.testing.email_service.services.tracking_service.EmailAnalytics#
Bases:
pydantic.BaseModel邮件分析数据。
- class taolib.testing.email_service.services.tracking_service.TrackingService(tracking_repo: taolib.testing.email_service.repository.tracking_repo.TrackingRepository, email_repo: taolib.testing.email_service.repository.email_repo.EmailRepository)#
追踪和分析服务。
- _tracking_repo#
- _email_repo#
- async record_event(email_id: str, event_type: taolib.testing.email_service.models.enums.TrackingEventType, recipient: str, provider: str | None = None, ip_address: str | None = None, user_agent: str | None = None, click_url: str | None = None, bounce_type: str | None = None, bounce_reason: str | None = None, raw_payload: dict | None = None) taolib.testing.email_service.models.tracking.TrackingEventResponse#
记录追踪事件。
同时更新关联的 EmailDocument 状态。
- async get_events_for_email(email_id: str) list[taolib.testing.email_service.models.tracking.TrackingEventResponse]#
获取邮件的所有追踪事件。
- async get_analytics(start: datetime.datetime, end: datetime.datetime) EmailAnalytics#
获取时间范围内的分析数据。
- async get_daily_stats(start: datetime.datetime, end: datetime.datetime) list[dict]#
获取按日统计数据。
- async _update_email_status(email_id: str, event_type: taolib.testing.email_service.models.enums.TrackingEventType, timestamp: datetime.datetime) None#
根据追踪事件更新邮件状态。