2016-06-01 10 views
1

Ich beginne gerade im Office365, Exchange Online, EWS-Feld, und ich wurde beauftragt, ein ziemlich komplexes Projekt zu erstellen.Ist es möglich EWS-Streaming-Benachrichtigungen von mehreren Servern kontinuierlich zu erhalten?

Ich würde gerne wissen, ob es möglich ist, eine Anwendung zu machen, die eine Benachrichtigung über ein Ereignis auf einem Exchange (Online) Server erwartet, und dann etwas dagegen tut? Um es noch deutlicher zu machen, hier ein Beispiel: Ein Administrator meldet sich bei meiner App an, stellt seine Verbindungsdetails zur Verfügung und dann beginnt die App zu horchen (Öffnen und Halten einer Verbindung mit seinem Exchange-Server). Sobald ein Raum in seiner Organisation gebucht wurde, wird eine Funktion ausgeführt, da meine App direkt benachrichtigt wird. Ich habe einen Teil des Codes, der eine Verbindung zu einem Exchange-Server (online) herstellt, und führt einige Aktionen auf diesem Server aus, indem er die Anmeldeinformationen verwendet und Anforderungen stellt.

Also die Frage ist: kann meine App mit dem Streaming-Benachrichtigungen Fluss von mehreren Servern gleichzeitig unbegrenzt verbunden bleiben?

Vielen Dank!

Antwort

1

Kurze Antwort: Ja ist es. Längere Antwort: Sie müssen die Streaming-Benachrichtigungsverbindungen sorgfältig verwalten.

Zuerst einmal, vor allem mit O365, müssen Sie die Gruppierungsinformationen (GI) für jede SMTP-Adresse (von GetUserSettings während Autodiscovery) extrahieren, gruppieren Sie die verschiedenen SMTPs nach ihrem GI, abonnieren Sie jedes, und öffnen Sie die Verbindung für diese Gruppe von Abonnements. SMTPs können GI jederzeit ändern (z. B. über Nacht). Daher müssen Sie möglicherweise ein Abonnement für ein SMTP abbrechen und erneut ermitteln, um seine neue Gruppe zu erhalten, und sie dann einer anderen Verbindung hinzufügen.

Zweitens, abhängig davon, wie viele Verbindungen Sie zu einem bestimmten Server haben, benötigen Sie möglicherweise Identitätswechselrechte, es sei denn, Ihr Benutzer gibt seine Anmeldeinformationen für sein SMTP an Ihre App aus. Die maximale Anzahl von Verbindungen pro Benutzer-ID ohne Identitätswechsel liegt bei 20, und für O365 ist das eine harte Grenze.

Sie haben die in Ihren Anforderungen enthaltenen Nummern oder die Dauer des Abonnements nicht erwähnt. Wenn es nur wenige Benutzer gleichzeitig gibt oder Sie sich nach kurzer Zeit wieder abmelden können, ist möglicherweise ein Teil dieser Komplexität übertrieben.

Leider gibt es keine zentrale Referenz zu Streaming-Benachrichtigungen, obwohl MSDN eine gute Anzahl von Artikeln enthält, nach denen Sie suchen können.

HTH

+0

Hey, zunächst einmal, vielen Dank für Ihre Antwort. Ich schaue jetzt in Push-Benachrichtigungen, da ich denke, sie sind besser dokumentiert und besser für meine Bedürfnisse geeignet. Die Zahlen sind mir immer noch unklar, da es 10 oder 100 Konten verwalten kann, je nachdem wie gut die App funktioniert. Nochmals vielen Dank, ich werde später noch eine Frage stellen, sobald ich mich eingehender mit der Benachrichtigungsproblematik befasse, wenn ich immer noch Schwierigkeiten haben werde, ihre Arbeitsweise zu verstehen. Ich wünsche ihnen einen wunderbaren Tag ! :) Andrei. –

+0

Beachten Sie, dass Push-Benachrichtigungen in einer O365-Umgebung nicht abgespielt werden, da sie höchstwahrscheinlich nicht in der Lage sind, in die Firewall Ihres Unternehmens einzudringen. – pjneary

+0

Nochmals vielen Dank. Dieses Projekt zielt hauptsächlich auf die Azure-Umgebung ab, sodass die Firewall kein Problem darstellt. :) –