nextcloud / nextcloud/mail

Follow Up: write REQUEST type iMIP messages to calendars automatically

Open
#6,997 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

1. to develop enhancement feature:imip feature:integration
Dominant language
JavaScript
Stars
1k
Forks
348
Avg merge
12h 28m
Merged PRs (30d)
91

Description

Is your feature request related to a problem? Please describe.

This is a follow up to https://github.com/nextcloud/mail/issues/6802

The difficulty is which calendar the invitation should be written to.

Options:

  1. User can define this invitation calendar as a default option somewhere
  2. always write to the personal calendar and let the user handle the moving of calendar objects in the Calendar app
Describe the solution you'd like
To Do
  • Add an if clause in the IMIpService::process function that checks for 'REQUEST'. This clause should then

    • either check for the existence of the personal calendar or
    • check for the preset calendar from oc_prefrences
  • process the REQUEST by calling the ICreateFromString::createFromString method and writing to that specific calendar.

  • Mark the message as processed, or in case the storing didn't work, mark it as erroneous.

  • In the frontend, if we go with option 1), add a settings field somewhere and store it in oc_preferences.

  • Display the processed / erroneous state

Describe alternatives you've considered

Not processing the messages and leaving it up to the user if they want to see them in their calendar. We already provide an import option.

Additional context

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with IMIpService::process and the ICreateFromString::createFromString entry point described in the issue, then review how calendar selection and message processing states are represented. The open design choice is whether to use the personal calendar or a preference-selected calendar. Done means REQUEST messages are stored in the chosen calendar, marked processed or erroneous, and the option 1 frontend setting and state display are covered if selected.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, php
Domain
backend, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.