Gigaset Elements Binding

I am currently working on an oh2 for binding. gigaset elements (thanks to Kai for the help and advice).
As I am currently approaching the point where it does what i want / need, I would like to know wether there is any general need / interest in such a binding.

Hi Harald,
I would be more than happy to use a gigaset binding :slight_smile:

Hi Harald,
same here. Can you advise in regard to its features?
Cheers
Björn

Yessss very interested on it!!!

Nice to know that there is an interest.

Regarding its features:

It currently supports:

  • autodiscovery of sensors (only door, window, siren and motion) (after adding the cloud / base manually)
  • sensor status (open / closed, battery status, firmware up to date etc)
  • changing the mode (away / home / custom)

it does not support

  • elements events support is near non existant (so it is not possible to really use the motion info etc.)
  • plug, button and camera (due to lack of devices)

I am currenlty waiting till the new openhab2 beta is more stable. Afterwards i want to adapt my implementation regarding to the changes. I will post a small info after its done and it would be nice to have some beta testers after that :smile:

Also, if somebody has a plug, button or camera please contact me. I can probably cook up a tool to extract the json data needed to add at least basic support.
Cheers
Harald

Hi Harald,

I´m curious about your progress on the binding.
Since openhab2 beta4 seems to be quite stable I wonder if I could beta-test the binding?

Regards,
Chris

Hi Harald,

Same here. Let me know if I can help you with testing.

Best regards

Hi all,

Same here. Let me know if I can help you with testing.

Best regards

Hi Harald,

are you still alive? :slight_smile:
I somehow tried to test the binding and expanded it a little bit.
Furthermore I made it working for Openhab 2.1.0.

It is pretty verbose right now and it works for

  • windows
  • doors
  • plugs (only polling for state, no Switch playback to the Gigaset cloud)
  • movement sensors

What does not work:

  • no rule support
  • no camera support (lack of hardware)
  • no button support (lack of hardware)

Please give me a bit of testing time.
@hkuhn: please let me know if it is ok for you to develop it further together with you or someone interested in helping to code the missing parts of the binding?

Thank you and best regards

Heiko

Hi Heiko,

yes i am alive! However i lost my openhab installation (sd card died) and got sidetracked with other things so i kind of lost interest.
As this project is open source and was always meant to be a community effort, I would be glad to have you on board. Send me your github name as a PM and i will add you to the repository!
Cheers,
Harald

Hey everyone

though I am not a developer, I am happy to test this.
Additionally: I have a button and a camera which I can provide for development purposes (alhtough the camera seems to have some issues)
PM me - I can send the hardware to you, too.

Cheers
Patrick

Hello, i’m also interested in this Binding. Can anybody please send me the .JAR file? Or can help me to install the GIT Content into my openHAB2 Installation?
Thanks + regards, trinsic

Please PM me for the addon.

Thank you!
Heiko

Thanks Heiko for the Addon! Nice Work.
Rule support would still be nice :slight_smile:

Gab es irgendeine Änderung seitens Gigaset ? Läuft bei Euch noch alles ? Gruss Michael

This binding seems not to be actively maintained anymore. That’s a pity.

Is the JAR file public available or is it only distributed on request?

BR
Ulrich

I wrote a rule to evaluate the events from my Gigaset phone.
The rule is stripped down to the relevant parts.

/*
	inspiriert von https://github.com/dynasticorpheus/gigasetelements-cli/
*/

rule "GigasetElements"
when
	Time cron "33 0/5 * * * ?"
then

		if (num_Tel_LastEventCheck.state == NULL)
			num_Tel_LastEventCheck.postUpdate(now.minusDays(10).millis)

		val Password = "xxx"
		val Email = "yyy@zzz"

		var Url = "https://im.gigaset-elements.de/identity/api/v1/user/login/"
		val Userdata = "{\"password\":\"" + Password + "\",\"email\":\"" + Email + "\"}"
		var String JSONStruct = ""

		JSONStruct = sendHttpPostRequest(Url, "", Userdata, 9000)
		val Success = transform("JSONPATH", "status", JSONStruct)
		if (Success != "ok")
		{
			logInfo("GigasetElements", "Anmeldung bei Gigaset Elements nicht erfolgreich!")
			return;
		}

		Url = "https://api.gigaset-elements.de/api/v1/auth/openid/begin?op=gigaset"
		JSONStruct = sendHttpGetRequest(Url, 9000)

		val Start = num_Tel_LastEventCheck.state
		val Ende = now.millis
		num_Tel_LastEventCheck.postUpdate(Ende)

		Url = "https://api.gigaset-elements.de/api/v2/me/events?group=phone&from_ts=" + Start + "&to_ts=" + Ende + "&limit=999"
		JSONStruct = sendHttpGetRequest(Url, 9000)

		var i = 0
		var	EventTimeRaw = transform("JSONPATH", "$.events[" + i + "].ts", JSONStruct)

		while (EventTimeRaw.isNumeric)
		{
			val EventTime = new DateTime(Long::parseLong(EventTimeRaw))
			val EventType = transform("JSONPATH", "$.events[" + i + "].o.call_type", JSONStruct)
			val EventCLIPType = transform("JSONPATH", "$.events[" + i + "].o.clip_type", JSONStruct)
			val EventCLIP = transform("JSONPATH", "$.events[" + i + "].o.clip", JSONStruct)

			logInfo("GigasetElements", EventType + " " + EventTime.toString + " " + EventCLIPType + " " + EventCLIP)

			i++
			EventTimeRaw = transform("JSONPATH", "$.events[" + i + "].ts", JSONStruct)
		}
end

Hi Harald
is this Binding not continued? I would be very interested in it
Regards
Heinz

Hello there,

I am also very interested in a working Binding - or a acceptable workaround - for my Gigaset Elements Sensors.

As of now I have eight door and window sensors, a alarm-set and a motion sensor. Started with my openHAB-setup two weeks ago and are still blown away by all the possibilities.

Regards to your great community,

Nikolaus\