Browse Source

consolidate telnet example

devsaurus 8 years ago
parent
commit
87351a2d10
4 changed files with 31 additions and 128 deletions
  1. 0 17
      examples/tel.lua
  2. 0 41
      examples/telnet.lua
  3. 31 35
      lua_examples/telnet.lua
  4. 0 35
      lua_examples/telnet2.lua

+ 0 - 17
examples/tel.lua

@@ -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)

+ 0 - 41
examples/telnet.lua

@@ -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)

+ 31 - 35
lua_examples/telnet.lua

@@ -1,39 +1,35 @@
-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 ......")
+-- a simple telnet server
 
-function connected(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) 
-   end)
-   conn:on("disconnection",function(conn) 
-      node.output(nil) 
-   end)
-   print("Welcome to NodeMcu world.")
-end
+telnet_srv = net.createServer(net.TCP, 180)
+telnet_srv:listen(2323, function(socket)
+    local fifo = {}
+    local fifo_drained = true
 
-function startServer()
-   print("Wifi AP connected. Wicon IP:")
-   print(wifi.sta.getip())
-   sv=net.createServer(net.TCP, 180)
-   sv:listen(2323, connected)
-   print("Telnet Server running at :2323")
-   print("===Now, logon and input LUA.====")
-end
+    local function sender(c)
+        if #fifo > 0 then
+            c:send(table.remove(fifo, 1))
+        else
+            fifo_drained = true
+        end
+    end
 
-tmr.alarm(1, 1000, 1, function() 
-   if wifi.sta.getip()=="0.0.0.0" then
-      print("Connect AP, Waiting...") 
-   else
-      startServer()
-      tmr.stop(1)
-   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)

+ 0 - 35
lua_examples/telnet2.lua

@@ -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)