Skip to content

Transcript objects

Wordcab API Transcript object.

BaseTranscript dataclass

Transcript object.

Source code in src/wordcab/core_objects/transcript.py
@dataclass
class BaseTranscript:
    """Transcript object."""

    transcript_id: str
    job_id_set: List[str] = field(default_factory=list)
    summary_id_set: List[str] = field(default_factory=list)
    transcript: List[TranscriptUtterance] = field(default_factory=list)
    speaker_map: Dict[str, str] = field(default_factory=dict)
    question_answers: Optional[List[Dict[str, str]]] = field(default=None)

    def __post_init__(self) -> None:
        """Post-init method."""
        if self.speaker_map:
            for key, val in self.speaker_map.items():
                if not isinstance(key, str):
                    raise TypeError(
                        "BaseTranscript.speaker_map keys must be strings, not"
                        f" {type(key)}"
                    )
                if not isinstance(val, str):
                    raise TypeError(
                        "BaseTranscript.speaker_map values must be strings, not"
                        f" {type(val)}"
                    )

    def update_speaker_map(self, speaker_map: Dict[str, str]) -> None:
        """Update the speaker map for the transcript."""
        self.speaker_map = speaker_map

__post_init__()

Post-init method.

Source code in src/wordcab/core_objects/transcript.py
def __post_init__(self) -> None:
    """Post-init method."""
    if self.speaker_map:
        for key, val in self.speaker_map.items():
            if not isinstance(key, str):
                raise TypeError(
                    "BaseTranscript.speaker_map keys must be strings, not"
                    f" {type(key)}"
                )
            if not isinstance(val, str):
                raise TypeError(
                    "BaseTranscript.speaker_map values must be strings, not"
                    f" {type(val)}"
                )

update_speaker_map(speaker_map)

Update the speaker map for the transcript.

Source code in src/wordcab/core_objects/transcript.py
def update_speaker_map(self, speaker_map: Dict[str, str]) -> None:
    """Update the speaker map for the transcript."""
    self.speaker_map = speaker_map

ListTranscripts dataclass

List transcripts object.

Source code in src/wordcab/core_objects/transcript.py
@dataclass
class ListTranscripts:
    """List transcripts object."""

    page_count: int
    next_page: str
    results: List[BaseTranscript]

TranscriptUtterance dataclass

Transcript utterance object.

Source code in src/wordcab/core_objects/transcript.py
@dataclass
class TranscriptUtterance:
    """Transcript utterance object."""

    text: str
    speaker: str
    end: Optional[str] = field(default=None)
    end_index: Optional[int] = field(default=None)
    start: Optional[str] = field(default=None)
    start_index: Optional[int] = field(default=None)
    timestamp_end: Optional[int] = field(default=None)
    timestamp_start: Optional[int] = field(default=None)

Last update: 2023-09-25
Created: 2023-09-25