consolidate telnet example

This commit is contained in:
devsaurus 2016-01-06 23:18:42 +01:00
parent ff3926175c
commit 87351a2d10
4 changed files with 31 additions and 128 deletions

View File

@ -1,17 +0,0 @@
-- a simple telnet server
s=net.createServer(net.TCP,180)
s:listen(2323,function(c)
function s_output(str)
if(c~=nil)
then c:send(str)
end
end
node.output(s_output, 0) -- re-direct output to function s_ouput.
c:on("receive",function(c,l)
node.input(l) -- works like pcall(loadstring(l)) but support multiple separate line
end)
c:on("disconnection",function(c)
node.output(nil) -- un-regist the redirect output function, output goes to serial
end)
print("Welcome to NodeMcu world.")
end)

View File

@ -1,41 +0,0 @@
print("====Wicon, a LUA console over wifi.==========")
print("Author: openthings@163.com. copyright&GPL V2.")
print("Last modified 2014-11-19. V0.2")
print("Wicon Server starting ......")
function startServer()
print("Wifi AP connected. Wicon IP:")
print(wifi.sta.getip())
sv=net.createServer(net.TCP, 180)
sv:listen(8080, function(conn)
print("Wifi console connected.")
function s_output(str)
if (conn~=nil) then
conn:send(str)
end
end
node.output(s_output,0)
conn:on("receive", function(conn, pl)
node.input(pl)
if (conn==nil) then
print("conn is nil.")
end
end)
conn:on("disconnection",function(conn)
node.output(nil)
end)
end)
print("Wicon Server running at :8080")
print("===Now,Using xcon_tcp logon and input LUA.====")
end
tmr.alarm(0, 1000, 1, function()
if wifi.sta.getip()=="0.0.0.0" then
print("Connect AP, Waiting...")
else
startServer()
tmr.stop()
end
end)

View File

@ -1,39 +1,35 @@
print("====Wicon, a LUA console over wifi.==========") -- a simple telnet server
print("Author: openthings@163.com. copyright&GPL V2.")
print("Last modified 2014-11-19. V0.2")
print("Wicon Server starting ......")
function connected(conn) telnet_srv = net.createServer(net.TCP, 180)
print("Wifi console connected.") telnet_srv:listen(2323, function(socket)
function s_output(str) local fifo = {}
if (conn~=nil) then local fifo_drained = true
conn:send(str)
end
end
node.output(s_output,0)
conn:on("receive", function(conn, pl)
node.input(pl)
end)
conn:on("disconnection",function(conn)
node.output(nil)
end)
print("Welcome to NodeMcu world.")
end
function startServer() local function sender(c)
print("Wifi AP connected. Wicon IP:") if #fifo > 0 then
print(wifi.sta.getip()) c:send(table.remove(fifo, 1))
sv=net.createServer(net.TCP, 180)
sv:listen(2323, connected)
print("Telnet Server running at :2323")
print("===Now, logon and input LUA.====")
end
tmr.alarm(1, 1000, 1, function()
if wifi.sta.getip()=="0.0.0.0" then
print("Connect AP, Waiting...")
else else
startServer() fifo_drained = true
tmr.stop(1)
end end
end
local function s_output(str)
table.insert(fifo, str)
if socket ~= nil and fifo_drained then
fifo_drained = false
sender(socket)
end
end
node.output(s_output, 0) -- re-direct output to function s_ouput.
socket:on("receive", function(c, l)
node.input(l) -- works like pcall(loadstring(l)) but support multiple separate line
end)
socket:on("disconnection", function(c)
node.output(nil) -- un-regist the redirect output function, output goes to serial
end)
socket:on("sent", sender)
print("Welcome to NodeMcu world.")
end) end)

View File

@ -1,35 +0,0 @@
-- a simple telnet server
telnet_srv = net.createServer(net.TCP, 180)
telnet_srv:listen(2323, function(socket)
local fifo = {}
local fifo_drained = true
local function sender(c)
if #fifo > 0 then
c:send(table.remove(fifo, 1))
else
fifo_drained = true
end
end
local function s_output(str)
table.insert(fifo, str)
if socket ~= nil and fifo_drained then
fifo_drained = false
sender(socket)
end
end
node.output(s_output, 0) -- re-direct output to function s_ouput.
socket:on("receive", function(c, l)
node.input(l) -- works like pcall(loadstring(l)) but support multiple separate line
end)
socket:on("disconnection", function(c)
node.output(nil) -- un-regist the redirect output function, output goes to serial
end)
socket:on("sent", sender)
print("Welcome to NodeMcu world.")
end)