Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <WiFi.h>
- #include <HTTPClient.h>
- #define RXD2 16
- #define TXD2 17
- #define red 4
- #define green 2
- const char * ssid = "network";
- const char * password = "123456789";
- String GOOGLE_SCRIPT_ID = "AKfycby3IzdQMFy8UFlQ4n8gAgbjm-4MyGDwE1vxUk_2A_0Syyz8anTTGhFl11ivjLxVpuvRBQ";
- const int number_of_students = 3;
- String Student_Name[number_of_students] = {"MHD", "New", "MHD2"};
- String Student_ID[number_of_students] = {"1112", "2223", "3334"};
- int found_flag[number_of_students] = {0, 0, 0};
- char c;
- String dataIn;
- int8_t indexOfA;
- String data1;
- //updated 04.12.2019
- const char * root_ca = \
- "-----BEGIN CERTIFICATE-----\n" \
- "MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4G\n" \
- "A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNp\n" \
- "Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1\n" \
- "MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEG\n" \
- "A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI\n" \
- "hvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6ErPL\n" \
- "v4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8\n" \
- "eoLrvozps6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklq\n" \
- "tTleiDTsvHgMCJiEbKjNS7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzd\n" \
- "C9XZzPnqJworc5HGnRusyMvo4KD0L5CLTfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pa\n" \
- "zq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6CygPCm48CAwEAAaOBnDCB\n" \
- "mTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUm+IH\n" \
- "V2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5n\n" \
- "bG9iYWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG\n" \
- "3lm0mi3f3BmGLjANBgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4Gs\n" \
- "J0/WwbgcQ3izDJr86iw8bmEbTUsp9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO\n" \
- "291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu01yiPqFbQfXf5WRDLenVOavS\n" \
- "ot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG79G+dwfCMNYxd\n" \
- "AfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7\n" \
- "TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg==\n" \
- "-----END CERTIFICATE-----\n";
- WiFiClientSecure client;
- void setup() {
- for (int j = 0; j < number_of_students; j++) {
- found_flag[j] = 0;
- }
- Serial.begin(115200);
- Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2);
- pinMode(red, OUTPUT);
- pinMode(green, OUTPUT);
- digitalWrite(red, HIGH);
- digitalWrite(green, LOW);
- WiFi.mode(WIFI_STA);
- WiFi.begin(ssid, password);
- Serial.println("Started");
- Serial.print("Connecting");
- while (WiFi.status() != WL_CONNECTED) {
- delay(500);
- Serial.print(".");
- }
- Serial.println("Ready to go");
- }
- void loop() {
- while (Serial2.available() > 0) {
- c = Serial2.read();
- if (c == '\n') {
- break;
- }
- else {
- dataIn += c;
- }
- }
- if (c == '\n') {
- parseData();
- ShowRxData();
- SendDataToGoogleSheets();
- resetData();
- }
- }
- void parseData() {
- indexOfA = dataIn.indexOf("A");
- data1 = dataIn.substring(0, indexOfA);
- }
- void ShowRxData() {
- Serial.println("Received ID: " + data1);
- }
- void SendDataToGoogleSheets() {
- for (int i = 0; i < number_of_students; i++) {
- if (data1 == Student_ID[i] && found_flag[i] == 0) {
- sendData("tag=" + Student_ID[i] + "&value=" + Student_Name[i]);
- Serial.print("Student [" + Student_ID[i] + "] Found !");
- found_flag[i] = 1;
- digitalWrite(red, LOW);
- digitalWrite(green, HIGH);
- }
- else {
- digitalWrite(red, HIGH);
- digitalWrite(green, LOW);
- }
- }
- }
- void sendData(String params) {
- HTTPClient http;
- String url = "https://script.google.com/macros/s/" + GOOGLE_SCRIPT_ID + "/exec?" + params;
- //Serial.print(url);
- Serial.print("Making a request");
- http.begin(url, root_ca); //Specify the URL and certificate
- int httpCode = http.GET();
- http.end();
- //Serial.println(": done " + httpCode);
- }
- void resetData() {
- c = 0;
- dataIn = "";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement