-
Notifications
You must be signed in to change notification settings - Fork 0
/
WiFiManager.cpp
36 lines (29 loc) · 914 Bytes
/
WiFiManager.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include "WiFiManager.h"
#include <WiFi.h>
#include "WiFiRecord.h"
WiFiManager::WiFiManager(WiFiRecord* credentials) {
this->_credentials = credentials;
}
WiFiRecord WiFiManager::getCredentials(int index) {
return this->_credentials[index];
}
WiFiRecord WiFiManager::getCredentials(String ssid) {
long array_size = sizeof(this->_credentials)/sizeof(this->_credentials[0]);
for(int i = 0; i < array_size; i++) {
if(this->_credentials[i].getSSID() == ssid) {
return this->_credentials[i];
}
}
}
void WiFiManager::connect(WiFiCredentials credentials) {
WiFi.begin(credentials.getSSID().c_str(), credentials.getPassword().c_str());
}
void WiFiManager::connect(int index) {
this->connect(this->getCredentials(index));
}
void WiFiManager::connect(String ssid) {
this->connect(this->getCredentials(ssid));
}
bool WiFiManager::isConnected() {
return WiFi.status() == WL_CONNECTED;
}