寻找一种在 twitch 上有特定频道点兑换时发布到我的不和谐服务器的方法

问题描述 投票:0回答:1

我正在尝试找到一种方法,让我的 Discord 服务器在 twitch 频道上触发频道点兑换时发布数据。

我找不到直接的方法,所以

我使用第 3 方聊天机器人(称为 chatty)将消息记录到本地 Windows 10 计算机上的日志文件中

然后在Windows powershell上使用脚本在discord上使用webhooks发布消息,问题是脚本发布“File: C:\Users\AYYA.chatty\logs�3-12-09_highlighted.log Changed”而不是实际的日志文件最后一行的数据。

看起来像下面这样

示例:“[2023-12-09 04:26:54 AM][#Testrider] MOD|SUB/12 @ELCabager Wondertrade 池中有 1x 伊布!(0x ✨)”


使用的脚本如下

$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "C:\Users\AYYA\.chatty\logs"
$watcher.Filter = "2023-12-09_highlighted.log"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true

$action = {
$path = $Event.SourceEventArgs.FullPath
$changeType = $Event.SourceEventArgs.ChangeType
$log = "File: $path $changeType"
$webhookurl = "https://discord.com/api/webhooks/1182854675947593799/DHgRfZWP547WkDUrwG9LuGtwNrWLs51o6Z0CmgqLa0Gh_jtUmeDj9qxmhvPNOV8_dOkx"
$body = @{
    content = $log
} | ConvertTo-Json
Invoke-RestMethod -Uri $webhookurl -Method Post -Body $body -ContentType 'application/json'

}

Register-ObjectEvent -InputObject $watcher -EventName Created -Action $action
Register-ObjectEvent -InputObject $watcher -EventName Changed -Action $action`
powershell discord windows-10 webhooks twitch
1个回答
0
投票

对于日志文件最后一行的实际数据,请使用

Get-Content
cmdlet 读取它,如下所示:

$content = (Get-Content -Path $path -Tail 1).ToString()
$body = @{
    content = $content
} | ConvertTo-Json
© www.soinside.com 2019 - 2024. All rights reserved.