Hi I am very newbie to arduino but fast to understand. I am try make way so control 4 relays remote by iphone. I have sketch for buttons and is works but it MUST have login/password. please help me understand where to I put my code.
Everything to I try make errors. many many hours
Here is login/password authentication code I trying.
/*
 HTTP Advanced Authentication example
 Created Mar 16, 2017 by Ahmed El-Sharnoby.
 This example code is in the public domain.
*/
#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <ArduinoOTA.h>
#include <ESP8266WebServer.h>
#ifndef STASSID
#define STASSID "your-ssid"
#define STAPSKÂ "your-password"
#endif
const char* ssid = STASSID;
const char* password = STAPSK;
ESP8266WebServer server(80);
const char* www_username = "admin";
const char* www_password = "esp8266";
// allows you to set the realm of authentication Default:"Login Required"
const char* www_realm = "Custom Auth Realm";
// the Content of the HTML response in case of Unautherized Access Default:empty
String authFailResponse = "Authentication Failed";
void setup() {
 Serial.begin(115200);
 WiFi.mode(WIFI_STA);
 WiFi.begin(ssid, password);
 if (WiFi.waitForConnectResult() != WL_CONNECTED) {
  Serial.println("WiFi Connect Failed! Rebooting...");
  delay(1000);
  ESP.restart();
 }
 ArduinoOTA.begin();
 server.on("/", []() {
  if (!server.authenticate(www_username, www_password))
   //Basic Auth Method with Custom realm and Failure Response
   //return server.requestAuthentication(BASIC_AUTH, www_realm, authFailResponse);
   //Digest Auth Method with realm="Login Required" and empty Failure Response
   //return server.requestAuthentication(DIGEST_AUTH);
   //Digest Auth Method with Custom realm and empty Failure Response
   //return server.requestAuthentication(DIGEST_AUTH, www_realm);
   //Digest Auth Method with Custom realm and Failure Response
  {
   return server.requestAuthentication(DIGEST_AUTH, www_realm, authFailResponse);
  }
  server.send(200, "text/plain", "Login OK");
 });
 server.begin();
 Serial.print("Open http://");
 Serial.print(WiFi.localIP());
 Serial.println("/ in your browser to see it working");
}
void loop() {
 ArduinoOTA.handle();
 server.handleClient();
}
Do I put my code in void loop()? or makes something like - void http() {and put http code in here}?
and then put http() - in place of - server.send(200, "text/plain", "Login OK"); ?
Thankyou