redbeed / openoverlay
您的自托管服务,用于Twitch基于Web的覆盖和Laravel自定义机器人。
Requires
- ext-json: *
- guzzlehttp/guzzle: ^7.2
- illuminate/support: ~7|~8
- ratchet/pawl: ^0.3.5
- react/socket: ^1.6
- socialiteproviders/twitch: ^5.3
- spatie/url: ^1.3
Requires (Dev)
- nunomaduro/phpinsights: ^1.14
- orchestra/testbench: ~5|~6
- phpunit/phpunit: ~9.0
README
OpenOverlay是一个自托管服务,用于您的基于Web的Twitch覆盖和机器人。此Laravel包可以帮助您在直播时接收所有Twitch事件动作,并在您的覆盖上显示它们。您还可以使用简单和高级命令开发自己的机器人。
如果您想从零开始创建覆盖,我们有一个示例项目。独立版本:redbeed/OpenOverlay-Standalone
安装
通过Composer
$ composer require redbeed/openoverlay
配置
添加OpenOverlay的laravel配置
php artisan vendor:publish --provider="Redbeed\OpenOverlay\OpenOverlayServiceProvider"
迁移用户连接和Twitch事件表
php artisan migrate
将配置添加到 config/services.php
'twitch' => [ 'client_id' => env('TWITCH_CLIENT_ID'), 'client_secret' => env('TWITCH_CLIENT_SECRET'), 'redirect' => env('TWITCH_REDIRECT_URI') ],
添加ENV键
TWITCH_CLIENT_ID=
TWITCH_CLIENT_SECRET=
OVERLAY_SECRET=
OVERLAY_TWITCH_APP_TOKEN=
TWITCH_REDIRECT_URI=${APP_URL}/connection/callback
将 UserOpenOverlay 特性添加到 User.php
<?php namespace App\Models; ... use \Redbeed\OpenOverlay\Models\User\UserOpenOverlay; class User extends Authenticatable { use ... use UserOpenOverlay;
将回调URL添加到您的Twitch应用
${APP_URL}/connection/callback ${APP_URL}/connection/app-token/callback ${APP_URL}/connection/bot/callback
生成APP令牌
要订阅Twitch-EventSub,您需要生成一个App-Token。
-
首先,您需要在
openoverlay.php配置中启用“app token routes”。return [ ... 'webhook' => [ 'twitch' => [ 'app_token' => [ 'regenerate' => true, ], ] ] ...
将
regenerate设置为true。 -
使用您的laravel应用打开
${APP_URL}/connection/app-token/redirect。 -
使用您的Twitch应用登录到您的Twitch开发者帐户。
-
复制App-Token并将其用作
OVERLAY_TWITCH_APP_TOKENENV值的值。
添加机器人
要添加机器人,您需要将您的应用与机器人Twitch帐户链接。
- 使用您的laravel应用打开
${APP_URL}/connection/bot/redirect。 - 使用您的Twitch应用登录到您的Twitch机器人帐户。
- 重定向后,您需要手动将您的laravel帐户与机器人连接。
- 打开您的数据库表 "bot_connections" 并将您的机器人与您的用户连接。
- 重启Bot Artisan机器人
生成密钥
为了验证每个Twitch调用,您需要为您的应用生成一个密钥。如果您更改了OVERLAY_SECRET,则需要重新订阅每个事件。
php artisan overlay:secret
发送伪事件
在开发或测试覆盖时,您可以发送“伪”事件。
php artisan {TwitchUserId} {EventType}
php artisan 1337 channel.follow
变更日志
请参阅changelog以获取有关最近更改的更多信息。
测试
$ composer test
贡献
请参阅contributing.md以获取详细信息和一个待办事项列表。
安全
如果您发现任何与安全相关的问题,请通过作者电子邮件联系,而不是使用问题跟踪器。
致谢
许可证
许可证。有关更多信息,请参阅许可证文件。