Responses to calendar Invitations not reflected in calendar
User story
As a user I want to invite people to events in my calendar. I want to see replies to my event invitations in the calendar, to check if an invitee confirmed or refused an invitation.
How to reproduce
- Users create a calendar event through either the web interface or via Apple Calendar.app (synchronised via CalDAV).
- Users add an email address to the list of invited persons. (address is verified OK)
- Users save the event and wait for responses.
- Responses are never reflected in the calendar, even if a reply is received via email.
From the point of view of the user, nobody ever replies to their invitations because in the calendar every invitation is marked as “waiting for reply”.
Environment
Server
- Nextcloud version: 28.0.5, self hosted (Upgraded from former versions, used for many years)
- Webserver/Reverse Proxy
nginx/1.25.0
- PHP:
PHP 8.1.27
PHP modules
[PHP Modules]
apcu
bcmath
bz2
Core
ctype
curl
date
dom
exif
fileinfo
filter
gd
gmp
hash
iconv
imagick
intl
json
ldap
libxml
mailparse
mbstring
mcrypt
memcache
memcached
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
Phar
posix
redis
Reflection
session
SimpleXML
sodium
SPL
standard
sysvsem
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zip
zlib
[Zend Modules]
Zend OPcache
- Mailserver:
postfix
,dovecot
, etc.
Clients
- Browsers: any (completely irrelevant to the problem and symptom)
- CalDAV Clients: macOS and iOS Calendar.app (officially supported versions of macOS Ventura and Sonoma, iOS 16.x and 17.x, at the latest patch level)
Verified
- Nextcloud is working
- Admin > Overview System shows no errors, warnings or problems
- All database indices exist
- Nextcloud can successfully send emails
- Client applications can sync calendars and reminders via CalDAV successfully
- Calendar invitation emails do get sent out
- Calendar replies are successfully received via email
- These replies do contain an attachment with a calendar response (accepted, refused, tentative)
- These emails can be seen and read in any email application, including Nextcloud Mail
- In Nextcloud mail these messages clearly state the response as “ has (accepted/tentatively accepted/refused) your invitation”. But this is never added to the calendar.
- Nextcloud mail does not indicate that there is an attachment, but does render that attachment’s contents as calendar response. So the attachment is clearly recognised and successfully parsed.
- Users have their email address correctly set up in their profile
- Users can successfully send and receive emails in Nextcloud mail
Answers to Template questions
- Is this the first time you’ve seen this error?: No, this has never been working and I’m trying to debug this problem for weeks now.
- Steps to replicate it: See above
The output of your Nextcloud log in Admin > Logging:
[PHP] Error: TypeError: OCA\UserStatus\Controller\UserStatusController::__construct(): Argument #3 ($userId) must be of type string, null given at /usr/local/www/nextcloud/apps/user_status/lib/Controller/UserStatusController.php#54
GET /ocs/v2.php/apps/user_status/api/v1/user_status
from <IP Address of Client> by -- at 14.05.2024, 13:13:20
The output of your config.php
file. (Identifiable information REDACTED
):
config.php
<?php
$CONFIG = array (
'instanceid' => '<REDACTED ID>',
'passwordsalt' => '<REDACTED salt>',
'secret' => '<REDACTED secret>',
'trusted_domains' =>
array (
0 => '<REDACTED hostname nextcloud.example.org>',
),
'datadirectory' => '/usr/local/www/nextcloud_data',
'dbtype' => 'mysql',
'version' => '28.0.4.1',
'overwrite.cli.url' => 'https://<REDACTED nextcloud.example.org>',
'dbname' => 'nextcloud',
'dbhost' => '<REDACTED IP>',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'nextcloud',
'dbpassword' => '<REDACTED db passphrase>',
'installed' => true,
'memcache.local' => '\\OC\\Memcache\\APCu',
'filelocking.enabled' => true,
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'localhost',
'port' => 6379,
'timeout' => 0.0,
'password' => '',
),
'updater.release.channel' => 'stable',
'maintenance' => false,
'theme' => '',
'default_phone_region' => 'AT',
'loglevel' => 0,
'maintenance_window_start' => 1,
'ldapIgnoreNamingRules' => false,
'ldapProviderFactory' => 'OCA\\User_LDAP\\LDAPProviderFactory',
'app_install_overwrite' =>
array (
0 => 'admin_notifications',
1 => 'end_to_end_encryption',
2 => 'quota_warning',
3 => 'calendar',
4 => 'files_frommail',
5 => 'files_markdown',
),
'mail_smtpmode' => 'smtp',
'mail_smtpauthtype' => 'LOGIN',
'mail_sendmailmode' => 'smtp',
'mail_smtpsecure' => 'ssl',
'mail_from_address' => '<REDACTED Email localpart>',
'mail_domain' => '<REDACTED Email domainpart>',
'mail_smtpauth' => 1,
'mail_smtphost' => '<REDACTED outgoing mailserver hostname>',
'mail_smtpport' => '465',
'mail_smtpname' => '<REDACTED Email authentication login>',
'mail_smtppassword' => '<REDACTED Email authentication passphrase>',
);
- The output of your Apache/nginx/system log in
/var/log/____
:
<No errors>
I’m at a loss why the calendar replies, which clearly arrive in Nextcloud, do not get put on the calendar. Am I overlooking something obvious?
Thanks in advance and best regards!
MacLemon