Skip to content
Snippets Groups Projects
Commit 41aef82d authored by Klaus Fischer's avatar Klaus Fischer
Browse files

WIP: updating docu

parent 0f0b6948
No related branches found
No related tags found
1 merge request!3Feature/440 mvp net sdk part 1
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>
\ No newline at end of file
......@@ -20,6 +20,25 @@ erklärt
For the structure look the [Structure documentation](structure.md)
-->
# Allgemeines
## Environment
Das FitConnect SDK kann an
- Development: ```FitConnectEnvironment.Development```
- Testing: ```FitConnectEnvironment.Testing```
- Production: ```FitConnectEnvironment.Production```
Environmenten angebunden werden.
Hierfür muss der Client die Environment auswählen oder einen eigenen Environment-Parameter übergeben.
## Credentials
ClientId und ClientSecret sind die Grundlage um einen Token vom OAuth-Server abfragen zu können.
Die beiden Werte sind im [Self-Service Portal der FIT Connect](https://portal.auth-testing.fit-connect.fitko.dev/clients)zu erstellen.
# Sender
......@@ -34,13 +53,17 @@ flowchart TD
start-->destination-->service-->attachments-->data
```
## GetSender(FitConnectEnvironment.Development, clientId, clientSecret, logger)
Hier werden die FIT Connect Environment ausgwählt und die Credentials übergeben.
Der logger ist optional und muss das interface ```Microsoft.Extensions.Logging.ILogger``` implementieren.
## .WithDestination(destinationId)
Die Destination ID des Zustelldienstes muss an dieser Stelle übergeben werden.
_Noch nicht vollständig getestet!_<br>
Eine Möglichkeit die Destination ID zu ermitteln geht über die Methode ``FindDestinationId()`` des
Senders.
Eine Möglichkeit die Destination ID zu ermitteln geht über die Methode ``FindDestinationId()`` des Senders.
## .WithServiceType("FIT Connect Demo", leikaKey)
......@@ -51,8 +74,7 @@ Die Leika Schlüssel haben diese Form ```urn:de:fim:leika:leistung:9940004807900
## .WithAttachments(new Attachment("Test.pdf", "Test Attachment"))
Die Anhänge zum Antrag werden mit ```.WithAttachments``` übergeben.
Diese Methode erwartet ein Array von Attachment Objekten welche als ```params``` übergeben werden
können.
Diese Methode erwartet ein Array von Attachment Objekten welche als ```params``` übergeben werden können.
Das Attachment kann mit
- Metadaten und byte[] content
......@@ -72,7 +94,6 @@ Die Fachdaten werden als JSON String übergeben.
Das Abschicken der Submission erfolgt mit diesem Aufruf.
## Beispiel
```csharp
......@@ -87,19 +108,67 @@ var submission = Client
# Subscriber
## Beispiel
Der Subscriber braucht zusätzliche Informationen um die Submissions abrufen zu können.
Hier sind zusätzlich die Schlüssel zum Ver- und Entschlüsseln notwendig.
## GetSubscriber(...)
Hier werden die FIT Connect Environment ausgwählt, die Keys und die Credentials übergeben.
Der logger ist optional und muss das interface ```Microsoft.Extensions.Logging.ILogger``` implementieren.
## GetAvailableSubmissions()
Liefert eine Liste mit den verfügbaren Submissions zurück.
## RequestSubmission(submissionId)
Hiermit wird die Submission abgerufen und im Subscriber gespeichert.
Der Rückgabewert der Funktion ist also _Subscriber mit einer Submission_
## GetDataJson()
Liefert die Fachdaten als JSON String zurück.
## GetAttachments()
Gibt eine Liste mit den Attachments der Submission zurück.
Die Attachments können so gebrüft werden.
## AcceptSubmission()
Akzepiert die Submission und löscht diese vom Server.
## RejectSubmission()
Weißt die Submission zurück.
## ForwardSubmission()
## Beispiel
```csharp
var submission = Client
.GetSender(FitConnectEnvironment.Development, clientId, clientSecret, logger)
.WithDestination(destinationId)
.WithServiceType("FIT Connect Demo", leikaKey)
.WithAttachments(new Attachment("Test.pdf", "Test Attachment"))
.WithData("{\"message\":\"Hello World\"}")
.Submit();
```
var subscriber = Client.GetSubscriber(FitConnectEnvironment.Development, clientId,
clientSecret,
privateKeyDecryption,
privateKeySigning,
publicKeyEncryption,
publicKeySignatureVerification,
logger);
var submissions = subscriber.GetAvailableSubmissions();
foreach (var submission in submissions) {
var subscriberWithSubmission = subscriber.RequestSubmission(submission.SubmissionId);
var attachments = subscriberWithSubmission
.GetAttachments();
logger.LogInformation("Fachdaten: {Data}", subscriberWithSubmission.GetDataJson());
subscriberWithSubmission
.AcceptSubmission();
}
```
```mermaid
sequenceDiagram
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment