Sie sind nicht angemeldet.
Lieber Besucher, herzlich willkommen bei: Aqua Computer Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.
Indirekt ist der Wert bereits vorhanden - die "Variable" aquastream.N.command enthält "im Prinzip" die Frequenz, wobei der Wert "75" Entlüftungsmodus bedeutet. Allerdings kann man den Wert nicht "schön" mit Samurize abfragen - ich denke es macht Sinn, eine Variable "aquastream.N.frequency" einzuführen ;-)Zitat von »Spezies_8472«
mir ist beim rumspielen mit aeinfo und samurize aufgefallen, das man den wert für die frequenz der aquastream nicht abfragen kann. dieser wert ist auch nicht in aeinfo enthalten (aeinfo.exe info). wärst du so lieb und könntest den wert noch integrieren, eventuell auch noch den status der pumpe?
Linux-Spezifika sind in aeinfo recht selten... ;-) das ist also keine Ausrede ;DZitat von »glup«
Im tar-ball sind in der TODO datei schon einige Dinge für künftige Weiterentwicklungen aufgeführt. Ich bin leider kein Linux Entwickler und daher selbst nicht in der Lage es selbst in Angriff zu nehmen.
Ist durchaus realisierbar, aber ich vermute einen enormen Aufwand dahinter (das Ganze muss dann zusätzlich in Abhängigkeit zur aquasuite gepflegt werden). Dafür ist eigentlich das Web-Interface gedacht. Wenn's nur die Überwachungskomponente betrifft (Datenrichtung: aquaerod->aquasuite), könnte es möglicherweise einfach sein. Vorschlag: Du (oder jemand) schreibst ein Programm (C oder C++), das der aquasuite ein aquaero über Netzwerk vorgaukelt (z.B. mit konstanten Werten), dann würde ich dies in den Daemon integrieren. ;-)Zitat
1. Die Möglichkeit mit der aquasuite über das Netzwerk den aquaero auf dem Linux Server zu überwachen.
Jepp - steht schon im READMEZitat
2. chroot Umgebung ... SuSE's startproc, checkproc und killproc sind da hilfreich.
Dies dürfte mit dem bekannten Kommando ldd kein großes Problem sein. Grundsätzlich gilt: sämtliche Daten im Unterverzeichnis htdocs/ das Executable aquaerod + benötigte Bibliotheken (siehe ldd)... Du hast natürlich auch die Möglichkeit, das aquaerod-executable statisch zu linken. (kommt ins README)Zitat
Es fehlt nur noch eine Liste aller Dateien, die in die chroot Umgebung kopiert werden müssen.
Gute Idee - wird wohl ein Command-Line-Argument werden.. Für's erste: iptablesZitat
3. Die Möglichkeit den Webserver und anderen Remotezugriff (siehe 1) ausschalten zu können.
Ja das würde ich mir auch so vorstellen - allerdings muss dazu zuerst eine Konfiguations-Komponente stehen, die es noch nicht/nur partiell gibt. Ausserdem muss man sich dazu überlegen, was "bestimmte Ereignisse" sind.Zitat
4. Die Möglichkeit vom aquaerod bei bestimmten Ereignissen bestimmte Programme aufrufen lassen zu können.
dragonfood
unregistriert
Quellcode |
|
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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
root@dragonfood:/home/dragonfood/Download/aeinfo-2.2-src# make cat htdocs/fan.1.htm | sed -e "s/FAN 1/FAN 2/" -e "s/fan.1/fan.2/g" > htdocs/fan.2.htm cat htdocs/fan.1.htm | sed -e "s/FAN 1/FAN 3/" -e "s/fan.1/fan.3/g" > htdocs/fan.3.htm cat htdocs/fan.1.htm | sed -e "s/FAN 1/FAN 4/" -e "s/fan.1/fan.4/g" > htdocs/fan.4.htm cat htdocs/sensor.1.htm | sed -e "s/SENSOR 1/SENSOR 2/" -e "s/sensor.1/sensor.2/g" > htdocs/sensor.2.htm cat htdocs/sensor.1.htm | sed -e "s/SENSOR 1/SENSOR 3/" -e "s/sensor.1/sensor.3/g" > htdocs/sensor.3.htm cat htdocs/sensor.1.htm | sed -e "s/SENSOR 1/SENSOR 4/" -e "s/sensor.1/sensor.4/g" > htdocs/sensor.4.htm cat htdocs/sensor.1.htm | sed -e "s/SENSOR 1/SENSOR 5/" -e "s/sensor.1/sensor.5/g" > htdocs/sensor.5.htm cat htdocs/sensor.1.htm | sed -e "s/SENSOR 1/SENSOR 6/" -e "s/sensor.1/sensor.6/g" > htdocs/sensor.6.htm g++ -Wno-deprecated -DUSE_COLORS -Wall -lusb global.cpp -o aeinfo In file included from comm.h:24, from global.cpp:60: usbio.h:33:18: error: usb.h: No such file or directory definePropMap.h: In function ‘void definePropertyMap(AquaeroData_rev4&)’: definePropMap.h:165: warning: large integer implicitly truncated to unsigned type definePropMap.h:166: warning: large integer implicitly truncated to unsigned type definePropMap.h:167: warning: large integer implicitly truncated to unsigned type definePropMap.h:168: warning: large integer implicitly truncated to unsigned type definePropMap.h:169: warning: large integer implicitly truncated to unsigned type definePropMap.h:170: warning: large integer implicitly truncated to unsigned type comm.h: At global scope: comm.h:14: warning: ‘class AquaeroCommunication’ has virtual functions but non-virtual destructor usbio.h:128: error: ISO C++ forbids declaration of ‘usb_dev_handle’ with no type usbio.h:128: error: expected ‘;’ before ‘*’ token usbio.h:249: error: ‘usb_dev_handle’ has not been declared usbio.h:433: error: ISO C++ forbids declaration of ‘usb_dev_handle’ with no type usbio.h:433: error: expected ‘;’ before ‘*’ token usbio.h:549: error: expected `;' before ‘string’ usbio.h: In member function ‘void USBCommunication::close_device()’: usbio.h:181: error: ‘open_handle’ was not declared in this scope usbio.h:181: error: ‘usb_close’ was not declared in this scope usbio.h: In member function ‘usb_device* USBCommunication::init_device()’: usbio.h:272: error: ‘usb_init’ was not declared in this scope usbio.h:273: error: ‘usb_find_busses’ was not declared in this scope usbio.h:274: error: ‘usb_find_devices’ was not declared in this scope usbio.h:276: error: ‘usb_get_busses’ was not declared in this scope usbio.h:276: error: invalid use of undefined type ‘struct usb_bus’ usbio.h:269: error: forward declaration of ‘struct usb_bus’ usbio.h:278: error: invalid use of undefined type ‘struct usb_bus’ usbio.h:269: error: forward declaration of ‘struct usb_bus’ usbio.h:278: error: invalid use of undefined type ‘struct usb_device’ usbio.h:266: error: forward declaration of ‘struct usb_device’ usbio.h:280: error: invalid use of undefined type ‘struct usb_device’ usbio.h:266: error: forward declaration of ‘struct usb_device’ usbio.h:281: error: invalid use of undefined type ‘struct usb_device’ usbio.h:266: error: forward declaration of ‘struct usb_device’ usbio.h: In member function ‘std::string USBCommunication::readAEString()’: usbio.h:551: error: ‘usb_dev_handle’ was not declared in this scope usbio.h:551: error: ‘aq’ was not declared in this scope usbio.h:551: error: ‘get_aquaero_handle’ was not declared in this scope usbio.h:562: error: ‘usb_interrupt_read’ was not declared in this scope usbio.h:598: error: ‘usb_close’ was not declared in this scope usbio.h: In member function ‘void USBCommunication::writeAEString(std::string)’: usbio.h:621: error: ‘usb_dev_handle’ was not declared in this scope usbio.h:621: error: ‘aq’ was not declared in this scope usbio.h:621: error: ‘get_aquaero_handle’ was not declared in this scope usbio.h:640: error: ‘usb_control_msg’ was not declared in this scope usbio.h:696: error: ‘usb_close’ was not declared in this scope ipc.h: At global scope: ipc.h:1080: warning: ‘class AquaeroDaemonService’ has virtual functions but non-virtual destructor global.cpp: In function ‘int main(int, char**)’: global.cpp:380: warning: unused variable ‘ret’ make: *** [all] Fehler 1 root@dragonfood:/home/dragonfood/Download/aeinfo-2.2-src# |
Bitte installiere das libusb und ggf. ein libusb-devel-Paket (oder auch libusb-dev)!Zitat von »dragonfood«
Hi!
Hab jetzt schon seit ein paar wochen Ubuntu 6.10 drauf, bin aber was Linux an geht noch ein totaler noob
Wenn ich versuche aeinfo zu installieren kommen folgende errors:
Quellcode
1 2 3 4 5 6 7 8 9 ... ... ... usbio.h:33:18: error: usb.h: No such file or directory ... ... ... make: *** [all] Fehler 1 ...
Hoffe mir kann jemand weiter helfen.
dragonfood
Zitat von »0xmas6c333337«
Linux-Spezifika sind in aeinfo recht selten... ;-) das ist also keine Ausrede ;D
Zitat von »0xmas6c333337«
Wenn's nur die Überwachungskomponente betrifft (Datenrichtung: aquaerod->aquasuite), könnte es möglicherweise einfach sein. Vorschlag: Du (oder jemand) schreibst ein Programm (C oder C++), das der aquasuite ein aquaero über Netzwerk vorgaukelt (z.B. mit konstanten Werten), dann würde ich dies in den Daemon integrieren. ;-)
Zitat von »0xmas6c333337«
Jepp - steht schon im README
Dies dürfte mit dem bekannten Kommando ldd kein großes Problem sein.
Quellcode |
|
1 2 3 4 5 6 7 8 9 |
linux-gate.so.1 => (0xffffe000) libusb-0.1.so.4 => /usr/lib/libusb-0.1.so.4 (0x4001f000) libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40027000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x40039000) libm.so.6 => /lib/tls/libm.so.6 (0x40115000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4013b000) libc.so.6 => /lib/tls/libc.so.6 (0x40146000) libresmgr.so.1 => /lib/libresmgr.so.1 (0x40266000) /lib/ld-linux.so.2 (0x40000000) |
Zitat von »0xmas6c333337«
Gute Idee - wird wohl ein Command-Line-Argument werden.. Für's erste: iptables
Zitat von »0xmas6c333337«
Ja das würde ich mir auch so vorstellen - allerdings muss dazu zuerst eine Konfiguations-Komponente stehen, die es noch nicht/nur partiell gibt.
Quelltext der aquasuite ist definitiv nicht verfügbar - aber beim Netzwerkprotokoll sehe ich da keine so großen Probleme. Ggf. mal bei "Sebastian" (Forum-User) anfragen ;-)Zitat von »glup«
Nun dieses wäre warscheinlich sogar teilweise für mich machbar, wenn der Quelltext der aquasuite verfügbar wäre. Da sollte sich mal jemand von AC dazu äußern.
/lib/ld-linux.so.2 ist klar, aber linux-gate.so.1 einfach mal in den lib-Verzeichnissen schauen (/etc/ld.so.conf). Im neuen aeinfo-2.3 (hoffe ich komme heute noch dazu es zu uppen ;-)) wirds ein static-build make-Ziel geben. Da kannst Dir den Terz dann sparen ;-)Zitat
Nun die Ausgabe ist
Quellcode
1 2 3 4 5 6 7 8 9 linux-gate.so.1 => (0xffffe000) libusb-0.1.so.4 => /usr/lib/libusb-0.1.so.4 (0x4001f000) libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40027000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x40039000) libm.so.6 => /lib/tls/libm.so.6 (0x40115000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4013b000) libc.so.6 => /lib/tls/libc.so.6 (0x40146000) libresmgr.so.1 => /lib/libresmgr.so.1 (0x40266000) /lib/ld-linux.so.2 (0x40000000)
Wie müssen die erste und die letzte Zeile behandelt werden?
Nana soo schwierig ists auch wieder ned.. Trotzdem, neuer Command-line-switch in aeinfo-2.3: --no-webserverZitat
Also für so etwas wird wohl keiner mit iptables anfangen. Dafür einen Command-Line-Argument zu implementieren kostet sicherlich nur ein Bruchteil der Zeit, die man benötigt sich zu überlegen wie man eine lokale Firewall implementieren sollte.
Und eben das ist bereits aufwändig: Will man's richtig machen, muss man erst mal nen schönen parser generieren, Config-File-Loader etc.. Ist natürlich keine große Sache - aber ich hab momentan kaum Zeit. Und vor der Anbindung von config-files steht erst mal die Kompatiblität zu autoconf an. Die momentane make-Lösung und provisorische Verzeichnis-Struktur gefällt mir nicht.Zitat
Wozu? Einfach eine config Datei für den aquaerod. Wenn die im laufenden Betrieb geändert wurde kann man dem Daemon ein Signal schicken sie neu zu lesen. Zur Beschreibung der Ereignisse könnte man einfach Feldname, Operator und Vergleichswert angeben, z.B. "flowsensor.1.flow < 20". Man müsste mehrere dieser Regeln mit AND oder OR verknüpfen können und ein Kommando angeben das ausgeführt werden soll, wenn der gesamte Regelausdruck true ergibt. Der aquaerod weiß welche Felder in den Regeln verwandt wurden und ließt nur diese regelmäßig aus um die Regeln zu prüfen. Das minimiert die Last.
Etwas späte Antwort, aber ich dachte zuerst dass Du Herr Michael S. bist (hatte mich über selbes Problem per EMail angeschrieben) ;-)Zitat von »schnetzer«
Hallo
habe mal die neue version auf FC6 versucht zu kompilieren dies bricht aber mit folgendem fehler ab:
aehttpd.cpp: In member function »void AsyncResponder::close()«:
aehttpd.cpp:1751: Fehler: keine passende Funktion für Aufruf von »AsyncResponder::close(int&)«
aehttpd.cpp:1738: Anmerkung: Kandidaten sind: void AsyncResponder::close()
make: *** [all] Fehler 1
Ich wünsche allen ein schönes weinachts fest.
Da hab ich schon mal nen Thread dazu aufgemacht. Theoretisch ist es eigentlich recht einfach möglich. Schau mal hier:Zitat von »lord_fritte«
das währe als PHP Modul mit php funktionen ganz toll.
Quellcode |
|
1 2 3 4 5 6 7 |
Warning: include() [function.include]: URL file-access is disabled in the server configuration in E:\Web\htdocs\aeinfo.php on line 2 Warning: include([url]http://192.168.0.30:30000/test.htm)[/url] [function.include]: failed to open stream: no suitable wrapper could be found in E:\Web\htdocs\aeinfo.php on line 2 Warning: include() [function.include]: Failed opening 'http://192.168.0.30:30000/test.htm' for inclusion (include_path='.;E:\Web\usr\php\pear;..\php\includes') in E:\Web\htdocs\aeinfo.php on line 2 Fatal error: Call to undefined function aeinfo_test() in E:\Web\htdocs\aeinfo.php on line 3 |
Hm - versuch mal das dieses Warning weggeht:Zitat von »lord_fritte«
also ja sorry, hatte ich übersehen, aber mit include lässt sich das ganze nicht laden.
Quellcode |
|
1 |
URL file-access is disabled in the server configuration |
Zitat von »0x6c333337«
Welche Sonderzeichen betrifft es denn? ...das °-Zeichen? ...wenn Du immer unter UTF-8 arbeitest kannst Du das Grad-Zeichen auch im Source so ändern, dass es bei Dir passt. ;-)
Quellcode |
|
1 |
$ iconv --from-code=ISO-8859-1 --to-code=UTF-8 < old_file > new_file |
-