comparison plugins/mod_admin_telnet.lua @ 10845:785fa0112411

mod_admin_telnet: Update existing sessions on reload This removes the need to disconnect and reconnect to the telnet console for changes to take effect.
author Kim Alvefur <zash@zash.se>
date Sat, 16 May 2020 20:46:12 +0200
parents b81f4fd7f21a
children 826023c3322b
comparison
equal deleted inserted replaced
10844:05f4386c846e 10845:785fa0112411
158 158
159 session.print("OK: "..tostring(message)); 159 session.print("OK: "..tostring(message));
160 end 160 end
161 161
162 local sessions = {}; 162 local sessions = {};
163
164 function module.save()
165 return { sessions = sessions }
166 end
167
168 function module.restore(data)
169 if data.sessions then
170 for conn in pairs(data.sessions) do
171 conn:setlistener(console_listener);
172 local session = console:new_session(conn);
173 sessions[conn] = session;
174 end
175 end
176 end
163 177
164 function console_listener.onconnect(conn) 178 function console_listener.onconnect(conn)
165 -- Handle new connection 179 -- Handle new connection
166 local session = console:new_session(conn); 180 local session = console:new_session(conn);
167 sessions[conn] = session; 181 sessions[conn] = session;