diff --git a/api/methods/resume_stream.html b/api/methods/resume_stream.html
index 3965be9..56dc161 100644
--- a/api/methods/resume_stream.html
+++ b/api/methods/resume_stream.html
@@ -3,7 +3,7 @@
-
+
resume_stream() - PyTgCalls Documentation
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
@@ -326,12 +327,12 @@
resume_stream()
+
Next
-
start()
+
played_time()
diff --git a/api/methods/run.html b/api/methods/run.html
index bc54451..1418878 100644
--- a/api/methods/run.html
+++ b/api/methods/run.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/methods/start.html b/api/methods/start.html
index 3973220..45e9cee 100644
--- a/api/methods/start.html
+++ b/api/methods/start.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/methods/start_custom_api.html b/api/methods/start_custom_api.html
index 5b02f01..5161b92 100644
--- a/api/methods/start_custom_api.html
+++ b/api/methods/start_custom_api.html
@@ -3,7 +3,7 @@
-
+
start() - PyTgCalls Documentation
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
@@ -309,14 +310,14 @@
start()
-
+
Previous
-
resume_stream()
+
played_time()
diff --git a/api/methods/unmute_stream.html b/api/methods/unmute_stream.html
index eac7538..5459d31 100644
--- a/api/methods/unmute_stream.html
+++ b/api/methods/unmute_stream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/stream_type.html b/api/stream_type.html
index 26b114e..8797424 100644
--- a/api/stream_type.html
+++ b/api/stream_type.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/AudioImagePiped.html b/api/types/AudioImagePiped.html
index de82842..c3428bb 100644
--- a/api/types/AudioImagePiped.html
+++ b/api/types/AudioImagePiped.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/AudioParameters.html b/api/types/AudioParameters.html
index 6560907..c238c5c 100644
--- a/api/types/AudioParameters.html
+++ b/api/types/AudioParameters.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/AudioPiped.html b/api/types/AudioPiped.html
index 714c0b7..6c9d123 100644
--- a/api/types/AudioPiped.html
+++ b/api/types/AudioPiped.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/AudioVideoPiped.html b/api/types/AudioVideoPiped.html
index 40b1785..7f9e157 100644
--- a/api/types/AudioVideoPiped.html
+++ b/api/types/AudioVideoPiped.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/CaptureAVDesktop.html b/api/types/CaptureAVDesktop.html
index b2016d1..4d64a18 100644
--- a/api/types/CaptureAVDesktop.html
+++ b/api/types/CaptureAVDesktop.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/CaptureAVDeviceDesktop.html b/api/types/CaptureAVDeviceDesktop.html
index 266be14..83d6530 100644
--- a/api/types/CaptureAVDeviceDesktop.html
+++ b/api/types/CaptureAVDeviceDesktop.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/CaptureAudioDevice.html b/api/types/CaptureAudioDevice.html
index 6d17c36..f2269e6 100644
--- a/api/types/CaptureAudioDevice.html
+++ b/api/types/CaptureAudioDevice.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/CaptureVideoDesktop.html b/api/types/CaptureVideoDesktop.html
index dfb7317..cbb9999 100644
--- a/api/types/CaptureVideoDesktop.html
+++ b/api/types/CaptureVideoDesktop.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/ChangedStream.html b/api/types/ChangedStream.html
index 6fc5871..ead69e9 100644
--- a/api/types/ChangedStream.html
+++ b/api/types/ChangedStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/ErrorDuringJoin.html b/api/types/ErrorDuringJoin.html
index e011609..8fa1fb4 100644
--- a/api/types/ErrorDuringJoin.html
+++ b/api/types/ErrorDuringJoin.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/GroupCall.html b/api/types/GroupCall.html
index e0d9fc2..4f16dc7 100644
--- a/api/types/GroupCall.html
+++ b/api/types/GroupCall.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/GroupCallParticipant.html b/api/types/GroupCallParticipant.html
index da67517..25bdae9 100644
--- a/api/types/GroupCallParticipant.html
+++ b/api/types/GroupCallParticipant.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/HighQualityAudio.html b/api/types/HighQualityAudio.html
index 93c8aba..360fd68 100644
--- a/api/types/HighQualityAudio.html
+++ b/api/types/HighQualityAudio.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/HighQualityVideo.html b/api/types/HighQualityVideo.html
index 23a1d27..5af32ba 100644
--- a/api/types/HighQualityVideo.html
+++ b/api/types/HighQualityVideo.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/InputAudioStream.html b/api/types/InputAudioStream.html
index 858a70b..f613201 100644
--- a/api/types/InputAudioStream.html
+++ b/api/types/InputAudioStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/InputStream.html b/api/types/InputStream.html
index 0383386..bbd709e 100644
--- a/api/types/InputStream.html
+++ b/api/types/InputStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/InputVideoStream.html b/api/types/InputVideoStream.html
index 09276bd..1750119 100644
--- a/api/types/InputVideoStream.html
+++ b/api/types/InputVideoStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/JoinedGroupCallParticipant.html b/api/types/JoinedGroupCallParticipant.html
index 28801e5..c2b19ff 100644
--- a/api/types/JoinedGroupCallParticipant.html
+++ b/api/types/JoinedGroupCallParticipant.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/LeftGroupCallParticipant.html b/api/types/LeftGroupCallParticipant.html
index 0768fb4..5b1ad91 100644
--- a/api/types/LeftGroupCallParticipant.html
+++ b/api/types/LeftGroupCallParticipant.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/LeftVoiceChat.html b/api/types/LeftVoiceChat.html
index e70a69a..5d6dd3b 100644
--- a/api/types/LeftVoiceChat.html
+++ b/api/types/LeftVoiceChat.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/LowQualityAudio.html b/api/types/LowQualityAudio.html
index 1d7bf5c..7bb2a32 100644
--- a/api/types/LowQualityAudio.html
+++ b/api/types/LowQualityAudio.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/LowQualityVideo.html b/api/types/LowQualityVideo.html
index 58e24d3..c60b3bd 100644
--- a/api/types/LowQualityVideo.html
+++ b/api/types/LowQualityVideo.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/MediumQualityAudio.html b/api/types/MediumQualityAudio.html
index 9322cfd..ddba02f 100644
--- a/api/types/MediumQualityAudio.html
+++ b/api/types/MediumQualityAudio.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/MediumQualityVideo.html b/api/types/MediumQualityVideo.html
index 694500d..0377233 100644
--- a/api/types/MediumQualityVideo.html
+++ b/api/types/MediumQualityVideo.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/MutedStream.html b/api/types/MutedStream.html
index f94844d..d2c168d 100644
--- a/api/types/MutedStream.html
+++ b/api/types/MutedStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/PausedStream.html b/api/types/PausedStream.html
index 6975ab2..13b23aa 100644
--- a/api/types/PausedStream.html
+++ b/api/types/PausedStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/ResumedStream.html b/api/types/ResumedStream.html
index e216274..6843771 100644
--- a/api/types/ResumedStream.html
+++ b/api/types/ResumedStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/StreamAudioEnded.html b/api/types/StreamAudioEnded.html
index 6bed891..a3eb81f 100644
--- a/api/types/StreamAudioEnded.html
+++ b/api/types/StreamAudioEnded.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/StreamDeleted.html b/api/types/StreamDeleted.html
index 5bf328c..0b09e1f 100644
--- a/api/types/StreamDeleted.html
+++ b/api/types/StreamDeleted.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/StreamVideoEnded.html b/api/types/StreamVideoEnded.html
index 125733f..02b1591 100644
--- a/api/types/StreamVideoEnded.html
+++ b/api/types/StreamVideoEnded.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/UnMutedStream.html b/api/types/UnMutedStream.html
index 9720ff3..6e33e16 100644
--- a/api/types/UnMutedStream.html
+++ b/api/types/UnMutedStream.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/Update.html b/api/types/Update.html
index 696ad0d..fbb768f 100644
--- a/api/types/Update.html
+++ b/api/types/Update.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/UpdatedGroupCallParticipant.html b/api/types/UpdatedGroupCallParticipant.html
index 13b356a..c901376 100644
--- a/api/types/UpdatedGroupCallParticipant.html
+++ b/api/types/UpdatedGroupCallParticipant.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/VideoParameters.html b/api/types/VideoParameters.html
index 4d466a2..97c06cf 100644
--- a/api/types/VideoParameters.html
+++ b/api/types/VideoParameters.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/VideoPiped.html b/api/types/VideoPiped.html
index ebe3256..595f075 100644
--- a/api/types/VideoPiped.html
+++ b/api/types/VideoPiped.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/api/types/index.html b/api/types/index.html
index 460474e..ffd574c 100644
--- a/api/types/index.html
+++ b/api/types/index.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
diff --git a/genindex.html b/genindex.html
index 6f7c052..add64c1 100644
--- a/genindex.html
+++ b/genindex.html
@@ -186,6 +186,7 @@
unmute_stream
pause_stream
resume_stream
+
played_time
start
@@ -682,6 +683,8 @@
R
resume_stream() (pytgcalls.PyTgCalls method)
ResumedStream (class in pytgcalls.types)
+
+
RTMPStreamNeeded
run() (pytgcalls.PyTgCalls method)
@@ -786,6 +789,8 @@
U
unmute_stream() (pytgcalls.PyTgCalls method)
UnMutedStream (class in pytgcalls.types)
+
+
UnMuteNeeded
diff --git a/intro/install.html b/intro/install.html
index 21f6761..9c19a94 100644
--- a/intro/install.html
+++ b/intro/install.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/intro/quickstart.html b/intro/quickstart.html
index d71a641..846fb14 100644
--- a/intro/quickstart.html
+++ b/intro/quickstart.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/objects.inv b/objects.inv
index ee41307..7a1ffd8 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/releases/index.html b/releases/index.html
index 9290c7d..005b620 100644
--- a/releases/index.html
+++ b/releases/index.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.0.9.html b/releases/v.0.0.9.html
index bfed9e3..1c8ccae 100644
--- a/releases/v.0.0.9.html
+++ b/releases/v.0.0.9.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.1.0.html b/releases/v.0.1.0.html
index bea75b8..fd6828f 100644
--- a/releases/v.0.1.0.html
+++ b/releases/v.0.1.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.2.0.html b/releases/v.0.2.0.html
index 608c2b5..913858e 100644
--- a/releases/v.0.2.0.html
+++ b/releases/v.0.2.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.3.0.html b/releases/v.0.3.0.html
index 5893e10..524ef40 100644
--- a/releases/v.0.3.0.html
+++ b/releases/v.0.3.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.4.0.html b/releases/v.0.4.0.html
index e2e037c..f883b8a 100644
--- a/releases/v.0.4.0.html
+++ b/releases/v.0.4.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.6.0.html b/releases/v.0.6.0.html
index 909dcc9..9c22019 100644
--- a/releases/v.0.6.0.html
+++ b/releases/v.0.6.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.7.0.html b/releases/v.0.7.0.html
index 34a4384..2732c33 100644
--- a/releases/v.0.7.0.html
+++ b/releases/v.0.7.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.8.0.html b/releases/v.0.8.0.html
index 9495b54..720e486 100644
--- a/releases/v.0.8.0.html
+++ b/releases/v.0.8.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/releases/v.0.9.0.html b/releases/v.0.9.0.html
index c207365..59687d4 100644
--- a/releases/v.0.9.0.html
+++ b/releases/v.0.9.0.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/search.html b/search.html
index 0b5402c..ee8ad3a 100644
--- a/search.html
+++ b/search.html
@@ -185,6 +185,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/searchindex.js b/searchindex.js
index 361f81b..e96bef4 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"docnames": ["api/client", "api/custom_api", "api/decorators", "api/exceptions", "api/media_devices", "api/methods/change_stream", "api/methods/change_volume_call", "api/methods/get_active_call", "api/methods/get_call", "api/methods/get_max_voice_chat", "api/methods/get_participants", "api/methods/idle", "api/methods/index", "api/methods/join_group_call", "api/methods/leave_group_call", "api/methods/mute_stream", "api/methods/pause_stream", "api/methods/played_time", "api/methods/resume_stream", "api/methods/run", "api/methods/start", "api/methods/start_custom_api", "api/methods/unmute_stream", "api/stream_type", "api/types/AudioImagePiped", "api/types/AudioParameters", "api/types/AudioPiped", "api/types/AudioVideoPiped", "api/types/CaptureAVDesktop", "api/types/CaptureAVDeviceDesktop", "api/types/CaptureAudioDevice", "api/types/CaptureVideoDesktop", "api/types/ChangedStream", "api/types/ErrorDuringJoin", "api/types/GroupCall", "api/types/GroupCallParticipant", "api/types/HighQualityAudio", "api/types/HighQualityVideo", "api/types/InputAudioStream", "api/types/InputStream", "api/types/InputVideoStream", "api/types/JoinedGroupCallParticipant", "api/types/LeftGroupCallParticipant", "api/types/LeftVoiceChat", "api/types/LowQualityAudio", "api/types/LowQualityVideo", "api/types/MediumQualityAudio", "api/types/MediumQualityVideo", "api/types/MutedStream", "api/types/PausedStream", "api/types/ResumedStream", "api/types/StreamAudioEnded", "api/types/StreamDeleted", "api/types/StreamVideoEnded", "api/types/UnMutedStream", "api/types/Update", "api/types/UpdatedGroupCallParticipant", "api/types/VideoParameters", "api/types/VideoPiped", "api/types/index", "index", "intro/install", "intro/quickstart", "releases/index", "releases/v.0.0.9", "releases/v.0.1.0", "releases/v.0.2.0", "releases/v.0.3.0", "releases/v.0.4.0", "releases/v.0.6.0", "releases/v.0.7.0", "releases/v.0.8.0", "releases/v.0.9.0", "start/examples", "start/invoking", "start/updates"], "filenames": ["api/client.rst", "api/custom_api.rst", "api/decorators.rst", "api/exceptions.rst", "api/media_devices.rst", "api/methods/change_stream.rst", "api/methods/change_volume_call.rst", "api/methods/get_active_call.rst", "api/methods/get_call.rst", "api/methods/get_max_voice_chat.rst", "api/methods/get_participants.rst", "api/methods/idle.rst", "api/methods/index.rst", "api/methods/join_group_call.rst", "api/methods/leave_group_call.rst", "api/methods/mute_stream.rst", "api/methods/pause_stream.rst", "api/methods/played_time.rst", "api/methods/resume_stream.rst", "api/methods/run.rst", "api/methods/start.rst", "api/methods/start_custom_api.rst", "api/methods/unmute_stream.rst", "api/stream_type.rst", "api/types/AudioImagePiped.rst", "api/types/AudioParameters.rst", "api/types/AudioPiped.rst", "api/types/AudioVideoPiped.rst", "api/types/CaptureAVDesktop.rst", "api/types/CaptureAVDeviceDesktop.rst", "api/types/CaptureAudioDevice.rst", "api/types/CaptureVideoDesktop.rst", "api/types/ChangedStream.rst", "api/types/ErrorDuringJoin.rst", "api/types/GroupCall.rst", "api/types/GroupCallParticipant.rst", "api/types/HighQualityAudio.rst", "api/types/HighQualityVideo.rst", "api/types/InputAudioStream.rst", "api/types/InputStream.rst", "api/types/InputVideoStream.rst", "api/types/JoinedGroupCallParticipant.rst", "api/types/LeftGroupCallParticipant.rst", "api/types/LeftVoiceChat.rst", "api/types/LowQualityAudio.rst", "api/types/LowQualityVideo.rst", "api/types/MediumQualityAudio.rst", "api/types/MediumQualityVideo.rst", "api/types/MutedStream.rst", "api/types/PausedStream.rst", "api/types/ResumedStream.rst", "api/types/StreamAudioEnded.rst", "api/types/StreamDeleted.rst", "api/types/StreamVideoEnded.rst", "api/types/UnMutedStream.rst", "api/types/Update.rst", "api/types/UpdatedGroupCallParticipant.rst", "api/types/VideoParameters.rst", "api/types/VideoPiped.rst", "api/types/index.rst", "index.rst", "intro/install.rst", "intro/quickstart.rst", "releases/index.rst", "releases/v.0.0.9.rst", "releases/v.0.1.0.rst", "releases/v.0.2.0.rst", "releases/v.0.3.0.rst", "releases/v.0.4.0.rst", "releases/v.0.6.0.rst", "releases/v.0.7.0.rst", "releases/v.0.8.0.rst", "releases/v.0.9.0.rst", "start/examples.rst", "start/invoking.rst", "start/updates.rst"], "titles": ["PyTgCalls Client", "Custom Api", "Decorators", "Exceptions", "Media Devices", "change_stream()", "change_volume_call()", "get_active_call()", "get_call()", "get_max_voice_chat()", "get_participants()", "idle()", "Available Methods", "join_group_call()", "leave_group_call()", "mute_stream()", "pause_stream()", "played_time()", "resume_stream()", "run()", "start()", "start()", "unmute_stream()", "Stream Type", "AudioImagePiped", "AudioParameters", "AudioPiped", "AudioVideoPiped", "CaptureAVDesktop", "CaptureAVDeviceDesktop", "CaptureAudioDevice", "CaptureVideoDesktop", "ChangedStream", "ErrorDuringJoin", "GroupCall", "GroupCallParticipant", "HighQualityAudio", "HighQualityVideo", "InputAudioStream", "InputStream", "InputVideoStream", "JoinedGroupCallParticipant", "LeftGroupCallParticipant", "LeftVoiceChat", "LowQualityAudio", "LowQualityVideo", "MediumQualityAudio", "MediumQualityVideo", "MutedStream", "PausedStream", "ResumedStream", "StreamAudioEnded", "StreamDeleted", "StreamVideoEnded", "UnMutedStream", "Update", "UpdatedGroupCallParticipant", "VideoParameters", "VideoPiped", "Available Types", "Welcome to PyTgCalls!", "Install Guide", "Quick Start", "Release Notes", "PyTgCalls v0.0.9", "PyTgCalls v0.1.0", "PyTgCalls v0.2.0", "PyTgCalls v0.3.0", "PyTgCalls v0.4.0", "PyTgCalls v0.6.0", "PyTgCalls v0.7.0", "PyTgCalls v0.8.0", "PyTgCalls v0.9.0", "Examples", "Calling Methods", "Handling Updates"], "terms": {"you": [0, 1, 2, 3, 5, 6, 7, 8, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 59, 60, 61, 62, 63, 73, 74, 75], "have": [0, 1, 3, 5, 11, 13, 35, 56, 62, 73, 74, 75], "enter": [0, 1], "api": [0, 2, 3, 5, 6, 7, 8, 10, 13, 14, 15, 16, 18, 19, 20, 21, 22, 34, 35, 73, 74, 75], "refer": [0, 1], "section": [0, 1, 75], "where": [0, 1, 73], "can": [0, 1, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 22, 24, 26, 27, 28, 29, 30, 31, 38, 40, 58, 61, 62, 68, 73, 74, 75], "find": [0, 1, 63], "inform": [0, 1], "about": [0, 1, 12, 34, 35, 41, 42, 56, 59, 73, 75], "The": [0, 1, 3, 11, 13, 23, 24, 26, 27, 28, 29, 30, 31, 38, 39, 40, 43, 58, 61, 62, 73, 75], "main": [0, 1, 11, 12, 19, 23, 62, 74], "class": [0, 1, 2, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 74], "all": [0, 1, 2, 3, 12, 59, 62, 63, 71], "avail": [0, 1], "method": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 59, 60, 62, 71, 75], "type": [0, 1, 2, 13, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 62, 74, 75], "attribut": [0, 1, 33], "decor": [0, 1, 3, 19, 71], "descript": [0, 1, 73], "found": [0, 1, 3, 12], "start": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 60, 61, 68, 73, 74], "from": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 28, 29, 30, 31, 59, 60, 61, 62, 68, 73, 74, 75], "thi": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 35, 59, 60, 61, 73, 74, 75], "page": [0, 1, 2, 12, 59, 62, 73, 75], "i": [0, 1, 2, 3, 6, 7, 8, 10, 11, 12, 16, 18, 19, 21, 35, 59, 60, 61, 73, 74, 75], "which": [0, 1, 11, 12, 75], "expos": [0, 1], "high": [0, 1, 36, 37], "level": [0, 1, 35, 74], "an": [0, 1, 3, 5, 7, 8, 9, 13, 19, 20, 21, 74], "easi": [0, 1], "access": [0, 1], "import": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 59, 60, 61, 62, 74, 75], "app": [0, 1, 2, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 22, 60, 62, 74, 75], "mean": [0, 1, 23, 59, 61, 73], "interact": 0, "group": [0, 2, 3, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 22, 33, 34, 35, 41, 42, 43, 56, 60, 68, 71, 73, 75], "call": [0, 2, 3, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 22, 33, 34, 35, 41, 42, 43, 56, 60, 62, 71, 73, 75], "active_cal": 0, "get": [0, 7, 8, 9, 10, 17, 23, 60, 61, 68, 71, 75], "list": [0, 2, 10, 12, 59, 71, 73, 75], "activ": [0, 3, 7], "plai": [0, 2, 5, 6, 7, 13, 16, 17, 52, 62, 71, 73, 74], "paus": [0, 7, 16, 18, 49, 70], "groupcal": [0, 7, 8], "exist": [0, 5, 7, 8, 13, 34, 59], "cache_p": 0, "current": [0, 35], "telegram": [0, 3, 6, 13, 25, 35, 60, 62, 73, 74, 75], "user": [0, 71], "inputp": [0, 13], "p": [0, 13], "t": [0, 3, 5, 13, 59, 61, 64, 74], "ping": 0, "nodej": [0, 20, 60, 71, 75], "core": [0, 3, 9, 20, 74], "int": [0, 1, 2, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 22, 23, 25, 32, 33, 34, 35, 36, 37, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57], "is_connect": 0, "check": [0, 7, 8, 34, 59, 63], "aliv": [0, 11], "connect": [0, 20, 24, 26, 27, 28, 58], "bool": [0, 16, 18, 24, 26, 27, 34, 35, 39, 58], "paramet": [0, 1, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 38, 39, 40, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 73], "telegramcli": [0, 74], "pass": 0, "mtproto": [0, 2, 5, 6, 10, 13, 14, 15, 16, 17, 18, 19, 22, 60, 62, 74], "cache_dur": 0, "cach": [0, 68], "durat": 0, "full": [0, 70], "chat": [0, 2, 5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56, 60, 67, 68, 73], "queri": 0, "overload_quiet_mod": 0, "disabl": 0, "overload": 0, "cpu": 0, "messag": [0, 2], "set": [0, 3, 5, 6, 11, 13, 23, 59, 73, 74, 75], "true": [0, 16, 18, 59], "rais": [0, 2, 3, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 32, 35, 48, 49, 50, 51, 52, 53, 54], "invalidmtprotocli": [0, 3], "invalid": [0, 3], "front": 1, "end": [1, 2, 11, 51, 53, 75], "customapi": [1, 21, 69], "pytgcal": [1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 63, 73, 74, 75], "client": [1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 59, 60, 62, 74, 75], "host": 1, "local": [1, 23], "http": [1, 2, 21, 23, 24, 26, 27, 28, 58, 60, 61, 62, 74, 75], "server": [1, 3, 13, 68, 70, 73], "port": 1, "option": [1, 9, 13, 24, 26, 27, 28, 39, 58, 59, 71], "bind": [1, 70, 73], "while": [2, 11], "still": [2, 11, 75], "being": 2, "bound": [2, 12], "ar": [2, 11, 12, 59, 61, 73, 74, 75], "special": [2, 12], "kind": [2, 75], "thu": 2, "deserv": 2, "dedic": 2, "abl": 2, "regist": 2, "callback": [2, 75], "function": [2, 11, 12, 74, 75], "handl": [2, 60], "updat": [2, 59, 60, 61, 70], "much": [2, 62, 75], "easier": 2, "cleaner": 2, "wai": [2, 11, 61, 75], "need": [2, 21, 59, 63, 64, 74, 75], "do": [2, 3, 5, 6, 13, 14, 15, 16, 17, 18, 22, 59], "ad": [2, 61, 63, 64, 65, 66, 67, 68, 72], "top": [2, 74], "your": [2, 11, 59, 60, 61, 62, 63, 68, 73, 74, 75], "here": [2, 12, 59, 60, 74], "on_raw_upd": 2, "async": [2, 63, 70, 74, 75], "def": [2, 74, 75], "my_handl": [2, 75], "print": [2, 59], "run": [2, 3, 9, 11, 62, 73, 74, 75], "on_closed_voice_chat": 2, "close": [2, 67, 68, 74], "voic": [2, 60, 68], "event": [2, 64, 75], "when": [2, 3, 13, 32, 48, 49, 50, 51, 52, 53, 54, 59, 61, 63, 68, 71, 75], "video": [2, 3, 5, 13, 23, 24, 26, 27, 28, 29, 30, 31, 35, 37, 39, 40, 45, 47, 53, 57, 58, 71, 73, 75], "exampl": [2, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22, 59, 60, 74, 75], "handler": [2, 11], "chat_id": [2, 5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56, 62], "on_group_call_invit": 2, "invit": [2, 13, 68], "userbot": [2, 3, 6, 15, 22, 43], "service_msg": 2, "on_kick": 2, "kick": [2, 64, 68], "channel": [2, 13, 60], "on_left": 2, "left": [2, 42, 43], "leav": [2, 5, 14, 15, 16, 18, 22], "on_participants_chang": 2, "particip": [2, 10, 35, 41, 42, 56, 59, 71, 75], "chang": [2, 5, 6, 32, 56, 61, 63, 71, 73, 75], "raw": [2, 38, 40, 55, 70], "receiv": [2, 11], "on_stream_end": [2, 75], "stream": [2, 5, 6, 13, 16, 17, 18, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 38, 39, 40, 48, 49, 50, 51, 52, 53, 54, 57, 58, 67, 68, 73, 74, 75], "on_update_custom_api": [2, 3], "backend": 2, "toomanycustomapidecor": [2, 3], "In": [2, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 61, 62, 74], "case": [2, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 61, 74], "try": [2, 3, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 61], "add": [2, 63, 74], "singl": [2, 9, 19], "instanc": [2, 12, 63, 69, 73, 74], "webserv": [2, 21], "request": 2, "dict": [2, 24, 26, 27, 28, 58], "code": [2, 63, 64, 74], "switch": 2, "etc": [2, 27, 75], "return": [2, 7, 8, 9, 10, 16, 18, 59], "result": [2, 70], "ok": 2, "idl": [2, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 60, 62, 74], "live": [3, 23, 67, 73], "insid": [3, 59, 74], "sub": 3, "packag": [3, 12, 59, 61], "groupcallnotfound": [3, 7, 8], "e": [3, 11], "nodejsnotinstal": 3, "node": 3, "j": [3, 64, 70], "isn": 3, "instal": [3, 5, 13, 62, 63, 66, 74], "nodejsnotrun": [3, 5, 6, 13, 14, 15, 16, 17, 18, 22], "befor": [3, 5, 6, 13, 14, 15, 16, 17, 18, 22], "join_group_cal": [3, 60, 62, 74], "leave_group_cal": 3, "change_volume_cal": 3, "change_stream": [3, 75], "pause_stream": 3, "resume_stream": 3, "toooldnodejsvers": 3, "version": [3, 61, 63], "too": [3, 61], "old": 3, "toooldpyrogramvers": 3, "pyrogram": [3, 62, 71, 74], "toooldtelethonvers": 3, "telethon": [3, 62, 71, 73, 74], "nomtprotoclientset": [3, 5, 6, 13, 14, 15, 16, 17, 18, 22], "telegramservererror": [3, 13], "some": [3, 6, 62], "intern": [3, 21, 70, 71], "problem": 3, "pytgcallsalreadyrun": [3, 19, 20], "alreadi": [3, 13, 19, 20, 75], "get_active_cal": 3, "get_cal": 3, "noactivegroupcal": [3, 5, 6, 13, 14, 17], "No": 3, "notingroupcallerror": [3, 5, 14, 15, 16, 18, 22], "alreadyjoinederror": [3, 13], "join": [3, 5, 13, 14, 15, 16, 18, 22, 33, 41, 62, 73, 75], "invalidstreammod": [3, 5, 13], "mode": [3, 5, 13, 23, 24, 26, 27, 39, 58, 65, 74], "novideosourcefound": [3, 5, 13], "doe": 3, "invalidvideoproport": [3, 5, 13], "ffmpeg": [3, 5, 13, 24, 26, 27, 31, 58, 71, 72, 73], "sent": 3, "measur": 3, "respons": [3, 71], "noaudiosourcefound": [3, 5, 13], "audio": [3, 5, 13, 24, 25, 26, 27, 28, 29, 30, 31, 36, 38, 39, 44, 46, 51, 58, 62, 67, 71, 73], "mani": 3, "custom": [3, 21, 70, 73], "file": [5, 13, 16, 18, 24, 26, 27, 28, 38, 39, 40, 52, 58, 62], "allow": [5, 13, 14, 15, 16, 17, 18, 22, 25, 60], "str": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22, 24, 26, 27, 28, 31, 34, 38, 40, 58], "uniqu": [5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 35, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56], "identifi": [5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 35, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56], "target": [5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 73], "direct": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22], "id": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22], "usernam": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22], "inputstream": [5, 13], "input": [5, 13, 24, 26, 27, 28, 29, 30, 31, 39, 58], "descriptor": [5, 13, 24, 26, 27, 28, 29, 30, 31, 38, 39, 40, 58], "us": [5, 6, 10, 13, 24, 26, 27, 28, 29, 30, 31, 38, 40, 58, 59, 60, 61, 62, 70, 73, 74], "also": [5, 13, 24, 26, 27, 28, 29, 30, 31, 38, 40, 58, 59, 63], "audiopip": [5, 13, 60, 62, 74], "audioimagepip": [5, 13, 59], "audiovideopip": [5, 13, 75], "videopip": [5, 13], "without": [5, 6, 13, 14, 15, 16, 17, 18, 22, 73], "ani": [5, 6, 13, 14, 15, 16, 17, 18, 22, 34, 63, 74], "edit": [5, 6, 13, 14, 17], "filenotfounderror": [5, 13], "non": [5, 7, 8, 13, 14, 15, 16, 18, 22], "void": [5, 13], "ffmpegnotinstal": [5, 13], "pipe": [5, 13, 24, 26, 27, 58, 71], "don": [5, 13, 59], "sound": [5, 13], "correct": [5, 13], "proport": [5, 13], "1001185324811": [5, 6, 7, 8, 10, 13, 14, 15, 16, 18, 22, 60, 62, 74, 75], "test": [5, 13], "mp4": [5, 13, 27, 60, 62, 74, 75], "featur": [6, 61, 63], "ha": [6, 75], "bug": [6, 63, 65], "sometim": 6, "volum": [6, 35], "appli": 6, "side": [6, 13], "output": 6, "175": 6, "error": [7, 8, 13, 33, 61], "On": [7, 8, 10, 16, 18], "success": [7, 8, 10, 16, 18], "client1": [7, 8, 11], "static": 9, "max": [9, 25, 68], "number": 9, "estim": 9, "consumpt": 9, "x": 9, "groupcallparticip": [10, 41, 42, 56], "block": [11, 19, 73, 74], "script": [11, 19, 62, 73, 74], "execut": [11, 74, 75], "until": 11, "signal": 11, "indefinit": 11, "order": [11, 63], "prevent": 11, "exit": 11, "": [11, 60, 62, 63, 74, 75], "background": 11, "work": [11, 73, 75], "keep": 11, "pool": 11, "worker": 11, "thread": 11, "concurr": [11, 75], "outsid": 11, "ensur": 11, "kept": [11, 61], "let": [11, 62, 74, 75], "decid": 11, "quit": 11, "onc": [11, 75], "g": 11, "ctrl": 11, "c": 11, "termin": [11, 62], "continu": [11, 62], "app1": 11, "app2": 11, "client2": 11, "app3": 11, "client3": 11, "up": [11, 61, 73, 75], "except": [12, 63, 70], "directli": [12, 73], "invite_hash": 13, "form": 13, "me": 13, "link": [13, 61, 73], "join_a": 13, "profil": 13, "stream_typ": 13, "streamtyp": [13, 23], "occur": 13, "rtmpstreamneed": 13, "rtmp": 13, "unmuteneed": 13, "mute": [13, 15, 35, 48, 71], "via": [15, 22], "wa": [16, 18, 52, 62], "time": [17, 67, 68, 71, 74, 75], "resum": [18, 50, 70], "final": 19, "stop": 19, "conveni": 19, "sequenc": 19, "It": [19, 74], "make": [19, 60, 63, 74], "less": 19, "verbos": 19, "suitabl": 19, "want": [19, 59, 62, 74], "more": [19, 62, 63, 75], "than": 19, "one": [19, 74, 75], "sinc": 19, "after": 19, "own": [19, 62, 73], "help": 21, "interfac": 21, "unmut": [22, 54, 71], "stream_mod": 23, "local_stream": 23, "live_stream": 23, "onlin": 23, "self": 23, "download": [23, 61], "pulse_stream": 23, "valu": [23, 59, 62], "imag": [24, 71, 73], "ffmpeg_paramet": [24, 26, 27, 31, 58], "addit": [24, 26, 27, 31, 58, 72, 73], "lip_sync": [24, 26, 27, 39, 58], "lip": [24, 26, 27, 39, 58], "sync": [24, 26, 27, 39, 58], "raw_head": [24, 26, 27, 58], "header": [24, 26, 27, 28, 58, 73], "stream_audio": [24, 26, 27, 28, 29, 30, 31, 39, 58], "inputaudiostream": [24, 26, 27, 28, 29, 30, 31, 39, 58], "stream_video": [24, 26, 27, 28, 29, 30, 31, 39, 58], "inputvideostream": [24, 26, 27, 28, 29, 30, 31, 39, 58], "audio_path": [24, 28], "path": [24, 26, 27, 28, 38, 40, 58], "image_path": 24, "audio_paramet": [24, 26, 27, 28, 29, 30], "audioparamet": [24, 26, 27, 28, 29, 30, 38], "highqualityaudio": [24, 26, 27, 28, 29, 30, 38], "mediumqualityaudio": [24, 26, 27, 28, 29, 30, 38], "lowqualityaudio": [24, 26, 27, 28, 29, 30, 38], "video_paramet": [24, 27, 28, 29, 31, 58], "videoparamet": [24, 27, 28, 29, 31, 40, 58], "highqualityvideo": [24, 27, 28, 29, 31, 40, 58], "mediumqualityvideo": [24, 27, 28, 29, 31, 40, 58], "lowqualityvideo": [24, 27, 28, 29, 31, 40, 58], "additional_ffmpeg_paramet": [24, 26, 27, 58, 73], "bitrat": [25, 36, 44, 46], "0": [25, 61, 63], "48000": 25, "onli": [26, 31, 38, 40, 58, 59, 61, 73], "like": [27, 61, 73, 74], "captur": [28, 29, 30, 31, 73], "screen": [28, 29, 30, 31, 35, 72, 73], "screen_info": [28, 29, 31], "obj": [28, 29, 30, 31], "media_devic": [28, 29, 30, 31], "screenmanag": [28, 29, 31], "param": [28, 29, 30, 31], "devic": [29, 30], "audio_info": [29, 30], "deviceinfo": [29, 30], "successfulli": [32, 48, 49, 50, 54, 74], "dure": [33, 52], "info": [34, 35, 41, 42, 56], "is_plai": 34, "sort": 34, "statu": [34, 56], "binary_statu": 34, "user_id": 35, "whether": [35, 59], "muted_by_admin": 35, "admin": 35, "broadcast": 35, "screen_shar": [35, 73], "share": [35, 63, 72, 73, 75], "video_camera": 35, "camera": 35, "raised_hand": 35, "hand": 35, "qualiti": [36, 37, 44, 45, 46, 47], "48k": 36, "1280x720": 37, "width": [37, 45, 47, 57], "height": [37, 45, 47, 57], "frame_r": [37, 45, 47, 57], "framer": [37, 45, 47, 57], "pcm16l": [38, 73], "format": [38, 40], "raw_video": [40, 73], "A": [41, 42, 55, 56, 60, 70, 73], "low": [44, 45], "24k": 44, "640x360": 45, "medium": [46, 47], "36k": 46, "854x480": 47, "delet": 52, "him": 56, "through": 59, "unless": 59, "requir": [59, 61, 74], "argument": [59, 75], "most": [59, 75], "manual": 59, "instanti": 59, "becaus": [59, 74], "thei": [59, 74, 75], "other": [59, 63, 73, 75], "them": [59, 75], "hint": [59, 75], "variabl": 59, "errorduringjoin": 59, "field": 59, "alwai": [59, 61], "object": 59, "could": 59, "empti": 59, "contain": [59, 73], "none": 59, "aren": 59, "shown": 59, "hasattr": 59, "To": [59, 61, 74, 75], "tell": [59, 74], "simpl": [59, 60, 73, 74], "boolean": 59, "eleg": [60, 75], "quickli": 60, "easili": 60, "document": 60, "pypi": [60, 61, 63, 66], "doc": [60, 62, 74, 75], "evostream": [60, 62, 74, 75], "com": [60, 61, 62, 74, 75], "sample_cont": [60, 62, 74, 75], "asset": [60, 62, 74, 75], "sintel1m720p": [60, 62, 74, 75], "project": 60, "webrtc": 60, "possibl": [60, 62, 68], "thank": [60, 70], "power": 60, "librari": [60, 61, 74], "evgeni": 60, "nadymov": 60, "quick": 60, "overview": [60, 62], "how": [60, 73, 75], "Being": 61, "modern": 61, "python": [61, 62], "3": [61, 63], "6": [61, 63], "system": 61, "we": [61, 62, 74], "recommend": 61, "latest": 61, "both": 61, "pip": 61, "www": 61, "org": [61, 62, 74], "manag": 61, "follow": [61, 62], "instruct": [61, 62], "pypa": 61, "io": 61, "en": 61, "support": [61, 63, 67, 68, 69, 70, 71, 72], "easiest": 61, "upgrad": [61, 63], "its": [61, 75], "stabl": 61, "pip3": [61, 62], "u": [61, 62], "py": [61, 62], "tgcall": [61, 62], "evolv": 61, "although": 61, "new": [61, 62, 63, 75], "releas": [61, 64, 65, 66, 67, 68, 69, 70, 71, 72], "publish": 61, "enough": [61, 73], "doesn": 61, "right": [61, 73], "now": [61, 74], "d": 61, "out": 61, "github": 61, "repo": 61, "develop": 61, "straight": 61, "master": 61, "branch": 61, "command": [61, 72], "note": 61, "zip": 61, "git": 61, "correctli": [61, 73], "open": [61, 62], "shell": 61, "If": [61, 74], "show": [61, 73], "good": 61, "go": [61, 62, 74], "__version__": 61, "9": [61, 63], "2": [61, 63], "next": 62, "few": 62, "step": 62, "serv": 62, "see": 62, "action": 62, "choos": [62, 75], "between": 62, "kei": 62, "my": [62, 74], "best": 62, "text": 62, "editor": 62, "replac": 62, "save": 62, "python3": 62, "login": 62, "watch": 62, "our": [62, 74], "commun": 62, "That": 62, "just": 62, "bare": 62, "scratch": 62, "surfac": 62, "introduct": 62, "ll": 62, "take": [62, 63], "depth": 62, "look": [62, 73, 75], "what": [62, 63, 75], "done": 62, "abov": 62, "feel": 62, "eager": 62, "shortcut": 62, "come": 62, "back": [62, 75], "later": 62, "learn": [62, 75], "detail": 62, "describ": 63, "each": [63, 75], "awar": 63, "backward": 63, "incompat": 63, "made": [63, 71], "break": 63, "applic": [63, 73], "advantag": 63, "improv": [63, 72], "content": 63, "v0": 63, "fix": [63, 65, 68], "1": 63, "4": 63, "bugfix": 63, "multi": 63, "7": 63, "fulli": 63, "8": 63, "For": 63, "videocal": 63, "stabil": 63, "mediadevic": 63, "febr": 64, "23": 64, "2021": [64, 65, 66, 67, 68, 69, 70, 71], "remov": 64, "browser": 64, "compil": 64, "listen": [64, 67], "mar": [65, 66, 67, 68], "10": [65, 69], "log": 65, "12": 66, "14": 67, "long": 67, "schema": 67, "126": 67, "25": 68, "hash": 68, "puls": 68, "beta": 68, "secur": 68, "customiz": 68, "get_full_chat": 68, "aug": [69, 70], "multipl": [69, 73], "modul": 69, "renew": 69, "21": 70, "stdin": 70, "stdout": 70, "instead": 70, "defin": [70, 74], "linux": [70, 72], "arm64v8": 70, "littl": 70, "nick": 70, "arm64": 70, "window": [70, 72], "maco": 70, "sept": 71, "07": 71, "same": [71, 75], "fifo": [71, 73], "remot": [71, 73], "pre": 71, "agent": 71, "asyncio": [71, 74], "futur": 71, "wait": [71, 73], "mai": 72, "01": 72, "2022": 72, "desktop": 72, "microphon": [72, 73], "udp": 72, "everi": [73, 75], "awai": 73, "provid": 73, "credenti": 73, "simpli": [73, 75], "copi": 73, "past": 73, "thing": 73, "session": 73, "name": 73, "below": 73, "treat": 73, "build": 73, "meant": [73, 75], "give": 73, "basic": 73, "idea": 73, "append": 73, "calls_with_modul": 73, "capture_m": 73, "custom_api": 73, "php": 73, "fifo_convers": 73, "multiple_cal": 73, "differ": 73, "account": 73, "piped_audio_cal": 73, "convers": 73, "With": 73, "integr": 73, "piped_image_cal": 73, "piped_video_cal": 73, "remote_piped_plai": 73, "remote_stream_with_head": 73, "screen_sharing_m": 73, "simple_cal": 73, "telethon_exampl": 73, "video_cal": 73, "disk": 73, "youtube_dl": 73, "usag": 73, "youtubedl": 73, "At": 74, "point": 74, "aim": 74, "toward": 74, "veri": 74, "examin": [74, 75], "api_id": 74, "12345": 74, "api_hash": 74, "0123456789abcdef0123456789abcdef": 74, "begin": 74, "taken": 74, "initi": 74, "test_sess": 74, "avoid": 74, "await": [74, 75], "get_event_loop": 74, "run_until_complet": 74, "creat": 74, "normal": 74, "must": 74, "put": 74, "keyword": 74, "Then": 74, "sequenti": 75, "cool": 75, "react": 75, "deal": 75, "first": 75, "As": 75, "happen": 75, "notifi": 75, "specif": 75, "state": 75, "These": 75, "match": 75, "arriv": 75, "framework": 75, "bodi": 75, "explain": 75, "charg": 75, "streamvideoend": 75, "setup": 75, "logic": 75, "should": 75, "troubl": 75, "isinst": 75, "accept": 75, "two": 75, "mix": 75, "effici": 75, "regardless": 75}, "objects": {"pytgcalls": [[1, 0, 1, "", "CustomApi"], [0, 0, 1, "", "PyTgCalls"], [23, 0, 1, "", "StreamType"], [11, 1, 1, "", "idle"]], "pytgcalls.CustomApi": [[2, 1, 1, "", "on_update_custom_api"], [21, 2, 1, "", "start"]], "pytgcalls.PyTgCalls": [[0, 3, 1, "", "active_calls"], [0, 3, 1, "", "cache_peer"], [0, 3, 1, "", "calls"], [5, 2, 1, "", "change_stream"], [6, 2, 1, "", "change_volume_call"], [7, 2, 1, "", "get_active_call"], [8, 2, 1, "", "get_call"], [9, 2, 1, "", "get_max_voice_chat"], [10, 2, 1, "", "get_participants"], [0, 3, 1, "", "is_connected"], [13, 2, 1, "", "join_group_call"], [14, 2, 1, "", "leave_group_call"], [15, 2, 1, "", "mute_stream"], [2, 1, 1, "", "on_closed_voice_chat"], [2, 1, 1, "", "on_group_call_invite"], [2, 1, 1, "", "on_kicked"], [2, 1, 1, "", "on_left"], [2, 1, 1, "", "on_participants_change"], [2, 1, 1, "", "on_raw_update"], [2, 1, 1, "", "on_stream_end"], [16, 2, 1, "", "pause_stream"], [0, 3, 1, "", "ping"], [17, 2, 1, "", "played_time"], [18, 2, 1, "", "resume_stream"], [19, 2, 1, "", "run"], [20, 2, 1, "", "start"], [22, 2, 1, "", "unmute_stream"]], "pytgcalls.StreamType": [[23, 3, 1, "", "live_stream"], [23, 3, 1, "", "local_stream"], [23, 3, 1, "", "pulse_stream"], [23, 3, 1, "", "stream_mode"]], "pytgcalls.exceptions": [[3, 4, 1, "", "AlreadyJoinedError"], [3, 4, 1, "", "GroupCallNotFound"], [3, 4, 1, "", "InvalidMtProtoClient"], [3, 4, 1, "", "InvalidStreamMode"], [3, 4, 1, "", "InvalidVideoProportion"], [3, 4, 1, "", "NoActiveGroupCall"], [3, 4, 1, "", "NoAudioSourceFound"], [3, 4, 1, "", "NoMtProtoClientSet"], [3, 4, 1, "", "NoVideoSourceFound"], [3, 4, 1, "", "NodeJSNotInstalled"], [3, 4, 1, "", "NodeJSNotRunning"], [3, 4, 1, "", "NotInGroupCallError"], [3, 4, 1, "", "PyTgCallsAlreadyRunning"], [3, 4, 1, "", "TelegramServerError"], [3, 4, 1, "", "TooManyCustomApiDecorators"], [3, 4, 1, "", "TooOldNodeJSVersion"], [3, 4, 1, "", "TooOldPyrogramVersion"], [3, 4, 1, "", "TooOldTelethonVersion"]], "pytgcalls.types": [[24, 0, 1, "", "AudioImagePiped"], [25, 0, 1, "", "AudioParameters"], [26, 0, 1, "", "AudioPiped"], [27, 0, 1, "", "AudioVideoPiped"], [28, 0, 1, "", "CaptureAVDesktop"], [29, 0, 1, "", "CaptureAVDeviceDesktop"], [30, 0, 1, "", "CaptureAudioDevice"], [31, 0, 1, "", "CaptureVideoDesktop"], [32, 0, 1, "", "ChangedStream"], [33, 0, 1, "", "ErrorDuringJoin"], [34, 0, 1, "", "GroupCall"], [35, 0, 1, "", "GroupCallParticipant"], [36, 0, 1, "", "HighQualityAudio"], [37, 0, 1, "", "HighQualityVideo"], [38, 0, 1, "", "InputAudioStream"], [39, 0, 1, "", "InputStream"], [40, 0, 1, "", "InputVideoStream"], [41, 0, 1, "", "JoinedGroupCallParticipant"], [42, 0, 1, "", "LeftGroupCallParticipant"], [43, 0, 1, "", "LeftVoiceChat"], [44, 0, 1, "", "LowQualityAudio"], [45, 0, 1, "", "LowQualityVideo"], [46, 0, 1, "", "MediumQualityAudio"], [47, 0, 1, "", "MediumQualityVideo"], [48, 0, 1, "", "MutedStream"], [49, 0, 1, "", "PausedStream"], [50, 0, 1, "", "ResumedStream"], [51, 0, 1, "", "StreamAudioEnded"], [52, 0, 1, "", "StreamDeleted"], [53, 0, 1, "", "StreamVideoEnded"], [54, 0, 1, "", "UnMutedStream"], [55, 0, 1, "", "Update"], [56, 0, 1, "", "UpdatedGroupCallParticipant"], [57, 0, 1, "", "VideoParameters"], [58, 0, 1, "", "VideoPiped"]], "pytgcalls.types.AudioImagePiped": [[24, 3, 1, "", "ffmpeg_parameters"], [24, 3, 1, "", "lip_sync"], [24, 3, 1, "", "raw_headers"], [24, 3, 1, "", "stream_audio"], [24, 3, 1, "", "stream_video"]], "pytgcalls.types.AudioParameters": [[25, 3, 1, "", "bitrate"]], "pytgcalls.types.AudioPiped": [[26, 3, 1, "", "ffmpeg_parameters"], [26, 3, 1, "", "lip_sync"], [26, 3, 1, "", "raw_headers"], [26, 3, 1, "", "stream_audio"], [26, 3, 1, "", "stream_video"]], "pytgcalls.types.AudioVideoPiped": [[27, 3, 1, "", "ffmpeg_parameters"], [27, 3, 1, "", "lip_sync"], [27, 3, 1, "", "raw_headers"], [27, 3, 1, "", "stream_audio"], [27, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureAVDesktop": [[28, 3, 1, "", "stream_audio"], [28, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureAVDeviceDesktop": [[29, 3, 1, "", "stream_audio"], [29, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureAudioDevice": [[30, 3, 1, "", "stream_audio"], [30, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureVideoDesktop": [[31, 3, 1, "", "ffmpeg_parameters"], [31, 3, 1, "", "stream_audio"], [31, 3, 1, "", "stream_video"]], "pytgcalls.types.ChangedStream": [[32, 3, 1, "", "chat_id"]], "pytgcalls.types.GroupCall": [[34, 3, 1, "", "chat_id"], [34, 3, 1, "", "is_playing"], [34, 3, 1, "", "status"]], "pytgcalls.types.GroupCallParticipant": [[35, 3, 1, "", "muted"], [35, 3, 1, "", "muted_by_admin"], [35, 3, 1, "", "raised_hand"], [35, 3, 1, "", "screen_sharing"], [35, 3, 1, "", "user_id"], [35, 3, 1, "", "video"], [35, 3, 1, "", "video_camera"], [35, 3, 1, "", "volume"]], "pytgcalls.types.HighQualityAudio": [[36, 3, 1, "", "bitrate"]], "pytgcalls.types.HighQualityVideo": [[37, 3, 1, "", "frame_rate"], [37, 3, 1, "", "height"], [37, 3, 1, "", "width"]], "pytgcalls.types.InputAudioStream": [[38, 3, 1, "", "parameters"], [38, 3, 1, "", "path"]], "pytgcalls.types.InputStream": [[39, 3, 1, "", "lip_sync"], [39, 3, 1, "", "stream_audio"], [39, 3, 1, "", "stream_video"]], "pytgcalls.types.InputVideoStream": [[40, 3, 1, "", "parameters"], [40, 3, 1, "", "path"]], "pytgcalls.types.JoinedGroupCallParticipant": [[41, 3, 1, "", "chat_id"], [41, 3, 1, "", "participant"]], "pytgcalls.types.LeftGroupCallParticipant": [[42, 3, 1, "", "chat_id"], [42, 3, 1, "", "participant"]], "pytgcalls.types.LeftVoiceChat": [[43, 3, 1, "", "chat_id"]], "pytgcalls.types.LowQualityAudio": [[44, 3, 1, "", "bitrate"]], "pytgcalls.types.LowQualityVideo": [[45, 3, 1, "", "frame_rate"], [45, 3, 1, "", "height"], [45, 3, 1, "", "width"]], "pytgcalls.types.MediumQualityAudio": [[46, 3, 1, "", "bitrate"]], "pytgcalls.types.MediumQualityVideo": [[47, 3, 1, "", "frame_rate"], [47, 3, 1, "", "height"], [47, 3, 1, "", "width"]], "pytgcalls.types.MutedStream": [[48, 3, 1, "", "chat_id"]], "pytgcalls.types.PausedStream": [[49, 3, 1, "", "chat_id"]], "pytgcalls.types.ResumedStream": [[50, 3, 1, "", "chat_id"]], "pytgcalls.types.StreamAudioEnded": [[51, 3, 1, "", "chat_id"]], "pytgcalls.types.StreamDeleted": [[52, 3, 1, "", "chat_id"]], "pytgcalls.types.StreamVideoEnded": [[53, 3, 1, "", "chat_id"]], "pytgcalls.types.UnMutedStream": [[54, 3, 1, "", "chat_id"]], "pytgcalls.types.Update": [[55, 3, 1, "", "chat_id"]], "pytgcalls.types.UpdatedGroupCallParticipant": [[56, 3, 1, "", "chat_id"], [56, 3, 1, "", "participant"]], "pytgcalls.types.VideoParameters": [[57, 3, 1, "", "frame_rate"], [57, 3, 1, "", "height"], [57, 3, 1, "", "width"]], "pytgcalls.types.VideoPiped": [[58, 3, 1, "", "ffmpeg_parameters"], [58, 3, 1, "", "lip_sync"], [58, 3, 1, "", "raw_headers"], [58, 3, 1, "", "stream_audio"], [58, 3, 1, "", "stream_video"]]}, "objtypes": {"0": "py:class", "1": "py:function", "2": "py:method", "3": "py:attribute", "4": "py:exception"}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "function", "Python function"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "exception", "Python exception"]}, "titleterms": {"pytgcal": [0, 2, 3, 60, 61, 62, 64, 65, 66, 67, 68, 69, 70, 71, 72], "client": 0, "detail": [0, 1, 23], "custom": [1, 12], "api": [1, 12, 62], "decor": [2, 75], "customapi": [2, 3], "except": 3, "miss": 3, "librari": 3, "error": 3, "nodej": 3, "deprec": 3, "mtproto": 3, "stream": [3, 12, 23, 59], "media": 4, "devic": 4, "change_stream": 5, "change_volume_cal": 6, "get_active_cal": 7, "get_cal": 8, "get_max_voice_chat": 9, "get_particip": 10, "idl": 11, "avail": [12, 59], "method": [12, 74], "util": 12, "group": [12, 59], "call": [12, 59, 74], "audio": 12, "video": 12, "join_group_cal": 13, "leave_group_cal": 14, "mute_stream": 15, "pause_stream": 16, "played_tim": 17, "resume_stream": 18, "run": 19, "start": [20, 21, 62], "unmute_stream": 22, "type": [23, 59], "audioimagepip": 24, "audioparamet": 25, "audiopip": 26, "audiovideopip": 27, "captureavdesktop": 28, "captureavdevicedesktop": 29, "captureaudiodevic": 30, "capturevideodesktop": 31, "changedstream": 32, "errorduringjoin": 33, "groupcal": 34, "groupcallparticip": 35, "highqualityaudio": 36, "highqualityvideo": 37, "inputaudiostream": 38, "inputstream": 39, "inputvideostream": 40, "joinedgroupcallparticip": 41, "leftgroupcallparticip": 42, "leftvoicechat": 43, "lowqualityaudio": 44, "lowqualityvideo": 45, "mediumqualityaudio": 46, "mediumqualityvideo": 47, "mutedstream": 48, "pausedstream": 49, "resumedstream": 50, "streamaudioend": 51, "streamdelet": 52, "streamvideoend": 53, "unmutedstream": 54, "updat": [55, 75], "updatedgroupcallparticip": 56, "videoparamet": 57, "videopip": 58, "raw": 59, "event": 59, "input": 59, "pipe": 59, "With": 59, "ffmpeg": 59, "paramet": 59, "pre": 59, "made": 59, "welcom": 60, "first": 60, "step": [60, 74], "instal": 61, "guid": 61, "bleed": 61, "edg": 61, "verifi": 61, "quick": 62, "get": 62, "real": 62, "fast": 62, "enjoi": 62, "releas": 63, "note": 63, "v0": [64, 65, 66, 67, 68, 69, 70, 71, 72], "0": [64, 65, 66, 67, 68, 69, 70, 71, 72], "9": [64, 72], "1": 65, "2": 66, "3": 67, "4": 68, "6": 69, "7": 70, "8": 71, "exampl": 73, "basic": 74, "usag": 74, "asynchron": 74, "handl": 75, "defin": 75, "regist": 75, "handler": 75, "us": 75}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 56}})
\ No newline at end of file
+Search.setIndex({"docnames": ["api/client", "api/custom_api", "api/decorators", "api/exceptions", "api/media_devices", "api/methods/change_stream", "api/methods/change_volume_call", "api/methods/get_active_call", "api/methods/get_call", "api/methods/get_max_voice_chat", "api/methods/get_participants", "api/methods/idle", "api/methods/index", "api/methods/join_group_call", "api/methods/leave_group_call", "api/methods/mute_stream", "api/methods/pause_stream", "api/methods/played_time", "api/methods/resume_stream", "api/methods/run", "api/methods/start", "api/methods/start_custom_api", "api/methods/unmute_stream", "api/stream_type", "api/types/AudioImagePiped", "api/types/AudioParameters", "api/types/AudioPiped", "api/types/AudioVideoPiped", "api/types/CaptureAVDesktop", "api/types/CaptureAVDeviceDesktop", "api/types/CaptureAudioDevice", "api/types/CaptureVideoDesktop", "api/types/ChangedStream", "api/types/ErrorDuringJoin", "api/types/GroupCall", "api/types/GroupCallParticipant", "api/types/HighQualityAudio", "api/types/HighQualityVideo", "api/types/InputAudioStream", "api/types/InputStream", "api/types/InputVideoStream", "api/types/JoinedGroupCallParticipant", "api/types/LeftGroupCallParticipant", "api/types/LeftVoiceChat", "api/types/LowQualityAudio", "api/types/LowQualityVideo", "api/types/MediumQualityAudio", "api/types/MediumQualityVideo", "api/types/MutedStream", "api/types/PausedStream", "api/types/ResumedStream", "api/types/StreamAudioEnded", "api/types/StreamDeleted", "api/types/StreamVideoEnded", "api/types/UnMutedStream", "api/types/Update", "api/types/UpdatedGroupCallParticipant", "api/types/VideoParameters", "api/types/VideoPiped", "api/types/index", "index", "intro/install", "intro/quickstart", "releases/index", "releases/v.0.0.9", "releases/v.0.1.0", "releases/v.0.2.0", "releases/v.0.3.0", "releases/v.0.4.0", "releases/v.0.6.0", "releases/v.0.7.0", "releases/v.0.8.0", "releases/v.0.9.0", "start/examples", "start/invoking", "start/updates"], "filenames": ["api/client.rst", "api/custom_api.rst", "api/decorators.rst", "api/exceptions.rst", "api/media_devices.rst", "api/methods/change_stream.rst", "api/methods/change_volume_call.rst", "api/methods/get_active_call.rst", "api/methods/get_call.rst", "api/methods/get_max_voice_chat.rst", "api/methods/get_participants.rst", "api/methods/idle.rst", "api/methods/index.rst", "api/methods/join_group_call.rst", "api/methods/leave_group_call.rst", "api/methods/mute_stream.rst", "api/methods/pause_stream.rst", "api/methods/played_time.rst", "api/methods/resume_stream.rst", "api/methods/run.rst", "api/methods/start.rst", "api/methods/start_custom_api.rst", "api/methods/unmute_stream.rst", "api/stream_type.rst", "api/types/AudioImagePiped.rst", "api/types/AudioParameters.rst", "api/types/AudioPiped.rst", "api/types/AudioVideoPiped.rst", "api/types/CaptureAVDesktop.rst", "api/types/CaptureAVDeviceDesktop.rst", "api/types/CaptureAudioDevice.rst", "api/types/CaptureVideoDesktop.rst", "api/types/ChangedStream.rst", "api/types/ErrorDuringJoin.rst", "api/types/GroupCall.rst", "api/types/GroupCallParticipant.rst", "api/types/HighQualityAudio.rst", "api/types/HighQualityVideo.rst", "api/types/InputAudioStream.rst", "api/types/InputStream.rst", "api/types/InputVideoStream.rst", "api/types/JoinedGroupCallParticipant.rst", "api/types/LeftGroupCallParticipant.rst", "api/types/LeftVoiceChat.rst", "api/types/LowQualityAudio.rst", "api/types/LowQualityVideo.rst", "api/types/MediumQualityAudio.rst", "api/types/MediumQualityVideo.rst", "api/types/MutedStream.rst", "api/types/PausedStream.rst", "api/types/ResumedStream.rst", "api/types/StreamAudioEnded.rst", "api/types/StreamDeleted.rst", "api/types/StreamVideoEnded.rst", "api/types/UnMutedStream.rst", "api/types/Update.rst", "api/types/UpdatedGroupCallParticipant.rst", "api/types/VideoParameters.rst", "api/types/VideoPiped.rst", "api/types/index.rst", "index.rst", "intro/install.rst", "intro/quickstart.rst", "releases/index.rst", "releases/v.0.0.9.rst", "releases/v.0.1.0.rst", "releases/v.0.2.0.rst", "releases/v.0.3.0.rst", "releases/v.0.4.0.rst", "releases/v.0.6.0.rst", "releases/v.0.7.0.rst", "releases/v.0.8.0.rst", "releases/v.0.9.0.rst", "start/examples.rst", "start/invoking.rst", "start/updates.rst"], "titles": ["PyTgCalls Client", "Custom Api", "Decorators", "Exceptions", "Media Devices", "change_stream()", "change_volume_call()", "get_active_call()", "get_call()", "get_max_voice_chat()", "get_participants()", "idle()", "Available Methods", "join_group_call()", "leave_group_call()", "mute_stream()", "pause_stream()", "played_time()", "resume_stream()", "run()", "start()", "start()", "unmute_stream()", "Stream Type", "AudioImagePiped", "AudioParameters", "AudioPiped", "AudioVideoPiped", "CaptureAVDesktop", "CaptureAVDeviceDesktop", "CaptureAudioDevice", "CaptureVideoDesktop", "ChangedStream", "ErrorDuringJoin", "GroupCall", "GroupCallParticipant", "HighQualityAudio", "HighQualityVideo", "InputAudioStream", "InputStream", "InputVideoStream", "JoinedGroupCallParticipant", "LeftGroupCallParticipant", "LeftVoiceChat", "LowQualityAudio", "LowQualityVideo", "MediumQualityAudio", "MediumQualityVideo", "MutedStream", "PausedStream", "ResumedStream", "StreamAudioEnded", "StreamDeleted", "StreamVideoEnded", "UnMutedStream", "Update", "UpdatedGroupCallParticipant", "VideoParameters", "VideoPiped", "Available Types", "Welcome to PyTgCalls!", "Install Guide", "Quick Start", "Release Notes", "PyTgCalls v0.0.9", "PyTgCalls v0.1.0", "PyTgCalls v0.2.0", "PyTgCalls v0.3.0", "PyTgCalls v0.4.0", "PyTgCalls v0.6.0", "PyTgCalls v0.7.0", "PyTgCalls v0.8.0", "PyTgCalls v0.9.0", "Examples", "Calling Methods", "Handling Updates"], "terms": {"you": [0, 1, 2, 3, 5, 6, 7, 8, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 59, 60, 61, 62, 63, 73, 74, 75], "have": [0, 1, 3, 5, 11, 13, 35, 56, 62, 73, 74, 75], "enter": [0, 1], "api": [0, 2, 3, 5, 6, 7, 8, 10, 13, 14, 15, 16, 18, 19, 20, 21, 22, 34, 35, 73, 74, 75], "refer": [0, 1], "section": [0, 1, 75], "where": [0, 1, 73], "can": [0, 1, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 22, 24, 26, 27, 28, 29, 30, 31, 38, 40, 58, 61, 62, 68, 73, 74, 75], "find": [0, 1, 63], "inform": [0, 1], "about": [0, 1, 12, 34, 35, 41, 42, 56, 59, 73, 75], "The": [0, 1, 3, 11, 13, 23, 24, 26, 27, 28, 29, 30, 31, 38, 39, 40, 43, 58, 61, 62, 73, 75], "main": [0, 1, 11, 12, 19, 23, 62, 74], "class": [0, 1, 2, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 74], "all": [0, 1, 2, 3, 12, 59, 62, 63, 71], "avail": [0, 1], "method": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 59, 60, 62, 71, 75], "type": [0, 1, 2, 13, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 60, 62, 74, 75], "attribut": [0, 1, 33], "decor": [0, 1, 3, 19, 71], "descript": [0, 1, 73], "found": [0, 1, 3, 12], "start": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 60, 61, 68, 73, 74], "from": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 28, 29, 30, 31, 59, 60, 61, 62, 68, 73, 74, 75], "thi": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 35, 59, 60, 61, 73, 74, 75], "page": [0, 1, 2, 12, 59, 62, 73, 75], "i": [0, 1, 2, 3, 6, 7, 8, 10, 11, 12, 16, 18, 19, 21, 35, 59, 60, 61, 73, 74, 75], "which": [0, 1, 11, 12, 75], "expos": [0, 1], "high": [0, 1, 36, 37], "level": [0, 1, 35, 74], "an": [0, 1, 3, 5, 7, 8, 9, 13, 19, 20, 21, 74], "easi": [0, 1], "access": [0, 1], "import": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 59, 60, 61, 62, 74, 75], "app": [0, 1, 2, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 22, 60, 62, 74, 75], "mean": [0, 1, 23, 59, 61, 73], "interact": 0, "group": [0, 2, 3, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 22, 33, 34, 35, 41, 42, 43, 56, 60, 68, 71, 73, 75], "call": [0, 2, 3, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 22, 33, 34, 35, 41, 42, 43, 56, 60, 62, 71, 73, 75], "active_cal": 0, "get": [0, 7, 8, 9, 10, 17, 23, 60, 61, 68, 71, 75], "list": [0, 2, 10, 12, 59, 71, 73, 75], "activ": [0, 3, 7], "plai": [0, 2, 5, 6, 7, 13, 16, 17, 52, 62, 71, 73, 74], "paus": [0, 7, 16, 18, 49, 70], "groupcal": [0, 7, 8], "exist": [0, 5, 7, 8, 13, 34, 59], "cache_p": 0, "current": [0, 35], "telegram": [0, 3, 6, 13, 25, 35, 60, 62, 73, 74, 75], "user": [0, 71], "inputp": [0, 13], "p": [0, 13], "t": [0, 3, 5, 13, 59, 61, 64, 74], "ping": 0, "nodej": [0, 20, 60, 71, 75], "core": [0, 3, 9, 20, 74], "int": [0, 1, 2, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 22, 23, 25, 32, 33, 34, 35, 36, 37, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57], "is_connect": 0, "check": [0, 7, 8, 34, 59, 63], "aliv": [0, 11], "connect": [0, 20, 24, 26, 27, 28, 58], "bool": [0, 16, 18, 24, 26, 27, 34, 35, 39, 58], "paramet": [0, 1, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 38, 39, 40, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 73], "telegramcli": [0, 74], "pass": 0, "mtproto": [0, 2, 5, 6, 10, 13, 14, 15, 16, 17, 18, 19, 22, 60, 62, 74], "cache_dur": 0, "cach": [0, 68], "durat": 0, "full": [0, 70], "chat": [0, 2, 5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56, 60, 67, 68, 73], "queri": 0, "overload_quiet_mod": 0, "disabl": 0, "overload": 0, "cpu": 0, "messag": [0, 2], "set": [0, 3, 5, 6, 11, 13, 23, 59, 73, 74, 75], "true": [0, 16, 18, 59], "rais": [0, 2, 3, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 32, 35, 48, 49, 50, 51, 52, 53, 54], "invalidmtprotocli": [0, 3], "invalid": [0, 3], "front": 1, "end": [1, 2, 11, 51, 53, 75], "customapi": [1, 21, 69], "pytgcal": [1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 63, 73, 74, 75], "client": [1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 59, 60, 62, 74, 75], "host": 1, "local": [1, 23], "http": [1, 2, 21, 23, 24, 26, 27, 28, 58, 60, 61, 62, 74, 75], "server": [1, 3, 13, 68, 70, 73], "port": 1, "option": [1, 9, 13, 24, 26, 27, 28, 39, 58, 59, 71], "bind": [1, 70, 73], "while": [2, 11], "still": [2, 11, 75], "being": 2, "bound": [2, 12], "ar": [2, 11, 12, 59, 61, 73, 74, 75], "special": [2, 12], "kind": [2, 75], "thu": 2, "deserv": 2, "dedic": 2, "abl": 2, "regist": 2, "callback": [2, 75], "function": [2, 11, 12, 74, 75], "handl": [2, 60], "updat": [2, 59, 60, 61, 70], "much": [2, 62, 75], "easier": 2, "cleaner": 2, "wai": [2, 11, 61, 75], "need": [2, 3, 21, 59, 63, 64, 74, 75], "do": [2, 3, 5, 6, 13, 14, 15, 16, 17, 18, 22, 59], "ad": [2, 61, 63, 64, 65, 66, 67, 68, 72], "top": [2, 74], "your": [2, 11, 59, 60, 61, 62, 63, 68, 73, 74, 75], "here": [2, 12, 59, 60, 74], "on_raw_upd": 2, "async": [2, 63, 70, 74, 75], "def": [2, 74, 75], "my_handl": [2, 75], "print": [2, 59], "run": [2, 3, 9, 11, 62, 73, 74, 75], "on_closed_voice_chat": 2, "close": [2, 67, 68, 74], "voic": [2, 60, 68], "event": [2, 64, 75], "when": [2, 3, 13, 32, 48, 49, 50, 51, 52, 53, 54, 59, 61, 63, 68, 71, 75], "video": [2, 3, 5, 13, 23, 24, 26, 27, 28, 29, 30, 31, 35, 37, 39, 40, 45, 47, 53, 57, 58, 71, 73, 75], "exampl": [2, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 18, 19, 20, 21, 22, 59, 60, 74, 75], "handler": [2, 11], "chat_id": [2, 5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56, 62], "on_group_call_invit": 2, "invit": [2, 13, 68], "userbot": [2, 3, 6, 15, 22, 43], "service_msg": 2, "on_kick": 2, "kick": [2, 64, 68], "channel": [2, 13, 60], "on_left": 2, "left": [2, 42, 43], "leav": [2, 5, 14, 15, 16, 18, 22], "on_participants_chang": 2, "particip": [2, 10, 35, 41, 42, 56, 59, 71, 75], "chang": [2, 5, 6, 32, 56, 61, 63, 71, 73, 75], "raw": [2, 38, 40, 55, 70], "receiv": [2, 11], "on_stream_end": [2, 75], "stream": [2, 5, 6, 13, 16, 17, 18, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 38, 39, 40, 48, 49, 50, 51, 52, 53, 54, 57, 58, 67, 68, 73, 74, 75], "on_update_custom_api": [2, 3], "backend": 2, "toomanycustomapidecor": [2, 3], "In": [2, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 61, 62, 74], "case": [2, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 61, 74], "try": [2, 3, 5, 6, 7, 8, 13, 14, 15, 16, 17, 18, 19, 20, 22, 61], "add": [2, 63, 74], "singl": [2, 9, 19], "instanc": [2, 12, 63, 69, 73, 74], "webserv": [2, 21], "request": 2, "dict": [2, 24, 26, 27, 28, 58], "code": [2, 63, 64, 74], "switch": 2, "etc": [2, 27, 75], "return": [2, 7, 8, 9, 10, 16, 18, 59], "result": [2, 70], "ok": 2, "idl": [2, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 60, 62, 74], "live": [3, 23, 67, 73], "insid": [3, 59, 74], "sub": 3, "packag": [3, 12, 59, 61], "groupcallnotfound": [3, 7, 8], "e": [3, 11], "nodejsnotinstal": 3, "node": 3, "j": [3, 64, 70], "isn": 3, "instal": [3, 5, 13, 62, 63, 66, 74], "nodejsnotrun": [3, 5, 6, 13, 14, 15, 16, 17, 18, 22], "befor": [3, 5, 6, 13, 14, 15, 16, 17, 18, 22], "join_group_cal": [3, 60, 62, 74], "leave_group_cal": 3, "change_volume_cal": 3, "change_stream": [3, 75], "pause_stream": 3, "resume_stream": 3, "toooldnodejsvers": 3, "version": [3, 61, 63], "too": [3, 61], "old": 3, "toooldpyrogramvers": 3, "pyrogram": [3, 62, 71, 74], "toooldtelethonvers": 3, "telethon": [3, 62, 71, 73, 74], "nomtprotoclientset": [3, 5, 6, 13, 14, 15, 16, 17, 18, 22], "telegramservererror": [3, 13], "some": [3, 6, 62], "intern": [3, 21, 70, 71], "problem": 3, "rtmpstreamneed": [3, 13], "rtmp": [3, 13], "pytgcallsalreadyrun": [3, 19, 20], "alreadi": [3, 13, 19, 20, 75], "get_active_cal": 3, "get_cal": 3, "noactivegroupcal": [3, 5, 6, 13, 14, 17], "No": 3, "notingroupcallerror": [3, 5, 14, 15, 16, 18, 22], "alreadyjoinederror": [3, 13], "join": [3, 5, 13, 14, 15, 16, 18, 22, 33, 41, 62, 73, 75], "unmuteneed": [3, 13], "unmut": [3, 22, 54, 71], "invalidstreammod": [3, 5, 13], "mode": [3, 5, 13, 23, 24, 26, 27, 39, 58, 65, 74], "novideosourcefound": [3, 5, 13], "doe": 3, "invalidvideoproport": [3, 5, 13], "ffmpeg": [3, 5, 13, 24, 26, 27, 31, 58, 71, 72, 73], "sent": 3, "measur": 3, "respons": [3, 71], "noaudiosourcefound": [3, 5, 13], "audio": [3, 5, 13, 24, 25, 26, 27, 28, 29, 30, 31, 36, 38, 39, 44, 46, 51, 58, 62, 67, 71, 73], "mani": 3, "custom": [3, 21, 70, 73], "file": [5, 13, 16, 18, 24, 26, 27, 28, 38, 39, 40, 52, 58, 62], "allow": [5, 13, 14, 15, 16, 17, 18, 22, 25, 60], "str": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22, 24, 26, 27, 28, 31, 34, 38, 40, 58], "uniqu": [5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 35, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56], "identifi": [5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 32, 33, 34, 35, 41, 42, 43, 48, 49, 50, 51, 52, 53, 54, 55, 56], "target": [5, 7, 8, 13, 14, 15, 16, 17, 18, 22, 73], "direct": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22], "id": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22], "usernam": [5, 6, 7, 8, 10, 13, 14, 15, 16, 17, 18, 22], "inputstream": [5, 13], "input": [5, 13, 24, 26, 27, 28, 29, 30, 31, 39, 58], "descriptor": [5, 13, 24, 26, 27, 28, 29, 30, 31, 38, 39, 40, 58], "us": [5, 6, 10, 13, 24, 26, 27, 28, 29, 30, 31, 38, 40, 58, 59, 60, 61, 62, 70, 73, 74], "also": [5, 13, 24, 26, 27, 28, 29, 30, 31, 38, 40, 58, 59, 63], "audiopip": [5, 13, 60, 62, 74], "audioimagepip": [5, 13, 59], "audiovideopip": [5, 13, 75], "videopip": [5, 13], "without": [5, 6, 13, 14, 15, 16, 17, 18, 22, 73], "ani": [5, 6, 13, 14, 15, 16, 17, 18, 22, 34, 63, 74], "edit": [5, 6, 13, 14, 17], "filenotfounderror": [5, 13], "non": [5, 7, 8, 13, 14, 15, 16, 18, 22], "void": [5, 13], "ffmpegnotinstal": [5, 13], "pipe": [5, 13, 24, 26, 27, 58, 71], "don": [5, 13, 59], "sound": [5, 13], "correct": [5, 13], "proport": [5, 13], "1001185324811": [5, 6, 7, 8, 10, 13, 14, 15, 16, 18, 22, 60, 62, 74, 75], "test": [5, 13], "mp4": [5, 13, 27, 60, 62, 74, 75], "featur": [6, 61, 63], "ha": [6, 75], "bug": [6, 63, 65], "sometim": 6, "volum": [6, 35], "appli": 6, "side": [6, 13], "output": 6, "175": 6, "error": [7, 8, 13, 33, 61], "On": [7, 8, 10, 16, 18], "success": [7, 8, 10, 16, 18], "client1": [7, 8, 11], "static": 9, "max": [9, 25, 68], "number": 9, "estim": 9, "consumpt": 9, "x": 9, "groupcallparticip": [10, 41, 42, 56], "block": [11, 19, 73, 74], "script": [11, 19, 62, 73, 74], "execut": [11, 74, 75], "until": 11, "signal": 11, "indefinit": 11, "order": [11, 63], "prevent": 11, "exit": 11, "": [11, 60, 62, 63, 74, 75], "background": 11, "work": [11, 73, 75], "keep": 11, "pool": 11, "worker": 11, "thread": 11, "concurr": [11, 75], "outsid": 11, "ensur": 11, "kept": [11, 61], "let": [11, 62, 74, 75], "decid": 11, "quit": 11, "onc": [11, 75], "g": 11, "ctrl": 11, "c": 11, "termin": [11, 62], "continu": [11, 62], "app1": 11, "app2": 11, "client2": 11, "app3": 11, "client3": 11, "up": [11, 61, 73, 75], "except": [12, 63, 70], "directli": [12, 73], "invite_hash": 13, "form": 13, "me": 13, "link": [13, 61, 73], "join_a": 13, "profil": 13, "stream_typ": 13, "streamtyp": [13, 23], "occur": 13, "mute": [13, 15, 35, 48, 71], "via": [15, 22], "wa": [16, 18, 52, 62], "time": [17, 67, 68, 71, 74, 75], "resum": [18, 50, 70], "final": 19, "stop": 19, "conveni": 19, "sequenc": 19, "It": [19, 74], "make": [19, 60, 63, 74], "less": 19, "verbos": 19, "suitabl": 19, "want": [19, 59, 62, 74], "more": [19, 62, 63, 75], "than": 19, "one": [19, 74, 75], "sinc": 19, "after": 19, "own": [19, 62, 73], "help": 21, "interfac": 21, "stream_mod": 23, "local_stream": 23, "live_stream": 23, "onlin": 23, "self": 23, "download": [23, 61], "pulse_stream": 23, "valu": [23, 59, 62], "imag": [24, 71, 73], "ffmpeg_paramet": [24, 26, 27, 31, 58], "addit": [24, 26, 27, 31, 58, 72, 73], "lip_sync": [24, 26, 27, 39, 58], "lip": [24, 26, 27, 39, 58], "sync": [24, 26, 27, 39, 58], "raw_head": [24, 26, 27, 58], "header": [24, 26, 27, 28, 58, 73], "stream_audio": [24, 26, 27, 28, 29, 30, 31, 39, 58], "inputaudiostream": [24, 26, 27, 28, 29, 30, 31, 39, 58], "stream_video": [24, 26, 27, 28, 29, 30, 31, 39, 58], "inputvideostream": [24, 26, 27, 28, 29, 30, 31, 39, 58], "audio_path": [24, 28], "path": [24, 26, 27, 28, 38, 40, 58], "image_path": 24, "audio_paramet": [24, 26, 27, 28, 29, 30], "audioparamet": [24, 26, 27, 28, 29, 30, 38], "highqualityaudio": [24, 26, 27, 28, 29, 30, 38], "mediumqualityaudio": [24, 26, 27, 28, 29, 30, 38], "lowqualityaudio": [24, 26, 27, 28, 29, 30, 38], "video_paramet": [24, 27, 28, 29, 31, 58], "videoparamet": [24, 27, 28, 29, 31, 40, 58], "highqualityvideo": [24, 27, 28, 29, 31, 40, 58], "mediumqualityvideo": [24, 27, 28, 29, 31, 40, 58], "lowqualityvideo": [24, 27, 28, 29, 31, 40, 58], "additional_ffmpeg_paramet": [24, 26, 27, 58, 73], "bitrat": [25, 36, 44, 46], "0": [25, 61, 63], "48000": 25, "onli": [26, 31, 38, 40, 58, 59, 61, 73], "like": [27, 61, 73, 74], "captur": [28, 29, 30, 31, 73], "screen": [28, 29, 30, 31, 35, 72, 73], "screen_info": [28, 29, 31], "obj": [28, 29, 30, 31], "media_devic": [28, 29, 30, 31], "screenmanag": [28, 29, 31], "param": [28, 29, 30, 31], "devic": [29, 30], "audio_info": [29, 30], "deviceinfo": [29, 30], "successfulli": [32, 48, 49, 50, 54, 74], "dure": [33, 52], "info": [34, 35, 41, 42, 56], "is_plai": 34, "sort": 34, "statu": [34, 56], "binary_statu": 34, "user_id": 35, "whether": [35, 59], "muted_by_admin": 35, "admin": 35, "broadcast": 35, "screen_shar": [35, 73], "share": [35, 63, 72, 73, 75], "video_camera": 35, "camera": 35, "raised_hand": 35, "hand": 35, "qualiti": [36, 37, 44, 45, 46, 47], "48k": 36, "1280x720": 37, "width": [37, 45, 47, 57], "height": [37, 45, 47, 57], "frame_r": [37, 45, 47, 57], "framer": [37, 45, 47, 57], "pcm16l": [38, 73], "format": [38, 40], "raw_video": [40, 73], "A": [41, 42, 55, 56, 60, 70, 73], "low": [44, 45], "24k": 44, "640x360": 45, "medium": [46, 47], "36k": 46, "854x480": 47, "delet": 52, "him": 56, "through": 59, "unless": 59, "requir": [59, 61, 74], "argument": [59, 75], "most": [59, 75], "manual": 59, "instanti": 59, "becaus": [59, 74], "thei": [59, 74, 75], "other": [59, 63, 73, 75], "them": [59, 75], "hint": [59, 75], "variabl": 59, "errorduringjoin": 59, "field": 59, "alwai": [59, 61], "object": 59, "could": 59, "empti": 59, "contain": [59, 73], "none": 59, "aren": 59, "shown": 59, "hasattr": 59, "To": [59, 61, 74, 75], "tell": [59, 74], "simpl": [59, 60, 73, 74], "boolean": 59, "eleg": [60, 75], "quickli": 60, "easili": 60, "document": 60, "pypi": [60, 61, 63, 66], "doc": [60, 62, 74, 75], "evostream": [60, 62, 74, 75], "com": [60, 61, 62, 74, 75], "sample_cont": [60, 62, 74, 75], "asset": [60, 62, 74, 75], "sintel1m720p": [60, 62, 74, 75], "project": 60, "webrtc": 60, "possibl": [60, 62, 68], "thank": [60, 70], "power": 60, "librari": [60, 61, 74], "evgeni": 60, "nadymov": 60, "quick": 60, "overview": [60, 62], "how": [60, 73, 75], "Being": 61, "modern": 61, "python": [61, 62], "3": [61, 63], "6": [61, 63], "system": 61, "we": [61, 62, 74], "recommend": 61, "latest": 61, "both": 61, "pip": 61, "www": 61, "org": [61, 62, 74], "manag": 61, "follow": [61, 62], "instruct": [61, 62], "pypa": 61, "io": 61, "en": 61, "support": [61, 63, 67, 68, 69, 70, 71, 72], "easiest": 61, "upgrad": [61, 63], "its": [61, 75], "stabl": 61, "pip3": [61, 62], "u": [61, 62], "py": [61, 62], "tgcall": [61, 62], "evolv": 61, "although": 61, "new": [61, 62, 63, 75], "releas": [61, 64, 65, 66, 67, 68, 69, 70, 71, 72], "publish": 61, "enough": [61, 73], "doesn": 61, "right": [61, 73], "now": [61, 74], "d": 61, "out": 61, "github": 61, "repo": 61, "develop": 61, "straight": 61, "master": 61, "branch": 61, "command": [61, 72], "note": 61, "zip": 61, "git": 61, "correctli": [61, 73], "open": [61, 62], "shell": 61, "If": [61, 74], "show": [61, 73], "good": 61, "go": [61, 62, 74], "__version__": 61, "9": [61, 63], "2": [61, 63], "next": 62, "few": 62, "step": 62, "serv": 62, "see": 62, "action": 62, "choos": [62, 75], "between": 62, "kei": 62, "my": [62, 74], "best": 62, "text": 62, "editor": 62, "replac": 62, "save": 62, "python3": 62, "login": 62, "watch": 62, "our": [62, 74], "commun": 62, "That": 62, "just": 62, "bare": 62, "scratch": 62, "surfac": 62, "introduct": 62, "ll": 62, "take": [62, 63], "depth": 62, "look": [62, 73, 75], "what": [62, 63, 75], "done": 62, "abov": 62, "feel": 62, "eager": 62, "shortcut": 62, "come": 62, "back": [62, 75], "later": 62, "learn": [62, 75], "detail": 62, "describ": 63, "each": [63, 75], "awar": 63, "backward": 63, "incompat": 63, "made": [63, 71], "break": 63, "applic": [63, 73], "advantag": 63, "improv": [63, 72], "content": 63, "v0": 63, "fix": [63, 65, 68], "1": 63, "4": 63, "bugfix": 63, "multi": 63, "7": 63, "fulli": 63, "8": 63, "For": 63, "videocal": 63, "stabil": 63, "mediadevic": 63, "febr": 64, "23": 64, "2021": [64, 65, 66, 67, 68, 69, 70, 71], "remov": 64, "browser": 64, "compil": 64, "listen": [64, 67], "mar": [65, 66, 67, 68], "10": [65, 69], "log": 65, "12": 66, "14": 67, "long": 67, "schema": 67, "126": 67, "25": 68, "hash": 68, "puls": 68, "beta": 68, "secur": 68, "customiz": 68, "get_full_chat": 68, "aug": [69, 70], "multipl": [69, 73], "modul": 69, "renew": 69, "21": 70, "stdin": 70, "stdout": 70, "instead": 70, "defin": [70, 74], "linux": [70, 72], "arm64v8": 70, "littl": 70, "nick": 70, "arm64": 70, "window": [70, 72], "maco": 70, "sept": 71, "07": 71, "same": [71, 75], "fifo": [71, 73], "remot": [71, 73], "pre": 71, "agent": 71, "asyncio": [71, 74], "futur": 71, "wait": [71, 73], "mai": 72, "01": 72, "2022": 72, "desktop": 72, "microphon": [72, 73], "udp": 72, "everi": [73, 75], "awai": 73, "provid": 73, "credenti": 73, "simpli": [73, 75], "copi": 73, "past": 73, "thing": 73, "session": 73, "name": 73, "below": 73, "treat": 73, "build": 73, "meant": [73, 75], "give": 73, "basic": 73, "idea": 73, "append": 73, "calls_with_modul": 73, "capture_m": 73, "custom_api": 73, "php": 73, "fifo_convers": 73, "multiple_cal": 73, "differ": 73, "account": 73, "piped_audio_cal": 73, "convers": 73, "With": 73, "integr": 73, "piped_image_cal": 73, "piped_video_cal": 73, "remote_piped_plai": 73, "remote_stream_with_head": 73, "screen_sharing_m": 73, "simple_cal": 73, "telethon_exampl": 73, "video_cal": 73, "disk": 73, "youtube_dl": 73, "usag": 73, "youtubedl": 73, "At": 74, "point": 74, "aim": 74, "toward": 74, "veri": 74, "examin": [74, 75], "api_id": 74, "12345": 74, "api_hash": 74, "0123456789abcdef0123456789abcdef": 74, "begin": 74, "taken": 74, "initi": 74, "test_sess": 74, "avoid": 74, "await": [74, 75], "get_event_loop": 74, "run_until_complet": 74, "creat": 74, "normal": 74, "must": 74, "put": 74, "keyword": 74, "Then": 74, "sequenti": 75, "cool": 75, "react": 75, "deal": 75, "first": 75, "As": 75, "happen": 75, "notifi": 75, "specif": 75, "state": 75, "These": 75, "match": 75, "arriv": 75, "framework": 75, "bodi": 75, "explain": 75, "charg": 75, "streamvideoend": 75, "setup": 75, "logic": 75, "should": 75, "troubl": 75, "isinst": 75, "accept": 75, "two": 75, "mix": 75, "effici": 75, "regardless": 75}, "objects": {"pytgcalls": [[1, 0, 1, "", "CustomApi"], [0, 0, 1, "", "PyTgCalls"], [23, 0, 1, "", "StreamType"], [11, 1, 1, "", "idle"]], "pytgcalls.CustomApi": [[2, 1, 1, "", "on_update_custom_api"], [21, 2, 1, "", "start"]], "pytgcalls.PyTgCalls": [[0, 3, 1, "", "active_calls"], [0, 3, 1, "", "cache_peer"], [0, 3, 1, "", "calls"], [5, 2, 1, "", "change_stream"], [6, 2, 1, "", "change_volume_call"], [7, 2, 1, "", "get_active_call"], [8, 2, 1, "", "get_call"], [9, 2, 1, "", "get_max_voice_chat"], [10, 2, 1, "", "get_participants"], [0, 3, 1, "", "is_connected"], [13, 2, 1, "", "join_group_call"], [14, 2, 1, "", "leave_group_call"], [15, 2, 1, "", "mute_stream"], [2, 1, 1, "", "on_closed_voice_chat"], [2, 1, 1, "", "on_group_call_invite"], [2, 1, 1, "", "on_kicked"], [2, 1, 1, "", "on_left"], [2, 1, 1, "", "on_participants_change"], [2, 1, 1, "", "on_raw_update"], [2, 1, 1, "", "on_stream_end"], [16, 2, 1, "", "pause_stream"], [0, 3, 1, "", "ping"], [17, 2, 1, "", "played_time"], [18, 2, 1, "", "resume_stream"], [19, 2, 1, "", "run"], [20, 2, 1, "", "start"], [22, 2, 1, "", "unmute_stream"]], "pytgcalls.StreamType": [[23, 3, 1, "", "live_stream"], [23, 3, 1, "", "local_stream"], [23, 3, 1, "", "pulse_stream"], [23, 3, 1, "", "stream_mode"]], "pytgcalls.exceptions": [[3, 4, 1, "", "AlreadyJoinedError"], [3, 4, 1, "", "GroupCallNotFound"], [3, 4, 1, "", "InvalidMtProtoClient"], [3, 4, 1, "", "InvalidStreamMode"], [3, 4, 1, "", "InvalidVideoProportion"], [3, 4, 1, "", "NoActiveGroupCall"], [3, 4, 1, "", "NoAudioSourceFound"], [3, 4, 1, "", "NoMtProtoClientSet"], [3, 4, 1, "", "NoVideoSourceFound"], [3, 4, 1, "", "NodeJSNotInstalled"], [3, 4, 1, "", "NodeJSNotRunning"], [3, 4, 1, "", "NotInGroupCallError"], [3, 4, 1, "", "PyTgCallsAlreadyRunning"], [3, 4, 1, "", "RTMPStreamNeeded"], [3, 4, 1, "", "TelegramServerError"], [3, 4, 1, "", "TooManyCustomApiDecorators"], [3, 4, 1, "", "TooOldNodeJSVersion"], [3, 4, 1, "", "TooOldPyrogramVersion"], [3, 4, 1, "", "TooOldTelethonVersion"], [3, 4, 1, "", "UnMuteNeeded"]], "pytgcalls.types": [[24, 0, 1, "", "AudioImagePiped"], [25, 0, 1, "", "AudioParameters"], [26, 0, 1, "", "AudioPiped"], [27, 0, 1, "", "AudioVideoPiped"], [28, 0, 1, "", "CaptureAVDesktop"], [29, 0, 1, "", "CaptureAVDeviceDesktop"], [30, 0, 1, "", "CaptureAudioDevice"], [31, 0, 1, "", "CaptureVideoDesktop"], [32, 0, 1, "", "ChangedStream"], [33, 0, 1, "", "ErrorDuringJoin"], [34, 0, 1, "", "GroupCall"], [35, 0, 1, "", "GroupCallParticipant"], [36, 0, 1, "", "HighQualityAudio"], [37, 0, 1, "", "HighQualityVideo"], [38, 0, 1, "", "InputAudioStream"], [39, 0, 1, "", "InputStream"], [40, 0, 1, "", "InputVideoStream"], [41, 0, 1, "", "JoinedGroupCallParticipant"], [42, 0, 1, "", "LeftGroupCallParticipant"], [43, 0, 1, "", "LeftVoiceChat"], [44, 0, 1, "", "LowQualityAudio"], [45, 0, 1, "", "LowQualityVideo"], [46, 0, 1, "", "MediumQualityAudio"], [47, 0, 1, "", "MediumQualityVideo"], [48, 0, 1, "", "MutedStream"], [49, 0, 1, "", "PausedStream"], [50, 0, 1, "", "ResumedStream"], [51, 0, 1, "", "StreamAudioEnded"], [52, 0, 1, "", "StreamDeleted"], [53, 0, 1, "", "StreamVideoEnded"], [54, 0, 1, "", "UnMutedStream"], [55, 0, 1, "", "Update"], [56, 0, 1, "", "UpdatedGroupCallParticipant"], [57, 0, 1, "", "VideoParameters"], [58, 0, 1, "", "VideoPiped"]], "pytgcalls.types.AudioImagePiped": [[24, 3, 1, "", "ffmpeg_parameters"], [24, 3, 1, "", "lip_sync"], [24, 3, 1, "", "raw_headers"], [24, 3, 1, "", "stream_audio"], [24, 3, 1, "", "stream_video"]], "pytgcalls.types.AudioParameters": [[25, 3, 1, "", "bitrate"]], "pytgcalls.types.AudioPiped": [[26, 3, 1, "", "ffmpeg_parameters"], [26, 3, 1, "", "lip_sync"], [26, 3, 1, "", "raw_headers"], [26, 3, 1, "", "stream_audio"], [26, 3, 1, "", "stream_video"]], "pytgcalls.types.AudioVideoPiped": [[27, 3, 1, "", "ffmpeg_parameters"], [27, 3, 1, "", "lip_sync"], [27, 3, 1, "", "raw_headers"], [27, 3, 1, "", "stream_audio"], [27, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureAVDesktop": [[28, 3, 1, "", "stream_audio"], [28, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureAVDeviceDesktop": [[29, 3, 1, "", "stream_audio"], [29, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureAudioDevice": [[30, 3, 1, "", "stream_audio"], [30, 3, 1, "", "stream_video"]], "pytgcalls.types.CaptureVideoDesktop": [[31, 3, 1, "", "ffmpeg_parameters"], [31, 3, 1, "", "stream_audio"], [31, 3, 1, "", "stream_video"]], "pytgcalls.types.ChangedStream": [[32, 3, 1, "", "chat_id"]], "pytgcalls.types.GroupCall": [[34, 3, 1, "", "chat_id"], [34, 3, 1, "", "is_playing"], [34, 3, 1, "", "status"]], "pytgcalls.types.GroupCallParticipant": [[35, 3, 1, "", "muted"], [35, 3, 1, "", "muted_by_admin"], [35, 3, 1, "", "raised_hand"], [35, 3, 1, "", "screen_sharing"], [35, 3, 1, "", "user_id"], [35, 3, 1, "", "video"], [35, 3, 1, "", "video_camera"], [35, 3, 1, "", "volume"]], "pytgcalls.types.HighQualityAudio": [[36, 3, 1, "", "bitrate"]], "pytgcalls.types.HighQualityVideo": [[37, 3, 1, "", "frame_rate"], [37, 3, 1, "", "height"], [37, 3, 1, "", "width"]], "pytgcalls.types.InputAudioStream": [[38, 3, 1, "", "parameters"], [38, 3, 1, "", "path"]], "pytgcalls.types.InputStream": [[39, 3, 1, "", "lip_sync"], [39, 3, 1, "", "stream_audio"], [39, 3, 1, "", "stream_video"]], "pytgcalls.types.InputVideoStream": [[40, 3, 1, "", "parameters"], [40, 3, 1, "", "path"]], "pytgcalls.types.JoinedGroupCallParticipant": [[41, 3, 1, "", "chat_id"], [41, 3, 1, "", "participant"]], "pytgcalls.types.LeftGroupCallParticipant": [[42, 3, 1, "", "chat_id"], [42, 3, 1, "", "participant"]], "pytgcalls.types.LeftVoiceChat": [[43, 3, 1, "", "chat_id"]], "pytgcalls.types.LowQualityAudio": [[44, 3, 1, "", "bitrate"]], "pytgcalls.types.LowQualityVideo": [[45, 3, 1, "", "frame_rate"], [45, 3, 1, "", "height"], [45, 3, 1, "", "width"]], "pytgcalls.types.MediumQualityAudio": [[46, 3, 1, "", "bitrate"]], "pytgcalls.types.MediumQualityVideo": [[47, 3, 1, "", "frame_rate"], [47, 3, 1, "", "height"], [47, 3, 1, "", "width"]], "pytgcalls.types.MutedStream": [[48, 3, 1, "", "chat_id"]], "pytgcalls.types.PausedStream": [[49, 3, 1, "", "chat_id"]], "pytgcalls.types.ResumedStream": [[50, 3, 1, "", "chat_id"]], "pytgcalls.types.StreamAudioEnded": [[51, 3, 1, "", "chat_id"]], "pytgcalls.types.StreamDeleted": [[52, 3, 1, "", "chat_id"]], "pytgcalls.types.StreamVideoEnded": [[53, 3, 1, "", "chat_id"]], "pytgcalls.types.UnMutedStream": [[54, 3, 1, "", "chat_id"]], "pytgcalls.types.Update": [[55, 3, 1, "", "chat_id"]], "pytgcalls.types.UpdatedGroupCallParticipant": [[56, 3, 1, "", "chat_id"], [56, 3, 1, "", "participant"]], "pytgcalls.types.VideoParameters": [[57, 3, 1, "", "frame_rate"], [57, 3, 1, "", "height"], [57, 3, 1, "", "width"]], "pytgcalls.types.VideoPiped": [[58, 3, 1, "", "ffmpeg_parameters"], [58, 3, 1, "", "lip_sync"], [58, 3, 1, "", "raw_headers"], [58, 3, 1, "", "stream_audio"], [58, 3, 1, "", "stream_video"]]}, "objtypes": {"0": "py:class", "1": "py:function", "2": "py:method", "3": "py:attribute", "4": "py:exception"}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "function", "Python function"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "exception", "Python exception"]}, "titleterms": {"pytgcal": [0, 2, 3, 60, 61, 62, 64, 65, 66, 67, 68, 69, 70, 71, 72], "client": 0, "detail": [0, 1, 23], "custom": [1, 12], "api": [1, 12, 62], "decor": [2, 75], "customapi": [2, 3], "except": 3, "miss": 3, "librari": 3, "error": 3, "nodej": 3, "deprec": 3, "mtproto": 3, "stream": [3, 12, 23, 59], "media": 4, "devic": 4, "change_stream": 5, "change_volume_cal": 6, "get_active_cal": 7, "get_cal": 8, "get_max_voice_chat": 9, "get_particip": 10, "idl": 11, "avail": [12, 59], "method": [12, 74], "util": 12, "group": [12, 59], "call": [12, 59, 74], "audio": 12, "video": 12, "join_group_cal": 13, "leave_group_cal": 14, "mute_stream": 15, "pause_stream": 16, "played_tim": 17, "resume_stream": 18, "run": 19, "start": [20, 21, 62], "unmute_stream": 22, "type": [23, 59], "audioimagepip": 24, "audioparamet": 25, "audiopip": 26, "audiovideopip": 27, "captureavdesktop": 28, "captureavdevicedesktop": 29, "captureaudiodevic": 30, "capturevideodesktop": 31, "changedstream": 32, "errorduringjoin": 33, "groupcal": 34, "groupcallparticip": 35, "highqualityaudio": 36, "highqualityvideo": 37, "inputaudiostream": 38, "inputstream": 39, "inputvideostream": 40, "joinedgroupcallparticip": 41, "leftgroupcallparticip": 42, "leftvoicechat": 43, "lowqualityaudio": 44, "lowqualityvideo": 45, "mediumqualityaudio": 46, "mediumqualityvideo": 47, "mutedstream": 48, "pausedstream": 49, "resumedstream": 50, "streamaudioend": 51, "streamdelet": 52, "streamvideoend": 53, "unmutedstream": 54, "updat": [55, 75], "updatedgroupcallparticip": 56, "videoparamet": 57, "videopip": 58, "raw": 59, "event": 59, "input": 59, "pipe": 59, "With": 59, "ffmpeg": 59, "paramet": 59, "pre": 59, "made": 59, "welcom": 60, "first": 60, "step": [60, 74], "instal": 61, "guid": 61, "bleed": 61, "edg": 61, "verifi": 61, "quick": 62, "get": 62, "real": 62, "fast": 62, "enjoi": 62, "releas": 63, "note": 63, "v0": [64, 65, 66, 67, 68, 69, 70, 71, 72], "0": [64, 65, 66, 67, 68, 69, 70, 71, 72], "9": [64, 72], "1": 65, "2": 66, "3": 67, "4": 68, "6": 69, "7": 70, "8": 71, "exampl": 73, "basic": 74, "usag": 74, "asynchron": 74, "handl": 75, "defin": 75, "regist": 75, "handler": 75, "us": 75}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 6, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 56}})
\ No newline at end of file
diff --git a/start/examples.html b/start/examples.html
index 69c92ea..436ab0b 100644
--- a/start/examples.html
+++ b/start/examples.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/start/invoking.html b/start/invoking.html
index 803c51b..1c9a1ec 100644
--- a/start/invoking.html
+++ b/start/invoking.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
diff --git a/start/updates.html b/start/updates.html
index cb37cec..c9ebfff 100644
--- a/start/updates.html
+++ b/start/updates.html
@@ -188,6 +188,7 @@
unmute_stream
pause_stream
resume_stream
+ played_time
start
|