Initial commit

This commit is contained in:
ai_ml_operations
2026-08-27 04:17:34 -07:00
commit 3a14bfb996
297 changed files with 32710 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
"""Channel dispatch — postcard / direct mail."""
from dataclasses import dataclass
from contacts.models import Channel
from directmail.models import Message
from directmail.providers.postcard import get_postcard_provider
@dataclass
class ProviderResult:
provider: str
provider_id: str
def dispatch_message(message: Message) -> ProviderResult:
if message.channel == Channel.POSTCARD:
provider = get_postcard_provider()
result = provider.send_postcard(message)
return ProviderResult(provider=provider.name, provider_id=result.provider_id)
raise ValueError(f"Unsupported channel: {message.channel}")