8000 Merge branch 'main' into asabu_Python_changes · twilio/twilio-python@26ee4d3 · GitHub
[go: up one dir, main page]

Skip to content

Commit 26ee4d3

Browse files
authored
Merge branch 'main' into asabu_Python_changes
2 parents 630c28c + fb53889 commit 26ee4d3

37 files changed

+1321
-289
lines changed

CHANGES.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,57 @@ twilio-python Changelog
33

44
Here you can see the full list of changes between each twilio-python release.
55

6+
[2024-12-05] Version 9.3.8
7+
--------------------------
8+
**Api**
9+
- Add optional parameter `intelligence_service` to `transcription`
10+
- Updated `phone_number_sid` to be populated for sip trunking terminating calls.
11+
12+
**Numbers**
13+
- Add Update Hosted Number Order V2 API endpoint
14+
- Update Port in docs
15+
16+
**Twiml**
17+
- Add optional parameter `intelligence_service` to `<Transcription>`
18+
- Add support for new `<ConversationRelay>` and `<Assistant>` noun
19+
- Add `events` attribute to `<Dial>` verb
20+
21+
22+
[2024-11-15] Version 9.3.7
23+
--------------------------
24+
**Library - Chore**
25+
- [PR #819](https://github.com/twilio/twilio-python/pull/819): use older verison of aiohttp_retry. Thanks to [@sbansla](https://github.com/sbansla)!
26+
27+
**Api**
28+
- Added `ivr-virtual-agent-custom-voices` and `ivr-virtual-agent-genai` to `usage_record` API.
29+
- Add open-api file tag to realtime_transcriptions
30+
31+
**Taskrouter**
32+
- Add `api-tag` property to workers reservation
33+
- Add `api-tag` property to task reservation
34+
35+
36+
[2024-10-25] Version 9.3.6
37+
--------------------------
38+
**Library - Chore**
39+
- [PR #818](https://github.com/twilio/twilio-python/pull/818): removing unavailable references from init files. Thanks to [@tiwarishubham635](https://github.com/tiwarishubham635)!
40+
41+
42+
[2024-10-24] Version 9.3.5
43+
--------------------------
44+
**Conversations**
45+
- Expose ConversationWithParticipants resource that allows creating a conversation with participants
46+
47+
48+
[2024-10-17] Version 9.3.4
49+
--------------------------
50+
**Api**
51+
- Add response key `country` to fetch AvailablePhoneNumber resource by specific country.
52+
53+
**Messaging**
54+
- Make library and doc public for requestManagedCert Endpoint
55+
56+
657
[2024-10-03] Version 9.3.3
758
--------------------------
859
**Library - Chore**

requirements.txt

10000
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ pygments>=2.7.4 # not directly required, pinned by Snyk to avoid a vulnerability
22
requests>=2.31.0
33
PyJWT>=2.0.0, <3.0.0
44
aiohttp>=3.9.4
5-
aiohttp-retry>=2.8.3
5+
aiohttp-retry==2.8.3
66
certifi>=2023.7.22 # not directly required, pinned by Snyk to avoid a vulnerability

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
setup(
1515
name="twilio",
16-
version="9.3.3",
16+
version="9.3.8",
1717
description="Twilio API client and TwiML generator",
1818
author="Twilio",
1919
help_center="https://www.twilio.com/help/contact",
@@ -24,7 +24,7 @@
2424
"requests >= 2.0.0",
2525
"PyJWT >= 2.0.0, < 3.0.0",
2626
"aiohttp>=3.8.4",
27-
"aiohttp-retry>=2.8.3",
27+
"aiohttp-retry==2.8.3",
2828
],
2929
packages=find_packages(exclude=["tests", "tests.*"]),
3030
include_package_data=True,

twilio/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
__version_info__ = ("9", "3", "3")
1+
__version_info__ = ("9", "3", "8")
22
__version__ = ".".join(__version_info__)

twilio/rest/api/v2010/account/call/transcription.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,7 @@ def create(
261261
speech_model: Union[str, object] = values.unset,
262262
hints: Union[str, object] = values.unset,
263263
enable_automatic_punctuation: Union[bool, object] = values.unset,
264+
intelligence_service: Union[str, object] = values.unset,
264265
) -> TranscriptionInstance:
265266
"""
266267
Create the TranscriptionInstance
@@ -278,6 +279,7 @@ def create(
278279
:param speech_model: Recognition model used by the transcription engine, among those supported by the provider
279280
:param hints: A Phrase contains words and phrase \\\"hints\\\" so that the speech recognition engine is more likely to recognize them.
280281
:param enable_automatic_punctuation: The provider will add punctuation to recognition result
282+
:param intelligence_service: The SID or the unique name of the [IntelligentService](https://www.twilio.com/docs/voice/intelligence/api/service-resource) to process the transcription.
281283
282284
:returns: The created TranscriptionInstance
283285
"""
@@ -299,6 +301,7 @@ def create(
299301
"EnableAutomaticPunctuation": serialize.boolean_to_string(
300302
enable_automatic_punctuation
301303
),
304+
"IntelligenceService": intelligence_service,
302305
}
303306
)
304307
headers = values.of({"Content-Type": "application/x-www-form-urlencoded"})
@@ -329,6 +332,7 @@ async def create_async(
329332
speech_model: Union[str, object] = values.unset,
330333
hints: Union[str, object] = values.unset,
331334
enable_automatic_punctuation: Union[bool, object] = values.unset,
335+
intelligence_service: Union[str, object] = values.unset,
332336
) -> TranscriptionInstance:
333337
"""
334338
Asynchronously create the TranscriptionInstance
@@ -346,6 +350,7 @@ async def create_async(
346350
:param speech_model: Recognition model used by the transcription engine, among those supported by the provider
347351
:param hints: A Phrase contains words and phrase \\\"hints\\\" so that the speech recognition engine is more likely to recognize them.
348352
:param enable_automatic_punctuation: The provider will add punctuation to recognition result
353+
:param intelligence_service: The SID or the unique name of the [IntelligentService](https://www.twilio.com/docs/voice/intelligence/api/service-resource) to process the transcription.
349354
350355
:returns: The created TranscriptionInstance
351356
"""
@@ -367,6 +372,7 @@ async def create_async(
367372
"EnableAutomaticPunctuation": serialize.boolean_to_string(
368373
enable_automatic_punctuation
369374
),
375+
"IntelligenceService": intelligence_service,
370376
}
371377
)
372378
headers = values.of({"Content-Type": "application/x-www-form-urlencoded"})

twilio/rest/api/v2010/account/usage/record/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ class Category(object):
8080
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
8181
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
8282
IMP_V1_USAGE = "imp-v1-usage"
83+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
84+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
8385
LOOKUPS = "lookups"
8486
MARKETPLACE = "marketplace"
8587
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/all_time.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/daily.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/last_month.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/monthly.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/this_month.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/today.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/yearly.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/record/yesterday.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ class Category(object):
7272
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
7373
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
7474
IMP_V1_USAGE = "imp-v1-usage"
75+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
76+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
7577
LOOKUPS = "lookups"
7678
MARKETPLACE = "marketplace"
7779
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/api/v2010/account/usage/trigger.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,8 @@ class UsageCategory(object):
8383
GROUP_ROOMS_PARTICIPANT_MINUTES = "group-rooms-participant-minutes"
8484
GROUP_ROOMS_RECORDED_MINUTES = "group-rooms-recorded-minutes"
8585
IMP_V1_USAGE = "imp-v1-usage"
86+
IVR_VIRTUAL_AGENT_CUSTOM_VOICES = "ivr-virtual-agent-custom-voices"
87+
IVR_VIRTUAL_AGENT_GENAI = "ivr-virtual-agent-genai"
8688
LOOKUPS = "lookups"
8789
MARKETPLACE = "marketplace"
8890
MARKETPLACE_ALGORITHMIA_NAMED_ENTITY_RECOGNITION = (

twilio/rest/autopilot/__init__.py

Lines changed: 0 additions & 25 deletions
This file was deleted.

twilio/rest/content/v1/content/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ class CallToActionActionType(object):
3434
PHONE_NUMBER = "PHONE_NUMBER"
3535
COPY_CODE = "COPY_CODE"
3636
VOICE_CALL = "VOICE_CALL"
37+
VOICE_CALL_REQUEST = "VOICE_CALL_REQUEST"
3738

3839
class CardActionType(object):
3940
URL = "URL"

twilio/rest/conversations/v1/__init__.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818
from twilio.rest.conversations.v1.address_configuration import AddressConfigurationList
1919
from twilio.rest.conversations.v1.configuration import ConfigurationList
2020
from twilio.rest.conversations.v1.conversation import ConversationList
21+
from twilio.rest.conversations.v1.conversation_with_participants import (
22+
ConversationWithParticipantsList,
23+
)
2124
from twilio.rest.conversations.v1.credential import CredentialList
2225
from twilio.rest.conversations.v1.participant_conversation import (
2326
ParticipantConversationList,
@@ -39,6 +42,9 @@ def __init__(self, domain: Domain):
3942
self._address_configurations: Optional[AddressConfigurationList] = None
4043
self._configuration: Optional[ConfigurationList] = None
4144
self._conversations: Optional[ConversationList] = None
45+
self._conversation_with_participants: Optional[
46+
ConversationWithParticipantsList
47+
] = None
4248
self._credentials: Optional[CredentialList] = None
4349
self._participant_conversations: Optional[ParticipantConversationList] = None
4450
self._roles: Optional[RoleList] = None
@@ -63,6 +69,14 @@ def conversations(self) -> ConversationList:
6369
self._conversations = ConversationList(self)
6470
return self._conversations
6571

72+
@property
73+
def conversation_with_participants(self) -> ConversationWithParticipantsList:
74+
if self._conversation_with_participants is None:
75+
self._conversation_with_participants = ConversationWithParticipantsList(
76+
self
77+
)
78+
return self._conversation_with_participants
79+
6680
@property
6781
def credentials(self) -> CredentialList:
6882
if self._credentials is None:

0 commit comments

Comments
 (0)
0