jueves, 17 de diciembre de 2015

Módulo net

net.createServer()
Descripción
crea un servidor.
Sintaxis
net.createServer(type, timeout)
Parámetros
type: net.TCP or net.UDP
timeout: para un servidor TCP, tiempo de desconexión por inactividad (1~28800) en segundos.
Devuelve
submódulo net.server
Ejemplo
net.createServer(net.TCP, 30) -- 30s timeout

net.createConnection()
Descripción
crea un cliente.
Sintaxis
net.createConnection(type, secure)
Parámetros
type: net.TCP or net.UDP
secure: 1 or 0, 1 para ssl link, 0 para normal link
Devuelve
submódulo net.socket
Ejemplo
net.createConnection(net.UDP, 0)

módulo net.server

net.server:listen()
Descripción
escucha un puerto de una dirección IP.
Sintaxis
net.server.listen(port,[ip],function(net.socket))
Parámetros
port: número del puerto
ip:dirección IP en formato string (se puede omitir)
function(net.socket): función que se ejecuta, pasando como parámetro el socket (net.socket)
Devuelve
nada
Ejemplo
-- crea un servidor
sv=net.createServer(net.TCP, 30)    -- 30s time out
-- El servidor escucha el puerto 80. Si se recibe un dato, muestra el dato por consola y envía "hello world" al remoto.
sv:listen(80,function(c)
    c:on("receive", function(c, pl) print(pl) end)
    c:send("hello world")
end)
net.server:close()
Descripción
cierra el servidor.
Sintaxis
net.server.close()
Parámetros
ninguno
Devuelve
nada
Ejemplo
-- crea un servidor
sv=net.createServer(net.TCP, 30)
-- cierra el servidorsv:close()

módulo net.socket

net.socket:connect()
Descripción
conecta con un servidor remoto.
Sintaxis
connect(port, ip/domain)
Parámetros
port: número de puerto
ip: dirección Ip o nombre de dominio en formato string
Devuelve
nada
net.socket:send()
Descripción
envía datos a una conexión remota
Sintaxis
send(string, function(sent))
Parámetros
string: dato en formato string que queremos enviar
function(sent): función llamada para el envío del string
Devuelve
nada
net.socket:on()
Descripción
register callback function for event.
función que se llama cuando ocurre un evento
Sintaxis
on(event, function cb())
Parámetros
event: string que puede ser: "connection", "reconnection", "disconnection", "receive", "sent"
function cb(net.socket, [string]): función llamada. el primer parámetro es el socket
Si el evento es "receive", el segundo parámetro es el dato recibido en formato string
Devuelve
nada
Ejemplo
sk=net.createConnection(net.TCP, 0)
sk:on("receive", function(sck, c) print(c) end )
sk:connect(80,"192.168.0.66")
sk:on("connection", function(sck,c)
    -- espera a la conexión antes de enviar
    sk:send("GET / HTTP/1.1\r\nHost: 192.168.0.66\r\nConnection: keep-alive\r\nAccept: */*\r\n\r\n")
end)
net.socket:close()
Descripción
cierra un socket.
Sintaxis
close()
Parámetros
ninguno
Devuelve
nada
net.socket:dns()
Descripción
obtiene el dominio IP
Sintaxis
dns(domain, function(net.socket, ip))
Parámetros
domain: nombre del dominio.
function (net.socket, ip): función llamada. El primer parámetro es el socket, el segundo parámetro es la dirección IP en formato string.
Devuelve
nada
Ejemplo
sk=net.createConnection(net.TCP, 0)
sk:dns("www.nodemcu.com",function(conn,ip) print(ip) end)
sk = nil

net.dns module

net.dns.setdnsserver()
Descripción
establece la dirección IP del servidor DNS. Por defecto: resolver1.opendns.com(208.67.222.222). Se puede especificar hasta 2 servidores DNS.
Sintaxis
net.dns.setdnsserver(dns_ip_addr,dns_index)
Parámetros
dns_ip_addr: Dirección IP del servidor DNS
dns_index: (rango 0~1) Establece el servidor DNS. Soporta como máximo 2.
Devuelve
nada
Ejemplo
ver net.dns:getdnsserver()
net.dns.getdnsserver()
Descripción
Obtiene la dirección IP del servidor DNS.
Sintaxis
net.dns.getdnsserver(dns_index)
Parámetros
dns_index: (rango 0~1) Selecciona qué servidor DNS (0 ó 1)..
Devuelve
Dirección IP del servidor DNS
Ejemplo
print(net.dns.getdnsserver(0)) -- 208.67.222.222
print(net.dns.getdnsserver(1)) -- nil

net.dns.setdnsserver("8.8.8.8",0)
net.dns.setdnsserver("192.168.1.252",1)

print(net.dns.getdnsserver(0)) -- 8.8.8.8
print(net.dns.getdnsserver(1)) -- 192.168.1.252
net.dns.resolve()
Descripción
resuelva la dirección IP de un servidor. No es necesario un socket como net.socket.dns().
Sintaxis
net.dns.resolve( domain, function(ip) )
Parámetros
domain: Nombre del dominio a resolver
function(sk,ip): Función que se llama cuando se resuelve el nombre de dominio No usa socket.
Devuelve
nada
Ejemplo
net.dns.resolve("www.google.com", function(sk, ip)
    if (ip == nil) then print("DNS fail!") else print(ip) end
end)

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.