Skip to content

Commit 9175385

Browse files
committed
Merge branch 'srt'
2 parents 5a32032 + 07beee8 commit 9175385

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

getstream/video/__init__.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
1+
from dataclasses import dataclass
12
from typing import Optional, Dict
23

34
from getstream.models import CallResponse
45

56

7+
@dataclass
8+
class SRTCredentials:
9+
address: str
10+
11+
612
class BaseCall:
713
def __init__(
814
self, client, call_type: str, call_id: str = None, custom_data: Dict = None
@@ -42,7 +48,7 @@ def connect_openai(
4248
# Wrap the connection manager to check for errors in the first message
4349
return ConnectionManagerWrapper(connection_manager, self.call_type, self.id)
4450

45-
def create_srt_token(self, user_id: str) -> str:
51+
def create_srt_credentials(self, user_id: str) -> SRTCredentials:
4652
if self._data is None:
4753
raise TypeError(
4854
"call object is not initialized, make sure to call .get or .get_or_create first"
@@ -51,6 +57,8 @@ def create_srt_token(self, user_id: str) -> str:
5157
token = self.client.stream.create_token(user_id)
5258
passphrase = token.split(".")[2]
5359

54-
return self._data.ingress.srt.address.replace(
55-
"{passphrase}", passphrase
56-
).replace("{token}", token)
60+
return SRTCredentials(
61+
address=self._data.ingress.srt.address.replace(
62+
"{passphrase}", passphrase
63+
).replace("{token}", token)
64+
)

tests/test_video_examples.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
BackstageSettingsRequest,
1414
SessionSettingsRequest,
1515
FrameRecordingSettingsRequest,
16+
MemberRequest,
1617
)
1718
from getstream.video.call import Call
1819
from datetime import datetime, timezone, timedelta
@@ -507,7 +508,7 @@ async def test_async_create_user(async_client: AsyncStream):
507508
async def test_srt(async_client: AsyncStream):
508509
user_id = str(uuid.uuid4())
509510

510-
call = async_client.video.call("default", str(uuid.uuid4()))
511+
call = async_client.video.call("livestream", "eRfEfBI5UQxYRyIhR8BAa")
511512
response = await call.get_or_create(
512513
data=CallRequest(
513514
created_by_id=user_id,
@@ -519,5 +520,7 @@ async def test_srt(async_client: AsyncStream):
519520
)
520521
)
521522

523+
await call.update_call_members(update_members=[MemberRequest(user_id=user_id)])
524+
522525
assert response.data.call.ingress.srt != ""
523-
assert call.create_srt_token("tommaso-id") != ""
526+
assert call.create_srt_credentials(user_id).address != ""

0 commit comments

Comments
 (0)