INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Mit Wemos D1 eine Webseite aufrufen
01.02.2020, 18:50
Beitrag #9
RE: Mit Wemos D1 eine Webseite aufrufen
Sooo... ich hab es jetzt ans laufen bekommen.
Allen die geholfen haben bis hierher vielen Dank.

Aber...
ich hab schon gleich das nächste Problem.
Ich habe jetzt zwei Funktionen für An und Aus (siehe unten)

Damit ich aber keine ZWEI Funktionen (VOIDS) brauche, würde ich das
gerne mit einem Parameter lösen dem ich einfach "On" oder "Off" übergebe.
Geht aber leider nicht so einfach wie ich mir das vorgestellt habe.

Ich wollte die Zeile
if (http.begin(client, "http://192.168.4.1/relais_off")) { // HTTP
dahingehen ändern das ich dann vielleicht
if (http.begin(client, "http://192.168.4.1/relais_" & PARA)) { // HTTP
übergebe. Da bekomme ich aber eine Fehlermeldung, da die Anweisung wohl
CHAR erwartet. Jetzt bräuchte ich noch einmal Hilfe weil ich mich mit Char
extrem schwer tue. Wie könnte eine Lösung aussehen?


Code:
void RelaisOFF() {

    WiFiClient client;

    HTTPClient http;

    Serial.print("[HTTP] begin...\n");
    if (http.begin(client, "http://192.168.4.1/relais_off")) {  // HTTP

      Serial.print("[HTTP] GET...\n");
      // start connection and send HTTP header
      int httpCode = http.GET();

      // httpCode will be negative on error
      if (httpCode > 0) {
        // HTTP header has been send and Server response header has been handled
        Serial.printf("[HTTP] GET... code: %d\n", httpCode);

        // file found at server
        if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {
          String payload = http.getString();
          Serial.println(payload);
        }
      } else {
        Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
      }

      http.end();
    } else {
      Serial.printf("[HTTP} Unable to connect\n");
    }

}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.02.2020, 18:59
Beitrag #10
RE: Mit Wemos D1 eine Webseite aufrufen
Ganz einfache Variante:

Code:
void sende(bool an) {
int result;
  if (an) result = http.begin(client, "http://192.168.4.1/relais_on");
  else result = http.begin(client, "http://192.168.4.1/relais_off");
  Serial.println(result);
  if (result) {
    int httpCode = http.GET();
    ...
  }
}

Ansonsten musst Du lernen, wie man mit char-Arrays umgeht und diese verkettet.
Infos dazu hier.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.02.2020, 19:43
Beitrag #11
RE: Mit Wemos D1 eine Webseite aufrufen
SUPER Tommi, vielen DANK !!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.02.2020, 19:50
Beitrag #12
RE: Mit Wemos D1 eine Webseite aufrufen
Es wäre trotzdem vorteilhaft, wenn Du den Umgang mit char-Arrays etwas lernen würdest. Das brauchst Du immer wieder.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.02.2020, 19:57
Beitrag #13
RE: Mit Wemos D1 eine Webseite aufrufen
Ich bin grade dabei. Das "Einlagern" ist ja kein Problem, das verstehe ich alles,
nur die Ausgabe... da hapert es....
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.02.2020, 20:03
Beitrag #14
RE: Mit Wemos D1 eine Webseite aufrufen
Wenn Du konkrete Fragen hast, dann stelle sie.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.02.2020, 13:30
Beitrag #15
RE: Mit Wemos D1 eine Webseite aufrufen
(01.02.2020 20:03)Tommy56 schrieb:  Wenn Du konkrete Fragen hast, dann stelle sie.

Das Angebot nehme ich gerne wahr.
Also auch nach mehrfachem Lesen deiner Beschreibung verstehe ich es nicht.
Vielleicht bin ich zu sehr .Net und String versaut um es in den Kopf zu bekommen.

Wie das Array zugewiesen bekomme habe ich ja noch verstanden.
Die Einzelnen Operationen die du beschreibst verstehe ich auch noch,
was ich nicht verstehe ist, wie ich den nun ein Array ändern oder ausgeben kann.

Um noch einmal das obige Beispiel zu bemühen, hätte ich mir beispielsweise
etwas in dieser Art vorgestellt:


Code:
void Relais(String DEMO) {

char Adresse[50] = "";

if (DEMO == "ON") {
Adresse[28] = "http://192.168.4.1/relais_on";
Serial.print(Adresse);
}

if (DEMO == "OFF") {
Adresse[29] = "http://192.168.4.1/relais_off";
Serial.print(Adresse);
}

....

Wie kann ich auf Grund einer Bedingung einem Array unterschiedliche Werte zuteilen.

und wie kann ich das Array dann als Ausgabe in meine Verarbeitung einbinden.

if (http.begin(client, Adresse)) { // HTTP

????

oder wenn ich das Array einfach über Serial.print ausgeben will. Wie geht das?
Serial.print(Adresse); ???
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.02.2020, 13:37
Beitrag #16
RE: Mit Wemos D1 eine Webseite aufrufen
(02.02.2020 13:30)DO3GE schrieb:  Adresse[28] = "http://192.168.4.1/relais_on";
Serial.print(Adresse);

Code:
strcpy(Adresse, "http://192.168.4.1/relais_on");
Serial.print(Adresse);


Gruß Fips

Meine Esp8266 & ESP32 Projekte
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  WeMos D1 mini ESP8266 error: <bits/c++config.h> AnFi 17 4.424 27.08.2020 13:47
Letzter Beitrag: dna
  Zwei Wemos D1 Mini übereinander stecken. N1d45 16 1.156 16.08.2020 09:52
Letzter Beitrag: hotsystems
  mit einem Wemos D1 mini mit Alexa eine Rolllade steuern SiR WonG 27 2.435 27.07.2020 15:49
Letzter Beitrag: hotsystems
  WS2812b am Wemos mini - Idee, warum's nicht geht? a-stern.1 10 1.478 03.07.2020 05:17
Letzter Beitrag: N1d45
  WEMOS D1 mini pro nach 4 Jahren gestorben Tommy56 1 614 02.07.2020 05:52
Letzter Beitrag: amithlon
  ESP8266 (Wemos D1 Mini) - WifiManager und TimerInterrupt fiberman 10 1.468 30.06.2020 06:24
Letzter Beitrag: amithlon
  i2c LCD Display am Wemos D1 Mini mit mqtt klappt nach modifikation nicht raspido 5 855 15.06.2020 22:19
Letzter Beitrag: stw
  Wemos D1 R2, Kein Reset wenn 5V Ausgang belegt ist LutzS 14 1.585 24.05.2020 21:07
Letzter Beitrag: LutzS
Question Wie vom code aus url im Browser aufrufen? Triax16 9 1.328 06.05.2020 14:04
Letzter Beitrag: Tommy56
  Wemos D1 mini (ESP8266) wechselt nicht mehr in auto-sleep Zipfel1 5 1.041 27.04.2020 14:07
Letzter Beitrag: rev.antun

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste