marklagendijk / node-toogoodtogo-watcher

Node.js cli tool for monitoring your favorite TooGoodToGo businesses. Docker image available.
MIT License
363 stars 116 forks source link

Feature request: telegram bot command to filter favorites #60

Open ffd8 opened 3 years ago

ffd8 commented 3 years ago

I plan to try and implement something like this for my own usage, but wanted to throw out the idea, incase it's already there or could be done in a better way. Essential issue is, telegram bot is based on our favorites, but maybe you want it to shut up for a while unless the few things your currently interested in appears (time for bread.. or certain restaurant etc). Rather than manually removing favs – could just filter the telegram bot to only report if certain words are found. Like:

/filter_set xxxxx xxxxxx xxxxxx (list of general words in name of listing, with a space/comma after it /filter_get (lists filters currently used) /filter_clear (clears the list - maybe not needed, as one could just override with set or turn off) /filter_on (activates filter, automatically done with /filter_set /filter_off (disables filter, but leaves list alone)

Or much simpler, if the bot could offer an interactive checkbox (poll?) for your favs to just toggle on/off for notification? If possible, would just need one command like /filter

marklagendijk commented 3 years ago

I thought of exactly the same, and was thinking of the same approach you are thinking of. I only never got to implement it.

So a PR is welcome!

ffd8 commented 3 years ago

Researched bot polls, which would be great for simply toggling on/off favs, however a poll is limited to 10 items = gets messy if one has lots of favs, requiring pagination etc.. will give a try on the first idea, setting a filter word list.

nmatton commented 2 years ago

@ffd8, You can add the page_size parameter to the request's body. I think that the limit is 400 items though it is quite large enough...

nurp commented 4 months ago

I have hardcoded the business ids to filter the notifications. If it makes sense to add the the business ids to the config file, I can do it and create pr.