You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/getting-started/migrating.rst
+113-2Lines changed: 113 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -162,7 +162,9 @@ In addition to the above changes, the :class:`~twitchio.Client` has undergone ot
162
162
- :meth:`twitchio.Client.update_entitlements`
163
163
- :meth:`twitchio.Client.update_extensions`
164
164
- :meth:`twitchio.Client.websocket_subscriptions`
165
-
165
+
- :meth:`twitchio.Client.fetch_conduit`
166
+
- :meth:`twitchio.Client.fetch_conduits`
167
+
- :meth:`twitchio.Client.create_conduit`
166
168
167
169
**Changed:**
168
170
@@ -212,6 +214,45 @@ In addition to the above changes, the :class:`~twitchio.Client` has undergone ot
212
214
- ``Client.fetch_global_emotes()``
213
215
214
216
217
+
Conduits and AutoClient/Bot
218
+
===========================
219
+
220
+
Recently Twitch added the ``Conduit`` transport type. Conduits help separate your EventSub subscriptions from the underlying
221
+
connection/transport (Websocket/Webhook) and load balances the events sent between them.
222
+
223
+
Read more about Conduits on the `Twitch Docs <https://dev.twitch.tv/docs/eventsub/handling-conduit-events>`_ .
224
+
225
+
Conduits come with some advantages over traditional EventSub:
226
+
227
+
- Uses App Access Tokens (Not User Tokens)
228
+
- Subscription Continuity (Subscriptions remain on the Conduit even if the Bot and all it's connections disconnect for upto 72 hours)
229
+
- Load balancing between connections
230
+
- Scale up and down easily
231
+
- Less subscription limits
232
+
233
+
In TwitchIO V3 we support Conduits in two forms:
234
+
235
+
- Via :class:`twitchio.AutoClient` and :class:`twitchio.ext.commands.AutoBot`
236
+
- Your own implementation using the Models and API.
237
+
238
+
We highly recommended using Conduits in-place of the regular EventSub implementation for your application. The easiest way to get
239
+
started is with :class:`twitchio.AutoClient` and :class:`twitchio.ext.commands.AutoBot`.
240
+
241
+
**Added:**
242
+
243
+
- :class:`twitchio.AutoClient`
244
+
- :class:`twitchio.ext.commands.AutoBot`
245
+
- :class:`twitchio.ConduitInfo`
246
+
- :class:`twitchio.Conduit`
247
+
- :class:`twitchio.ConduitShard`
248
+
- :class:`twitchio.MultiSubscribePayload`
249
+
- :class:`twitchio.MultiSubscribeSuccess`
250
+
- :class:`twitchio.MultiSubscribeError`
251
+
- :meth:`twitchio.Client.fetch_conduit`
252
+
- :meth:`twitchio.Client.fetch_conduits`
253
+
- :meth:`twitchio.Client.create_conduit`
254
+
255
+
215
256
Logging
216
257
=======
217
258
@@ -340,6 +381,39 @@ To wait until the bot is ready, consider using :meth:`twitchio.Client.wait_until
340
381
- ``Client.wait_for_ready`` is now :meth:`twitchio.Client.wait_until_ready`
341
382
342
383
384
+
Sounds Ext
385
+
===========
386
+
387
+
The sounds extension has been removed and will be replaced with an ``Overlays`` extension in a future release.
388
+
389
+
390
+
Routines Ext
391
+
============
392
+
393
+
The way you use Routines has not changed significantly, with only one difference. You can no longer provide the ``seconds``, ``minutes``, ``hours`` etc
394
+
arguments and instead pass a :class:`datetime.timedelta` in their place.
395
+
396
+
Besides this change, Routines mostly underwent optimizations and compatability with asyncio changes.
0 commit comments