Autor Thema: warum HTTP::Request ?  (Gelesen 595 mal)

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19053
warum HTTP::Request ?
« am: 23 Januar 2019, 16:10:03 »
gibt es einen grund warum es module gibt die HTTP::Request verwenden statt der HttpUtils?

was fehlt in den HttpUtils?
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19535
Antw:warum HTTP::Request ?
« Antwort #1 am: 23 Januar 2019, 16:20:29 »
Hallo Andre,

Vielleicht sollte man erwähnen welche Module es sind dann fühlen sich die Verantwortlichen vielleicht besser angesprochen.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.me/MOldenburg
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer
Zustimmung Zustimmung x 1 Liste anzeigen

Offline betateilchen

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15848
  • s/fhem\.cfg/configDB/g
Antw:warum HTTP::Request ?
« Antwort #2 am: 23 Januar 2019, 16:24:36 »
Siehe Anhang.

Kommt vermutlich daher, dass ein Modulautor ein anderes Modul mit ähnlichen Anforderungen als "Vorlage" nimmt und dann für seine Zwecke anpasst. So wird Unfug von Modulgeneration zu Modulgeneration weitervererbt.

Davon abgesehen:

Mögen tu ich die HttpUtils auch nicht. Manche perl Module (z.B. HTTP::Request) sind in ihrer Funktionsweise definitiv viel einfacher zu verstehen.
-----------------------
Unaufgeforderte Anfragen per email werden von mir nicht beantwortet. Dafür ist das Forum da.
-----------------------
Nächster Hamburg-Stammtisch: 14.06.2019

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19053
warum HTTP::Request ?
« Antwort #3 am: 23 Januar 2019, 16:33:45 »
ich bin nur zufällig über einen thread gestolpert bei dem HTTP::Request im fehlerfall scheinbar ganz fhem zum beenden bringt.

das die ist leider in einigen externen perl modulen ein problem. auch der fhem dns client der das blockieren bei internet ausfall verhindert funktioniert nur mit HttpUtils.

wenn man sich in die arbeitsweise von HttpUtils eingedacht hat ist es sehr einfach zu verwenden.
« Letzte Änderung: 23 Januar 2019, 16:55:13 von justme1968 »
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH
Gefällt mir Gefällt mir x 1 Zustimmung Zustimmung x 1 Liste anzeigen

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19535
Antw:warum HTTP::Request ?
« Antwort #4 am: 23 Januar 2019, 16:44:19 »
Na wie gut das ich nach gefragt habe. UWZ habe ich geerbt. Werde das die Tage umbauen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.me/MOldenburg
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Online KölnSolar

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3235
Antw:warum HTTP::Request ?
« Antwort #5 am: 23 Januar 2019, 16:56:30 »
Controlpoint.pm ist ja "quasi" eine externe Lib(upnp). Da wird sich ein Umbau vermutlich nicht sinnvoll durchführen lassen.
Wird verwendet in SONOS, DLNARenderer, DLNAClient(ist eh deprecated).
RPi3/2 Stretch-STV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-CUL868-FS20A4-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty-Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19053
Antw:warum HTTP::Request ?
« Antwort #6 am: 23 Januar 2019, 17:08:59 »
SONOS verwenden einen extra prozess. bringt als fhem zumindest nicht zum abstürzen.

für die reine discovery von upnp geräten wird es demnächst das hier: https://forum.fhem.de/index.php/topic,67368.msg880001.html#msg880001 geben. das hat auch noch den Vorteil das es nicht blockiert.

FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Online KölnSolar

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3235
Antw:warum HTTP::Request ?
« Antwort #7 am: 23 Januar 2019, 17:26:32 »
nur discovery wird aber nicht reichen. DLNARenderer und SONOS verwenden die Lib ja als kompletten DLNA-Controlpoint.  :'(
RPi3/2 Stretch-STV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-CUL868-FS20A4-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty-Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19053
Antw:warum HTTP::Request ?
« Antwort #8 am: 23 Januar 2019, 17:30:24 »
discovery (vor allem nicht blockierend) ist aber ein anfang und der teil der mit HttpUtils nicht geht. das steuern an sich sollte dann mit HttpUtils gehen.

FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Markus M.

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2659
Antw:warum HTTP::Request ?
« Antwort #9 am: 23 Januar 2019, 18:52:47 »
Also spätestens bei POST Requests mit User Agent Credentials, MIME Types und File Upload werden irgendwann die HttpUtils Beispiele rar, an denen man sich auch nur ansatzweise orientieren kann ;)
Ich kann aber beruhigt sagen, dass keine der Fundstellen in meinen SVN Modulen aktiver Code ist.
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

Online Markus Bloch

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 3554
Antw:warum HTTP::Request ?
« Antwort #10 am: 26 Januar 2019, 10:29:23 »
Also spätestens bei POST Requests mit User Agent Credentials, MIME Types und File Upload werden irgendwann die HttpUtils Beispiele rar,

Sowas geht an sich alles mit HttpUtils. Da geht es eher darum zu wissen, welche Header wie gesetzt sein müssen und wie der HTTP Body aussehen muss. Wenn man das weis, ist das genauso gut mit HttpUtils umsetzbar.

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

 

decade-submarginal