用 Java 读取 TeamSpeak 3 消息

我想知道是否有其他方法可以使用 Java 读取 TeamSpeak 频道聊天记录。

我知道你可以使用一个打开消息作为参数的 Lua 插件来打开 Java 程序。

Lua 插件的 event.lua 文件代码:(可能已过时)

local function onTextMessageEvent(serverConnectionHandlerID, targetMode, toID, fromID, fromName, fromUniqueIdentifier, message, ffIgnored)
    print("Testmodule: onTextMessageEvent: " .. serverConnectionHandlerID .. " " .. targetMode .. " " .. toID .. " " .. fromID .. " " .. fromName .. " " .. fromUniqueIdentifier .. " " .. message .. " " .. ffIgnored)
    if targetMode == 2 then
        os.execute("Program.exe " .. '"' .. message .. '"')
        if message == "!command#1" or message == "!command#2" or message == "!command#3" then
            folder = os.getenv("APPDATA")
            file = io.open(folder .. "/" .. "tmp.txt", "r")
            tempfile = file:read("*all")
            file:close()
            os.remove(folder .. "/" .. "tmp.txt")
            ts3.requestSendChannelTextMsg(serverConnectionHandlerID, tempfile, fromID)
        end
    end
    return 0
end

基本上,Program.exe 创建 tmp.txt 文件,并将指定的答案(在 Program.exe 中)写入该文件,然后由 Lua 插件将该文件发送到聊天中。

现在我想知道是否有任何方法可以直接使用 Java 获取消息(因此不再需要 Lua 插件)。

我非常感谢任何帮助

点赞
用户7015829
用户7015829

我发现你可以简单地扫描频道和服务器的聊天记录以寻找新的条目。

这些日志可以在此处找到:

%APPDATA%\Roaming\TS3Client\chats\<UniqueServerID>

不幸的是,我不知道 UniqueServerID 是如何生成的,也不知道私人聊天记录在哪里可以找到。

2016-10-16 13:56:11