connected()
Описание
Функция позволяет узнать, подключен ли клиент к серверу. Обратите внимание, что при наличии непрочитанных данных клиент будет считаться подключенным, даже если соединение с сервером уже закрыто.
Синтаксис
client.connected()
Параметры
нет
Возвращаемые значения
boolean: если клиент подключен, функция возвращает true, в противном случае - false.
Пример
/* Веб-клиент Данная программа с помощью GSM-платы расширения заходит на указанный веб-сайт. В примере показана процедура скачивания страницы по адресу "http://arduino.cc/" и вывод ее содержимого в программу Serial monitor через последовательный порт. Схема: * GSM-плата расширения, подключенная к Ардуино * установленная SIM-карта создано 8 Марта 2012 Автор - Tom Igoe http://arduino.cc/en/Tutorial/GSMExamplesWebClient */ // библиотеки #include <GSM.h> // PIN-код #define PINNUMBER "" // Данные точки доступа APN #define GPRS_APN "GPRS_APN" // замените на свою GPRS-точку доступа #define GPRS_LOGIN "login" // замените на свой логин для подключения к GPRS #define GPRS_PASSWORD "password" // замените на свой пароль для подключения к GPRS // инициализируем экземпляры классов GSMClient client; GPRS gprs; GSM gsmAccess; // URL, путь и порт (например: arduino.cc) char server[] = "arduino.cc"; char path[] = "/"; int port = 80; // порт 80 (по умолчанию для http) void setup() { // инициализируем последовательный интерфейс передачи данных Serial.begin(9600); Serial.println("Starting Arduino web client."); // состояние соединения boolean notConnected = true; // после инициализации модема функцией GSM.begin() // подключаем плату расширения к GPRS-сети с указанной точкой доступа APN, //именем пользователя и паролем while(notConnected) { if((gsmAccess.begin(PINNUMBER)==GSM_READY) & (gprs.attachGPRS(GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD)==GPRS_READY)) notConnected = false; else { Serial.println("Not connected"); delay(1000); } } Serial.println("connecting..."); // если соединение установлено, сигнализируем об этом через последовательный порт: if (client.connect(server, port)) { Serial.println("connected"); // делаем HTTP-запрос: client.print("GET "); client.print(path); client.println(" HTTP/1.0"); client.println(); } else { // если подключиться к серверу не удалось: Serial.println("connection failed"); } } void loop() { // если от сервера поступили данные, // то считываем и выводим их: if (client.available()) { char c = client.read(); Serial.print(c); } // если сервер отключился, то останавливаем клиент: if (!client.available() && !client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop(); // больше ничего не делаем: for(;;) ; } }