Skip to content
Snippets Groups Projects
Commit 5c04e733 authored by joenas's avatar joenas
Browse files

Only join configured room

parent 4a64f21a
No related branches found
No related tags found
No related merge requests found
...@@ -29,5 +29,5 @@ end ...@@ -29,5 +29,5 @@ end
setting("string", "user", nil, true) -- User name, fe @digbot:matrix.org setting("string", "user", nil, true) -- User name, fe @digbot:matrix.org
setting("string", "server", nil, true) -- Server address to connect to setting("string", "server", nil, true) -- Server address to connect to
setting("number", "port", 8448) -- Server port to connect to setting("number", "port", 8448) -- Server port to connect to
setting("string", "channel", nil, true) -- Channel to join (not needed?) setting("string", "room_id", nil, true) -- Channel to join (not needed?)
setting("string", "password", nil, true) -- Server password setting("string", "password", nil, true) -- Server password
...@@ -32,14 +32,14 @@ end ...@@ -32,14 +32,14 @@ end
local client = require("matrix").client("https://"..matrix.config.server..":"..matrix.config.port) local client = require("matrix").client("https://"..matrix.config.server..":"..matrix.config.port)
client:login_with_password(matrix.config.user, matrix.config.password, true) local start_ts = os.time() * 1000
local running, start_ts = true, os.time() * 1000
client:hook("invite", function (client, room) client:hook("invite", function (client, room)
-- When invited to a room, join it -- When invited to a room, join it
eprintf("Invited to room %s\n", room) eprintf("Invited to room %s\n", room)
if room.room_id == matrix.config.room_id then
client:join_room(room) client:join_room(room)
end
end):hook("logged-in", function (client) end):hook("logged-in", function (client)
matrix.connected = true matrix.connected = true
eprintf("Logged in successfully\n") eprintf("Logged in successfully\n")
...@@ -59,7 +59,7 @@ end):hook("joined", function (client, room) ...@@ -59,7 +59,7 @@ end):hook("joined", function (client, room)
eprintf(" - %s\n", room) eprintf(" - %s\n", room)
end end
room:send_text("Type “!bot quit” to make the bot exit") --room:send_text("Type “!bot quit” to make the bot exit")
room:hook("message", function (room, sender, message, event) room:hook("message", function (room, sender, message, event)
if event.origin_server_ts < start_ts then if event.origin_server_ts < start_ts then
...@@ -83,7 +83,7 @@ end):hook("joined", function (client, room) ...@@ -83,7 +83,7 @@ end):hook("joined", function (client, room)
end end
client:logout() client:logout()
matrix.connected = false matrix.connected = false
else elseif room.room_id == matrix.config.room_id then
minetest.chat_send_all("<"..sender.."> "..message.body) minetest.chat_send_all("<"..sender.."> "..message.body)
end end
end) end)
......
...@@ -13,7 +13,7 @@ matrix.server (Matrix server) string https://matrix.org ...@@ -13,7 +13,7 @@ matrix.server (Matrix server) string https://matrix.org
matrix.port (Server port) int 8448 matrix.port (Server port) int 8448
# Channel the bot joins after connecting. # Channel the bot joins after connecting.
matrix.channel (Channel to join) string #minetest matrix.room_id (Channel to join) string
# Matrix user password. # Matrix user password.
matrix.password (Server password) string matrix.password (Server password) string
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment