Sonos API作为回报发送的验证码太短?

问题描述

向所有聪明的人寻求帮助,技巧和窍门:)

我想将NodeRed实例连接到Sonos API,以各种方式控制扬声器。但是,在OAUTH过程中,使用我的帐户的用户名密码登录后,通过我的redirect_uri发送回我的身份验证代码似乎太短了吗?在开发人员指南中,示例身份验证代码如下所示: f10072fa6-2134-4fe1-93fd-ca5b9cffa738 在我的情况下,我只是收到第一部分,直到第一个破折号。例如:f10072fa6

起初,我通过netscaler运行连接,然后改为使用Nginx反向代理,以为netscaler可能会截断URL(出于某些非常奇怪的原因),但结果却是相同的。>

有想法吗?

解决方法

您收到的授权码正确。授权代码格式最近已更改,文档需要更新以反映这一点。 Authorization code has different structure than example code也回答了这个问题。

谢谢! -马克

,

您还可以使用nodered-sonos来控制扬声器。如果您还可以对扬声器进行超级本地控制,则无需设置oauth2并使用基于云的api。

我正在使用以下工具的组合来完全控制扬声器:

    您选择的
  • MQTT服务器在Docker中(我正在使用emqx)
  • Sonos2mqtt,这是我自己的应用程序,用于在Docker中将Sonos连接到mqtt
  • 具有正常mqtt进/出流量的节点红色。

我的收藏夹流向

  • 如果组开始播放,请加入播放栏进行分组
  • 暂停组是播放栏离开组(如果我打开电视,它将退出,这会停止音乐)
  • 如果有人按下门铃,则在所有扬声器上播放铃声
  • 打开后门时宣布(文字转语音)