Podcast
the_data_packet.workflows.podcast
¶
Main podcast generation workflow.
logger = get_logger(__name__)
module-attribute
¶
PodcastResult
dataclass
¶
Result of podcast generation workflow.
success: bool = False
class-attribute
instance-attribute
¶
number_of_articles_collected: int = 0
class-attribute
instance-attribute
¶
articles_collected: List[Article] = field(default_factory=list)
class-attribute
instance-attribute
¶
script_generated: bool = False
class-attribute
instance-attribute
¶
audio_generated: bool = False
class-attribute
instance-attribute
¶
rss_generated: bool = False
class-attribute
instance-attribute
¶
script_path: Optional[Path] = None
class-attribute
instance-attribute
¶
audio_path: Optional[Path] = None
class-attribute
instance-attribute
¶
rss_path: Optional[Path] = None
class-attribute
instance-attribute
¶
s3_script_url: Optional[str] = None
class-attribute
instance-attribute
¶
s3_audio_url: Optional[str] = None
class-attribute
instance-attribute
¶
s3_rss_url: Optional[str] = None
class-attribute
instance-attribute
¶
execution_time_seconds: Optional[float] = None
class-attribute
instance-attribute
¶
error_message: Optional[str] = None
class-attribute
instance-attribute
¶
__init__(success: bool = False, number_of_articles_collected: int = 0, articles_collected: List[Article] = list(), script_generated: bool = False, audio_generated: bool = False, rss_generated: bool = False, script_path: Optional[Path] = None, audio_path: Optional[Path] = None, rss_path: Optional[Path] = None, s3_script_url: Optional[str] = None, s3_audio_url: Optional[str] = None, s3_rss_url: Optional[str] = None, execution_time_seconds: Optional[float] = None, error_message: Optional[str] = None) -> None
¶
PodcastPipeline
¶
Main podcast generation pipeline.
SOURCES = {'wired': WiredSource, 'techcrunch': TechCrunchSource}
class-attribute
instance-attribute
¶
config = config or get_config()
instance-attribute
¶
__init__(config: Optional[Config] = None)
¶
Initialize the podcast pipeline.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
config
|
Optional[Config]
|
Pipeline configuration (defaults to global config) |
None
|
run() -> PodcastResult
¶
Execute the complete podcast generation pipeline.
Returns:
| Type | Description |
|---|---|
PodcastResult
|
PodcastResult with execution details |