Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Fritzbox AVM Mesh/Router Schnittstelle für Delphi (https://www.delphipraxis.net/214043-fritzbox-avm-mesh-router-schnittstelle-fuer-delphi.html)

David1 8. Nov 2023 21:22

Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Hallo,
es geht um den folgenden Code:

Delphi-Quellcode:
unit TEstWlan;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
  Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, Vcl.StdCtrls;

type
  TForm3 = class(TForm)
    IdTCPClient1: TIdTCPClient;
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);
var
  Response: string;
begin
  IdTCPClient1.Port := 80; // Festlegung des Ports
  IdTCPClient1.Host := '.....'; // IP des Zielgeräts
  IdTCPClient1.ConnectTimeout := 5000; // Timeout für die Verbindung in Millisekunden (hier 5 Sekunden)
  try
    IdTCPClient1.Connect;


    ShowMessage('Erfolgreich');
  except
    on E: Exception do
      ShowMessage('Fehler beim Verbinden mit dem Zielrechner: ' + E.Message);
  end;
end;

end.
Ich möchte per Fritzbox Netzwerk auf Geräte , welche mit diesem verbunden sind kommunizieren (d.h. Daten auslesen und ausgeben - wie zb. Modelname, Gerätbezeichnung etc. oder Befehle wie "auschalten" o.ä.) Die dazu benötigten Befehl, damit die Kommunikation mit Fritzbox funktioniert finde ich nicht. Hat jemand Erfahrung damit und kann mir die Befehle nennen, zeigen wo ich diese finden kann oder eine andere Art der Kommunikation aufzeigen? (dabei sind die anzupingenden Geräte im selben Netzwerk wie der Rechner)
Vielen Dank
LG

himitsu 9. Nov 2023 00:21

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
https://avm.de/service/schnittstellen/
siehe Anmelden, Apps/TR und HTTP

Bei Google suchenFritzBox API

noisy_master 9. Nov 2023 07:10

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Moinsen!

hier gibt es übrigens schon eine Komponente für die Fritzbox, die dir jede Menge Arbeit abnimmt:
https://www.delphipraxis.net/179127-...e-v0-17-a.html

David1 9. Nov 2023 15:03

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Zitat:

Zitat von noisy_master (Beitrag 1529338)
Moinsen!

hier gibt es übrigens schon eine Komponente für die Fritzbox, die dir jede Menge Arbeit abnimmt:
https://www.delphipraxis.net/179127-...e-v0-17-a.html


Vielen Dank, nur leider lassen sich die Anhänge nicht richtig ausführen. Welche der Dateien benötige ich für Delphi 11 und welches genau muss ich ausführen, bzw. muss ich noch etwas modifizieren?
LG

himitsu 9. Nov 2023 15:38

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Das Ganze ist schon knapp 10 Jahre alt.

Die Anhänge:
XE5 = Delphi XE5
TDE = Turbo Delphi Explorer / Delphi 2006
LAZ = Lazarus / FreePascal

supermulti81 9. Nov 2023 16:09

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Ich hatte das mal angepasst und es läuft unter Delphi 11.
Der Login musste nochmal geändert werden, da hat AVM immer wieder Änderungen vorgenommen. Und ich hatte die Fritzbox IP anpassbar gemacht. Muss ich mal nachschauen.

David1 9. Nov 2023 16:12

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Zitat:

Zitat von supermulti81 (Beitrag 1529381)
Ich hatte das mal angepasst und es läuft unter Delphi 11.
Der Login musste nochmal geändert werden, da hat AVM immer wieder Änderungen vorgenommen. Und ich hatte die Fritzbox IP anpassbar gemacht. Muss ich mal nachschauen.

Klingt gut, wenn Sie mal nachschauen könnten und den Code in dieses Thema hochladen könnten, wäre dies natürlich toll.

himitsu 9. Nov 2023 16:49

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Das aktuelle Wie kann man in der Doku finden, wenn sich was ändert.

Hoffen wir das bleibt so, auch wenn AVM demnächst vermutlich an Ausländer verkauft wird. (die Cheffs gehen in Rente)

supermulti81 9. Nov 2023 18:31

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
Ab FritzBox OS >= 7.24 hat sich der Login geändert, da kommt dann eine andere Challenge zurück.
Man muss dann ein neues Response erzeugen.

Das habe ich damals nur mit einer alten IPWorks Encrypt Version hinbekommen, da würde dir die geänderte Datei nichts bringen.
Vielleicht kennt ja einer eine freie Kommponente, mit der man das auch lösen kann.

Delphi-Quellcode:
  ipcPBKDFHash1 := TipcPBKDF.Create(nil);
  ipcPBKDFHash2 := TipcPBKDF.Create(nil);
  try
    Result     := '';
    fChallenge := fSession.Challenge;

    if not fChallenge.Trim.IsEmpty then
    begin
      ipcPBKDFHash1.KeyLength := 256;
      ipcPBKDFHash1.Algorithm := pbHMACSHA256;
      ipcPBKDFHash1.UseHex   := True;

      ipcPBKDFHash2.KeyLength := 256;
      ipcPBKDFHash2.Algorithm := pbHMACSHA256;
      ipcPBKDFHash2.UseHex   := True;

      ipcPBKDFHash1.Iterations := StrToIntDef(fChallenge.Split(['$'])[1], 10000);
      ipcPBKDFHash1.SaltB     := HexStringToByteArray(fChallenge.Split(['$'])[2]);
      ipcPBKDFHash1.Password  := fPassword;
      ipcPBKDFHash1.CreateKey;

      ipcPBKDFHash2.Iterations := StrToIntDef(fChallenge.Split(['$'])[3], 1000);
      ipcPBKDFHash2.SaltB     := HexStringToByteArray(fChallenge.Split(['$'])[4]);
      ipcPBKDFHash2.PasswordB := HexStringToByteArray(ipcPBKDFHash1.Key.ToLower);
      ipcPBKDFHash2.CreateKey;

      Result := fChallenge.Split(['$'])[4] + '$' + ipcPBKDFHash2.Key.ToLower;
    end;
  finally
    ipcPBKDFHash1.Free;
    ipcPBKDFHash2.Free;
  end;

noisy_master 10. Nov 2023 10:25

AW: Fritzbox AVM Mesh/Router Schnittstelle für Delphi
 
vielleicht hilft das hier weiter :
https://github.com/stijnsanders/tool.../HashUtils.pas


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:15 Uhr.
Seite 1 von 2  1 2      

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