From c984e82fc40fd8c1262b0392e63308135bd540d0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 26 Feb 2026 13:15:42 +0000 Subject: [PATCH 1/3] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index bf7e7816..711b1d9d 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 946 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/telnyx%2Ftelnyx-619f2e4cc820442ae564e2345323abd65d5049b428c5780cf9f14c56002a2ba3.yml +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/telnyx%2Ftelnyx-f8497ae01f1cde5934641f873c79f38a7ed48c3ef46bff551230cd453153e57f.yml openapi_spec_hash: 29de78582d8561745ff8f5f6c2474f1e -config_hash: 33dae93fe380b8187d9ac4cead6e4b8f +config_hash: 86808d35d9648ffe4b87e3e5b858c17c From 6eee1798f5cdb7810d8d38dc589e75ac5c41166c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 26 Feb 2026 13:44:55 +0000 Subject: [PATCH 2/3] feat: TELAPPS-ENGDESK-48951 add channels to conf record start --- .stats.yml | 4 ++-- src/telnyx/resources/conferences/actions.py | 10 ++++++++++ .../types/conferences/action_record_start_params.py | 6 ++++++ tests/api_resources/conferences/test_actions.py | 2 ++ 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index 711b1d9d..d9cefbd2 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 946 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/telnyx%2Ftelnyx-f8497ae01f1cde5934641f873c79f38a7ed48c3ef46bff551230cd453153e57f.yml -openapi_spec_hash: 29de78582d8561745ff8f5f6c2474f1e +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/telnyx%2Ftelnyx-462166922656820a2c260496fa86ce259c51c8ad7aaa783e1975e16f05c08af7.yml +openapi_spec_hash: bc16f6bdab2570564f73ece9ec24f57c config_hash: 86808d35d9648ffe4b87e3e5b858c17c diff --git a/src/telnyx/resources/conferences/actions.py b/src/telnyx/resources/conferences/actions.py index cbad915a..c10db5ed 100644 --- a/src/telnyx/resources/conferences/actions.py +++ b/src/telnyx/resources/conferences/actions.py @@ -765,6 +765,7 @@ def record_start( id: str, *, format: Literal["wav", "mp3"], + channels: Literal["single", "dual"] | Omit = omit, command_id: str | Omit = omit, custom_file_name: str | Omit = omit, play_beep: bool | Omit = omit, @@ -790,6 +791,9 @@ def record_start( format: The audio file format used when storing the conference recording. Can be either `mp3` or `wav`. + channels: When `dual`, final audio file will be stereo recorded with the conference + creator on the first channel, and the rest on the second channel. + command_id: Use this field to avoid duplicate commands. Telnyx will ignore any command with the same `command_id` for the same `conference_id`. @@ -819,6 +823,7 @@ def record_start( body=maybe_transform( { "format": format, + "channels": channels, "command_id": command_id, "custom_file_name": custom_file_name, "play_beep": play_beep, @@ -1951,6 +1956,7 @@ async def record_start( id: str, *, format: Literal["wav", "mp3"], + channels: Literal["single", "dual"] | Omit = omit, command_id: str | Omit = omit, custom_file_name: str | Omit = omit, play_beep: bool | Omit = omit, @@ -1976,6 +1982,9 @@ async def record_start( format: The audio file format used when storing the conference recording. Can be either `mp3` or `wav`. + channels: When `dual`, final audio file will be stereo recorded with the conference + creator on the first channel, and the rest on the second channel. + command_id: Use this field to avoid duplicate commands. Telnyx will ignore any command with the same `command_id` for the same `conference_id`. @@ -2005,6 +2014,7 @@ async def record_start( body=await async_maybe_transform( { "format": format, + "channels": channels, "command_id": command_id, "custom_file_name": custom_file_name, "play_beep": play_beep, diff --git a/src/telnyx/types/conferences/action_record_start_params.py b/src/telnyx/types/conferences/action_record_start_params.py index 09c21496..d568dc16 100644 --- a/src/telnyx/types/conferences/action_record_start_params.py +++ b/src/telnyx/types/conferences/action_record_start_params.py @@ -14,6 +14,12 @@ class ActionRecordStartParams(TypedDict, total=False): Can be either `mp3` or `wav`. """ + channels: Literal["single", "dual"] + """ + When `dual`, final audio file will be stereo recorded with the conference + creator on the first channel, and the rest on the second channel. + """ + command_id: str """Use this field to avoid duplicate commands. diff --git a/tests/api_resources/conferences/test_actions.py b/tests/api_resources/conferences/test_actions.py index c628fcaa..1ea4ee48 100644 --- a/tests/api_resources/conferences/test_actions.py +++ b/tests/api_resources/conferences/test_actions.py @@ -633,6 +633,7 @@ def test_method_record_start_with_all_params(self, client: Telnyx) -> None: action = client.conferences.actions.record_start( id="id", format="wav", + channels="dual", command_id="891510ac-f3e4-11e8-af5b-de00688a4901", custom_file_name="my_recording_file_name", play_beep=True, @@ -1623,6 +1624,7 @@ async def test_method_record_start_with_all_params(self, async_client: AsyncTeln action = await async_client.conferences.actions.record_start( id="id", format="wav", + channels="dual", command_id="891510ac-f3e4-11e8-af5b-de00688a4901", custom_file_name="my_recording_file_name", play_beep=True, From 38f32a031b7e2e1dd3f296ceb4a54fa6f17fcb65 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 26 Feb 2026 13:45:19 +0000 Subject: [PATCH 3/3] release: 4.52.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ pyproject.toml | 2 +- src/telnyx/_version.py | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 1dfdd77f..04014e1d 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "4.51.0" + ".": "4.52.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 715f3c5b..55998159 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 4.52.0 (2026-02-26) + +Full Changelog: [v4.51.0...v4.52.0](https://github.com/team-telnyx/telnyx-python/compare/v4.51.0...v4.52.0) + +### Features + +* TELAPPS-ENGDESK-48951 add channels to conf record start ([6eee179](https://github.com/team-telnyx/telnyx-python/commit/6eee1798f5cdb7810d8d38dc589e75ac5c41166c)) + ## 4.51.0 (2026-02-26) Full Changelog: [v4.50.0...v4.51.0](https://github.com/team-telnyx/telnyx-python/compare/v4.50.0...v4.51.0) diff --git a/pyproject.toml b/pyproject.toml index dbe863ae..5cefb405 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "telnyx" -version = "4.51.0" +version = "4.52.0" description = "Telnyx API SDK for global Voice, SMS, MMS, WhatsApp, Fax, Wireless IoT, SIP Trunking, and Call Control." dynamic = ["readme"] license = "MIT" diff --git a/src/telnyx/_version.py b/src/telnyx/_version.py index e5141513..4011b841 100644 --- a/src/telnyx/_version.py +++ b/src/telnyx/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "telnyx" -__version__ = "4.51.0" # x-release-please-version +__version__ = "4.52.0" # x-release-please-version