Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Nextcloud calender reminder & invitation notifications are broken #34499

Open
5 of 9 tasks
dzatoah opened this issue Oct 10, 2022 · 7 comments · May be fixed by #50868
Open
5 of 9 tasks

[Bug]: Nextcloud calender reminder & invitation notifications are broken #34499

dzatoah opened this issue Oct 10, 2022 · 7 comments · May be fixed by #50868
Labels
0. Needs triage Pending check for reproducibility or if it fits our roadmap 25-feedback bug feature: activity and notification feature: caldav Related to CalDAV internals

Comments

@dzatoah
Copy link
Contributor

dzatoah commented Oct 10, 2022

⚠️ This issue respects the following points: ⚠️

  • This is a bug, not a question or a configuration/webserver/proxy issue.
  • This issue is not already reported on Github (I've searched it).
  • Nextcloud Server is up to date. See Maintenance and Release Schedule for supported versions.
  • Nextcloud Server is running on 64bit capable CPU, PHP and OS.
  • I agree to follow Nextcloud's Code of Conduct.

Bug description

The reminder notifications and invitations behaviour is unpredictable and pretty random. Something is definitely broken.
I could reproduce this issue in Nextcloud 25 RC2 and various older production Nextcloud 24's

Two scenarios:

Send reminder notifications to calendar sharees as well set to off:

What should happen with a private calender:

The organizer creates a calendar entry and invites one person.

  • Organizer and invitee get an invitation
  • Organizer and invitee get a reminder notification (Error: here in the setup both always get two reminders, so one too many)

What should happen with a group calender:

The organizer creates a calendar entry and invites one person.

  • Organizer gets an invitation
  • Invitee doesn't get an invitation. (Error: The invitee does not receive an invitation!)
  • Organizer and invitee get a reminder (Error: The reminder is not sent e.g. 5 minutes before but only at the time of the appointment)

Send reminder notifications to calendar sharees as well set to on:

Then everyone in the group will receive a notification even though they are not included in the appointment as a participant. That's how it's intended. (So the principle is correct. So only the invitation is missing here.)

So the boil down the issues:

  1. Private calender, off -> double notifications
  2. Group calendar -> Invitees doesn't get invitation (Invitees should always get an invitation)
  3. Group calendar, off -> reminder notifications are sent only at exact appointment time

Probably related:

Thanks to @mircokam for spotting this issues.

Steps to reproduce

  1. Create a group calendar
  2. Add member to group calendar
  3. Create an event in said group calendar
  4. Add an e-mail address to invitees
  5. Add an Nextcloud user to invitees
  6. Add event reminder notification e.g. 5 minutes before event

Expected behavior

.

Installation method

No response

Operating system

No response

PHP engine version

No response

Web server

No response

Database engine version

No response

Is this bug present after an update or on a fresh install?

Fresh Nextcloud Server install

Are you using the Nextcloud Server Encryption module?

No response

What user-backends are you using?

  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Configuration report

No response

List of activated Apps

.

Nextcloud Signing status

No response

Nextcloud Logs

No response

Additional info

No response

@dzatoah dzatoah added 0. Needs triage Pending check for reproducibility or if it fits our roadmap bug labels Oct 10, 2022
@CarlSchwan
Copy link
Member

Possibly related #34465

@dzatoah
Copy link
Contributor Author

dzatoah commented Oct 12, 2022

Definitely related to: nextcloud/calendar#4400

@gohrner
Copy link

gohrner commented Feb 25, 2023

Maybe related to #22500 ? (Or the other way around.)

@komoricodrutz
Copy link

Hi,
Issue seems to still be there
I have 2 instances of nextcloud, one is 25.0.7, the other is 27.0.2 - for testing before implementation.
I have the same (yahoo) account set up as the "system mail" account and the same (gmail) account set up in the mail app (v2.2.6 on the 25.0.7 instance and v3.2.2 on the 26.0.2 instance). Both mail systems work fine, they send mails as they should.
The options to send invitations to attendees, send notifications for events and send reminder notifications are enabled on both instances.
Log from the 25.0.7 instance when trying to reproduce:
`[dav] Error: Swift_TransportException: Expected response code 250 but got code "550", with message "550 Request failed; Mailbox unavailable
" at <>

  1. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php line 344
    Swift_Transport_AbstractSmtpTransport->assertResponseCode()
  2. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php line 305
    Swift_Transport_AbstractSmtpTransport->executeCommand()
  3. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php line 406
    Swift_Transport_EsmtpTransport->executeCommand()
  4. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php line 502
    Swift_Transport_AbstractSmtpTransport->streamMessage()
  5. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php line 518
    Swift_Transport_AbstractSmtpTransport->doMailTransaction()
  6. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php line 206
    Swift_Transport_AbstractSmtpTransport->sendTo()
  7. /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Mailer.php line 71
    Swift_Transport_AbstractSmtpTransport->send()
  8. /var/www/nextcloud/lib/private/Mail/Mailer.php line 191
    Swift_Mailer->send()
  9. /var/www/nextcloud/apps/dav/lib/CalDAV/Schedule/IMipPlugin.php line 290
    OC\Mail\Mailer->send()
  10. /var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    OCA\DAV\CalDAV\Schedule\IMipPlugin->schedule()
  11. /var/www/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php line 350
    Sabre\DAV\Server->emit()
  12. /var/www/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php line 627
    Sabre\CalDAV\Schedule\Plugin->deliver()
  13. /var/www/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php line 337
    Sabre\CalDAV\Schedule\Plugin->processICalendarChange()
  14. /var/www/nextcloud/apps/dav/lib/CalDAV/Schedule/Plugin.php line 162
    Sabre\CalDAV\Schedule\Plugin->calendarObjectChange()
  15. /var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    OCA\DAV\CalDAV\Schedule\Plugin->calendarObjectChange()
  16. /var/www/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php line 897
    Sabre\DAV\Server->emit()
  17. /var/www/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php line 766
    Sabre\CalDAV\Plugin->validateICalendar()
  18. /var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\CalDAV\Plugin->beforeCreateFile()
  19. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 1094
    Sabre\DAV\Server->emit()
  20. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 504
    Sabre\DAV\Server->createFile()
  21. /var/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPut()
  22. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 472
    Sabre\DAV\Server->emit()
  23. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 253
    Sabre\DAV\Server->invokeMethod()
  24. /var/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php line 321
    Sabre\DAV\Server->start()
  25. /var/www/nextcloud/apps/dav/lib/Server.php line 360
    Sabre\DAV\Server->exec()
  26. /var/www/nextcloud/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
  27. /var/www/nextcloud/remote.php line 172
    require_once("/var/www/nextcl ... p")

PUT /remote.php/dav/calendars/myuser/personal/38108168-4171-4A8C-B2FC-5639A8D0F7C4.ics
from xxx.xxx.xxx.xxx by myuser at 2023-06-20T14:52:57+00:00`

Log from 26.0.2 instance when trying to reproduce:
`[dav] Error: Unable to deliver message to [email protected]

PUT /remote.php/dav/calendars/myuser/personal/1F5F1257-B2B9-481C-A28F-B3748EEB9C9E.ics
from xxx.xxx.xxx.xxx by myuser at 2023-06-20T14:57:33+00:00`
A lot less verbose, although the log reader app is installed

Cheers!

@joshtrichards joshtrichards added the feature: caldav Related to CalDAV internals label Aug 28, 2023
@meichthys
Copy link

meichthys commented Feb 8, 2024

Just for reference, this still seems to be an issue in Nextcloud 28.0.1 and Calendar v4.6.3
Perhaps the Email Notification option for calendar events should be removed from the UI until this is fixed. It is quite confusing to users.

@ChildLearningClub
Copy link

ChildLearningClub commented Apr 26, 2024

I get email notifications reminders for a calendar that I have, but that same calendar shared with others does not send out the email notification reminders that I have set for the events to their emails. I used the impersonate tool to verify that the calendar events and event reminders are all set correctly as well as their emails.

Edit: I see that my issue is probably related to #22441 which is still open.

Edit 2: No, wait, they do also have edit rights.

@matthias480
Copy link

A Little update from my side.

I think we should separate reminder notifications and invitations:

Invitations

@dzatoah wrote: "What should happen: Organizer and invitee get an invitation".

Why should the organizer get an invitation? He/she is the organizer.
At least with Nextcloud 30.0.6, the organizer doesn't get an invitation, which is the expected behaviour in my opinion.

As far as I could see (Nextcloud 30.0.6) invitations work correctly. No matter if the calendar is private or shared, the invitee receives the invitation.

Reminders

The double reminder problem should already be fixed.

@dzatoah wrote:"The reminder is not sent e.g. 5 minutes before but only at the time of the appointment." as well as "reminder notifications are sent only at exact appointment time".

Reminders are not sent at the time of the appointment unless such a reminder has been configured.
But I could reproduce that sometimes the reminder is not sent although the cron job has been running. Then, the reminder is sent on the next cron run. And since your cron job probably runs every 5 minutes, it was sent at the time of the appointment in your case.
The reason for this is explained in #50868

As far as I can tell, this issue can be closed after #50867 and #50868.

@matthias480 matthias480 linked a pull request Feb 17, 2025 that will close this issue
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0. Needs triage Pending check for reproducibility or if it fits our roadmap 25-feedback bug feature: activity and notification feature: caldav Related to CalDAV internals
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants