Delphi-PRAXiS
Seite 4 von 6   « Erste     234 56      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   FRITZ!Box Komponente v0.17 (https://www.delphipraxis.net/179127-fritz-box-komponente-v0-17-a.html)

Garfield 7. Nov 2016 18:17

AW: FRITZ!Box Komponente v0.17
 
@Borstenei - Das dürfte an der Software der Fritzbox liegen. Ich habe hier jetzt keine Fritzbox um das noch einmal zu Überprüfen, aber ich denke in der Fritzbox werden auch nicht alle 400 Einträge angezeigt.

@greenmile - In der v0.17 ist schon etwas WLAN drin. Die v0.18 ist/war schon einige Zeit in Arbeit (Sollte bereits letztes Jahr hier veröffentlich werden). Die Verwendung mehrerer Compiler ist jedoch nicht so einfach. Von Februar bis Juli war mein Laptop defekt. Entweder ist er immernoch defekt oder Windows 10 läuft darauf nicht stabil. Die ein, zwei Bluescreen mit Neustart am Abend sind nicht gerade förderlich. Im Moment beschäftige ich mehr mit Lazarus im allgemeinen und dem IP Scan im besonderen.

Rene K. 11. Nov 2016 19:35

AW: FRITZ!Box Komponente v0.17
 
Scheinbar geht es hier nicht weiter, aber ich frage dennoch.

Ich habe mir die aktuelle Version herunter geladen. Die Lazarus-Variante funktioniert nicht unter MAC OS. Statt WinSock muss da Synapse mit SynSock her. Leider sind die IPv4 Aufrufe aber nicht mehr enthalten. Jedenfalls konnte ich den Code nicht komplett migrieren. Besser sah es mit der XE5 Version unter Berlin 10.1 aus. Klappte auf Anhieb.

Nun zur eigentlichen Frage: Wie kann ich die Steckdosen abfragen (via getswitchstate)?
Das Studium diverser PHP Scripte hat mich leider nicht weiter gebracht.

Garfield 12. Nov 2016 13:26

AW: FRITZ!Box Komponente v0.17
 
Zitat:

Zitat von Rene K. (Beitrag 1353407)
Scheinbar geht es hier nicht weiter, aber ich frage dennoch.

-31-

Zitat:

Zitat von Rene K. (Beitrag 1353407)
... Die Lazarus-Variante funktioniert nicht unter MAC OS. ...

Da Windows-Funktionen verwendet werden ist das logisch. Ohne MAC OS kann ich es eh nicht testen. Ubuntu ist für mich eher interessant. Ob das dann alles kompatibel sein wird, weiß ich nicht. Den Callmonitor hatte ich erfolgreich mit Wine getestet.

Zitat:

Zitat von Rene K. (Beitrag 1353407)
Nun zur eigentlichen Frage: Wie kann ich die Steckdosen abfragen (via getswitchstate)?
Das Studium diverser PHP Scripte hat mich leider nicht weiter gebracht.

Wozu PHP-Scripte auswerten? Firefox mit Live HTTP Headers starten, die gewünschten Informationen im Fritzbox-Menue abrufen und den Mitschnitt von Live HTTP Headers auswerten.

Garfield 12. Nov 2016 13:34

AW: FRITZ!Box Komponente v0.17
 
Liste der Anhänge anzeigen (Anzahl: 1)
Vielleicht das mal ansehen.

Garfield 19. Nov 2016 08:45

AW: FRITZ!Box Komponente v0.17
 
Liste der Anhänge anzeigen (Anzahl: 1)
Erläuterung:

Der Spider verwendet upnp. Auf der Fritzbox sind verschiedene Beschreibungsdateien enthalten, diese enthalten Links auf weitere Beschreibungsdateien oder die Beschreibung von Funktionen usw. Das bedeutet die Namen der Funktionen, ihre Variablen, die Typen der Variablen und die möglichen Werte.

Mit einem Klick auf den Button "Scannen" wird nach den Dateien 'tr64desc.xml', 'igddesc.xml', 'phonebook.xml' und 'crossdomain.xml' geguckt. Sind sie vorhanden werden sie durchgesehehen.

Unter "Services, Actions, Argumente und Eigenschaften" ist links ein TreeView mit den gefundenenen Dateien und Funktionen usw. Wird eine Funktion ausgewählt werden in dem Memo in der Mitte die Variablen angezeigt. Wählt man eine Variable aus, werden im Memo rechts der Typ und die Werte angezeigt.

Ist eine Funktionn ausgewählt, wird unter "TCP Send Script" das Script zur Abfrage angezeigt. Ein Klick auf den Button "Senden" verschickt das Script und unter "TCP Receive Script" sieht man die Antwort. Ist der Balken darüber grün ist alles in Ordnung. Ist er rot, liegt es in der Regel daran, dass eine HTPPS-Verbindung notwendig ist, welche nicht im Spider implementiert ist.

Der Spider ist mit TurboDelphi geschrieben und kompiliert.

Garfield 1. Dez 2016 22:27

AW: FRITZ!Box Komponente v0.17
 
Dokumente dazu: https://avm.de/service/schnittstellen/

Vienesko 21. Mai 2017 22:14

AW: FRITZ!Box Komponente v0.17
 
Moin Moin,

ich bin neu hier im Forum (bisher nur stiller Mitleser) und beschäftige mich noch nicht so lange mit der Programmierung in Delphi.
Ich möchte mir das Programmieren mit einer eigenen Software beibringen - also leraning by doing sozusagen.

In diese Software (eine eigene Haussteuerung) möchte ich auch die Abfrage meiner FritzBox implementieren.
Ich habe die Komponente heruntergeladen (herzlichen Dank an Garfield fürs Bereitstellen) und wollte diese installieren. Ich bekomme allerdings Fehler angezeigt.
Er findet unter "uses" leider "Dom" und "XMLRead" nicht.

Wo liegt das Problem? Auch bei der Beispielanwendung gibt es Probleme.
Ich nutze XE7.

Ich würde mich freuen, wenn ihr mir helfen könntet. Vielen Dank

himitsu 21. Mai 2017 22:32

AW: FRITZ!Box Komponente v0.17
 
Alle fast alle Delphi-Units heißen inzwischen anders, aber standardmäíg hat man in neuen Projekten den fehlenden Namespace definiert (vorallem
Delphi-Quellcode:
System. Vcl. und WinApi.
).
Forms = Vcl.Forms
SysUtils = System.SysUtils
usw.

Als Erstes solltes du lernen, was Compiler-Direktiven sind.
Dieser Code wurde für Delphi und Lazarus geschrieben und je nach Compiler und CompilerVersion wird unterschiedlicher Code verwendet.

Delphi-Quellcode:
{$IfDef VER260}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE5}
{$IfDef VER250}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE4}
{$IfDef VER240}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE3}
...
{$IfDef VER80}{$Define DELPHI} {$EndIf}                          {Delphi 1}

interface

uses
  Classes, SysUtils, Windows, WinSock, Dialogs, ExtCtrls, Forms, StdCtrls, Graphics,
  {$IfDef DELPHI}Jpeg, Messages, XMLIntf, XMLDoc{$Else}Controls, Dom, XMLRead{$EndIf};
Und schon würde bestimmt schnell auffallen, dass dein Problem im Bereich "Prüfung auf Delphiversionen" liegt.

Der fehlende Teil:
Delphi-Quellcode:
{$IfDef VER320}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE10.2}
{$IfDef VER310}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE10.1}
{$IfDef VER300}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE10}
{$IfDef VER290}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE8}
{$IfDef VER280}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE7}
{$IfDef VER270}{$Define DELPHI}{$Define DELPHI_XE2_UP}{$EndIf}   {Delphi XE6}
Nja, aus solchen Grüden nutze ich in meinen Codes eine die entsprechenden Conditional-Expressions ala
Delphi-Quellcode:
{$IF CompilerVersion >= 23.0}

für
Delphi-Quellcode:
{$DEFINE DELPHI_XE2_UP}
, was auch in zukünftigen Delphis passen wird, im Gegensatz zu den
Delphi-Quellcode:
{$IFDEF VER230}
-Orgien.

Aber am Liebsten prüfe ich möglichst auf benötigte Compiler-Features und Deklarationen, anstatt auf irgendwelche Compiler-Versionen, da es "eindeutiger", verständlicher und vorallem versionsunabhängig ist.
Delphi-Quellcode:
uses {$IFDEF FPC}Controls, Dom, XMLRead{$ELSE}Jpeg, Messages, XMLIntf, XMLDoc{$ENDIF}  // FreePacal und seit XE gibt es im Delphi auch "DCC"

{$IF Declared(RawByteString)}RawByteString{$ELSE}AnsiString{$IFEND}

Garfield 28. Mai 2017 22:30

AW: FRITZ!Box Komponente v0.17
 
@Vienesko: Hier muss man nichts installieren, weshalb es wohl eigentlich keine Komponente ist. Die Demos habe ich mit den angegebenen Compilern getestet und Änderungen nur soweit vorgenommen wie es notwendig war. Delphi XE5 war dabei der neueste. Neuer wird er wahrscheinlich nicht mehr werden.

@himitsu: Dein Hinweis auf das Prüfen auf Feature und Deklarationen finde ich gut. Ein Update ist schon lange fällig.

Andy090778 31. Mai 2017 21:58

AW: FRITZ!Box Komponente v0.17
 
Hallo Garfield,

konnte aus Deiner Komponente viel Erfahrung sammeln wie man die Fritz.box denn nun überhaupt mal anspricht.
Ich überlege grade ob ich eine Delphi GUi samt Server bastle für den geplanten Touchscreen in der Küche, der als Hauptaufgabe natürlich per KNX das Haus steuern kann.

Bist Du schon weitergekommen beim Feature "Wählhilfe"?

Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:44 Uhr.
Seite 4 von 6   « Erste     234 56      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz