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

Zammad: Dateianhang #1266

Closed
2 tasks
darenegade opened this issue Feb 5, 2024 · 10 comments · Fixed by #1389
Closed
2 tasks

Zammad: Dateianhang #1266

darenegade opened this issue Feb 5, 2024 · 10 comments · Fixed by #1389
Assignees

Comments

@darenegade
Copy link
Member

darenegade commented Feb 5, 2024

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

Als Prozessberater möchte ich die Zammadintegration auch dafür nutzen können, um Dateien einem Artikel hinzufügen zu können, um z.B. Bescheide zustellen zu können.

Describe the solution you'd like

  • Einbindung S3 in Zammadintegration
    • inkl. Custom S3
  • Übergabe Liste von Dateien/Pfaden (Analog DMS Schriftstücke)
  • Offen: Wie sieht es mit Datei-Limits aus?
    • Limit von Zammad-EAI -> Klärung mit Zammad-Team -> Umstellung auf MultiPart möglich @darenegade
    • Limit der eigenen EAI -> Ziel: Einfache Zwischenlösung für viele große Dateien (z.B. Limit 50MB) einbauen, wenn einfach möglich -> Wenn es keine einfache Lösung gibt, dann wird das Thema hier ausgegrenzt
  • Anpassung Showcase und Templates
  • Doku (Integration & Modellierung)

Describe alternatives you've considered

Acceptance Criteria

  • Es lassen sich Dateien aus dem Prozess an ein Zammad Ticket hochladen
  • Das Feature ist dokumentiert

Additional context

@darenegade
Copy link
Member Author

@lmoesle
Copy link
Contributor

lmoesle commented Mar 1, 2024

@darenegade Wie handhaben wir in der ticket-integration Lese- und Schreibrechte von Dateien im S3 Storage? So wie ich's verstehe werden dem Integrationsaufruf Dateipfade übergeben und die Integration lädt die Dateien herunter. Theoretisch kann ein Prozessentwickler einen beliebigen Pfad im S3 angeben. Müssen wir hier Leserechte umsetzen?

@darenegade
Copy link
Member Author

@lmoesle Eigentlich sollte das analog zu der DMS Integration sein. Demnach gehe ich davon aus, dass dort das Problem auch besteht. Dann würde ich das hier erstmal ausgrenzen und in einem neuen Ticket angehen

@lmoesle
Copy link
Contributor

lmoesle commented Mar 1, 2024

Bei DMS wird der Filecontext mit übergeben und dann in dem gesucht. Aber der Filecontext wird im bpmn Prozess gesetzt und kann dementsprechend einfach manipuliert werden.

@darenegade
Copy link
Member Author

Ja, dass ist nicht optimal, aber man muss auch erstmal den Filecontext kennen. Für das Problem haben wir ja: https://app.zenhub.com/workspaces/digiwf-621f70bf50ea1100120b7e93/issues/gh/it-at-m/digiwf-core/983

@lmoesle
Copy link
Contributor

lmoesle commented Mar 1, 2024

@darenegade Welche File types sollen für den Upload nach Zammad unterstützt werden?

@darenegade
Copy link
Member Author

@lmoesle Aktuell gibt es bei Zammad keine Einschränkungen, daher würde ich es aktuell nicht auf gewisse Typen einschränken.

@lmoesle
Copy link
Contributor

lmoesle commented Mar 1, 2024

FYI Der Zammad Client und der S3 Client (die Service Accounts) sind ja später aus unterschiedlichen Realms. Den Usecase hatten wir mit der digiwf-security lib bisher noch nicht. Das Security Setup in der Zammad Integration müssen wir nochmal anpassen.

@darenegade
Copy link
Member Author

Der Zammad Client und der S3 Client (die Service Accounts) sind ja später aus unterschiedlichen Realms

Also nur in Bezug auf unsere Umgebungen (Dev/Test), bei den anderen sollte es gleich sein

Den Usecase hatten wir mit der digiwf-security lib bisher noch nicht.

Den Use-Case an sich haben wir aber schon bei CoSys. Dort wird dann einfach ausgehend eine eigene OAuth-Config genutzt.

Grundsätzlich sehe ich die digiwf-security Lib eher für Vereinfachung für DigiWF interne Kommunikation. Nach außen müssen wir immer flexibel und wahrscheinlich auch individuell bleiben.

Können wir gerne im Daily nochmal drüber sprechen

@lmoesle
Copy link
Contributor

lmoesle commented Mar 12, 2024

Offene Punkte

  • Ticket für die fehlenden Funktionen im S3Adapter in der DMS Integration erstellt DMS Integration supports domain specific S3 storages #1441
  • Der S3Adapter ist sehr ähnlich zum S3Adapter in der DMS Integration. Ich habe ein Ticket angelegt, um den Adapter in eine eigene Bibliothek zu verschieben: Move duplicate s3 logic to client libs #1442
  • Deployment der Zammad Integration Init Zammad Integration Ops #1377
    • Ich habe bisher gegen den OpenAPI Contract entwickelt und konnte die Integration noch nicht gegen Zammad Testen
  • Die offenen Punkte / Abstimmungen mit dem Zammad Team sind noch offen
    • Datei Limits von der Zammad EAI und von der Integration
    • Abstimmungen wegen der Zammad API Anpassungen

lmoesle added a commit that referenced this issue Mar 14, 2024
* feature: adjust element templates and example process

* feature(#1266): load files from s3 integration and transfer them to zammad

* feature: support domain specific s3 storages

* feature: support domain specific s3 storages

* fix: status

* feature: add unit test for s3 adapter

* chore: fix unit testss

* docs: create documentation for configuration options

* docs: create documentation for configuration options

* docs: add file upload documentation

* docs: add file upload documentation

* test: track ticket integration test code coverage

* test: add more unit tests

* test: add more unit tests

* feature: send base64 encoded files to zammad

* feature: add file extension to filename

* feature: add status field to example process

* ticket integration add missing status case

* ticket integration rm PENDING_CLOSE and PENDING_REMINDER states

* feature: remove configs

---------

Co-authored-by: Simon Hirtreiter <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants