Funciones Wifi - Clase Server

La clase Server crea servidores que pueden enviar datos y recibir datos de clientes conectados (programas que se ejecutan en otros equipos o dispositivos).

Server

Descripción:

Servidor es la clase base para todas las llamadas en función del servidor de Wi-Fi. No se llama directamente, sino que invoca cada vez que se utiliza una función que depende de él. 

FUNCIONES

WifiServer()

Descripción:
Crea un servidor que recibe las conexiones entrantes en el puerto especificado.

Sintaxis:
Server(port);

Parámetros:
port: el puerto que se quiere escuchar (int)

Retornos:
Ninguno

Ejemplo:
#include <SPI.h>
 #include <WiFi101.h>

 char ssid[] = "myNetwork";          //  su red SSID (nombr)
 char pass[] = "myPassword";   // su password de red
 int status = WL_IDLE_STATUS;

 WiFiServer server(80);

 void setup() {
   // initializa el puerto serie:
   Serial.begin(9600);
   Serial.println("Intentando conectar con una red WPA...");
   Serial.print("SSID: ");
   Serial.println(ssid);

   status = WiFi.begin(ssid, pass);
   if ( status != WL_CONNECTED) {
     Serial.println("No se consigue una conexion wifi");
     while(true);
   }
   else {
     server.begin();
     Serial.print("Conectado a wifi. Mi direccion:");
     IPAddress myAddress = WiFi.localIP();
     Serial.println(myAddress);

   }
 }
________________________________________________________________________

begin()

Descripción:
Indica al servidor que empiece a escuchar las conexiones entrantes.

Sintaxis:
server.begin()

Parámetros:
Ninguno

Retornos:
Ninguno

Ejemplo:
#include <SPI.h>
 #include <WiFi101.h>

 char ssid[] = "lamaison";          //  su red SSID (nombr)
 char pass[] = "tenantaccess247";   // su password de red
 int status = WL_IDLE_STATUS;

 WiFiServer server(80);

 void setup() {
   // initializa el puerto serie:
   Serial.begin(9600);
   Serial.println("Intentando conectar con una red WPA...");
   Serial.print("SSID: ");
   Serial.println(ssid);

   status = WiFi.begin(ssid, pass);
   if ( status != WL_CONNECTED) {
     Serial.println("No se consigue una conexion wifi");
     while(true);
   }
   else {
     server.begin();
     Serial.print("Conectado a wifi. Mi direccion:");
     IPAddress myAddress = WiFi.localIP();
     Serial.println(myAddress);

   }
 }
________________________________________________________________________

available()

Descripción:
Obtiene un cliente que está conectado al servidor y tiene datos disponibles para su lectura. La conexión persiste cuando el objeto cliente devuelto sale del ámbito; se puede cerrar llamando client.stop ().

Sintaxis:
server.available()

Parámetros:
Ninguno

Retornos:
un objeto cliente; Si no hay cliente con datos disponibles para su lectura, este objeto se evaluará como false en una sentencia if

Ejemplo:
#include <SPI.h>
#include <WiFi101.h>

char ssid[] = "Network";          //  su red SSID (nombr) 
char pass[] = "myPassword";   // su password de red
int status = WL_IDLE_STATUS;

WiFiServer server(80);

void setup() {
  // initializa el puerto serie:
  Serial.begin(9600);
  Serial.println("Intentando conectar con una red WPA...");
  Serial.print("SSID: ");
  Serial.println(ssid);

  status = WiFi.begin(ssid, pass);
  if ( status != WL_CONNECTED) { 
    Serial.println("No se consigue ninguna conexion");
    while(true);
  } 
  else {
    server.begin();
    Serial.print("Conectado a wifi. Mi direccion:");
    IPAddress myAddress = WiFi.localIP();
    Serial.println(myAddress);

  }
}

void loop() {
  // escucha clientes entrantes
  WiFiClient client = server.available();
  if (client) {

    if (client.connected()) {
      Serial.println("Connectaao a cliente");
    }

    // cierra la conexion:
    client.stop();
  }
}
________________________________________________________________________

write()

Descripción:
Escribe datos en todos los clientes conectados a un servidor.

Sintaxis:
server.write(data)

Parámetros:
data: el valor a escribir (byte o char)

Retornos:
byte: el número de bytes escritos. 

Ejemplo:
#include <SPI.h>
 #include <WiFi101.h>

 char ssid[] = "yourNetwork";
 char pass[] = "yourPassword";
 int status = WL_IDLE_STATUS;

 WiFiServer server(80);

 void setup() {
   // initialize serial:
   Serial.begin(9600);
   Serial.println("Intentando conectar con una red WPA...");
   Serial.print("SSID: ");
   Serial.println(ssid);

   status = WiFi.begin(ssid, pass);
   if ( status != WL_CONNECTED) {
     Serial.println("No se consigue una conexion");
     while(true);
   }
   else {
     server.begin();
   }
 }

 void loop() {
   // escucha los clientes entrantes
   WiFiClient client = server.available();
   if (client == true) {
     // Lee los bytes desde el cliente entrante y los escribe de nuevo
     // para todos los clientes conectados al servidor:  
     server.write(client.read());
   }
 }
________________________________________________________________________

print()

Descripción:
Imprime datos a todos los clientes conectados a un servidor. Imprime los números como una secuencia de dígitos, cada uno corresponde a un carácter ASCII (por ejemplo, el número 123 es enviado como los tres caracteres '1', '2', '3').

Sintaxis:
server.print(data) 
server.print(data, BASE)

Parámetros:
data: los datos a imprimir (char, byte, int, long o de cadena)
BASE (opcional): la base en la que imprimirá los números: 

BIN para binario (base 2), 
DEC para decimal (base 10), 
OCT para octal (base 8), 
HEX para hexadecimal (base 16).

Retornos:
byte
print () devolverá el número de bytes escritos
_________________________________________________________________

print()

Descripción:
Imprime datos, seguido de un retorno de línea, a todos los clientes conectados a un servidor. Imprime los números como una secuencia de dígitos, cada uno corresponde a un carácter ASCII (por ejemplo, el número 123 es enviado como los tres caracteres '1', '2', '3').

Sintaxis:
server.println(data) 
server.println(data, BASE)

Parámetros:
data: los datos a imprimir (char, byte, int, long o de cadena)
BASE (opcional): la base en la que imprimirá los números: 

BIN para binario (base 2), 
DEC para decimal (base 10), 
OCT para octal (base 8), 
HEX para hexadecimal (base 16).

Retornos:
byte
println () devolverá el número de bytes escritos

1 comentario:

  1. La clase Server crea servidores que pueden enviar datos y recibir datos de clientes conectados (programas que se ejecutan en otros equipos o dispositivos). https://consejoscomunales.net/cultura-wari-o-huari/

    ResponderEliminar