feat(workflow): implement target channel personalities, raw review cards, on-demand AI rewrites and multi-target dispatch
This commit is contained in:
+5
-2
@@ -1,5 +1,5 @@
|
||||
from dataclasses import dataclass, field
|
||||
from typing import Optional, List
|
||||
from typing import Optional, List, Dict, Any
|
||||
|
||||
@dataclass
|
||||
class SourceChannel:
|
||||
@@ -17,6 +17,8 @@ class TargetChannel:
|
||||
title: Optional[str]
|
||||
username: Optional[str]
|
||||
post_interval_min: int = 30
|
||||
personality: str = ""
|
||||
custom_footer: str = ""
|
||||
last_post_time: Optional[str] = None
|
||||
is_active: bool = True
|
||||
created_at: Optional[str] = None
|
||||
@@ -38,7 +40,8 @@ class Post:
|
||||
ai_text: Optional[str] = None
|
||||
suggested_target_id: Optional[int] = None
|
||||
target_channel_id: Optional[int] = None
|
||||
status: str = "pending_ai" # pending_ai, pending_review, approved, scheduled, published, rejected
|
||||
status: str = "pending_review" # pending_review, published, rejected
|
||||
published_to: List[Dict[str, Any]] = field(default_factory=list)
|
||||
review_message_id: Optional[int] = None
|
||||
scheduled_at: Optional[str] = None
|
||||
published_at: Optional[str] = None
|
||||
|
||||
Reference in New Issue
Block a user