]);
$this->authorize('editRestream', $channel);
$nick = empty($validatedData['bot_nick']) ? 'localhorsttv' : $validatedData['bot_nick'];
- $text = empty($validatedData['category']) ? $validatedData['text'] : $channel->randomOfClass($validatedData['category']);
- TwitchBotCommand::chat($channel->twitch_chat, $text, $request->user(), $nick);
+ if (empty($validatedData['category'])) {
+ TwitchBotCommand::chat($channel->twitch_chat, $validatedData['text'], $request->user(), $nick);
+ } else {
+ TwitchBotCommand::randomChat($channel, $validatedData['category'], $request->user(), $nick);
+ }
return $this->sendChannel($channel);
}
+ public function chatBotLog(Request $request, Channel $channel) {
+ $this->authorize('editRestream', $channel);
+ $log = $channel->chat_bot_logs()
+ ->with(['origin', 'user'])
+ ->orderBy('created_at', 'DESC')
+ ->limit(150)
+ ->get();
+ return $log->values()->toJson();
+ }
+
public function chatSettings(Request $request, Channel $channel) {
if (!$channel->twitch_chat) {
throw new \Exception('channel has no twitch chat set');
}
$validatedData = $request->validate([
'language' => 'string|in:de,en,es,fr',
+ 'min_age' => 'integer|min:1',
'respond' => 'string|in:50,no,yes',
+ 'source' => 'string|in:any,cat,catchan,chan',
'wait_msgs_min' => 'integer|min:1',
- 'wait_msgs_max' => 'integer',
+ 'wait_msgs_max' => 'integer|min:1',
'wait_time_min' => 'integer',
'wait_time_max' => 'integer',
]);