Support TwilioFrameSerializer region/edge settings to that the call is terminated successfully for regions other than default us1 region
This commit is contained in:
@@ -61,6 +61,8 @@ class TwilioFrameSerializer(FrameSerializer):
|
|||||||
call_sid: Optional[str] = None,
|
call_sid: Optional[str] = None,
|
||||||
account_sid: Optional[str] = None,
|
account_sid: Optional[str] = None,
|
||||||
auth_token: Optional[str] = None,
|
auth_token: Optional[str] = None,
|
||||||
|
region: Optional[str] = None,
|
||||||
|
edge: Optional[str] = None,
|
||||||
params: Optional[InputParams] = None,
|
params: Optional[InputParams] = None,
|
||||||
):
|
):
|
||||||
"""Initialize the TwilioFrameSerializer.
|
"""Initialize the TwilioFrameSerializer.
|
||||||
@@ -76,6 +78,8 @@ class TwilioFrameSerializer(FrameSerializer):
|
|||||||
self._call_sid = call_sid
|
self._call_sid = call_sid
|
||||||
self._account_sid = account_sid
|
self._account_sid = account_sid
|
||||||
self._auth_token = auth_token
|
self._auth_token = auth_token
|
||||||
|
self._region = region
|
||||||
|
self._edge = edge
|
||||||
self._params = params or TwilioFrameSerializer.InputParams()
|
self._params = params or TwilioFrameSerializer.InputParams()
|
||||||
|
|
||||||
self._twilio_sample_rate = self._params.twilio_sample_rate
|
self._twilio_sample_rate = self._params.twilio_sample_rate
|
||||||
@@ -172,10 +176,13 @@ class TwilioFrameSerializer(FrameSerializer):
|
|||||||
f"Cannot hang up Twilio call: missing required parameters: {', '.join(missing)}"
|
f"Cannot hang up Twilio call: missing required parameters: {', '.join(missing)}"
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
region_prefix = f"{self._region}." if self._region else ""
|
||||||
|
edge_prefix = f"{self._edge}." if self._edge else ""
|
||||||
|
|
||||||
# Twilio API endpoint for updating calls
|
# Twilio API endpoint for updating calls
|
||||||
endpoint = (
|
endpoint = (
|
||||||
f"https://api.twilio.com/2010-04-01/Accounts/{account_sid}/Calls/{call_sid}.json"
|
f"https://api.{edge_prefix}{region_prefix}twilio.com/2010-04-01/Accounts/{account_sid}/Calls/{call_sid}.json"
|
||||||
)
|
)
|
||||||
|
|
||||||
# Create basic auth from account_sid and auth_token
|
# Create basic auth from account_sid and auth_token
|
||||||
|
|||||||
Reference in New Issue
Block a user