Skip to content

Java implementation of the Grohe ONDUS API REST interface

License

Notifications You must be signed in to change notification settings

alfpf/grohe-ondus-api-java

 
 

Repository files navigation

Build Status Download

grohe-ondus-api-java

This is a library written in Java which can communicate to the Grohe ONDUS API interface, e.g. to request appliance data or to send commands.

API reference

The API used by the Grohe ONDUS App is not publicly documented or released. The implementation of this library is basically based on information gathered while reverse engineering the Grohe ONDUS Anroid App. This means, that the use of this API with this library may not be permitted by Grohe and that this library may not work in the future anymore (when Grohe changes the API interface without any backwards compatibility). Once Grohe releases a public API, this library may not be needed anymore.

Installation

The library is released to Maven Central (https://repo1.maven.org/maven2/io/github/floriansw/ondus-api/)

Maven

<dependency>
  <groupId>io.github.floriansw</groupId>
  <artifactId>ondus-api</artifactId>
  <version>2.0.0</version>
  <type>pom</type>
</dependency>

Gradle

compile 'io.github.floriansw:ondus-api:2.0.0'

Java API

The main entry point of this library is the OndusService class, which provides the public API of this library. All other classes, except the models (which represent the data returned by the Grohe API) should be considered as internal API and may therefore not be used in your code.

The first thing you need to do is to login with your Grohe username and password (logging in with a JWT is being implemented):

class Example {
    public static void main(String[] args) {
        OndusService.loginWebform("[email protected]", "YourStrongPassword");
    }
}

Which returns an instance of OndusService. Afterwards you can request information from the API, such as the list of locations or rooms:

class Example {
    public static void main(String[] args) {
        List<BaseAppliance> appliances = ondusService.appliances();
        
        System.out.println(appliances.get(0).getName());
    }
}

About

Java implementation of the Grohe ONDUS API REST interface

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 93.1%
  • JavaScript 6.9%