[Feature request] Integrate with Gotify or use webhook for notifications #878

Open
opened 8 months ago by SteveDinn · 12 comments

Much of the time email is not the best solution for notifications. It would be great if Vikunja could allow different types of notifications.

Suggestions:

  • Integrate with a well-established open-source push notification solution like Gotify
  • Allow notifications by webhook: Allow each user to configure a a URL that could accept a POST call with some JSON containing information about the task.
Much of the time email is not the best solution for notifications. It would be great if Vikunja could allow different types of notifications. Suggestions: * Integrate with a well-established open-source push notification solution like [Gotify](https://gotify.net/) * Allow notifications by webhook: Allow each user to configure a a URL that could accept a POST call with some JSON containing information about the task.
Owner

Ideally, you'd have a client which just fetches all reminders from the api and then figures out at what time to show you the reminder on your device without requiring the device to be online at that time. In fact, the PWA is already capable of that but you'll have to enable a chrome flag to be able to use it.

General webhooks are planned though. It should be possible to connect something like Gotify to these once they are ready.

Ideally, you'd have a client which just fetches all reminders from the api and then figures out at what time to show you the reminder on your device without requiring the device to be online at that time. In fact, the PWA is already capable of that but you'll have to [enable a chrome flag](https://web.dev/notification-triggers/#use) to be able to use it. General webhooks are planned though. It should be possible to connect something like Gotify to these once they are ready.
SteveDinn closed this issue 8 months ago
SteveDinn reopened this issue 8 months ago
Poster

Whoops...didn't mean to accidentally close this issue.

Whoops...didn't mean to accidentally close this issue.
konrad added the
kind/feature
label 7 months ago

+1

In my opinion, I think Vikunja is an already highly capable planner application with features that are paid in other closed-source apps or even lacking. It is extraordinary how basically one person has built such an encompassing application.

However, I must note that it is almost funny the fact that with all complex features, Vikunja lacks greatly in notification capabilities which, in my opinion, is a crucial factor for new users cavitation.
It should be of paramount importance to be able to get desktop and phone notifications and Vikunja would greatly gain with this addition.

Thank you !

+1 In my opinion, I think Vikunja is an already highly capable planner application with features that are paid in other closed-source apps or even lacking. It is extraordinary how basically one person has built such an encompassing application. However, I must note that it is almost funny the fact that with all complex features, Vikunja lacks greatly in notification capabilities which, in my opinion, is a crucial factor for new users cavitation. It should be of paramount importance to be able to get desktop and phone notifications and Vikunja would greatly gain with this addition. Thank you !
Owner

I still think reminders should be mostly a responsability of the client application. If I need to be online (as would be the case with gotify) that's not an ideal solution. Because of that I was always of the opinion that reminders would be a thing done by the flutter app so I didn't really pushed further with that. Now the problem is the flutter app does not work and probably won't for a long time so that's not a great solution (at least for now).

That's why I started moving more of that notification logic to the frontend. The new chrome feature for scheduled notifications is pretty much what I had in mind for that so I added support for it to the frontend. I know it's not perfect but I hope it's a step in the right direction. Maybe that could be expanded to also work in browsers which don't have support for scheduled notifications (yet).

I'm using the PWA and that works great for reminding me of tasks I set reminders for. The tasks.org app also does the same and from what I heard, it does a good job at it.

If none of these are an option, there's still email reminders.

I still think reminders should be mostly a responsability of the client application. If I need to be online (as would be the case with gotify) that's not an ideal solution. Because of that I was always of the opinion that reminders would be a thing done by the flutter app so I didn't really pushed further with that. Now the problem is the flutter app does not work and probably won't for a long time so that's not a great solution (at least for now). That's why I started moving more of that notification logic to the frontend. The new chrome feature for scheduled notifications is pretty much what I had in mind for that so I added support for it to the frontend. I know it's not perfect but I hope it's a step in the right direction. Maybe that could be expanded to also work in browsers which don't have support for scheduled notifications (yet). I'm using the PWA and that works great for reminding me of tasks I set reminders for. The tasks.org app also does the same and from what I heard, it does a good job at it. If none of these are an option, there's still email reminders.
Poster

My intention, when writing this feature request, was specifically for mobile notifications. If there is a way to do this already, I'll try it.

With webhooks, I was also thinking about integrations with other apps (i.e. HomeAssistant)

My intention, when writing this feature request, was specifically for mobile notifications. If there is a way to do this already, I'll try it. With webhooks, I was also thinking about integrations with other apps (i.e. HomeAssistant)

I still think reminders should be mostly a responsability of the client application. If I need to be online (as would be the case with gotify) that's not an ideal solution. Because of that I was always of the opinion that reminders would be a thing done by the flutter app so I didn't really pushed further with that. Now the problem is the flutter app does not work and probably won't for a long time so that's not a great solution (at least for now).

That's why I started moving more of that notification logic to the frontend. The new chrome feature for scheduled notifications is pretty much what I had in mind for that so I added support for it to the frontend. I know it's not perfect but I hope it's a step in the right direction. Maybe that could be expanded to also work in browsers which don't have support for scheduled notifications (yet).

I'm using the PWA and that works great for reminding me of tasks I set reminders for. The tasks.org app also does the same and from what I heard, it does a good job at it.

If none of these are an option, there's still email reminders.

I completly understand your point, however I was mostly referring to notifications on desktop because I'm aware that the mobile implementation is not finished and notifications are not possible in my case because I refrain from using Chrome and only use Firefox on mobile.

I was actually referring to at least having a good desktop notification implementation (besides email) because I do not get notifications at all (note that I do not the remind by email activated). I would expect that at least a notification would pop up in the browser or desktop app when the reminder for a tasks is due.
Another thing that I also miss is the ability to set a default reminder for tasks with a due date: for example in the settings having the ability to choose a default time (10 min, 30 min, 1 hour) to get a automatic reminder before a tasks is due without having to specify a reminder.

Keep up the fantastic work !

> I still think reminders should be mostly a responsability of the client application. If I need to be online (as would be the case with gotify) that's not an ideal solution. Because of that I was always of the opinion that reminders would be a thing done by the flutter app so I didn't really pushed further with that. Now the problem is the flutter app does not work and probably won't for a long time so that's not a great solution (at least for now). > > That's why I started moving more of that notification logic to the frontend. The new chrome feature for scheduled notifications is pretty much what I had in mind for that so I added support for it to the frontend. I know it's not perfect but I hope it's a step in the right direction. Maybe that could be expanded to also work in browsers which don't have support for scheduled notifications (yet). > > I'm using the PWA and that works great for reminding me of tasks I set reminders for. The tasks.org app also does the same and from what I heard, it does a good job at it. > > If none of these are an option, there's still email reminders. I completly understand your point, however I was mostly referring to notifications on desktop because I'm aware that the mobile implementation is not finished and notifications are not possible in my case because I refrain from using Chrome and only use Firefox on mobile. I was actually referring to at least having a good desktop notification implementation (besides email) because I do not get notifications at all (note that I do not the remind by email activated). I would expect that at least a notification would pop up in the browser or desktop app when the reminder for a tasks is due. Another thing that I also miss is the ability to set a default reminder for tasks with a due date: for example in the settings having the ability to choose a default time (10 min, 30 min, 1 hour) to get a automatic reminder before a tasks is due without having to specify a reminder. Keep up the fantastic work !
Owner

I've added an item to the backlog to make notifications also available on other browsers while it is open (I think there's no other way to solve this otherwise).

I've added an item to the backlog to make notifications also available on other browsers while it is open (I think there's no other way to solve this otherwise).

Hello @konrad ,

Could Vikunja parse all the tasks that had a due date has a CalDav address so that it could be imported any calendar app and in this way get alerts for all tasks with due dates set ?
This could be a temporary workaround if it is easy to implement.

Have a nice day !

Hello @konrad , Could Vikunja parse all the tasks that had a due date has a CalDav address so that it could be imported any calendar app and in this way get alerts for all tasks with due dates set ? This could be a temporary workaround if it is easy to implement. Have a nice day !
Owner

@bolgrov We had read-only caldav links per list - might add that back in. It would only include the tasks and their due dates, and they weren't compatible with VTODO so they would only work in a calendar, not a task manager client.

@bolgrov We had read-only caldav links per list - might add that back in. It would only include the tasks and their due dates, and they weren't compatible with `VTODO` so they would only work in a calendar, not a task manager client.

@bolgrov We had read-only caldav links per list - might add that back in. It would only include the tasks and their due dates, and they weren't compatible with VTODO so they would only work in a calendar, not a task manager client.

I was actually referring to something like that, because I don't need the tasks to sync with another task manager because we've already seen that the WedDav protocol doesn't allow for some important things to be synced between for example Vikunja and Tasks.org.
So what I was really proposing is just a way of generating a Calendar through CalDav so that one can integrate it with its calendar app or even subscribe to with Nextcloud or Thunderbird and this would have the advantages of:

  • Seing your tasks with due dates set along your calendar events for easier management
  • Getting notifications for tasks with due dates !

Although this would not work for tasks with reminders I think its a great temporary solution.
Cheers !

> @bolgrov We had read-only caldav links per list - might add that back in. It would only include the tasks and their due dates, and they weren't compatible with `VTODO` so they would only work in a calendar, not a task manager client. I was actually referring to something like that, because I don't need the tasks to sync with another task manager because we've already seen that the WedDav protocol doesn't allow for some important things to be synced between for example Vikunja and Tasks.org. So what I was really proposing is just a way of generating a Calendar through CalDav so that one can integrate it with its calendar app or even subscribe to with Nextcloud or Thunderbird and this would have the advantages of: - Seing your tasks with due dates set along your calendar events for easier management - Getting notifications for tasks with due dates ! Although this would not work for tasks with reminders I think its a great temporary solution. Cheers !

Hello @konrad !

Still on the topic of CalDav integration, I think this would add value to the application by basically providing a simple way of adding time blocking to Vikunja !

Please note that this should not replace the eventual notification development to be able to notify on web, desktop or mobile (with Gotify or other way).
But could be and option in the settings people could use to subscribe to a Calendar of Vikunja, just like in Todoist you can syncronize with Google Calendar.
The advantage here, is that since Vikunja lets one set Start and End dates the time blocking would be automatically generated to your calendar for extra productivity !

Have a nice day.

Hello @konrad ! Still on the topic of CalDav integration, I think this would add value to the application by basically providing a simple way of adding *time blocking* to Vikunja ! Please note that this should **not** replace the eventual notification development to be able to notify on web, desktop or mobile (with Gotify or other way). But could be and option in the settings people could use to subscribe to a Calendar of Vikunja, just like in Todoist you can syncronize with Google Calendar. The advantage here, is that since Vikunja lets one set *Start* and *End* dates the time blocking would be automatically generated to your calendar for extra productivity ! Have a nice day.
Owner

@bolgrov Yeah that's in the backlog.

@bolgrov Yeah that's in the backlog.
Sign in to join this conversation.
No Milestone
No Assignees
3 Participants
Notifications
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.