Skip to content

tgrothe/fritzbox-java-api

 
 

Repository files navigation

fritzbox-java-api

Java CI Quality Gate Status Maven Central

Java API for managing FritzBox HomeAutomation using AVM Home Automation HTTP Interface inspired by grundid's fritzbox-java-api. This also runs on Android devices (see Andect).

Important: Migration to Maven Central

Due to the deprecation of JCenter new versions will be published to Maven Central. In your build script please use

repositories {
    mavenCentral()
}

Changelog

See CHANGELOG.md.

Usage

Gradle

  • Add Maven Central maven repository:

    repositories {
        mavenCentral()
    }
  • Add dependency

    dependencies {
        compile 'com.github.kaklakariada:fritzbox-java-api:1.6.1'
    }

Maven

<dependency>
  <groupId>com.github.kaklakariada</groupId>
  <artifactId>fritzbox-java-api</artifactId>
  <version>1.6.1</version>
</dependency>

Run sample program

  1. Create file application.properties with the following content and enter settings for your device:

    fritzbox.url = https://fritz.box
    fritzbox.username = user
    fritzbox.password = secret
  2. Run example class TestDriver.

Development

Generate / update license header

./gradlew licenseFormat

Check if dependencies are up-to-date

./gradlew dependencyUpdates

Check dependencies for vulnerabilities

./gradlew ossIndexAudit

Building

Install to local maven repository:

./gradlew clean publishToMavenLocal

Publish to Maven Central

  1. Add the following to your ~/.gradle/gradle.properties:

    ossrhUsername=<your maven central username>
    ossrhPassword=<your maven central passwort>
    
    signing.keyId=<gpg key id (last 8 chars)>
    signing.password=<gpg key password>
    signing.secretKeyRingFile=<path to secret keyring file>
  2. Increment version number in build.gradle and README.md, update CHANGELOG.md, commit and push.

  3. Optional: run the following command to do a dry-run:

    ./gradlew clean check build publishToSonatype closeSonatypeStagingRepository --info
  4. Run the following command to publish to Maven Central:

    ./gradlew clean check build publishToSonatype closeAndReleaseSonatypeStagingRepository --info
  5. Create a new release on GitHub.

  6. After some time the release will be available at Maven Central.

About

Java API for managing FritzBox HomeAutomation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%