[APP][Pro] Trashcan Reminder 2.0

Colors are now correct after the last app update.fantastic work! Thank you so much!

1 Like

The latest version 5.0.6 crashed on my Homey 2019.
Also created an issue on Git.
The app won’t start anymore.

Diagnose report: b485a741-9429-44b8-a21b-0ab5a02f4635

Quick fix is remove the app. Reboot homey. Install the app and configure it again. Something goes wrong on older models with the migration step.

You can also try this version here: Trashcan Reminder 2.0 | Homey

I think that should solve the issue.

I tried the new test version 5.0.7 , still the app crashed.
Maybe a reinstall of the app then.

Hm, sorry, found another glitch in the migration path that I didn’t account for, published 5.0.8. Can you try with that one or did you already reinstall?

1 Like

I did a reinstall , that seems to solved it.
Without restarting homey.
Also the flows keeps working after reinstall.

Thanks for the fast response and possible fix!

Just just a fresh install but with selecting the source it keeps saying looking for adres. Source is RMN. Any advice would be nice.

Unfortunately since today the app isn’t fetching data from RMN anymore. So everything stopped working for me. After reinstalling the app and entering my postal code and number the app is not recognizing the adres when selecting RMN. If I choose “onbekend” and fill in my postal code and number it will automatically selects ROVA in stead of RMN.

I encounter an issue with the new app (as well as the testversion). The variable types isn’t replaced

What am i doing wrong???

It should be __type__. Found a typo in the Dutch translation that pushes __types__. So if you change it to __type__ than it should work :slight_smile:

Are you sure your provider didn’t switch from RMN to ROVA? Don’t know where you live. But municipalities often change connections, suppliers etc. If it selects ROVA now and provides data (see debug info) then your municipality probably switched providers.

If you don’t see any data can you send me a PM with an example zipcode + number? Then I can check from my end.

For me the Dashbord widget no longer displays anything, just a black square. Don’t know if this was caused by update of this app or the Homey app. Loading indicator does spin when opening the dashboard.

Tried removing an readding the app to no avail.

(iPad Homey app 9.0.1.1662, Trashcan 5.0.9)

Hi @DaneedeKruyff,
I had the same problem. I followed this instruction

but nothing changed.
Then I started to play around, and changed Source and Cleaning Service to unknown, and all unused entried in date settings to N/A.
Now its working again as expected. Dont forget to save the changes in every chapter!
Give it a try.

2 Likes

Scratched my head already, but came here to check if somebody figured it out.

thanks! worked for me to.

@MrDutchfighter , Is it possible to add flowcards to display the following collection data? In the past, I used a script that I found on this forum, but after the complete rebuild of the app, this script unfortunately no longer works.

Can you share the script?

const LOCAL_IP = '192.168.x.x';
const localIpDashed = LOCAL_IP.replaceAll('.', '-');
const API_KEY = 'xxx-xxx-xxx-xxx-xxx-xxx-xxxx';
const collectingDays = await (await fetch(`https://${localIpDashed}.homey.homeylocal.com/api/manager/apps/app/com.trashchecker/setting/collectingDays`, {

   method: 'GET',

   headers: {

       "Content-Type": "application/json",

       'authorization': `Bearer ${API_KEY}`

   }

})).json();



if (collectingDays?.statusCode ?? 200 === 401) {
 console.log('Wrong api token')
 throw ('Wrong api token');
 return false;
}

const today = parseInt((new Date()).toJSON().split('T')[0].replaceAll('-', ''));
const nextCollectingDays = {};

Object.keys(collectingDays).forEach(key => {
 days = collectingDays[key].filter(day => parseInt(day.replaceAll('-', '')) > today);
 nextCollectingDays[key] = days[0];
});

console.log(nextCollectingDays)

tag("nextCollectingDays", JSON.stringify(nextCollectingDays));

return true;
// CONFIGURATION
const LOCAL_IP = "192.168.178.xxx";
const API_KEY = "xxx";

// REQUEST
const localIpDashed = LOCAL_IP.replaceAll(".", "-");
const res = await fetch(`https://${localIpDashed}.homey.homeylocal.com/api/app/com.trashchecker/trashcollectiondays?recalculate=false`, {
method: "GET",
headers: {
   "Content-Type": "application/json",
   'authorization': `Bearer ${API_KEY}`
}});

if (!res.ok) {
  log(res.statusText);
  return;
}

// HANDLE RESPONSE
const body = await res.json();

const today = parseInt((new Date()).toJSON().split('T')[0].replaceAll('-', ''));
let nextCollectingDays = {};

body.forEach(activity => {
  const nextDate = activity.dates
    .map(date => parseInt((new Date(date)).toJSON().split('T')[0].replaceAll('-', '')))
    .filter(dateNum => dateNum > today)
    .sort((a, b) => a - b)[0]; // Get the closest future date

  nextCollectingDays[activity.type] = nextDate ? nextDate.toString() : null;
});

log(nextCollectingDays);
tag("nextCollectingDays", JSON.stringify(nextCollectingDays));

The code above should get you there hopefully. It returns the first collecting days after today for each type found.

p.s. you can also add the widget to your dashboard. That way you can see the next collecting days in your dashboard :slight_smile:

2 Likes

I get the response Unauthorized.

I know about the widgets but I am using Hdashboard instead of the Homey Dashboard

Make sure you enter the proper local IP and API_KEY :slight_smile: