1

我正在尝试制作一个简单的 Discord Bot,它会在流媒体上线时发布,但我不确定如何在没有网站的情况下使用 Twitch webhook?是否可以在 Python 脚本中处理这一切?

文档在这里

webhookurl = "https://api.twitch.tv/helix/webhooks/hub/"
payload = {"hub.mode":"subscribe",
    "hub.topic":"https://api.twitch.tv/helix/users/streams?user_id=27942990",
    "hub.callback":url,
    "hub.lease_seconds":"0" 
}
header = {"Content-Type":"application/json", "Client-ID": clientid}

req = requests.post(url, headers=header, data = payload)
resp = req.json()

print(resp)

由于我没有网站可以响应,因此不确定将什么作为回调 URL。

我正在使用 Python 3.6

旁注:我可以查明频道是否正在直播,但 Twitch 建议使用 webhook 来检查流何时上线,我只是想尝试了解这一点。

4

1 回答 1

1

了解如何对其进行排序(有点)并认为我会在这里回复。

我必须运行一个网络服务器来接受数据,所以这就是我所拥有的。在 POST 函数中,web.data 是表示流是否实时等的响应

import web

urls = ('/.*', 'hooks')

app = web.application(urls, globals())


class hooks:

    def POST(self):
        data = web.data()
        print("")
        print('DATA RECEIVED:')
        print(data)
        print("")

        return 'OK'

    def GET(self):
        try:
            data = web.input()
            data = data['hub.challenge']
            print("Hub challenge: ", data)
            return data
        except KeyError:
            return web.BadRequest


if __name__ == '__main__':
    app.run()
于 2018-09-07T14:54:36.397 回答