Make a way to integrate `mail` app with `integration_openproject`
Is your feature request related to a problem? Please describe.
We have a nextcloud app integration_openproject through which we can create workpackages (basically a ticket) from nextcloud it self. As of now we can create the workpackage by filling a form through integration_openproject itself. But we want to integrate integration_openproject with the mail app so that we can create a workpackage from the all the content of a email in the mail app when our app is enabled.
Describe the solution you'd like
I am not sure of having a proper solution but one thing that could be done is that the mail app could have some hooks through which from the integration_openproject application we can inject some code so that the mail app can have an action to create a workpackage from mail app whenever intgeration_openproject is enabled.
Describe alternatives you've considered
or if there is other solution that can be considered would be really appreciated for it to make the things work.
For SnappyMail it could be possible. You just need to have an API exposed.
I am not sure of having a proper solution but one thing that could be done is that the
integration_openprojectapplication we can inject some code so that the mail app can have an action to create aworkpackagefromintgeration_openprojectis enabled.
What's the feature? A user can add emails to a "project", like when they tag an email?
I am not sure of having a proper solution but one thing that could be done is that the
integration_openprojectapplication we can inject some code so that the mail app can have an action to create aworkpackagefromintgeration_openprojectis enabled.What's the feature? A user can add emails to a "project", like when they tag an email?
@ChristophWurst Its basically creating a ticket or issue (or called work package in terms of OpenProject (Project Management Software) for a project) through the content of an email. We see the emails and if we feel like creating a ticker/issue based on that email then we make it. But all of that should be done through the mail app.
Okay, I think I get it now. What is needed for this? Just a way to hook into the Mail app to add an action to emails? Or do existing emails have to show that they are part of a project/ticket?
What todo with the openProjectAPI#createWorkPackage route?
I am not sure I can follow. Could you please elaborate?
@ChristophWurst @the-djmaze We just need a way to hook into the mail app to add an action for integration_openproject when the application is installed and enabled (the action can be Create workpackage or other).
Steps:
- Implement a hook in the mail app to add a "Create Work Package" action when the application
integration_openprojectis installed and enabled. - Utilize the existing Vue modal form component in
integration_openprojectto enable the creation of a work package inOpenProjectdirectly fromNextcloud. - When the
Create Work Packageaction is triggered, insert the email content into the work package description. - When created, a ticket or work package should be directly created in
OpenProjectbased on the selected email.
3. When the `Create Work Package` action is triggered, insert the email content into the work package description.
-
Which content? a. The insecure HTML version (with possible exploits)? b. The secured HTML version of Nextcloud Mail? c. A text/plain version?
-
What about the attachments?
Because when you need a hook, you need more...
Hello @ChristophWurst @the-djmaze, following our discussion, we actually want to capture all available details of the email, including attachments, header information, body content, and also metadata. We need to pass all this information through the email to the integration_openproject application, where it can be parsed. The point would be if we can pass all those information through email app.
@SagarGi an email can be 1kb or 25MiB. SnappyMail has special features where you can fetch the whole message (EML), which speeds up parsing a 25MiB message instead of downloading-uploading by the client. If Nextcloud Mail can do the same, you should write an EML parser.
Mail has an endpoint to view the source of an email. That should serve the same purpose and can be used for an EML parser.