spotifywebapiPython 1.0.151__py3-none-any.whl → 1.0.152__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of spotifywebapiPython might be problematic. Click here for more details.

Files changed (24) hide show
  1. {spotifywebapiPython-1.0.151.dist-info → spotifywebapiPython-1.0.152.dist-info}/METADATA +1 -1
  2. {spotifywebapiPython-1.0.151.dist-info → spotifywebapiPython-1.0.152.dist-info}/RECORD +24 -24
  3. spotifywebapipython/const.py +1 -1
  4. spotifywebapipython/docs/__init__.html +8 -2
  5. spotifywebapipython/docs/index.html +2 -2
  6. spotifywebapipython/docs/search.js +1 -1
  7. spotifywebapipython/docs/spotifywebapipython/const.html +3 -3
  8. spotifywebapipython/docs/spotifywebapipython/saappmessages.html +2 -2
  9. spotifywebapipython/docs/spotifywebapipython/sautils.html +2 -2
  10. spotifywebapipython/docs/spotifywebapipython/spotifyapierror.html +2 -2
  11. spotifywebapipython/docs/spotifywebapipython/spotifyapimessage.html +2 -2
  12. spotifywebapipython/docs/spotifywebapipython/spotifyauthtoken.html +2 -2
  13. spotifywebapipython/docs/spotifywebapipython/spotifyclient.html +337 -160
  14. spotifywebapipython/docs/spotifywebapipython/spotifydiscovery.html +2 -2
  15. spotifywebapipython/docs/spotifywebapipython/spotifywebapiauthenticationerror.html +2 -2
  16. spotifywebapipython/docs/spotifywebapipython/spotifywebapierror.html +2 -2
  17. spotifywebapipython/docs/spotifywebapipython/spotifywebplayertoken.html +2 -2
  18. spotifywebapipython/models/playerplaystate.py +42 -0
  19. spotifywebapipython/spotifyclient.py +773 -550
  20. spotifywebapipython/spotifyconnect/spotifyconnectdirectorytask.py +37 -16
  21. spotifywebapipython/spotifyconnect/spotifyconnectzeroconfexceptions.py +10 -0
  22. {spotifywebapiPython-1.0.151.dist-info → spotifywebapiPython-1.0.152.dist-info}/LICENSE +0 -0
  23. {spotifywebapiPython-1.0.151.dist-info → spotifywebapiPython-1.0.152.dist-info}/WHEEL +0 -0
  24. {spotifywebapiPython-1.0.151.dist-info → spotifywebapiPython-1.0.152.dist-info}/top_level.txt +0 -0
@@ -9,7 +9,7 @@
9
9
  </title>
10
10
  <link rel="icon" type="image/svg+xml" href="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20role%3D%22img%22%20aria-label%3D%22pdoc%20logo%22%20width%3D%22300%22%20height%3D%22150%22%20viewBox%3D%22-1%200%2060%2030%22%3E%3Ctitle%3Epdoc%3C/title%3E%3Cpath%20d%3D%22M29.621%2021.293c-.011-.273-.214-.475-.511-.481a.5.5%200%200%200-.489.503l-.044%201.393c-.097.551-.695%201.215-1.566%201.704-.577.428-1.306.486-2.193.182-1.426-.617-2.467-1.654-3.304-2.487l-.173-.172a3.43%203.43%200%200%200-.365-.306.49.49%200%200%200-.286-.196c-1.718-1.06-4.931-1.47-7.353.191l-.219.15c-1.707%201.187-3.413%202.131-4.328%201.03-.02-.027-.49-.685-.141-1.763.233-.721.546-2.408.772-4.076.042-.09.067-.187.046-.288.166-1.347.277-2.625.241-3.351%201.378-1.008%202.271-2.586%202.271-4.362%200-.976-.272-1.935-.788-2.774-.057-.094-.122-.18-.184-.268.033-.167.052-.339.052-.516%200-1.477-1.202-2.679-2.679-2.679-.791%200-1.496.352-1.987.9a6.3%206.3%200%200%200-1.001.029c-.492-.564-1.207-.929-2.012-.929-1.477%200-2.679%201.202-2.679%202.679A2.65%202.65%200%200%200%20.97%206.554c-.383.747-.595%201.572-.595%202.41%200%202.311%201.507%204.29%203.635%205.107-.037.699-.147%202.27-.423%203.294l-.137.461c-.622%202.042-2.515%208.257%201.727%2010.643%201.614.908%203.06%201.248%204.317%201.248%202.665%200%204.492-1.524%205.322-2.401%201.476-1.559%202.886-1.854%206.491.82%201.877%201.393%203.514%201.753%204.861%201.068%202.223-1.713%202.811-3.867%203.399-6.374.077-.846.056-1.469.054-1.537zm-4.835%204.313c-.054.305-.156.586-.242.629-.034-.007-.131-.022-.307-.157-.145-.111-.314-.478-.456-.908.221.121.432.25.675.355.115.039.219.051.33.081zm-2.251-1.238c-.05.33-.158.648-.252.694-.022.001-.125-.018-.307-.157-.217-.166-.488-.906-.639-1.573.358.344.754.693%201.198%201.036zm-3.887-2.337c-.006-.116-.018-.231-.041-.342.635.145%201.189.368%201.599.625.097.231.166.481.174.642-.03.049-.055.101-.067.158-.046.013-.128.026-.298.004-.278-.037-.901-.57-1.367-1.087zm-1.127-.497c.116.306.176.625.12.71-.019.014-.117.045-.345.016-.206-.027-.604-.332-.986-.695.41-.051.816-.056%201.211-.031zm-4.535%201.535c.209.22.379.47.358.598-.006.041-.088.138-.351.234-.144.055-.539-.063-.979-.259a11.66%2011.66%200%200%200%20.972-.573zm.983-.664c.359-.237.738-.418%201.126-.554.25.237.479.548.457.694-.006.042-.087.138-.351.235-.174.064-.694-.105-1.232-.375zm-3.381%201.794c-.022.145-.061.29-.149.401-.133.166-.358.248-.69.251h-.002c-.133%200-.306-.26-.45-.621.417.091.854.07%201.291-.031zm-2.066-8.077a4.78%204.78%200%200%201-.775-.584c.172-.115.505-.254.88-.378l-.105.962zm-.331%202.302a10.32%2010.32%200%200%201-.828-.502c.202-.143.576-.328.984-.49l-.156.992zm-.45%202.157l-.701-.403c.214-.115.536-.249.891-.376a11.57%2011.57%200%200%201-.19.779zm-.181%201.716c.064.398.194.702.298.893-.194-.051-.435-.162-.736-.398.061-.119.224-.3.438-.495zM8.87%204.141c0%20.152-.123.276-.276.276s-.275-.124-.275-.276.123-.276.276-.276.275.124.275.276zm-.735-.389a1.15%201.15%200%200%200-.314.783%201.16%201.16%200%200%200%201.162%201.162c.457%200%20.842-.27%201.032-.653.026.117.042.238.042.362a1.68%201.68%200%200%201-1.679%201.679%201.68%201.68%200%200%201-1.679-1.679c0-.843.626-1.535%201.436-1.654zM5.059%205.406A1.68%201.68%200%200%201%203.38%207.085a1.68%201.68%200%200%201-1.679-1.679c0-.037.009-.072.011-.109.21.3.541.508.935.508a1.16%201.16%200%200%200%201.162-1.162%201.14%201.14%200%200%200-.474-.912c.015%200%20.03-.005.045-.005.926.001%201.679.754%201.679%201.68zM3.198%204.141c0%20.152-.123.276-.276.276s-.275-.124-.275-.276.123-.276.276-.276.275.124.275.276zM1.375%208.964c0-.52.103-1.035.288-1.52.466.394%201.06.64%201.717.64%201.144%200%202.116-.725%202.499-1.738.383%201.012%201.355%201.738%202.499%201.738.867%200%201.631-.421%202.121-1.062.307.605.478%201.267.478%201.942%200%202.486-2.153%204.51-4.801%204.51s-4.801-2.023-4.801-4.51zm24.342%2019.349c-.985.498-2.267.168-3.813-.979-3.073-2.281-5.453-3.199-7.813-.705-1.315%201.391-4.163%203.365-8.423.97-3.174-1.786-2.239-6.266-1.261-9.479l.146-.492c.276-1.02.395-2.457.444-3.268a6.11%206.11%200%200%200%201.18.115%206.01%206.01%200%200%200%202.536-.562l-.006.175c-.802.215-1.848.612-2.021%201.25-.079.295.021.601.274.837.219.203.415.364.598.501-.667.304-1.243.698-1.311%201.179-.02.144-.022.507.393.787.213.144.395.26.564.365-1.285.521-1.361.96-1.381%201.126-.018.142-.011.496.427.746l.854.489c-.473.389-.971.914-.999%201.429-.018.278.095.532.316.713.675.556%201.231.721%201.653.721.059%200%20.104-.014.158-.02.207.707.641%201.64%201.513%201.64h.013c.8-.008%201.236-.345%201.462-.626.173-.216.268-.457.325-.692.424.195.93.374%201.372.374.151%200%20.294-.021.423-.068.732-.27.944-.704.993-1.021.009-.061.003-.119.002-.179.266.086.538.147.789.147.15%200%20.294-.021.423-.069.542-.2.797-.489.914-.754.237.147.478.258.704.288.106.014.205.021.296.021.356%200%20.595-.101.767-.229.438.435%201.094.992%201.656%201.067.106.014.205.021.296.021a1.56%201.56%200%200%200%20.323-.035c.17.575.453%201.289.866%201.605.358.273.665.362.914.362a.99.99%200%200%200%20.421-.093%201.03%201.03%200%200%200%20.245-.164c.168.428.39.846.68%201.068.358.273.665.362.913.362a.99.99%200%200%200%20.421-.093c.317-.148.512-.448.639-.762.251.157.495.257.726.257.127%200%20.25-.024.37-.071.427-.17.706-.617.841-1.314.022-.015.047-.022.068-.038.067-.051.133-.104.196-.159-.443%201.486-1.107%202.761-2.086%203.257zM8.66%209.925a.5.5%200%201%200-1%200c0%20.653-.818%201.205-1.787%201.205s-1.787-.552-1.787-1.205a.5.5%200%201%200-1%200c0%201.216%201.25%202.205%202.787%202.205s2.787-.989%202.787-2.205zm4.4%2015.965l-.208.097c-2.661%201.258-4.708%201.436-6.086.527-1.542-1.017-1.88-3.19-1.844-4.198a.4.4%200%200%200-.385-.414c-.242-.029-.406.164-.414.385-.046%201.249.367%203.686%202.202%204.896.708.467%201.547.7%202.51.7%201.248%200%202.706-.392%204.362-1.174l.185-.086a.4.4%200%200%200%20.205-.527c-.089-.204-.326-.291-.527-.206zM9.547%202.292c.093.077.205.114.317.114a.5.5%200%200%200%20.318-.886L8.817.397a.5.5%200%200%200-.703.068.5.5%200%200%200%20.069.703l1.364%201.124zm-7.661-.065c.086%200%20.173-.022.253-.068l1.523-.893a.5.5%200%200%200-.506-.863l-1.523.892a.5.5%200%200%200-.179.685c.094.158.261.247.432.247z%22%20transform%3D%22matrix%28-1%200%200%201%2058%200%29%22%20fill%3D%22%233bb300%22/%3E%3Cpath%20d%3D%22M.3%2021.86V10.18q0-.46.02-.68.04-.22.18-.5.28-.54%201.34-.54%201.06%200%201.42.28.38.26.44.78.76-1.04%202.38-1.04%201.64%200%203.1%201.54%201.46%201.54%201.46%203.58%200%202.04-1.46%203.58-1.44%201.54-3.08%201.54-1.64%200-2.38-.92v4.04q0%20.46-.04.68-.02.22-.18.5-.14.3-.5.42-.36.12-.98.12-.62%200-1-.12-.36-.12-.52-.4-.14-.28-.18-.5-.02-.22-.02-.68zm3.96-9.42q-.46.54-.46%201.18%200%20.64.46%201.18.48.52%201.2.52.74%200%201.24-.52.52-.52.52-1.18%200-.66-.48-1.18-.48-.54-1.26-.54-.76%200-1.22.54zm14.741-8.36q.16-.3.54-.42.38-.12%201-.12.64%200%201.02.12.38.12.52.42.16.3.18.54.04.22.04.68v11.94q0%20.46-.04.7-.02.22-.18.5-.3.54-1.7.54-1.38%200-1.54-.98-.84.96-2.34.96-1.8%200-3.28-1.56-1.48-1.58-1.48-3.66%200-2.1%201.48-3.68%201.5-1.58%203.28-1.58%201.48%200%202.3%201v-4.2q0-.46.02-.68.04-.24.18-.52zm-3.24%2010.86q.52.54%201.26.54.74%200%201.22-.54.5-.54.5-1.18%200-.66-.48-1.22-.46-.56-1.26-.56-.8%200-1.28.56-.48.54-.48%201.2%200%20.66.52%201.2zm7.833-1.2q0-2.4%201.68-3.96%201.68-1.56%203.84-1.56%202.16%200%203.82%201.56%201.66%201.54%201.66%203.94%200%201.66-.86%202.96-.86%201.28-2.1%201.9-1.22.6-2.54.6-1.32%200-2.56-.64-1.24-.66-2.1-1.92-.84-1.28-.84-2.88zm4.18%201.44q.64.48%201.3.48.66%200%201.32-.5.66-.5.66-1.48%200-.98-.62-1.46-.62-.48-1.34-.48-.72%200-1.34.5-.62.5-.62%201.48%200%20.96.64%201.46zm11.412-1.44q0%20.84.56%201.32.56.46%201.18.46.64%200%201.18-.36.56-.38.9-.38.6%200%201.46%201.06.46.58.46%201.04%200%20.76-1.1%201.42-1.14.8-2.8.8-1.86%200-3.58-1.34-.82-.64-1.34-1.7-.52-1.08-.52-2.36%200-1.3.52-2.34.52-1.06%201.34-1.7%201.66-1.32%203.54-1.32.76%200%201.48.22.72.2%201.06.4l.32.2q.36.24.56.38.52.4.52.92%200%20.5-.42%201.14-.72%201.1-1.38%201.1-.38%200-1.08-.44-.36-.34-1.04-.34-.66%200-1.24.48-.58.48-.58%201.34z%22%20fill%3D%22green%22/%3E%3C/svg%3E"/>
11
11
  <!-- build env - Package Name = "spotifywebapiPython" -->
12
- <!-- build env - Package Version = "1.0.151" -->
12
+ <!-- build env - Package Version = "1.0.152" -->
13
13
  <!-- pdoc module.modulename = "spotifywebapipython.spotifyclient" -->
14
14
  <!-- pdoc module.is_package = "False" -->
15
15
  <!-- pdoc root_module_name = "None" -->
@@ -231,6 +231,9 @@
231
231
  <li>
232
232
  <a class="function" href="#SpotifyClient.GetCoverImageFile">GetCoverImageFile</a>
233
233
  </li>
234
+ <li>
235
+ <a class="function" href="#SpotifyClient.GetDevicePlaybackState">GetDevicePlaybackState</a>
236
+ </li>
234
237
  <li>
235
238
  <a class="function" href="#SpotifyClient.GetEpisode">GetEpisode</a>
236
239
  </li>
@@ -285,6 +288,9 @@
285
288
  <li>
286
289
  <a class="function" href="#SpotifyClient.GetPlayerPlaybackState">GetPlayerPlaybackState</a>
287
290
  </li>
291
+ <li>
292
+ <a class="function" href="#SpotifyClient.GetPlayerPlaybackStateSonos">GetPlayerPlaybackStateSonos</a>
293
+ </li>
288
294
  <li>
289
295
  <a class="function" href="#SpotifyClient.GetPlayerQueueInfo">GetPlayerQueueInfo</a>
290
296
  </li>
@@ -318,9 +324,6 @@
318
324
  <li>
319
325
  <a class="function" href="#SpotifyClient.GetShows">GetShows</a>
320
326
  </li>
321
- <li>
322
- <a class="function" href="#SpotifyClient.GetSonosPlayerPlaybackState">GetSonosPlayerPlaybackState</a>
323
- </li>
324
327
  <li>
325
328
  <a class="function" href="#SpotifyClient.GetSpotifyConnectDevice">GetSpotifyConnectDevice</a>
326
329
  </li>
@@ -497,7 +500,7 @@
497
500
 
498
501
  <footer class="footertext">
499
502
  spotifywebapiPython</br>
500
- Version 1.0.151</br>
503
+ Version 1.0.152</br>
501
504
  <a href="https://developer.spotify.com/documentation/web-api" target="_blank">
502
505
  <img src="../spotifywebapipython.ico" alt="brand icon" style="width:32px; height:32px; padding:4px;"/>
503
506
  A Spotify Web Api Client
@@ -1007,11 +1010,15 @@ It can also be specified as a comma-delimited string. <br />
1007
1010
  Example: <code>spotify:track:6zd8T1PBe9JFHmuVnurdRp,spotify:track:1kWUud3vY5ij5r62zxpTRy</code>. <br />
1008
1011
  An unlimited number of items can be added in one request, but the more items the longer it
1009
1012
  will take.</li>
1010
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
1011
- If not supplied, the user's currently active device is the target. <br />
1012
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
1013
- Example: <code>Web Player (Chrome)</code> </li>
1014
- <li><strong>verifyDeviceId (bool):</strong> True to verify a device id is active; otherwise, false to assume that a
1013
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
1014
+ This could be an id, name, a default device indicator (e.g. "*"), a
1015
+ SpotifyConnectDevice object, or null to utilize the active player device.
1016
+ A device is considered resolved if a SpotifyConnectDevice object is passed
1017
+ for this argument. An exception will be raised if the argument value could
1018
+ not be resolved or activated.
1019
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
1020
+ <li><strong>verifyDeviceId (bool):</strong> DEPRECATED - deviceId is automatically verified as of v1.0.149.
1021
+ True to verify a device id is active; otherwise, false to assume that a
1015
1022
  device id is already active. <br />
1016
1023
  Default is True. </li>
1017
1024
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the add request. This delay will give the
@@ -1060,11 +1067,16 @@ The Spotify Web API does not currently support adding more than 1 item to the qu
1060
1067
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
1061
1068
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
1062
1069
 
1070
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
1071
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
1072
+
1073
+ <span class="c1"># set device to control.</span>
1074
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
1075
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
1076
+ <span class="c1">#deviceId:str = None # use currently active device</span>
1077
+
1063
1078
  <span class="c1"># add an item to the end of the user&#39;s current playback queue.</span>
1064
1079
  <span class="n">trackUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:track:27JODWXo4VNa6s7HqDL9yQ&#39;</span>
1065
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
1066
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
1067
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
1068
1080
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Adding item to the users current playback queue:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">trackUri</span><span class="p">))</span>
1069
1081
  <span class="n">spotify</span><span class="o">.</span><span class="n">AddPlayerQueueItems</span><span class="p">(</span><span class="n">trackUri</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
1070
1082
 
@@ -1776,7 +1788,7 @@ Example: <code>3cEYpjA9oz9GiPac4AsH4n</code></li>
1776
1788
  <li><strong>userIds (str):</strong> A comma-separated list of Spotify User ID's to check. <br />
1777
1789
  Maximum: 5 ID's. <br />
1778
1790
  Example: <code>1kWUud3vY5ij5r62zxpTRy,2takcwOaAZWiXQijPHIx7B</code> <br />
1779
- Deprecated - A single item list containing current user's Spotify Username; Maximum of 1 id.</li>
1791
+ DEPRECATED - A single item list containing current user's Spotify Username; Maximum of 1 id.</li>
1780
1792
  </ul>
1781
1793
 
1782
1794
  <h6 id="returns">Returns:</h6>
@@ -4882,7 +4894,8 @@ the country parameter, may give odd results if not carefully matched. For exampl
4882
4894
  locale=<code>de_DE</code> will return a list of categories relevant to Sweden but as German language strings. <br />
4883
4895
  Example: <code>sv_SE</code> </li>
4884
4896
  <li><strong>refresh (bool):</strong> True to return real-time information from the spotify web api and
4885
- update the cache; otherwise, False to just return the cached value. </li>
4897
+ update the cache; otherwise, False to just return the cached value. <br />
4898
+ Default is True.</li>
4886
4899
  </ul>
4887
4900
 
4888
4901
  <h6 id="returns">Returns:</h6>
@@ -5404,6 +5417,64 @@ as that would violate the Spotify Web API Terms of Service.</p>
5404
5417
  </div>
5405
5418
 
5406
5419
 
5420
+ </div>
5421
+ <div id="SpotifyClient.GetDevicePlaybackState" class="classattr">
5422
+ <div class="attr function">
5423
+
5424
+ <span class="def">def</span>
5425
+ <span class="name">GetDevicePlaybackState</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">deviceId</span><span class="p">:</span> <span class="nb">str</span> <span class="o">|</span> <span class="n">spotifywebapipython</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">spotifyconnectdevice</span><span class="o">.</span><span class="n">SpotifyConnectDevice</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span></span><span class="return-annotation">) -> <span class="n"><a href="models/playerplaystate.html#PlayerPlayState">spotifywebapipython.models.playerplaystate.PlayerPlayState</a></span>:</span></span>
5426
+
5427
+
5428
+ </div>
5429
+ <a class="headerlink" href="#SpotifyClient.GetDevicePlaybackState"></a>
5430
+
5431
+ <div class="docstring"><p>Get information about the current playback state of the device, including track or episode,
5432
+ and progress. For Sonos devices, this will return the playstate of the device instead of the
5433
+ active Spotify Web API player playstate.</p>
5434
+
5435
+ <p>This method requires the <code>user-read-playback-state</code> scope.</p>
5436
+
5437
+ <p>This is not part of the Spotify Web API specification.</p>
5438
+
5439
+ <h6 id="arguments">Arguments:</h6>
5440
+
5441
+ <ul>
5442
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
5443
+ This could be an id, name, a default device indicator (e.g. "*"), a
5444
+ SpotifyConnectDevice object, or null to utilize the active player device.
5445
+ A device is considered resolved if a SpotifyConnectDevice object is passed
5446
+ for this argument. An exception will be raised if the argument value could
5447
+ not be resolved.
5448
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
5449
+ </ul>
5450
+
5451
+ <h6 id="returns">Returns:</h6>
5452
+
5453
+ <blockquote>
5454
+ <p>A <code>PlayerPlayState</code> object that contains player state details as well as
5455
+ currently playing content.</p>
5456
+ </blockquote>
5457
+
5458
+ <h6 id="raises">Raises:</h6>
5459
+
5460
+ <ul>
5461
+ <li><strong>SpotifyWebApiError:</strong> If the Spotify Web API request was for a non-authorization service
5462
+ and the response contains error information.</li>
5463
+ <li><strong>SpotifyApiError:</strong> If the method fails for any other reason.</li>
5464
+ </ul>
5465
+
5466
+ <p><details>
5467
+ <summary>Sample Code</summary></p>
5468
+
5469
+ <div class="pdoc-code codehilite">
5470
+ <pre><span></span><code>
5471
+ </code></pre>
5472
+ </div>
5473
+
5474
+ <p></details></p>
5475
+ </div>
5476
+
5477
+
5407
5478
  </div>
5408
5479
  <div id="SpotifyClient.GetEpisode" class="classattr">
5409
5480
  <div class="attr function">
@@ -6749,7 +6820,7 @@ If nowplaying item is not of the specified <code>additionalType</code>.</li>
6749
6820
  <div class="attr function">
6750
6821
 
6751
6822
  <span class="def">def</span>
6752
- <span class="name">GetPlayerPlaybackState</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">market</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span>,</span><span class="param"> <span class="n">additionalTypes</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span></span><span class="return-annotation">) -> <span class="n"><a href="models/playerplaystate.html#PlayerPlayState">spotifywebapipython.models.playerplaystate.PlayerPlayState</a></span>:</span></span>
6823
+ <span class="name">GetPlayerPlaybackState</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">market</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span>,</span><span class="param"> <span class="n">additionalTypes</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span>,</span><span class="param"> <span class="n">refresh</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span></span><span class="return-annotation">) -> <span class="n"><a href="models/playerplaystate.html#PlayerPlayState">spotifywebapipython.models.playerplaystate.PlayerPlayState</a></span>:</span></span>
6753
6824
 
6754
6825
 
6755
6826
  </div>
@@ -6776,6 +6847,9 @@ Specify <code>episode</code> to get podcast track information. <br />
6776
6847
  Note: This parameter was introduced to allow existing clients to maintain their current behaviour
6777
6848
  and might be deprecated in the future. In addition to providing this parameter, make sure that your client
6778
6849
  properly handles cases of new types in the future by checking against the type field of each object.</li>
6850
+ <li><strong>refresh (bool):</strong> True to return real-time information from the Spotify Web API and
6851
+ update the cache; otherwise, False to just return the cached value. <br />
6852
+ Default is True.</li>
6779
6853
  </ul>
6780
6854
 
6781
6855
  <h6 id="returns">Returns:</h6>
@@ -6843,6 +6917,43 @@ and the response contains error information.</li>
6843
6917
  </div>
6844
6918
 
6845
6919
 
6920
+ </div>
6921
+ <div id="SpotifyClient.GetPlayerPlaybackStateSonos" class="classattr">
6922
+ <div class="attr function">
6923
+
6924
+ <span class="def">def</span>
6925
+ <span class="name">GetPlayerPlaybackStateSonos</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">scDevice</span><span class="p">:</span> <span class="n">spotifywebapipython</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">spotifyconnectdevice</span><span class="o">.</span><span class="n">SpotifyConnectDevice</span></span><span class="return-annotation">) -> <span class="n"><a href="models/playerplaystate.html#PlayerPlayState">spotifywebapipython.models.playerplaystate.PlayerPlayState</a></span>:</span></span>
6926
+
6927
+
6928
+ </div>
6929
+ <a class="headerlink" href="#SpotifyClient.GetPlayerPlaybackStateSonos"></a>
6930
+
6931
+ <div class="docstring"><p>Get information about the Sonos user's current playback state, including track or episode, progress,
6932
+ and active device.</p>
6933
+
6934
+ <p>This is not part of the Spotify Web API specification; it is for Sonos devices only!</p>
6935
+
6936
+ <h6 id="arguments">Arguments:</h6>
6937
+
6938
+ <ul>
6939
+ <li><strong>scDevice (SpotifyConnectDevice):</strong> Spotify Connect device instance used to identify the Sonos player.</li>
6940
+ </ul>
6941
+
6942
+ <h6 id="returns">Returns:</h6>
6943
+
6944
+ <blockquote>
6945
+ <p>A <code>PlayerPlayState</code> object that contains Sonos player state details as well as
6946
+ currently playing content.</p>
6947
+ </blockquote>
6948
+
6949
+ <h6 id="raises">Raises:</h6>
6950
+
6951
+ <ul>
6952
+ <li><strong>SpotifyApiError:</strong> If the method fails for any other reason.</li>
6953
+ </ul>
6954
+ </div>
6955
+
6956
+
6846
6957
  </div>
6847
6958
  <div id="SpotifyClient.GetPlayerQueueInfo" class="classattr">
6848
6959
  <div class="attr function">
@@ -8474,43 +8585,6 @@ and the response contains error information.</li>
8474
8585
  </div>
8475
8586
 
8476
8587
 
8477
- </div>
8478
- <div id="SpotifyClient.GetSonosPlayerPlaybackState" class="classattr">
8479
- <div class="attr function">
8480
-
8481
- <span class="def">def</span>
8482
- <span class="name">GetSonosPlayerPlaybackState</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">scDevice</span><span class="p">:</span> <span class="n">spotifywebapipython</span><span class="o">.</span><span class="n">models</span><span class="o">.</span><span class="n">spotifyconnectdevice</span><span class="o">.</span><span class="n">SpotifyConnectDevice</span></span><span class="return-annotation">) -> <span class="n"><a href="models/playerplaystate.html#PlayerPlayState">spotifywebapipython.models.playerplaystate.PlayerPlayState</a></span>:</span></span>
8483
-
8484
-
8485
- </div>
8486
- <a class="headerlink" href="#SpotifyClient.GetSonosPlayerPlaybackState"></a>
8487
-
8488
- <div class="docstring"><p>Get information about the Sonos user's current playback state, including track or episode, progress,
8489
- and active device.</p>
8490
-
8491
- <p>This is not part of the Spotify Web API specification; it is for Sonos devices only!</p>
8492
-
8493
- <h6 id="arguments">Arguments:</h6>
8494
-
8495
- <ul>
8496
- <li><strong>scDevice (SpotifyConnectDevice):</strong> Spotify Connect device instance used to identify the Sonos player.</li>
8497
- </ul>
8498
-
8499
- <h6 id="returns">Returns:</h6>
8500
-
8501
- <blockquote>
8502
- <p>A <code>PlayerPlayState</code> object that contains Sonos player state details as well as
8503
- currently playing content.</p>
8504
- </blockquote>
8505
-
8506
- <h6 id="raises">Raises:</h6>
8507
-
8508
- <ul>
8509
- <li><strong>SpotifyApiError:</strong> If the method fails for any other reason.</li>
8510
- </ul>
8511
- </div>
8512
-
8513
-
8514
8588
  </div>
8515
8589
  <div id="SpotifyClient.GetSpotifyConnectDevice" class="classattr">
8516
8590
  <div class="attr function">
@@ -8560,7 +8634,7 @@ Default is 0.25; value range is 0 - 10.</li>
8560
8634
  <blockquote>
8561
8635
  <p>A <code>SpotifyConnectDevice</code> object for the deviceValue if one could be resolved.
8562
8636
  otherwise, a null value with the understanding that subsequent operations will probably
8563
- fail since it's not in the Spotify Connect discovery list. </p>
8637
+ fail since it's not in the Spotify Connect device list. </p>
8564
8638
  </blockquote>
8565
8639
 
8566
8640
  <h6 id="raises">Raises:</h6>
@@ -10246,10 +10320,13 @@ Example name: <code>Web Player (Chrome)</code> </li>
10246
10320
  <h6 id="arguments">Arguments:</h6>
10247
10321
 
10248
10322
  <ul>
10249
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
10250
- If not supplied, the user's currently active device is the target. <br />
10251
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
10252
- Example: <code>Web Player (Chrome)</code> </li>
10323
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
10324
+ This could be an id, name, a default device indicator (e.g. "*"), a
10325
+ SpotifyConnectDevice object, or null to utilize the active player device.
10326
+ A device is considered resolved if a SpotifyConnectDevice object is passed
10327
+ for this argument. An exception will be raised if the argument value could
10328
+ not be resolved or activated.
10329
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
10253
10330
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
10254
10331
  This delay will give the spotify web api time to process the change before
10255
10332
  another command is issued. <br />
@@ -10294,10 +10371,15 @@ and the response contains error information.</li>
10294
10371
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10295
10372
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10296
10373
 
10374
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10375
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10376
+
10377
+ <span class="c1"># set device to control.</span>
10378
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10379
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10380
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10381
+
10297
10382
  <span class="c1"># pause play on the specified Spotify Connect device.</span>
10298
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10299
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10300
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10301
10383
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Pause media on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">))</span>
10302
10384
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPause</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)</span>
10303
10385
 
@@ -10349,10 +10431,13 @@ Passing in a position that is greater than the length of the track will cause th
10349
10431
  player to start playing the next track. <br />
10350
10432
  Default is <code>0</code>. <br />
10351
10433
  Example: <code>25000</code> </li>
10352
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
10353
- If not supplied, the user's currently active device is the target. <br />
10354
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
10355
- Example: <code>Web Player (Chrome)</code> </li>
10434
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
10435
+ This could be an id, name, a default device indicator (e.g. "*"), a
10436
+ SpotifyConnectDevice object, or null to utilize the active player device.
10437
+ A device is considered resolved if a SpotifyConnectDevice object is passed
10438
+ for this argument. An exception will be raised if the argument value could
10439
+ not be resolved or activated.
10440
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
10356
10441
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
10357
10442
  This delay will give the spotify web api time to process the change before
10358
10443
  another command is issued. <br />
@@ -10401,10 +10486,15 @@ and the response contains error information.</li>
10401
10486
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10402
10487
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10403
10488
 
10489
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10490
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10491
+
10492
+ <span class="c1"># set device to control.</span>
10493
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10494
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10495
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10496
+
10404
10497
  <span class="c1"># play album on the specified Spotify Connect device.</span>
10405
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10406
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10407
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10408
10498
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:album:6vc9OTcyd3hyzabCmsdnwE&#39;</span> <span class="c1"># Album = Welcome to the New</span>
10409
10499
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing album on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10410
10500
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10412,7 +10502,6 @@ and the response contains error information.</li>
10412
10502
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - album should be playing&#39;</span><span class="p">)</span>
10413
10503
 
10414
10504
  <span class="c1"># play album starting at track #7 on the specified Spotify Connect device.</span>
10415
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10416
10505
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:album:6vc9OTcyd3hyzabCmsdnwE&#39;</span> <span class="c1"># Album = Welcome to the New</span>
10417
10506
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing album starting at track #7 on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10418
10507
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">offsetPosition</span><span class="o">=</span><span class="mi">6</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10420,7 +10509,6 @@ and the response contains error information.</li>
10420
10509
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - album should be playing&#39;</span><span class="p">)</span>
10421
10510
 
10422
10511
  <span class="c1"># play album starting at track #5 and 25 seconds position on the specified Spotify Connect device.</span>
10423
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10424
10512
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:album:6vc9OTcyd3hyzabCmsdnwE&#39;</span> <span class="c1"># Album = Welcome to the New</span>
10425
10513
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing album starting at track #5 (25 seconds) on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10426
10514
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">offsetPosition</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">positionMS</span><span class="o">=</span><span class="mi">25000</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10428,7 +10516,6 @@ and the response contains error information.</li>
10428
10516
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - album should be playing&#39;</span><span class="p">)</span>
10429
10517
 
10430
10518
  <span class="c1"># play album starting at track id #7 on the specified Spotify Connect device.</span>
10431
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10432
10519
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:album:6vc9OTcyd3hyzabCmsdnwE&#39;</span> <span class="c1"># Album = Welcome to the New</span>
10433
10520
  <span class="n">offsetUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:track:1kWUud3vY5ij5r62zxpTRy&#39;</span> <span class="c1"># Track = Flawless</span>
10434
10521
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing album starting at track #7 on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
@@ -10470,10 +10557,15 @@ and the response contains error information.</li>
10470
10557
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10471
10558
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10472
10559
 
10560
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10561
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10562
+
10563
+ <span class="c1"># set device to control.</span>
10564
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10565
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10566
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10567
+
10473
10568
  <span class="c1"># play artist on the specified Spotify Connect device.</span>
10474
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10475
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10476
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10477
10569
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:artist:6APm8EjxOHSYM5B4i3vT3q&#39;</span> <span class="c1"># Artist = MercyMe</span>
10478
10570
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing artist on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10479
10571
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10481,7 +10573,6 @@ and the response contains error information.</li>
10481
10573
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - artist should be playing&#39;</span><span class="p">)</span>
10482
10574
 
10483
10575
  <span class="c1"># play artist and start first song played at the 25 seconds position on the specified Spotify Connect device.</span>
10484
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10485
10576
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:artist:6APm8EjxOHSYM5B4i3vT3q&#39;</span> <span class="c1"># Artist = MercyMe</span>
10486
10577
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing artist at the 25 seconds position on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10487
10578
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">positionMS</span><span class="o">=</span><span class="mi">25000</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10522,10 +10613,15 @@ and the response contains error information.</li>
10522
10613
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10523
10614
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10524
10615
 
10616
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10617
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10618
+
10619
+ <span class="c1"># set device to control.</span>
10620
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10621
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10622
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10623
+
10525
10624
  <span class="c1"># play playlist on the specified Spotify Connect device.</span>
10526
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10527
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10528
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10529
10625
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:playlist:5v5ETK9WFXAnGQ3MRubKuE&#39;</span> <span class="c1"># Playlist = My Playlist</span>
10530
10626
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing playlist on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10531
10627
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10533,7 +10629,6 @@ and the response contains error information.</li>
10533
10629
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - playlist should be playing&#39;</span><span class="p">)</span>
10534
10630
 
10535
10631
  <span class="c1"># play playlist starting at track #7 on the specified Spotify Connect device.</span>
10536
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10537
10632
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:playlist:5v5ETK9WFXAnGQ3MRubKuE&#39;</span> <span class="c1"># Playlist = My Playlist</span>
10538
10633
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing playlist starting at track #7 on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10539
10634
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">offsetPosition</span><span class="o">=</span><span class="mi">6</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10541,7 +10636,6 @@ and the response contains error information.</li>
10541
10636
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - playlist should be playing&#39;</span><span class="p">)</span>
10542
10637
 
10543
10638
  <span class="c1"># play playlist starting at track #5 and 25 seconds position on the specified Spotify Connect device.</span>
10544
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10545
10639
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:playlist:5v5ETK9WFXAnGQ3MRubKuE&#39;</span> <span class="c1"># Playlist = My Playlist</span>
10546
10640
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing playlist starting at track #5 (25 seconds) on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
10547
10641
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayContext</span><span class="p">(</span><span class="n">contextUri</span><span class="p">,</span> <span class="n">offsetPosition</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">positionMS</span><span class="o">=</span><span class="mi">25000</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
@@ -10549,7 +10643,6 @@ and the response contains error information.</li>
10549
10643
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - playlist should be playing&#39;</span><span class="p">)</span>
10550
10644
 
10551
10645
  <span class="c1"># play playlist starting at track id #7 on the specified Spotify Connect device.</span>
10552
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10553
10646
  <span class="n">contextUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:playlist:5v5ETK9WFXAnGQ3MRubKuE&#39;</span> <span class="c1"># Playlist = My Playlist</span>
10554
10647
  <span class="n">offsetUri</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s1">&#39;spotify:track:1kWUud3vY5ij5r62zxpTRy&#39;</span> <span class="c1"># Track = Flawless</span>
10555
10648
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing playlist starting at track #7 on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">contextUri</span><span class="p">))</span>
@@ -10584,10 +10677,13 @@ and starts playing them.</p>
10584
10677
  <h6 id="arguments">Arguments:</h6>
10585
10678
 
10586
10679
  <ul>
10587
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
10588
- If not supplied, the user's currently active device is the target. <br />
10589
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
10590
- Example: <code>Web Player (Chrome)</code> </li>
10680
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
10681
+ This could be an id, name, a default device indicator (e.g. "*"), a
10682
+ SpotifyConnectDevice object, or null to utilize the active player device.
10683
+ A device is considered resolved if a SpotifyConnectDevice object is passed
10684
+ for this argument. An exception will be raised if the argument value could
10685
+ not be resolved or activated.
10686
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
10591
10687
  <li><strong>shuffle (bool):</strong> True to set player shuffle mode to on; otherwise, False for no shuffle.</li>
10592
10688
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
10593
10689
  This delay will give the spotify web api time to process the change before
@@ -10645,10 +10741,15 @@ number of tracks allowed for the request.</p>
10645
10741
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10646
10742
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10647
10743
 
10744
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10745
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10746
+
10747
+ <span class="c1"># set device to control.</span>
10748
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10749
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10750
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10751
+
10648
10752
  <span class="c1"># play all track favorites on the specified Spotify Connect device.</span>
10649
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10650
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10651
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10652
10753
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing track favorites on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="n">deviceId</span><span class="p">)</span>
10653
10754
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayTrackFavorites</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)</span>
10654
10755
 
@@ -10692,10 +10793,13 @@ Passing in a position that is greater than the length of the track will cause th
10692
10793
  player to start playing the next track. <br />
10693
10794
  Default is <code>0</code>. <br />
10694
10795
  Example: <code>25000</code> </li>
10695
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
10696
- If not supplied, the user's currently active device is the target. <br />
10697
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
10698
- Example: <code>Web Player (Chrome)</code> </li>
10796
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
10797
+ This could be an id, name, a default device indicator (e.g. "*"), a
10798
+ SpotifyConnectDevice object, or null to utilize the active player device.
10799
+ A device is considered resolved if a SpotifyConnectDevice object is passed
10800
+ for this argument. An exception will be raised if the argument value could
10801
+ not be resolved or activated.
10802
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
10699
10803
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
10700
10804
  This delay will give the spotify web api time to process the change before
10701
10805
  another command is issued. <br />
@@ -10744,10 +10848,15 @@ and the response contains error information.</li>
10744
10848
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10745
10849
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10746
10850
 
10851
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10852
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10853
+
10854
+ <span class="c1"># set device to control.</span>
10855
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10856
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10857
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10858
+
10747
10859
  <span class="c1"># play single track on the specified Spotify Connect device.</span>
10748
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10749
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10750
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10751
10860
  <span class="n">uris</span><span class="p">:</span><span class="nb">str</span><span class="o">=</span><span class="s1">&#39;spotify:track:1kWUud3vY5ij5r62zxpTRy&#39;</span> <span class="c1"># Flawless</span>
10752
10861
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing media on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">uris</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39;,&#39;</span><span class="p">,</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">- &#39;</span><span class="p">)))</span>
10753
10862
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayTracks</span><span class="p">(</span><span class="n">uris</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
@@ -10756,7 +10865,6 @@ and the response contains error information.</li>
10756
10865
 
10757
10866
  <span class="c1"># play single track on the specified Spotify Connect device.</span>
10758
10867
  <span class="c1"># start playing at the 25 seconds (25000 milliseconds) point in the track.</span>
10759
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10760
10868
  <span class="n">uris</span><span class="p">:</span><span class="nb">str</span><span class="o">=</span><span class="s1">&#39;spotify:track:1kWUud3vY5ij5r62zxpTRy&#39;</span> <span class="c1"># Flawless</span>
10761
10869
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing media on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">uris</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39;,&#39;</span><span class="p">,</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">- &#39;</span><span class="p">)))</span>
10762
10870
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayTracks</span><span class="p">(</span><span class="n">uris</span><span class="p">,</span> <span class="mi">25000</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
@@ -10764,7 +10872,6 @@ and the response contains error information.</li>
10764
10872
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - media should be playing&#39;</span><span class="p">)</span>
10765
10873
 
10766
10874
  <span class="c1"># play multiple tracks on the specified Spotify Connect device.</span>
10767
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10768
10875
  <span class="n">uris</span><span class="p">:</span><span class="nb">str</span><span class="o">=</span><span class="s1">&#39;spotify:track:1kWUud3vY5ij5r62zxpTRy,spotify:track:27JODWXo4VNa6s7HqDL9yQ,spotify:track:4iV5W9uYEdYUVa79Axb7Rh&#39;</span>
10769
10876
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Playing media on Spotify Connect device: </span><span class="se">\n</span><span class="s1">ID: </span><span class="si">%s</span><span class="s1"> </span><span class="se">\n</span><span class="s1">- </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">deviceId</span><span class="p">,</span> <span class="n">uris</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39;,&#39;</span><span class="p">,</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">- &#39;</span><span class="p">)))</span>
10770
10877
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaPlayTracks</span><span class="p">(</span><span class="n">uris</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
@@ -10799,10 +10906,13 @@ and the response contains error information.</li>
10799
10906
  <h6 id="arguments">Arguments:</h6>
10800
10907
 
10801
10908
  <ul>
10802
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
10803
- If not supplied, the user's currently active device is the target. <br />
10804
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
10805
- Example: <code>Web Player (Chrome)</code> </li>
10909
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
10910
+ This could be an id, name, a default device indicator (e.g. "*"), a
10911
+ SpotifyConnectDevice object, or null to utilize the active player device.
10912
+ A device is considered resolved if a SpotifyConnectDevice object is passed
10913
+ for this argument. An exception will be raised if the argument value could
10914
+ not be resolved or activated.
10915
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
10806
10916
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
10807
10917
  This delay will give the spotify web api time to process the change before
10808
10918
  another command is issued. <br />
@@ -10847,10 +10957,15 @@ and the response contains error information.</li>
10847
10957
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10848
10958
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10849
10959
 
10960
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
10961
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
10962
+
10963
+ <span class="c1"># set device to control.</span>
10964
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
10965
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
10966
+ <span class="c1">#deviceId:str = None # use currently active device</span>
10967
+
10850
10968
  <span class="c1"># resume play on the specified Spotify Connect device.</span>
10851
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10852
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10853
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10854
10969
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Resume media on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">))</span>
10855
10970
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaResume</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)</span>
10856
10971
 
@@ -10890,10 +11005,13 @@ zero if the <code>relativePositionMS</code> argument is specified. <br />
10890
11005
  Passing in a position that is greater than the length of the track will cause the
10891
11006
  player to start playing the next song. <br />
10892
11007
  Example = <code>25000</code> to start playing at the 25 second mark. </li>
10893
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
10894
- If not supplied, the user's currently active device is the target. <br />
10895
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
10896
- Example: <code>Web Player (Chrome)</code> </li>
11008
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11009
+ This could be an id, name, a default device indicator (e.g. "*"), a
11010
+ SpotifyConnectDevice object, or null to utilize the active player device.
11011
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11012
+ for this argument. An exception will be raised if the argument value could
11013
+ not be resolved or activated.
11014
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
10897
11015
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
10898
11016
  This delay will give the spotify web api time to process the change before
10899
11017
  another command is issued. <br />
@@ -10951,11 +11069,16 @@ argument was added to this API to support "skip" seeking. </p>
10951
11069
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10952
11070
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10953
11071
 
11072
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11073
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11074
+
11075
+ <span class="c1"># set device to control.</span>
11076
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11077
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11078
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11079
+
10954
11080
  <span class="c1"># seek to the given position in the track on the specified Spotify Connect device.</span>
10955
11081
  <span class="n">positionMS</span><span class="p">:</span><span class="nb">int</span> <span class="o">=</span> <span class="mi">25000</span>
10956
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
10957
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
10958
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
10959
11082
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Seeking to </span><span class="si">%d</span><span class="s1"> milliseconds on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">positionMS</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">))</span>
10960
11083
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaSeek</span><span class="p">(</span><span class="n">positionMS</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
10961
11084
 
@@ -10994,11 +11117,16 @@ argument was added to this API to support "skip" seeking. </p>
10994
11117
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
10995
11118
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
10996
11119
 
11120
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11121
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11122
+
11123
+ <span class="c1"># set device to control.</span>
11124
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11125
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11126
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11127
+
10997
11128
  <span class="c1"># seek ahead 5 seconds in the playing track.</span>
10998
11129
  <span class="n">relPositionMS</span><span class="p">:</span><span class="nb">int</span> <span class="o">=</span> <span class="mi">5000</span>
10999
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11000
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11001
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11002
11130
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Seeking ahead by </span><span class="si">%d</span><span class="s1"> milliseconds on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">relPositionMS</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">))</span>
11003
11131
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaSeek</span><span class="p">(</span><span class="n">relativePositionMS</span><span class="o">=</span><span class="n">relPositionMS</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
11004
11132
 
@@ -11006,9 +11134,6 @@ argument was added to this API to support "skip" seeking. </p>
11006
11134
 
11007
11135
  <span class="c1"># seek behind 5 seconds in the playing track.</span>
11008
11136
  <span class="n">relPositionMS</span><span class="p">:</span><span class="nb">int</span> <span class="o">=</span> <span class="o">-</span><span class="mi">5000</span>
11009
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11010
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11011
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11012
11137
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Seeking behind by </span><span class="si">%d</span><span class="s1"> milliseconds on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">relPositionMS</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">))</span>
11013
11138
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaSeek</span><span class="p">(</span><span class="n">relativePositionMS</span><span class="o">=</span><span class="n">relPositionMS</span><span class="p">,</span> <span class="n">deviceId</span><span class="o">=</span><span class="n">deviceId</span><span class="p">)</span>
11014
11139
 
@@ -11042,10 +11167,13 @@ argument was added to this API to support "skip" seeking. </p>
11042
11167
  <h6 id="arguments">Arguments:</h6>
11043
11168
 
11044
11169
  <ul>
11045
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
11046
- If not supplied, the user's currently active device is the target. <br />
11047
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
11048
- Example: <code>Web Player (Chrome)</code> </li>
11170
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11171
+ This could be an id, name, a default device indicator (e.g. "*"), a
11172
+ SpotifyConnectDevice object, or null to utilize the active player device.
11173
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11174
+ for this argument. An exception will be raised if the argument value could
11175
+ not be resolved or activated.
11176
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11049
11177
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
11050
11178
  This delay will give the spotify web api time to process the change before
11051
11179
  another command is issued. <br />
@@ -11090,10 +11218,15 @@ and the response contains error information.</li>
11090
11218
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
11091
11219
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
11092
11220
 
11221
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11222
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11223
+
11224
+ <span class="c1"># set device to control.</span>
11225
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11226
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11227
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11228
+
11093
11229
  <span class="c1"># skip to next track on the specified Spotify Connect device.</span>
11094
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11095
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11096
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11097
11230
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Skip to next track on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">))</span>
11098
11231
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaSkipNext</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)</span>
11099
11232
 
@@ -11127,10 +11260,13 @@ and the response contains error information.</li>
11127
11260
  <h6 id="arguments">Arguments:</h6>
11128
11261
 
11129
11262
  <ul>
11130
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
11131
- If not supplied, the user's currently active device is the target. <br />
11132
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
11133
- Example: <code>Web Player (Chrome)</code> </li>
11263
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11264
+ This could be an id, name, a default device indicator (e.g. "*"), a
11265
+ SpotifyConnectDevice object, or null to utilize the active player device.
11266
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11267
+ for this argument. An exception will be raised if the argument value could
11268
+ not be resolved or activated.
11269
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11134
11270
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
11135
11271
  This delay will give the spotify web api time to process the change before
11136
11272
  another command is issued. <br />
@@ -11175,10 +11311,15 @@ and the response contains error information.</li>
11175
11311
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
11176
11312
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
11177
11313
 
11314
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11315
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11316
+
11317
+ <span class="c1"># set device to control.</span>
11318
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11319
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11320
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11321
+
11178
11322
  <span class="c1"># skip to previous track on the specified Spotify Connect device.</span>
11179
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11180
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11181
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11182
11323
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Skip to previous track on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">))</span>
11183
11324
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerMediaSkipPrevious</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)</span>
11184
11325
 
@@ -11219,10 +11360,13 @@ and the response contains error information.</li>
11219
11360
  <li><code>off</code> - will turn repeat off.
11220
11361
  Default: <code>off</code> </li>
11221
11362
  </ul></li>
11222
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
11223
- If not supplied, the user's currently active device is the target. <br />
11224
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
11225
- Example: <code>Web Player (Chrome)</code> </li>
11363
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11364
+ This could be an id, name, a default device indicator (e.g. "*"), a
11365
+ SpotifyConnectDevice object, or null to utilize the active player device.
11366
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11367
+ for this argument. An exception will be raised if the argument value could
11368
+ not be resolved or activated.
11369
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11226
11370
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
11227
11371
  This delay will give the spotify web api time to process the change before
11228
11372
  another command is issued. <br />
@@ -11267,24 +11411,27 @@ and the response contains error information.</li>
11267
11411
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
11268
11412
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
11269
11413
 
11414
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11415
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11416
+
11417
+ <span class="c1"># set device to control.</span>
11418
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11419
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11420
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11421
+
11270
11422
  <span class="c1"># set repeat mode CONTEXT for the user&#39;s current playback device.</span>
11271
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11272
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11273
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11274
11423
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Set repeat mode CONTEXT for Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)))</span>
11275
11424
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerSetRepeatMode</span><span class="p">(</span><span class="s1">&#39;context&#39;</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
11276
11425
 
11277
11426
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - repeat mode CONTEXT was set&#39;</span><span class="p">)</span>
11278
11427
 
11279
11428
  <span class="c1"># set repeat mode TRACK for the user&#39;s current playback device.</span>
11280
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11281
11429
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Set repeat mode to single track for Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)))</span>
11282
11430
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerSetRepeatMode</span><span class="p">(</span><span class="s1">&#39;track&#39;</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
11283
11431
 
11284
11432
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - repeat mode TRACK was set&#39;</span><span class="p">)</span>
11285
11433
 
11286
11434
  <span class="c1"># set repeat mode OFF for the user&#39;s current playback device.</span>
11287
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11288
11435
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Set repeat mode OFF for Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)))</span>
11289
11436
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerSetRepeatMode</span><span class="p">(</span><span class="s1">&#39;off&#39;</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
11290
11437
 
@@ -11324,10 +11471,13 @@ and the response contains error information.</li>
11324
11471
  <li><code>False</code> - Do not shuffle user's playback.
11325
11472
  Default is False</li>
11326
11473
  </ul></li>
11327
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
11328
- If not supplied, the user's currently active device is the target. <br />
11329
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
11330
- Example: <code>Web Player (Chrome)</code> </li>
11474
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11475
+ This could be an id, name, a default device indicator (e.g. "*"), a
11476
+ SpotifyConnectDevice object, or null to utilize the active player device.
11477
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11478
+ for this argument. An exception will be raised if the argument value could
11479
+ not be resolved or activated.
11480
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11331
11481
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
11332
11482
  This delay will give the spotify web api time to process the change before
11333
11483
  another command is issued. <br />
@@ -11372,17 +11522,21 @@ and the response contains error information.</li>
11372
11522
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Auth Token:</span><span class="se">\n</span><span class="s1"> Type=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> Scope=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">AuthorizationType</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">AuthToken</span><span class="o">.</span><span class="n">Scope</span><span class="p">)))</span>
11373
11523
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">User:</span><span class="se">\n</span><span class="s1"> DisplayName=&quot;</span><span class="si">%s</span><span class="s1">&quot;</span><span class="se">\n</span><span class="s1"> EMail=&quot;</span><span class="si">%s</span><span class="s1">&quot;&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">DisplayName</span><span class="p">,</span> <span class="n">spotify</span><span class="o">.</span><span class="n">UserProfile</span><span class="o">.</span><span class="n">EMail</span><span class="p">))</span>
11374
11524
 
11525
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11526
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11527
+
11528
+ <span class="c1"># set device to control.</span>
11529
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11530
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11531
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11532
+
11375
11533
  <span class="c1"># set shuffle mode ON for the user&#39;s current playback device.</span>
11376
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11377
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11378
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11379
11534
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Set shuffle mode ON for Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)))</span>
11380
11535
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerSetShuffleMode</span><span class="p">(</span><span class="kc">True</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
11381
11536
 
11382
11537
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Success - shuffle mode ON was set&#39;</span><span class="p">)</span>
11383
11538
 
11384
11539
  <span class="c1"># set shuffle mode OFF for the user&#39;s current playback device.</span>
11385
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11386
11540
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Set shuffle mode OFF for Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)))</span>
11387
11541
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerSetShuffleMode</span><span class="p">(</span><span class="kc">False</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
11388
11542
 
@@ -11419,10 +11573,13 @@ and the response contains error information.</li>
11419
11573
  <li><strong>volumePercent (int):</strong> The volume to set. <br />
11420
11574
  Must be a value from 0 to 100 inclusive.
11421
11575
  Example: <code>50</code></li>
11422
- <li><strong>deviceId (str):</strong> The id or name of the device this command is targeting. <br />
11423
- If not supplied, the user's currently active device is the target. <br />
11424
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
11425
- Example: <code>Web Player (Chrome)</code> </li>
11576
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11577
+ This could be an id, name, a default device indicator (e.g. "*"), a
11578
+ SpotifyConnectDevice object, or null to utilize the active player device.
11579
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11580
+ for this argument. An exception will be raised if the argument value could
11581
+ not be resolved or activated.
11582
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11426
11583
  <li><strong>delay (float):</strong> Time delay (in seconds) to wait AFTER issuing the command to the player. <br />
11427
11584
  This delay will give the spotify web api time to process the change before
11428
11585
  another command is issued. <br />
@@ -11462,11 +11619,16 @@ and the response contains error information.</li>
11462
11619
  <span class="c1"># create new spotify client instance.</span>
11463
11620
  <span class="n">spotify</span><span class="p">:</span><span class="n">SpotifyClient</span> <span class="o">=</span> <span class="n">SpotifyClient</span><span class="p">()</span>
11464
11621
 
11622
+ <span class="c1"># if no active spotify player device, then use the specified device.</span>
11623
+ <span class="n">spotify</span><span class="o">.</span><span class="n">DefaultDeviceId</span> <span class="o">=</span> <span class="s2">&quot;Bose-ST10-1&quot;</span>
11624
+
11625
+ <span class="c1"># set device to control.</span>
11626
+ <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;*&quot;</span> <span class="c1"># use DefaultDeviceId</span>
11627
+ <span class="c1">#deviceId:str = &quot;Office&quot; # use device name (or id)</span>
11628
+ <span class="c1">#deviceId:str = None # use currently active device</span>
11629
+
11465
11630
  <span class="c1"># set the volume for the user&#39;s current playback device.</span>
11466
- <span class="n">volumePercent</span><span class="p">:</span><span class="nb">int</span> <span class="o">=</span> <span class="mi">100</span>
11467
- <span class="n">deviceId</span><span class="p">:</span><span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span> <span class="c1"># use currently playing device</span>
11468
- <span class="c1">#deviceId:str = &quot;Web Player (Chrome)&quot; # or device name</span>
11469
- <span class="c1">#deviceId:str = &quot;0d1841b0976bae2a3a310dd74c0f3df354899bc8&quot; # or device id</span>
11631
+ <span class="n">volumePercent</span><span class="p">:</span><span class="nb">int</span> <span class="o">=</span> <span class="mi">75</span>
11470
11632
  <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\n</span><span class="s1">Set </span><span class="si">%d%%</span><span class="s1"> volume on Spotify Connect device:</span><span class="se">\n</span><span class="s1">- &quot;</span><span class="si">%s</span><span class="s1">&quot; ...&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">volumePercent</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">deviceId</span><span class="p">)))</span>
11471
11633
  <span class="n">spotify</span><span class="o">.</span><span class="n">PlayerSetVolume</span><span class="p">(</span><span class="n">volumePercent</span><span class="p">,</span> <span class="n">deviceId</span><span class="p">)</span>
11472
11634
 
@@ -11487,7 +11649,7 @@ and the response contains error information.</li>
11487
11649
  <div class="attr function">
11488
11650
 
11489
11651
  <span class="def">def</span>
11490
- <span class="name">PlayerTransferPlayback</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">deviceId</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span>,</span><span class="param"> <span class="n">play</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span>,</span><span class="param"> <span class="n">delay</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mf">0.5</span>,</span><span class="param"> <span class="n">refreshDeviceList</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span>,</span><span class="param"> <span class="n">forceActivateDevice</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span></span><span class="return-annotation">) -> <span class="kc">None</span>:</span></span>
11652
+ <span class="name">PlayerTransferPlayback</span><span class="signature pdoc-code multiline">(<span class="param"> <span class="bp">self</span>,</span><span class="param"> <span class="n">deviceId</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span>,</span><span class="param"> <span class="n">play</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span>,</span><span class="param"> <span class="n">delay</span><span class="p">:</span> <span class="nb">float</span> <span class="o">=</span> <span class="mf">0.5</span>,</span><span class="param"> <span class="n">refreshDeviceList</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span>,</span><span class="param"> <span class="n">forceActivateDevice</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">True</span>,</span><span class="param"> <span class="n">deviceIdFrom</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="kc">None</span></span><span class="return-annotation">) -> <span class="kc">None</span>:</span></span>
11491
11653
 
11492
11654
 
11493
11655
  </div>
@@ -11500,9 +11662,13 @@ and the response contains error information.</li>
11500
11662
  <h6 id="arguments">Arguments:</h6>
11501
11663
 
11502
11664
  <ul>
11503
- <li><strong>deviceId (str):</strong> The id or name of the device on which playback should be started/transferred.
11504
- Example: <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code> <br />
11505
- Example: <code>Web Player (Chrome)</code> </li>
11665
+ <li><strong>deviceId (str | SpotifyConnectDevice) | None):</strong> The target player device identifier.
11666
+ This could be an id, name, a default device indicator (e.g. "*"), a
11667
+ SpotifyConnectDevice object, or null to utilize the active player device.
11668
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11669
+ for this argument. An exception will be raised if the argument value could
11670
+ not be resolved or activated.
11671
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11506
11672
  <li><strong>play (bool):</strong> The transfer method: <br />
11507
11673
  <ul>
11508
11674
  <li><code>True</code> - ensure playback happens on new device. </li>
@@ -11520,6 +11686,12 @@ Default is True. </li>
11520
11686
  force the device to reconnect to Spotify Connect; otherwise, False to not
11521
11687
  disconnect.
11522
11688
  Default is True. </li>
11689
+ <li><strong>deviceIdFrom (str | SpotifyConnectDevice) | None):</strong> The player device identifier where play is being transferred from.
11690
+ This could be an id, name, a default device indicator (e.g. "*"), a
11691
+ SpotifyConnectDevice object, or null.
11692
+ A device is considered resolved if a SpotifyConnectDevice object is passed
11693
+ for this argument. <br />
11694
+ Examples are <code>0d1841b0976bae2a3a310dd74c0f3df354899bc8</code>, <code>Office</code>, <code>*</code>, None. </li>
11523
11695
  </ul>
11524
11696
 
11525
11697
  <h6 id="raises">Raises:</h6>
@@ -11534,6 +11706,11 @@ and the response contains error information.</li>
11534
11706
 
11535
11707
  <p>The order of execution is not guaranteed when you use this API with other Player API endpoints.</p>
11536
11708
 
11709
+ <p>The <code>deviceIdFrom</code> argument is not part of the Spotify Web API specification. If a value
11710
+ was supplied, then we will attempt to stop play on the device if it's needed. This is required
11711
+ if transferring playback from a Sonos device that is playing content on its local queue; if you
11712
+ don't stop playback on it, then it and the target device will both be playing!</p>
11713
+
11537
11714
  <p><details>
11538
11715
  <summary>Sample Code</summary></p>
11539
11716