Does anyone know where I can find an example code that allows using EthernetServer and parseInt?
I am creating a multi client telnet server that bridges ethernet with a nRF24l01 network.
I want to send a string to the EthernetServer like "SEND,1,2,3,4,5,6,7,8" and using parseInt extract the values.
#include <SPI.h>
#include <Ethernet.h>byte mac[] = { 0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x03 };
IPAddress ip(192,168,1, 211);
IPAddress gateway(192,168,1, 1);
IPAddress subnet(255, 255, 0, 0);EthernetClient client;
EthernetClient serverclient ;
EthernetServer server(23);void setup() {
Serial.begin(9600);
Serial.println("Booting...");
// start the Ethernet connection:
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
Serial.println("Using Static IP settings");
Ethernet.begin(mac, ip, gateway, subnet);
Serial.print("IP: ");
Serial.println(ip);
Serial.print("Gateway: ");
Serial.println(gateway);
Serial.print("Subnet: ");
Serial.println(subnet);
}
Serial.print("IP address: ");
Serial.println(Ethernet.localIP());
server.begin();
Serial.println("Server started :23");
}void loop()
{
EthernetClient serverclient = server.available();
if (serverclient.available()) { server_comand(); }if (!serverclient.connected()) {
Serial.println("disconnecting.");
serverclient.stop();
}
}void server_comand(){
if (server.available()) {
if (serverclient.find("SEND") == 1){
Serial.println(" server command ");
// Serial.print(serverclient.read());
int i = 0;
unsigned int data[11] ;
for (i = 0; i < 8; i++) {
data* = serverclient.parseInt();*
_ Serial.print(data*,DEC);_
_ Serial.print(",");_
_ }_
_ serverclient.println("OK");_
_ delay(20);_
_ serverclient.stop(); _
_ } _
_ } _
_}_
_[/quote]_
PHP code
_<?php*_ *$fp = stream_socket_client("tcp://192.168.1.31:23", $errno, $errstr, 3);* *stream_set_timeout($fp, 3);* _*if (!$fp) {*_ _* echo "$errstr ($errno)*_ _*\n";*_ _*} else {*_ _* fwrite($fp, "SEND,1,2,3,4,5,6,7,8,\n");*_ _*// while (!feof($fp)) {*_ _*// echo fgets($fp, 3);*_ _*// }*_ _* fclose($fp);*_ _*}*_ _*?>*_