Context SDK 1.0.0
A software development kit for the context system.
|
Diese Klasse ist ein Wrapper der ContextApi und erweitert sie um das Verwalten des angehängten Datenspeichers (DataStore). Die IActivityPersistence<TUser,TCommunication,TMessage> übernimmt dabei die spezifische DataStore-Logik. Mehr ...
Öffentliche Methoden | |
Context (IActivityPersistence< TUser, TCommunication, TMessage > activityPersistence, ContextConfiguration contextConfiguration) | |
Ermöglicht es die ContextAPI anzusprechen und dabei automatisch den DataStore zu verwalten Mehr ... | |
async Task< Guid > | LoginAsync (string userName, string password, bool autoRefresh) |
Loggt sich bei der API ein und holt den notwendigen JWT, welcher für alle API-Zugriffe verwendet wird. Mehr ... | |
async Task | RefreshAsync () |
Holt eine Liste von allen Aktivitäten seit dem letzten Zugriff. Beim Einlangen der Aktivitäten wird die im Konstruktor übergebene IActivityPersistence<TUser,TCommunication,TMessage> verwendet, um den DataStore am aktuellen Stand zu halten. Mehr ... | |
![]() | |
void | AddEventSink (ICompleteContextEventSink contextEventSink) |
Fügt das angegebene ICompleteContextEventSink zur Liste von Event-Sinks hinzu, sofern es sich nicht bereits in der Liste befindet. Mehr ... | |
void | RemoveEventSink (ICompleteContextEventSink contextEventSink) |
Entfernt das angegebene ICompleteContextEventSink von Liste von Event-Sinks, sofern es sich in der Liste befindet. Mehr ... | |
ContextApi (ContextApiConfiguration contextApiConfiguration) | |
Abstrahiert alle API-Zugriffe. Diese Klasse führt Verschlüsselungen/Entschlüsselungen durch und erneuert den JWT-Token für API-Zugriff automatisch, wenn dieser abgelaufen ist. Weiters gibt es Methoden, welche zusätzliche Funktionen anbieten und mehrere direkte API-Zugriffe zusammenfassen. Mehr ... | |
async Task< Guid > | LoginAsync (string userName, string password) |
Loggt sich bei der API ein und holt den notwendigen JWT, welcher für alle API-Zugriffe verwendet wird Mehr ... | |
async Task< Guid > | CreateFileAndUploadToCommunicationAsync (Guid communicationGuid, CreateMessageWithFileModel createMessageWithFileModel) |
Erstellt die Datei Meta-Daten und ladet die Datei hoch. Mehr ... | |
async Task | UploadFileChunkedAsync (Guid communicationGuid, Guid fileGuid, string filePath) |
Ladet eine Datei hoch. Dafür muss die Datei (die Meta-Daten) bereits erstellt sein. Mehr ... | |
async Task | DownloadFileChunkedAsync (Guid communicationGuid, Guid fileGuid, string targetFilePath) |
Ladet eine Datei herunter. Mehr ... | |
async Task< string > | GetOrRequestCryptoKeyAsync (Guid? communicationGuid) |
Holt den Schlüssel für die kryptografischen Vorgänge zu dieser Kommunikation. Mehr ... | |
async Task< Guid?> | CreateNewCryptoKeysForNewCommunication () |
Erstellt einen neuen Kryptografischen Schlüssel. Dies wird benötigt, um eine Kommunikation zu erstellen, da manche Daten der Kommunikation bereits verschlüsselt sind. Deswegen wird auch die Guid der Kommunikation zurückgegeben, welche auch benötigt wird um eine neue Kommunikation zu erstellen. Der kryptografische Schlüssel kann mit GetOrRequestCryptoKeyAsync angefragt werden. Mehr ... | |
async Task< List< ActivityBase > > | GetActivitiesAsync (long? lastRequestTimestamp) |
Liefert eine Liste mit allen Aktivitäten, welche seit diesem Zeitpunkt erstellt wurden. Es wird empfohlen den lastRequestTimestamp von der API nehmen und nicht die lokale zeit in Unix-Millisekunden umzuwandeln Mehr ... | |
async Task< List< ActivityBase > > | GetActivitiesAsync (Guid? lastGuid) |
Liefert eine Liste mit allen Aktivitäten, welche seit der angegebenen Aktivität erstellt wurden. Mehr ... | |
async Task< List< ActivityBase > > | GetActivityAsync (Guid activityGuid) |
Holt eine einzelne Aktivität mit der angegebenen Guid. Mehr ... | |
async Task< int > | GetActivityCountAsync (long? lastTsp) |
Holt die Anzahl von Aktivitäten, welche seit dem angegebenen Zeitpunkt erstellt wurden. Mehr ... | |
async Task | NotifyByEmailAsync (Guid communicationGuid, Guid participantGuid, string email, string mailText, EmailNotificationTemplateType mailTemplateType, NotificationLinkType notificationLinkType) |
Sendet eine Benachrichtigung per Email and die angegebene Email-Adresse. Mehr ... | |
async Task | NotifyBySmsAsync (Guid communicationGuid, Guid participantGuid, string smsText, NotificationLinkType notificationLinkType) |
Sendet eine Benachrichtigung per SMS and die angegebene Telefonnummer. Mehr ... | |
async Task | SendSmsAsync (string phoneNumber, string text) |
Sendet eine SMS an die gewünschte Telefonnummer. Mehr ... | |
async Task< FileMetaData > | GetFileMetaDataAsync (Guid fileResourceGuid) |
Holt die Meta-Daten für eine Datei. Mehr ... | |
async Task< FileChunksMetaData > | GetFileChunksAsync (Guid fileResourceGuid) |
Holt die Meta-Daten der Datei-Chunks für die angegebene Datei. Diese Meta-Daten werden benötigt, um eine Datei herunterzuladen, da darin die Chunk-Guids enthalten sind mit denen die einzelnen Chunks anschließend heruntergeladen werden können. Mehr ... | |
async Task | DownloadChunkAsync (Stream downloadedData, Guid communicationGuid, Guid fileResourceGuid, Guid chunkGuid, string chunkCheckSum=null) |
Ladet einen bestimmten Chunk einer Datei herunter. Wenn chunkCheckSum angegeben wird, wird diese überprüft. Mehr ... | |
async Task | UploadChunkAsync (Guid communicationGuid, Guid fileResourceGuid, MemoryStream chunkData, int currentChunkNumber, int numberOfChunks, string encryptedFileName) |
Lädt einen Datei-Chunk zu einer existierenden Datei hoch. Mehr ... | |
async Task | ConfirmDownloadSuccessfulAsync (Guid fileResourceGuid) |
Bestätigt den erfolgreichen Download einer Datei. Dies erzeugt anschließend eine FileDownloadedActivity, welche verwendet werden kann, um festzustellen, welche Personen bereits diese Datei heruntergeladen haben. Mehr ... | |
async Task< List< ContextCommunication > > | GetCommunicationsAsync () |
Liefert eine Liste von allen Kommunikationen auf die der angemeldete Benutzer Zugriff hat. Mehr ... | |
async Task< Guid > | CreateCommunicationAsync (CreateCommunicationModel createCommunicationModel) |
Erstellt eine neue Kommunikation. Mehr ... | |
async Task | DeleteCommunicationAsync (Guid communicationGuid) |
Löscht eine Kommunikation. Mehr ... | |
async Task | UpdateCommunicationAsync (Guid communicationGuid, ContextCommunicationUpdateModel model) |
Bearbeitet eine Kommunikation. Mehr ... | |
async Task< EndOfLifeTimeModel > | GetCommunicationDeletionDateTimeAsync (Guid communicationGuid) |
Holt den Zeitpunkt zu dem diese Kommunikation automatisch gelöscht wird. Mehr ... | |
async Task< List< Guid > > | GetKnownCommunicationsAsync () |
Liefert eine Guids von Kommunikationen zu denen der angemeldete Benutzer Zugriff hat. Mehr ... | |
async Task< List< ActivityBase > > | GetActivitiesForCommunicationAsync (Guid communicationGuid, Guid? lastActivityGuid) |
Liefert alle Aktivitäten der angegebenen Kommunikation. Optional kann eine Aktivitäts-Guid angegeben werden, sodass nur Aktivitäten geholt werden die älter als die angegebene Aktivität sind. Mehr ... | |
async Task< int > | GetCountActivitiesForCommunicationAsync (Guid communicationGuid, Guid? lastGuidToCountFrom) |
Liefert die Anzahl der Aktivitäten der angegebenen Kommunikation. Optional kann eine Aktivitäts-Guid angegeben werden, sodass nur Aktivitäten gezählt werden die älter als die angegebene Aktivität sind. Mehr ... | |
async Task< List< Guid > > | GetFilesInCommunicationAsync (Guid communicationGuid) |
Holt alle Dateien der angegebenen Kommunikation.. Mehr ... | |
async Task< Guid > | CreateFileMetaDataForCommunicationAsync (Guid communicationGuid, string localFilePath, string fileDisplayName, string message) |
Erstellt die Meta-Daten einer Datei. Dies ist notwendig bevor eine Datei hochgeladen werden kann. Mehr ... | |
async Task | RemoveFileFromCommunicationAsync (Guid communicationGuid, Guid fileResourceGuid) |
Löscht die angegebene Datei aus der Kommunikation. Mehr ... | |
async Task< List< Guid > > | GetMessagesInCommunicationAsync (Guid communicationGuid) |
Liefert eine Liste von Nachrichten-Guids, welche in dieser Kommunikation sind. Mehr ... | |
async Task< Guid > | AddMessageToCommunicationAsync (Guid communicationGuid, CreateMessageModel createMessageModel, Guid? parentMessageGuid=null) |
Erstellt eine neue Nachricht in der angegebenen Kommunikation. Mehr ... | |
async Task | RemoveMessageFromCommunicationAsync (Guid communicationGuid, Guid messageResourceGuid) |
Löscht eine Nachricht aus einer Kommunikation. Mehr ... | |
async Task< List< Guid > > | GetParticipantsInCommunicationAsync (Guid communicationGuid) |
Liefert eine Liste der Teilnehmer in der angegebenen Kommunikation. Mehr ... | |
async Task | AddParticipantToCommunicationAsync (Guid communicationGuid, Guid participantGuid, bool sendEmailNotification) |
Fügt einen Benutzer zu einer Kommunikation hinzu. Mehr ... | |
async Task | RemoveParticipantFromCommunicationAsync (Guid communicationGuid, Guid participantGuid) |
Entfernt einen Teilnehmer aus einer Kommunikation. Mehr ... | |
async Task< Model.MessageModel > | GetMessageAsync (Guid messageResourceGuid) |
Holt eine einzelne Nachricht. Mehr ... | |
async Task< List< ParticipantModel > > | GetKnownParticipantsAsync () |
Holt einer Liste von Teilnehmern mit denen der angemeldete Benutzer in Kontakt steht. Mehr ... | |
async Task< CreateParticipantResultModel > | CreateParticipantAsync (CreateParticipantModel createParticipantModel) |
Erstellt einen neuen Benutzer. Mehr ... | |
async Task< ParticipantModel > | GetParticipantAsync (Guid participantGuid) |
Holt einen einzelnen Benutzer. Mehr ... | |
async Task | UpdateParticipantAsync (Guid participantGuid, ParticipantUpdateModel model) |
async Task | VerifyCodeToUpdateParticipantAsync (Guid participantGuid, string code) |
Bestätigt die Änderung der Benutzerdaten. Mehr ... | |
async Task< FindParticipantResultModel > | FindParticipantAsync (string username=null, string email=null, string phoneNumber=null) |
Sucht nach einen existierenden Benutzer. Es muss mindestens ein Suchparameter angegeben werden und alle gleichzeitig. Die Angabe mehrere Suchparameter kann die Suche möglicherweise einschränken und somit ein eindeutiges Ergebnis liefern. Mehr ... | |
async Task< ApiStatus > | GetApiStatusAsync () |
Gibt den aktuellen Status der API zurück Mehr ... | |
async Task< string > | GetGeneratedPasswordAsync (int? length=null) |
Kann verwendet werden, um ein Passwort zu generieren, welches alle Passwortrichtlinien bei der Erstellung von Benutzer erfüllt. Mehr ... | |
async Task< List< object > > | GetStatisticsAsync (DateTime from, DateTime to, bool extended) |
Liefert Statistiken zum aktuell angemeldeten Benutzer. Mehr ... | |
async Task< string > | GetFormattedPhoneNumberAsync (string phoneNumber) |
Throws exceptions if the phoneNumber is not valid. Can therefore be used to validate a phone number. Mehr ... | |
![]() | |
virtual void | CloseSponsoring () |
Beendet das Sponsoring der aktuellen Instanz für den DGC. | |
virtual void | StartSponsoring () |
Startet das Sponsoring der aktuellen Instanz (neu) für den DGC. Das Sponsoring dieser Instanz ist vom Konstruktor an aktiv, es sei denn CloseSponsoring wurde bereits aufgerufen. Falls diese Instanz bereits effektiv Disposed wurde, ist dieser Aufruf allerdings wirkungslos. | |
IDisposable | GetUsageSection () |
Wer diese Methode aufruft, kennzeichnet, dass er das MarshalByRefWithLifetimeManagement-Objekt noch braucht! Wenn, solange die zurückgegebene Usage nicht disposed wurde, das MarshalByRefWithLifetimeManagement-Objekt disposed wird, wird es nicht wirklich disposed, sondern erst, wenn alle UsageHandler disposed wurden! | |
void | Dispose () |
Gibt alle verwendeten Ressourcen frei. Beendet auch das Sponsoring für den DGC. | |
![]() | |
Task | UpdateParticipantAsync (Guid participantGuid, ParticipantUpdateModel model) |
Bearbeitet einen existierenden Benutzer. Die Benutzerdaten werden erst nach einer Personenverifizierung tatsächlich geändert, siehe: VerifyCodeToUpdateParticipantAsync. Mehr ... | |
Weitere Geerbte Elemente | |
![]() | |
override void | Dispose (bool yInDispose) |
Schließt Sponsoring. Soll beim Ableiten alle Ressourcen freigeben. Mehr ... | |
![]() | |
MarshalByRefLifeMgmt () | |
Trivialkonstruktor | |
![]() | |
ContextApiConfiguration | ContextApiConfiguration [getset] |
Einstellungen für die API-Zugriffe | |
Guid | CurrentLoggedInUserId [get] |
Die Guid des derzeit eingeloggten Benutzers (ParticipantGuid) | |
DateTime | LastApiTokenRequest [get] |
Speichert den Zeitpunkt des letzten Logins | |
EventHandlerManager | Events = new EventHandlerManager() [get] |
Stellt eine Liste von EventHandler bereit, um Events entgegenzunehmen | |
![]() | |
bool | SponsoringAlive [get] |
Wenn true ist das Sponsoring dieser Instanz für den DGC gestartet, wenn false dann nicht. | |
virtual bool | IsDisposed [get] |
Wenn true wurde bereits effektiv Dispose aufgerufen! | |
Diese Klasse ist ein Wrapper der ContextApi und erweitert sie um das Verwalten des angehängten Datenspeichers (DataStore). Die IActivityPersistence<TUser,TCommunication,TMessage> übernimmt dabei die spezifische DataStore-Logik.
TUser | Der Typ von Benutzer-Objekten |
TCommunication | Der Typ von Kommunikation-Objekten |
TMessage | Der Typ von Nachricht-Objekten |
TUser | : | IContextUser | |
TCommunication | : | IContextCommunication | |
TMessage | : | IContextMessage |
ContextSDK.Context< TUser, TCommunication, TMessage >.Context | ( | IActivityPersistence< TUser, TCommunication, TMessage > | activityPersistence, |
ContextConfiguration | contextConfiguration | ||
) |
Ermöglicht es die ContextAPI anzusprechen und dabei automatisch den DataStore zu verwalten
activityPersistence | Stellt die Anbindung zum DataStore dar und beinhaltete spezifische Logik wie der DataStore verwendet wird. |
contextConfiguration | Einstellungen für die API-Zugriffe. |
async Task< Guid > ContextSDK.Context< TUser, TCommunication, TMessage >.LoginAsync | ( | string | userName, |
string | password, | ||
bool | autoRefresh | ||
) |
Loggt sich bei der API ein und holt den notwendigen JWT, welcher für alle API-Zugriffe verwendet wird.
Implementiert ContextSDK.IContext.
async Task ContextSDK.Context< TUser, TCommunication, TMessage >.RefreshAsync | ( | ) |
Holt eine Liste von allen Aktivitäten seit dem letzten Zugriff. Beim Einlangen der Aktivitäten wird die im Konstruktor übergebene IActivityPersistence<TUser,TCommunication,TMessage> verwendet, um den DataStore am aktuellen Stand zu halten.
Implementiert ContextSDK.IContext.