From fe0be3e170562cc61b3d93c6b49742296d8c25bd Mon Sep 17 00:00:00 2001 From: AliasAlreadyTaken Date: Fri, 25 Feb 2022 21:07:31 +0100 Subject: [PATCH] Make send and receive overwriteable --- init.lua | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/init.lua b/init.lua index 35fa3e8..60d7f51 100644 --- a/init.lua +++ b/init.lua @@ -20,13 +20,6 @@ yl_matterbridge.information.license = "MIT" yl_matterbridge.information.name = "yl_matterbridge" yl_matterbridge.information.additional = "Additional information" --- API --- Overwrite this function to grab the - -function yl_matterbridge.publish_to_chat(username,text) - core.chat_send_all("<"..v.username.."@irc> "..v.text) -end - local address = minetest.settings:get("yl_matterbridge.address") or false local port = minetest.settings:get("yl_matterbridge.port") or false local gateway = minetest.settings:get("yl_matterbridge.gateway") or false @@ -64,13 +57,7 @@ function send(user_name, message_text) return true end -minetest.register_on_chat_message( - function(user_name, message_text) - send(user_name, message_text) - end -) - -local gs = function(dtime) +local function receive(dtime) local url = "http://" .. address .. ":" .. port .. "/api/messages" local timeout = 0 @@ -96,7 +83,25 @@ local gs = function(dtime) ) end -minetest.register_globalstep(gs) +-- API +-- Overwrite these function in your chat mod, if you want to govern sending and receveiving yourself +-- Don't forget to add an optional dependency to yl_matterbridge + +function yl_matterbridge.publish_to_chat(user_name,message_text) + core.chat_send_all("<"..user_name.."@irc> "..message_text) +end + +function yl_matterbridge.send_to_bridge(user_name,message_text) + send(user_name, message_text) +end + +-- connect to Minetest + +minetest.register_on_chat_message( + yl_matterbridge.send_to_bridge +) + +minetest.register_globalstep(receive) local mod_end_time = (core.get_us_time() - mod_start_time) / 1000000 core.log("action", "[MOD] yl_matterbridge loaded in [" .. mod_end_time .. "s]")