Domoticz Premium apk has stopped working

Subforum for general discussions. Do not dump your questions/problems here, but try to find the subforum where it belongs!

Moderators: leecollings, remb0

kniazio
Posts: 198
Joined: Thursday 06 October 2016 8:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.7243
Contact:

Domoticz Premium apk has stopped working

Post by kniazio »

The last update of the Premium app for Android deprived me of access to My Domoticz "no data on the server"
The free app works. It hasn't been updated.
How to go back to the previous version without losing data?
Phone Pixel 3a
Attachments
Screenshot_20231022-104322.png
Screenshot_20231022-104322.png (45.8 KiB) Viewed 4640 times
Screenshot_20231022-103904.png
Screenshot_20231022-103904.png (121.77 KiB) Viewed 4642 times
Kruu
Posts: 49
Joined: Tuesday 17 January 2017 20:27
Target OS: Raspberry Pi / ODroid
Domoticz version: 2020.2
Contact:

Re: Domoticz Premium apk has stopped working

Post by Kruu »

I just made update of Domoticz Premium. Same problem as you.

Any fix?


I made an update, and there is no more Domoticz Premium on playstore?
kniazio
Posts: 198
Joined: Thursday 06 October 2016 8:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.7243
Contact:

Re: Domoticz Premium apk has stopped working

Post by kniazio »

The author of the application came up with the idea that he would now charge an annual subscription of PLN 27.99. When I bought the application, this was not mentioned. Now I am being deprived of access to the application. It's not fair. If I knew, I wouldn't install today's update.
Kruu
Posts: 49
Joined: Tuesday 17 January 2017 20:27
Target OS: Raspberry Pi / ODroid
Domoticz version: 2020.2
Contact:

Re: Domoticz Premium apk has stopped working

Post by Kruu »

Is this for real?

Couldnt this be solved more fair?

Update the app, some note that the app will work until you use this version of domoticz server version, or something. When you update the Domoticz app will no longer work.

Does someone have last APK file that work?
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

I don't see any issues made by anybody yet in Github, so that would be a good place to start to report this i guess?
I had the same on one phone, so copied the previous version 0.2.361 (9349) back from another phone and things are working again.

EDIT: Created an Issue, so please post your comments and additional info there: https://github.com/domoticz/domoticz-android/issues/705
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
ZaGaPonG
Posts: 10
Joined: Monday 04 March 2019 22:40
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: Domoticz Premium apk has stopped working

Post by ZaGaPonG »

Same problem here...auto-update done during the night.
Testing with the other app (with subscription option) which working well..
I hope this is not intentional :x
f12004
Posts: 12
Joined: Thursday 05 December 2019 23:06
Target OS: -
Domoticz version:
Contact:

Re: Domoticz Premium apk has stopped working

Post by f12004 »

Yes, stopped working from tonight.
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

The issue seems to be that support for the old API format is not supported anymore, and only the new format API's are now supported, which I guess is understandable since Domoticz devs decided not to maintain the backwards compatibility.

So, as i am not prepared yet to upgrade domoticz to the latest version, thus have build a "simple" workaround. :mrgreen:
I added the below site config to my NGINX also running on the RPI which runs Domoticz.
The NGINX Site will proxy the traffic and first convert the parameters from new to old API format.
Then pointed the latest Android APP to port 8082 in stead of 8080.... e voilà 8-)
This config is for http, so in case you need https you will have to make changes to the proxy stuff as described in the wiki: https://www.domoticz.com/wiki/WebServer_Proxy

NGINX Site Config:

Code: Select all

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server  {
	listen 8082;
	server_name domoapi2old;
	access_log /var/log/nginx/domoapi2.log;
	error_log /var/log/nginx/domoapi2.log;
	location / {
		if ($args ~ (^|.*&)type=command&param=getsettings(.*)) { set $args $1type=settings$2; break;}
		if ($args ~ (^|.*&)type=command&param=getusers(.*)) { set $args $1type=users$2; break;}
		if ($args ~ (^|.*&)type=command&param=getdevices(.*)) { set $args $1type=devices$2; break;}
		if ($args ~ (^|.*&)type=command&param=gethardware(.*)) { set $args $1type=hardware$2; break;}
		if ($args ~ (^|.*&)type=command&param=events(.*)) { set $args $1type=events$2; break;}
		if ($args ~ (^|.*&)type=command&param=getnotifications(.*)) { set $args $1type=notifications$2; break;}
		if ($args ~ (^|.*&)type=command&param=createdevice(.*)) { set $args $1type=createdevice$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenes(.*)) { set $args $1type=scenes$2; break;}
		if ($args ~ (^|.*&)type=command&param=getplans(.*)) { set $args $1type=plans$2; break;}
		if ($args ~ (^|.*&)type=command&param=graph(.*)) { set $args $1type=graph$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenelog(.*)) { set $args $1type=scenelog$2; break;}
		if ($args ~ (^|.*&)type=command&param=getmobiles(.*)) { set $args $1type=mobiles$2; break;}
		if ($args ~ (^|.*&)type=command&param=getcameras(.*)) { set $args $1type=cameras$2; break;}
		if ($args ~ (^|.*&)type=command&param=getcameras_user(.*)) { set $args $1type=cameras_user$2; break;}
		if ($args ~ (^|.*&)type=command&param=getschedules(.*)) { set $args $1type=schedules$2; break;}
		if ($args ~ (^|.*&)type=command&param=gettimers(.*)) { set $args $1type=timers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenetimers(.*)) { set $args $1type=scenetimers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getsetpointtimers(.*)) { set $args $1type=setpointtimers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getplans(.*)) { set $args $1type=plans$2; break;}
		if ($args ~ (^|.*&)type=command&param=getfloorplans(.*)) { set $args $1type=floorplans$2; break;}
		if ($args ~ (^|.*&)type=command&param=getlightlog(.*)) { set $args $1type=lightlog$2; break;}
		if ($args ~ (^|.*&)type=command&param=gettextlog(.*)) { set $args $1type=textlog$2; break;}
		if ($args ~ (^|.*&)type=command&param=setused(.*)) { set $args $1type=setused$2; break;}
		proxy_http_version		1.1;
		proxy_read_timeout		90;
		proxy_set_header        Host $host;
		proxy_set_header        X-Real-IP $remote_addr;
		proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header        X-Forwarded-Proto $scheme;
		proxy_set_header        X-Scheme $scheme;
		proxy_set_header        Upgrade $http_upgrade;
		proxy_set_header        Connection $connection_upgrade;
		add_header              X-Frame-Options SAMEORIGIN;
		proxy_pass http://localhost:8080/;
	}
}

I also have an NGINX config for converting the Old API format to he New in case I have an external application which doesn't support the new API format yet.
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
Cubes
Posts: 23
Joined: Wednesday 04 March 2015 16:45
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Belgium
Contact:

Re: Domoticz Premium apk has stopped working

Post by Cubes »

Right, so what's the plan here?
I paid for a domoticz premium app.
My domoticz install is fairly old and I have no need to upgrade.
The app no longer connects to my server
Need to buy a new subscription based app to get it working again.

I can maybe understand the reasoning if I were paying for new features but that's not the case. I just want my old features back. Where do i download an apk of the previous app version?
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

First off: I am not related to the developer of the APP!

.... but the problem here is that Domoticz made a change to the format of the API's which is a breaking change! In the current production there is a backward compatibility generating log messages for each old API format call, but that will be removed totally in the upcoming versions as far as I know.
https://www.domoticz.com/wiki/Domoticz_ ... d_newer.29

So as a result all the external applications that are using these API's are forced to change their API formats to this new format in the hard way!
So ask yourself now this: Is it the job of the all these app developers to maintain backwards compatibility for these breaking changes or should Domoticz have been more lenient allowing both the Old and New format for a longer period?

Either way: The explained proxy setup work fine for me and I am not looking for an extensive discussion on this as that has been done a while ago in this thread: viewtopic.php?p=303581
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
kniazio
Posts: 198
Joined: Thursday 06 October 2016 8:14
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.7243
Contact:

Re: Domoticz Premium apk has stopped working

Post by kniazio »

Cubes wrote: Wednesday 25 October 2023 10:34 Where do i download an apk of the previous app version?
I join the question.
ZaGaPonG
Posts: 10
Joined: Monday 04 March 2019 22:40
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: Domoticz Premium apk has stopped working

Post by ZaGaPonG »

jvdz wrote: Monday 23 October 2023 13:53 The issue seems to be that support for the old API format is not supported anymore, and only the new format API's are now supported, which I guess is understandable since Domoticz devs decided not to maintain the backwards compatibility.

So, as i am not prepared yet to upgrade domoticz to the latest version, thus have build a "simple" workaround. :mrgreen:
I added the below site config to my NGINX also running on the RPI which runs Domoticz.
The NGINX Site will proxy the traffic and first convert the parameters from new to old API format.
Then pointed the latest Android APP to port 8082 in stead of 8080.... e voilà 8-)
This config is for http, so in case you need https you will have to make changes to the proxy stuff as described in the wiki: https://www.domoticz.com/wiki/WebServer_Proxy

NGINX Site Config:

Code: Select all

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server  {
	listen 8082;
	server_name domoapi2old;
	access_log /var/log/nginx/domoapi2.log;
	error_log /var/log/nginx/domoapi2.log;
	location / {
		if ($args ~ (^|.*&)type=command&param=getsettings(.*)) { set $args $1type=settings$2; break;}
		if ($args ~ (^|.*&)type=command&param=getusers(.*)) { set $args $1type=users$2; break;}
		if ($args ~ (^|.*&)type=command&param=getdevices(.*)) { set $args $1type=devices$2; break;}
		if ($args ~ (^|.*&)type=command&param=gethardware(.*)) { set $args $1type=hardware$2; break;}
		if ($args ~ (^|.*&)type=command&param=events(.*)) { set $args $1type=events$2; break;}
		if ($args ~ (^|.*&)type=command&param=getnotifications(.*)) { set $args $1type=notifications$2; break;}
		if ($args ~ (^|.*&)type=command&param=createdevice(.*)) { set $args $1type=createdevice$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenes(.*)) { set $args $1type=scenes$2; break;}
		if ($args ~ (^|.*&)type=command&param=getplans(.*)) { set $args $1type=plans$2; break;}
		if ($args ~ (^|.*&)type=command&param=graph(.*)) { set $args $1type=graph$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenelog(.*)) { set $args $1type=scenelog$2; break;}
		if ($args ~ (^|.*&)type=command&param=getmobiles(.*)) { set $args $1type=mobiles$2; break;}
		if ($args ~ (^|.*&)type=command&param=getcameras(.*)) { set $args $1type=cameras$2; break;}
		if ($args ~ (^|.*&)type=command&param=getcameras_user(.*)) { set $args $1type=cameras_user$2; break;}
		if ($args ~ (^|.*&)type=command&param=getschedules(.*)) { set $args $1type=schedules$2; break;}
		if ($args ~ (^|.*&)type=command&param=gettimers(.*)) { set $args $1type=timers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenetimers(.*)) { set $args $1type=scenetimers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getsetpointtimers(.*)) { set $args $1type=setpointtimers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getplans(.*)) { set $args $1type=plans$2; break;}
		if ($args ~ (^|.*&)type=command&param=getfloorplans(.*)) { set $args $1type=floorplans$2; break;}
		if ($args ~ (^|.*&)type=command&param=getlightlog(.*)) { set $args $1type=lightlog$2; break;}
		if ($args ~ (^|.*&)type=command&param=gettextlog(.*)) { set $args $1type=textlog$2; break;}
		if ($args ~ (^|.*&)type=command&param=setused(.*)) { set $args $1type=setused$2; break;}
		proxy_http_version		1.1;
		proxy_read_timeout		90;
		proxy_set_header        Host $host;
		proxy_set_header        X-Real-IP $remote_addr;
		proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header        X-Forwarded-Proto $scheme;
		proxy_set_header        X-Scheme $scheme;
		proxy_set_header        Upgrade $http_upgrade;
		proxy_set_header        Connection $connection_upgrade;
		add_header              X-Frame-Options SAMEORIGIN;
		proxy_pass http://localhost:8080/;
	}
}

I also have an NGINX config for converting the Old API format to he New in case I have an external application which doesn't support the new API format yet.
Hello,

Thanks for sharing this workaround.

I got the "same" config, nginx and domoticz running on the same device. In my case, this is a Synology but Domoticz and Nginx are "native" (not accross Docker).
So adding a site to my nginx with your parameters and all seems worked: no error in nginx logs, seeing my Domoticz when trying to access to it via 8082 port...but Domoticz apps display the same message (no devices on Domoticz).

Did you have an advice for me?

Thanks in advance.
TurboX
Posts: 40
Joined: Wednesday 07 September 2022 9:15
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Domoticz Premium apk has stopped working

Post by TurboX »

Same here, due to a lot of additional things (many externals plugins, buster ,...) I don't want to update now and my app stop working.

Thanks@jvdz to the Nginx code, it works!

I had modified the config in order to adapt to my configuration. Indeed, I already use the Synology reverse proxy and Nginx was new for me.
Consequently I have install Nginx Proxy Manager with docker (easy with portainer on the raspberry) and I use dual rediction.
The first is on the synology reverse proxy: from domoticz.xxxx.com:443 to 192.X.X.X:80 (the Nginx proxy manager) and the Nginx proxy manager forward to 192.X.X.X:8080 (my domoticz).
In the source I entered : domoticz.xxxx.com
In the destination: HTTP (domoticz IP) port 80(it is not the port of domoticz but the port in advanced configuration seems replace this port, see below).
Into Advanced configuration of the created proxy host I have paste this config (change the adresse at the end):

Code: Select all

location / {
if ($args ~ (^|.*&)type=command&param=getsettings(.*)) { set $args $1type=settings$2; break;}
		if ($args ~ (^|.*&)type=command&param=getusers(.*)) { set $args $1type=users$2; break;}
		if ($args ~ (^|.*&)type=command&param=getdevices(.*)) { set $args $1type=devices$2; break;}
		if ($args ~ (^|.*&)type=command&param=gethardware(.*)) { set $args $1type=hardware$2; break;}
		if ($args ~ (^|.*&)type=command&param=events(.*)) { set $args $1type=events$2; break;}
		if ($args ~ (^|.*&)type=command&param=getnotifications(.*)) { set $args $1type=notifications$2; break;}
		if ($args ~ (^|.*&)type=command&param=createdevice(.*)) { set $args $1type=createdevice$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenes(.*)) { set $args $1type=scenes$2; break;}
		if ($args ~ (^|.*&)type=command&param=getplans(.*)) { set $args $1type=plans$2; break;}
		if ($args ~ (^|.*&)type=command&param=graph(.*)) { set $args $1type=graph$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenelog(.*)) { set $args $1type=scenelog$2; break;}
		if ($args ~ (^|.*&)type=command&param=getmobiles(.*)) { set $args $1type=mobiles$2; break;}
		if ($args ~ (^|.*&)type=command&param=getcameras(.*)) { set $args $1type=cameras$2; break;}
		if ($args ~ (^|.*&)type=command&param=getcameras_user(.*)) { set $args $1type=cameras_user$2; break;}
		if ($args ~ (^|.*&)type=command&param=getschedules(.*)) { set $args $1type=schedules$2; break;}
		if ($args ~ (^|.*&)type=command&param=gettimers(.*)) { set $args $1type=timers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getscenetimers(.*)) { set $args $1type=scenetimers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getsetpointtimers(.*)) { set $args $1type=setpointtimers$2; break;}
		if ($args ~ (^|.*&)type=command&param=getplans(.*)) { set $args $1type=plans$2; break;}
		if ($args ~ (^|.*&)type=command&param=getfloorplans(.*)) { set $args $1type=floorplans$2; break;}
		if ($args ~ (^|.*&)type=command&param=getlightlog(.*)) { set $args $1type=lightlog$2; break;}
		if ($args ~ (^|.*&)type=command&param=gettextlog(.*)) { set $args $1type=textlog$2; break;}
		if ($args ~ (^|.*&)type=command&param=setused(.*)) { set $args $1type=setused$2; break;}
proxy_pass http://192.X.X.X:8080/;
}
So, ok one day I must update domoticz but forced like this is bad.
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

ZaGaPonG wrote: Wednesday 25 October 2023 21:34 So adding a site to my nginx with your parameters and all seems worked: no error in nginx logs, seeing my Domoticz when trying to access to it via 8082 port...but Domoticz apps display the same message (no devices on Domoticz).
Did you have an advice for me?
When it works and not showing devices I can only assume that this is an security issue as devices shown are depending on userid & password.
Do you normally use http or https with login?
Did you check which userid you log in with as the devices shown depend on that?
Do you see all devices with API call from your browser: http://xx.xx.xx.xx:8082/json.htm?type=devices ?
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

TurboX wrote: Wednesday 25 October 2023 22:05 Thanks@jvdz to the Nginx code, it works!

I had modified the config in order to adapt to my configuration.
Great it works for you too.
Just wondering why you removed the header fields...was that needed as now you will loose the original IP address and the proxy IP is used?
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
Cubes
Posts: 23
Joined: Wednesday 04 March 2015 16:45
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Belgium
Contact:

Re: Domoticz Premium apk has stopped working

Post by Cubes »

jvdz wrote: Wednesday 25 October 2023 12:04 Is it the job of the all these app developers to maintain backwards compatibility for these breaking changes
You're correct, it's not but they should also not break the setups of people who wish to remain on old premium app + old domoticz version.
At the moment I can't revert back to the (for me) working version of the premium app without an apk.
HansF
Posts: 19
Joined: Monday 19 November 2018 23:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Domoticz Premium apk has stopped working

Post by HansF »

The app works again after a new update this morning, thanks to the developer!
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

Which version did you install?
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
HansF
Posts: 19
Joined: Monday 19 November 2018 23:07
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Domoticz Premium apk has stopped working

Post by HansF »

0.2.366 (9403)
User avatar
jvdz
Posts: 2189
Joined: Tuesday 30 December 2014 19:25
Target OS: Raspberry Pi / ODroid
Domoticz version: 4.107
Location: Netherlands
Contact:

Re: Domoticz Premium apk has stopped working

Post by jvdz »

It doesn't work yet on my "old" 4.10717 Domoticz setup still failing with oeps..... but with the proxy all is fine.
EDIT: Actually the new version does work fine for me as this time the "oeps" was mine using the wrong protocol.
New Garbage collection scripts: https://github.com/jvanderzande/GarbageCalendar
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests