本文整理汇总了C++中WiFiClient类的典型用法代码示例。如果您正苦于以下问题:C++ WiFiClient类的具体用法?C++ WiFiClient怎么用?C++ WiFiClient使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了WiFiClient类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sendMessage
int transportMgr::sendMessage(WiFiClient socket,String sendBuf)
{
char bufHeader[20];
long length=sendBuf.length();
sprintf(bufHeader,"%s%08d",PACKET_MAGIC,length);
socket.print(bufHeader);
Serial.println(bufHeader);
for(int split=0; split< length ; split+=STR_LENGTH_SPLIT)
{
if(length-split < STR_LENGTH_SPLIT)
{
socket.print(sendBuf.substring(split));
Serial.println(sendBuf.substring(split));
}
else
{
socket.print(sendBuf.substring(split,split+STR_LENGTH_SPLIT));
Serial.println(sendBuf.substring(split,split+STR_LENGTH_SPLIT));
}
}
Serial.println(sendBuf);
return 0;
}
示例2: sendData
void Farmy::sendData(const char* device_id, String api_key, WiFiClient client, String data)
{
// Todo: use retry to connect internet.
Serial.println("Connected to Famry.");
Serial.println("Posted:" + data);
// Create HTTP POST Data
String url = String("/api/v0/user_devices/") + device_id + "/sensor_datas/";
client.print(String("POST ") + url + " HTTP/1.1\n"+ "Host: " + host + "\n");
client.print(String("Host: ") + host + "\n");
client.print("Content-Type: application/json\n");
client.print(String("X-Farmy-Api-Key: ") + api_key + "\n");
client.print("Content-Length: ");
client.print(data.length());
client.print("\n\n");
client.print(data);
Serial.println("Posted finished -----------");
delay(500);
if (!client.connected()) {
Serial.println();
Serial.println("disconnecting.");
client.stop();
}
}
示例3: SendJSONstatusEvent
void EncodeNSendMessage::SendJSONstatusEvent(WiFiClient localclient, String MacAddr, HomeNodeDDI Hnode)
{
gsBufferWiFi="";
gsBufferWiFi+='{';
SendJSONobject("Job", "Event", false);
SendJSONobject("NodeID", (char *)MacAddr.c_str(), false);
gsBufferWiFi+="\"Status\":[";
localclient.print(gsBufferWiFi.c_str());
{
int i;
//JSONstatus1 // Presence
gsBufferWiFi="";
for(i = 0 ; i < strlen(JSONstatus1) ; i++)
{
gsBufferWiFi+=(char)pgm_read_byte_near(JSONstatus1 + i);
}
if(Hnode.proximity <= 50) // door open
{
gsBufferWiFi+="Mail";
}
else
{
gsBufferWiFi+="Empty";
}
gsBufferWiFi+="\"}";
localclient.print(gsBufferWiFi.c_str());
}
localclient.print("]}\n");
}
示例4: attemptClient
// See if port 80 is accessable. Try 8080 as well.
boolean WiFiManager::attemptClient(const char *szUrl)
{
WiFiClient client;
int i;
Serial.print("Probe port 80");
for(i = 0; i < 5; i++)
{
if (client.connect(szUrl, httpPort)) {
client.stop();
Serial.println("Port 80 success");
return true;
}
Serial.print(".");
delay(20);
}
httpPort = 8080;
Serial.println("");
Serial.print("Probe port 8080");
for(i = 0; i < 5; i++)
{
if (client.connect(szUrl, httpPort)) {
client.stop();
Serial.println("Port 8080 success");
return true;
}
Serial.print(".");
delay(20);
}
Serial.println("");
Serial.println("No joy");
return false;
}
示例5: String
/********************************************************************
connect establishes a connection to the Slack RTM API
********************************************************************/
bool ArduinoSlackBot::connect() {
// Step 1: Find WebSocket address via RTM API (https://api.slack.com/methods/rtm.start)
HTTPClient http;
String slackAddr = "https://slack.com/api/rtm.start?token=";
slackAddr = String(slackAddr + slackToken);
PRINTLN(slackAddr);
http.begin(slackAddr.c_str(), slackSSLFingerprint);
int httpCode = http.GET();
if (httpCode != HTTP_CODE_OK) {
PRINTF("HTTP GET failed with code %d\n", httpCode);
return false;
}
WiFiClient *client = http.getStreamPtr();
client->find("wss:\\/\\/");
String host = client->readStringUntil('\\');
String path = client->readStringUntil('"');
path.replace("\\/", "/");
// Step 2: Open WebSocket connection and register event handler
PRINTLN("WebSocket Host=" + host + " Path=" + path);
webSocket.beginSSL(host, 443, path, "", "");
webSocket.onEvent(webSocketEvent);
return true;
}
示例6: HttpRequest
String DHwifi::HttpRequest( String req )
{
WiFiClient client;
char host[99];
m_remoteServer.toCharArray( host, 99);
const int httpPort = 80;
if (!client.connect(host, httpPort))
{
Serial.print( host );
Serial.println(" connection failed");
return "";
}
client.print(String("GET ") + req + " HTTP/1.1\r\n" +
"Host: " + host + "\r\n" +
"Connection: close\r\n\r\n");
delay(10);
String result;
// Read all the lines of the reply from server and print them to Serial
while (client.available())
{
result = client.readStringUntil('\r');
}
return result;
}
示例7: sendParameter
void EIoTCloudRestApi::sendParameter(const char * instaceParamId, String value)
{
WiFiClient client;
while(!client.connect(EIOT_CLOUD_ADDRESS, EIOT_CLOUD_PORT)) {
debug("connection failed");
wifiConnect();
}
String url = "";
// URL: /RestApi/SetParameter/[instance id]/[parameter id]/[value]
url += "/RestApi/SetParameter/" + String(instaceParamId) + "/" + value; // generate EasIoT cloud update parameter URL
debug("POST data to URL: ");
#ifdef DEBUG
char buff[300];
url.toCharArray(buff, 300);
debug(buff);
#endif
client.print(String("POST ") + url + " HTTP/1.1\r\n" +
"Host: " + String(EIOT_CLOUD_ADDRESS) + "\r\n" +
"Connection: close\r\n" +
"Content-Length: 0\r\n" +
"\r\n");
delay(100);
while(client.available()){
#ifdef DEBUG
String line = client.readStringUntil('\r');
line.toCharArray(buff, 300);
debug(buff);
#endif
}
}
示例8: stopAllExcept
void WiFiClient::stopAllExcept(WiFiClient* except)
{
for (WiFiClient* it = _s_first; it; it = it->_next) {
if (it != except) {
it->stop();
}
}
}
示例9: while
uint8_t ESP8266WebServer::_uploadReadByte(WiFiClient& client){
int res = client.read();
if(res == -1){
while(!client.available() && client.connected())
yield();
res = client.read();
}
return (uint8_t)res;
}
示例10:
/**
* Wait for a WiFiClient to connect
*
* @returns: True if the client is ready, false otherwise.
*
*/
bool ESP8266WiFiMesh::waitForClient(WiFiClient curr_client, int max_wait)
{
int wait = max_wait;
while(curr_client.connected() && !curr_client.available() && wait--)
delay(3);
/* Return false if the client isn't ready to communicate */
if (WiFi.status() == WL_DISCONNECTED || !curr_client.connected())
return false;
return true;
}
示例11: connectClients
void connectClients() {
if (server.hasClient()) {
if (!serverClient || !serverClient.connected()) {
if (serverClient) serverClient.stop();
serverClient = server.available();
} else {
//no free/disconnected spot so reject
WiFiClient rejectClient = server.available();
rejectClient.stop();
}
}
}
示例12: MW_WifiTCPFinalread
extern "C" void MW_WifiTCPFinalread(uint8_t wifitcpindex, uint8_t *data, uint32_t serverport, int32_t *outStatus)
{
int libFcnOutput;
WiFiClient client = server[wifitcpindex].available();
if (client == true) {
libFcnOutput = client.read();
*data = (uint8_t) libFcnOutput;
*outStatus = (libFcnOutput != -1);
}
else
{
//When the client is not connected the status flag is accordingly toggled.
*outStatus = 0;
}
}
示例13: doCommand
/*
* ======== doCommand ========
* execute the command in buffer and send results to client
*/
static void doCommand(char *buffer, int len, WiFiClient client)
{
if (buffer[1] == '\n' || buffer[1] == '\r') {
doWASD(buffer[0], client);
}
else {
#if 0
long int addr = 0;
int cnt = 0;
char *ptr;
/* get the address and count from the command */
getAddrCnt(buffer, len, &addr, &cnt);
/* send client cnt bytes starting from addr */
ptr = (char *)addr;
while (cnt-- > 0) {
int status;
if ((status = client.write(*ptr)) != 1) {
return;
}
ptr++;
}
#else
doWASD(' ', client);
#endif
}
}
示例14: Iotfy_getdata
String Iotfy_getdata(int no_of_bytes, int timeout)
{
int ctr=0;
int pt=millis()/1000;
String data="";
data.reserve(no_of_bytes);
while(1)
{
if(client.available())
{
char c=client.read();
data+=c;
Serial.print(c);
ctr++;
if(ctr==no_of_bytes)
break;
}
else
{
if(millis()/1000-pt>timeout)
{
pt=millis()/1000;
break;
}
}
}
Serial.println("calling disconnect");
client.flush();
client.stop();
return data;
}
示例15: loop
void loop() {
static boolean packetActive = false;
static uint8_t index = 0;
static boolean readingReturn = false;
static uint8_t rindex = 0;
if (!client.connected()) {
// try to connect to a new client
client = server.available();
} else {
// read data from the connected client
if (client.available() > 0) {
char c = client.read();
if (packetActive) {
commandBuffer[index] = c;
commandBuffer[++index] = 0;
if (c == EOP) {
comHandler();
packetActive = false;
}
}
else if (c == SOP) {
index = 0;
commandBuffer[index] = c;
commandBuffer[++index] = 0;
packetActive = true;
}
if (returnReady) {
client.println(returnBuffer);
server.println(returnBuffer);
Serial.println(returnBuffer);
returnReady = false;
}
}
}
if (Serial.available() && !returnReady) {
char s = Serial.read();
if (s == SOP) {
readingReturn = true;
rindex = 0;
}
if (readingReturn) {
returnBuffer[rindex] = s;
returnBuffer[++rindex] = 0;
if (s == EOP) {
returnReady = true;
}
}
}
}