You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何生成Roku TV私密聆听会话认证请求的param-response值?

生成Roku私密聆听认证的param-response值

要生成param-response,你需要结合Roku设备的6位配对码和服务器返回的param-challenge,通过HMAC-SHA1哈希后再Base64编码,具体步骤如下:

核心步骤

  • 获取Roku设备的配对码:在Roku电视的「设置」→「音频」→「私密聆听」→「配对新设备」中生成6位数字码。
  • 解码param-challenge:将返回的Base64字符串解码为二进制字节。
  • 计算HMAC-SHA1哈希:以配对码的字节形式作为密钥,对解码后的challenge字节进行HMAC-SHA1计算。
  • 编码结果:将哈希结果重新进行Base64编码,得到最终的param-response值。

代码示例(Python)

import hmac
import hashlib
import base64

def generate_param_response(pairing_code, challenge):
    # 解码challenge为二进制字节
    challenge_bytes = base64.b64decode(challenge)
    # 配对码转字节(注意是字符串形式的数字码)
    key_bytes = pairing_code.encode('utf-8')
    # 计算HMAC-SHA1
    hmac_result = hmac.new(key_bytes, challenge_bytes, hashlib.sha1).digest()
    # Base64编码得到param-response
    return base64.b64encode(hmac_result).decode('utf-8')

# 示例用法
pairing_code = "123456"  # 替换为你的Roku配对码
challenge = "VLCp54BDvDkRHaFyyNky1g=="  # 服务器返回的param-challenge
param_response = generate_param_response(pairing_code, challenge)
print(f'"param-response": "{param_response}"')

注意事项

  • 配对码并非一次性使用,只要不重置私密聆听配对,同一设备的配对码可重复使用;若重置配对,需重新获取新的配对码。
  • 确保请求的request-id与会话逻辑保持一致,示例中使用"0",后续多请求场景需按顺序递增。

内容的提问来源于stack exchange,提问作者elshnkhll

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 13:54:59