Use table syntax to work with >lines<

This commit is contained in:
Ollo 2021-02-13 15:11:42 +01:00
parent 621cef2ab5
commit 6232bf5180

View File

@ -1,36 +1,40 @@
-- Telnet client
local telnetClient=nil
lines = {}
-- Telnet Server -- Telnet Server
function startTelnetServer() function startTelnetServer()
s=net.createServer(net.TCP, 180) s=net.createServer(net.TCP, 180)
s:listen(23,function(c) s:listen(23,function(c)
global_c=c telnetClient=c
printlines = {} function s_output(str)
function s_output(str) if (telnetClient ~= nil) then
if(global_c~=nil) then if (#lines > 0) then
if #printlines > 0 then table.insert(lines, str)
printlines[ #printlines + 1] = str else
else table.insert(lines, str)
printlines[ #printlines + 1] = str telnetClient:send("\r") -- Send something, so the queue is read after sending
global_c:send("\r") -- Send something, so the queue is read after sending end
end end
end end
end node.output(s_output, 0)
node.output(s_output, 0) c:on("receive",function(c,l)
c:on("receive",function(c,l) node.input(l)
node.input(l) end)
c:on("disconnection",function(c)
node.output(nil)
telnetClient=nil
end)
c:on("sent", function()
if (#lines > 0) then
local localstr = table.remove(lines, 1)
print( tostring(localstr) )
telnetClient:send(localstr)
end
end)
print("Welcome to the Wordclock.")
print("- mydofile(\"commands\")")
print("- storeConfig()")
print("Visite https://github.com/nodemcu/nodemcu-firmware/wiki/nodemcu_api_en for further commands")
end) end)
c:on("disconnection",function(c) print("Telnetserver started")
node.output(nil) end
global_c=nil
end)
c:on("sent", function()
if #printlines > 0 then
global_c:send(table.remove(printlines, 1))
end
end)
print("Welcome to the Wordclock.")
print("- mydofile(\"commands\")")
print("- storeConfig()")
print("Visite https://github.com/nodemcu/nodemcu-firmware/wiki/nodemcu_api_en for further commands")
end)
print("Telnetserver is up")
end