From 084d71181ae24ee5aeeb7474e2d61790a49d6660 Mon Sep 17 00:00:00 2001 From: Dumitru Gutu Date: Mon, 6 Oct 2025 15:07:40 +0100 Subject: [PATCH 1/3] Fix notification config in batch sdk --- sdk/batch/speechmatics/batch/_models.py | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/sdk/batch/speechmatics/batch/_models.py b/sdk/batch/speechmatics/batch/_models.py index 404d295..c8b87fb 100644 --- a/sdk/batch/speechmatics/batch/_models.py +++ b/sdk/batch/speechmatics/batch/_models.py @@ -49,8 +49,16 @@ class OperatingPoint(str, Enum): class NotificationContents(str, Enum): """Notification content options.""" - SUMMARY = "summary" - DETAILED = "detailed" + DATA = "data" + TEXT = "text" + JOBINFO = "jobinfo" + TRANSCRIPT = "transcript" + TRANSCRIPT_JSON_V2 = "transcript.json-v2" + TRANSCRIPT_TXT = "transcript.txt" + TRANSCRIPT_SRT = "transcript.srt" + ALIGNMENT = "alignment" + ALIGNMENT_WORD_START_AND_END = "alignment.word_start_and_end" + ALIGNMENT_ONE_PER_LINE = "alignment.one_per_line" class FormatType(str, Enum): @@ -138,8 +146,9 @@ class NotificationConfig: """Configuration for job completion notifications.""" url: str - contents: Optional[NotificationContents] = None - auth_headers: Optional[dict[str, str]] = None + contents: Optional[list[NotificationContents]] = None + auth_headers: Optional[list[str]] = None + method: Optional[str] = None def to_dict(self) -> dict[str, Any]: """Convert to dictionary, excluding None values.""" @@ -267,7 +276,7 @@ class JobConfig: fetch_data: Optional[FetchData] = None transcription_config: Optional[TranscriptionConfig] = None alignment_config: Optional[AlignmentConfig] = None - notification_config: Optional[NotificationConfig] = None + notification_config: Optional[list[NotificationConfig]] = None tracking: Optional[TrackingConfig] = None translation_config: Optional[TranslationConfig] = None language_identification_config: Optional[LanguageIdentificationConfig] = None @@ -288,7 +297,7 @@ def to_dict(self) -> dict[str, Any]: if self.alignment_config: config["alignment_config"] = self.alignment_config.to_dict() if self.notification_config: - config["notification_config"] = self.notification_config.to_dict() + config["notification_config"] = [nc.to_dict() for nc in self.notification_config] if self.tracking: config["tracking"] = self.tracking.to_dict() if self.translation_config: @@ -326,7 +335,7 @@ def from_dict(cls, data: dict[str, Any]) -> JobConfig: notification_config = None if "notification_config" in data: nc_data = data["notification_config"] - notification_config = NotificationConfig(**nc_data) + notification_config = [NotificationConfig(**nc) for nc in nc_data] tracking = None if "tracking" in data: From 1e71955e3dee95451be3fddf8719cca98be85e78 Mon Sep 17 00:00:00 2001 From: Dumitru Gutu Date: Mon, 6 Oct 2025 16:26:32 +0100 Subject: [PATCH 2/3] Fix notification config in batch sdk --- sdk/batch/speechmatics/batch/__init__.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sdk/batch/speechmatics/batch/__init__.py b/sdk/batch/speechmatics/batch/__init__.py index 83a2f6e..c7f2c2d 100644 --- a/sdk/batch/speechmatics/batch/__init__.py +++ b/sdk/batch/speechmatics/batch/__init__.py @@ -20,6 +20,7 @@ from ._models import JobStatus from ._models import JobType from ._models import NotificationConfig +from ._models import NotificationContents from ._models import OperatingPoint from ._models import SummarizationConfig from ._models import Transcript @@ -42,6 +43,7 @@ "JobDetails", "JobInfo", "NotificationConfig", + "NotificationContents", "OperatingPoint", "SummarizationConfig", "Transcript", From e7e6bc23706a3db4ef4f2555c8305a4df3b60692 Mon Sep 17 00:00:00 2001 From: Dumitru Gutu Date: Mon, 6 Oct 2025 18:46:19 +0100 Subject: [PATCH 3/3] Fix notification config in batch sdk --- sdk/batch/speechmatics/batch/__init__.py | 2 ++ sdk/batch/speechmatics/batch/_models.py | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/sdk/batch/speechmatics/batch/__init__.py b/sdk/batch/speechmatics/batch/__init__.py index c7f2c2d..f488880 100644 --- a/sdk/batch/speechmatics/batch/__init__.py +++ b/sdk/batch/speechmatics/batch/__init__.py @@ -21,6 +21,7 @@ from ._models import JobType from ._models import NotificationConfig from ._models import NotificationContents +from ._models import NotificationMethod from ._models import OperatingPoint from ._models import SummarizationConfig from ._models import Transcript @@ -43,6 +44,7 @@ "JobDetails", "JobInfo", "NotificationConfig", + "NotificationMethod", "NotificationContents", "OperatingPoint", "SummarizationConfig", diff --git a/sdk/batch/speechmatics/batch/_models.py b/sdk/batch/speechmatics/batch/_models.py index c8b87fb..a229275 100644 --- a/sdk/batch/speechmatics/batch/_models.py +++ b/sdk/batch/speechmatics/batch/_models.py @@ -61,6 +61,13 @@ class NotificationContents(str, Enum): ALIGNMENT_ONE_PER_LINE = "alignment.one_per_line" +class NotificationMethod(str, Enum): + "Notification method." + + POST = "post" + PUT = "put" + + class FormatType(str, Enum): """Output format types for transcript retrieval."""