Skip to content

Commit f5826be

Browse files
committed
Update usher parameters
1 parent dc467ae commit f5826be

File tree

2 files changed

+38
-0
lines changed

2 files changed

+38
-0
lines changed

resources/lib/twitch/api/usher.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ def channel_token(channel):
3434
q = HiddenApiQuery('channels/{channel}/access_token')
3535
q.add_urlkw(keys.CHANNEL, channel)
3636
q.add_param(keys.NEED_HTTPS, Boolean.TRUE)
37+
q.add_param(keys.PLATFORM, keys.WEB)
38+
q.add_param(keys.PLAYER_BACKEND, keys.MEDIAPLAYER)
3739
return q
3840

3941

@@ -42,6 +44,8 @@ def vod_token(video_id):
4244
q = HiddenApiQuery('vods/{vod}/access_token')
4345
q.add_urlkw(keys.VOD, video_id)
4446
q.add_param(keys.NEED_HTTPS, Boolean.TRUE)
47+
q.add_param(keys.PLATFORM, keys.WEB)
48+
q.add_param(keys.PLAYER_BACKEND, keys.MEDIAPLAYER)
4549
return q
4650

4751

@@ -65,6 +69,10 @@ def live_request(channel):
6569
q.add_param(keys.ALLOW_SPECTRE, Boolean.TRUE)
6670
q.add_param(keys.ALLOW_AUDIO_ONLY, Boolean.TRUE)
6771
q.add_param(keys.FAST_BREAD, Boolean.TRUE)
72+
q.add_param(keys.CDM, keys.WV)
73+
q.add_param(keys.REASSIGNMENT_SUPPORTED, Boolean.TRUE)
74+
q.add_param(keys.RTQOS, keys.CONTROL)
75+
q.add_param(keys.PLAYER_BACKEND, keys.MEDIAPLAYER)
6876
url = '?'.join([q.url, urlencode(q.params)])
6977
request_dict = {'url': url, 'headers': q.headers}
7078
log.debug('live_request: |{0}|'.format(str(request_dict)))
@@ -81,6 +89,10 @@ def _live(channel, token):
8189
q.add_param(keys.ALLOW_SPECTRE, Boolean.TRUE)
8290
q.add_param(keys.ALLOW_AUDIO_ONLY, Boolean.TRUE)
8391
q.add_param(keys.FAST_BREAD, Boolean.TRUE)
92+
q.add_param(keys.CDM, keys.WV)
93+
q.add_param(keys.REASSIGNMENT_SUPPORTED, Boolean.TRUE)
94+
q.add_param(keys.RTQOS, keys.CONTROL)
95+
q.add_param(keys.PLAYER_BACKEND, keys.MEDIAPLAYER)
8496
return q
8597

8698

@@ -106,6 +118,13 @@ def video_request(video_id):
106118
q.add_param(keys.NAUTH, token[keys.TOKEN].encode('utf-8'))
107119
q.add_param(keys.ALLOW_SOURCE, Boolean.TRUE)
108120
q.add_param(keys.ALLOW_AUDIO_ONLY, Boolean.TRUE)
121+
q.add_param(keys.CDM, keys.WV)
122+
q.add_param(keys.REASSIGNMENT_SUPPORTED, Boolean.TRUE)
123+
q.add_param(keys.RTQOS, keys.CONTROL)
124+
q.add_param(keys.PLAYER_BACKEND, keys.MEDIAPLAYER)
125+
q.add_param(keys.BAKING_BREAD, Boolean.TRUE)
126+
q.add_param(keys.BAKING_BROWNIES, Boolean.TRUE)
127+
q.add_param(keys.BAKING_BROWNIES_TIMEOUT, 1050)
109128
url = '?'.join([q.url, urlencode(q.params)])
110129
request_dict = {'url': url, 'headers': q.headers}
111130
log.debug('video_request: |{0}|'.format(str(request_dict)))
@@ -122,6 +141,13 @@ def _vod(video_id, token):
122141
q.add_param(keys.NAUTH, token[keys.TOKEN].encode('utf-8'))
123142
q.add_param(keys.ALLOW_SOURCE, Boolean.TRUE)
124143
q.add_param(keys.ALLOW_AUDIO_ONLY, Boolean.TRUE)
144+
q.add_param(keys.CDM, keys.WV)
145+
q.add_param(keys.REASSIGNMENT_SUPPORTED, Boolean.TRUE)
146+
q.add_param(keys.RTQOS, keys.CONTROL)
147+
q.add_param(keys.PLAYER_BACKEND, keys.MEDIAPLAYER)
148+
q.add_param(keys.BAKING_BREAD, Boolean.TRUE)
149+
q.add_param(keys.BAKING_BROWNIES, Boolean.TRUE)
150+
q.add_param(keys.BAKING_BROWNIES_TIMEOUT, 1050)
125151
return q
126152

127153

resources/lib/twitch/keys.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,15 @@
1616
ALLOW_SOURCE = 'allow_source'
1717
ALLOW_SPECTRE = 'allow_spectre'
1818
AVATAR_IMAGE = 'avatar_image'
19+
BAKING_BREAD = 'baking_bread'
20+
BAKING_BROWNIES = 'baking_brownies'
21+
BAKING_BROWNIES_TIMEOUT = 'baking_brownies_timeout'
1922
BEFORE = 'before'
2023
BROADCAST_TYPE = 'broadcast_type'
2124
BROADCASTER_ID = 'broadcaster_id'
2225
BROADCASTER_LANGUAGE = 'broadcaster_language'
2326
BROADCASTS = 'broadcasts'
27+
CDM = 'cdm'
2428
CHANNEL = 'channel'
2529
CHANNEL_FEED_ENABLED = 'channel_feed_enabled'
2630
CHANNEL_ID = 'channel_id'
@@ -33,6 +37,7 @@
3337
COMMUNITY_IDS = 'community_ids'
3438
CONTAINING_ITEM = 'containing_item'
3539
CONTENT = 'content'
40+
CONTROL = 'control'
3641
COUNT = 'count'
3742
COVER_IMAGE = 'cover_image'
3843
CURSOR = 'cursor'
@@ -65,6 +70,7 @@
6570
LIVE = 'live'
6671
LOGIN = 'login'
6772
MANIFEST_ID = 'manifest_id'
73+
MEDIAPLAYER = 'mediaplayer'
6874
MESSAGE = 'message'
6975
NAME = 'name'
7076
NAUTH = 'nauth'
@@ -74,10 +80,14 @@
7480
OFFSET = 'offset'
7581
PART = 'part'
7682
PERIOD = 'period'
83+
PLATFORM = 'platform'
84+
PLAYER_BACKEND = 'player_backend'
7785
POSITION = 'position'
7886
POST_ID = 'post_id'
7987
QUERY = 'query'
8088
REASON = 'reason'
89+
REASSIGNMENT_SUPPORTED = 'reassignment_supported'
90+
RTQOS = 'rtqos'
8191
RULES = 'rules'
8292
SCE_PLATFORM = 'sce_platform'
8393
SHARE = 'share'
@@ -107,4 +117,6 @@
107117
UPLOAD_TOKEN = 'upload_token'
108118
VIDEO_ID = 'video_id'
109119
VOD = 'vod'
120+
WEB = 'web'
121+
WV = 'wv'
110122
XBOX_HEARTBEAT = 'xbox_heartbeat'

0 commit comments

Comments
 (0)