Écrire un écouteur pour une solution Microsoft Azure

 

Date de publication : novembre 2016

S’applique à : Dynamics CRM 2015

Cette rubrique décrit comment écrire un écouteur qui peut lire et traiter des messages Microsoft Dynamics CRM 2015 qui sont publiés sur le Microsoft Azure Service Bus. Pour commencer, vous devez vous familiariser avec la manière d’écrire un écouteur Microsoft Azure Service Bus avant d’essayer de découvrir les spécificités d’un écouteur Microsoft Dynamics 365. Pour plus d’informations, voir Service Bus et l’exemple de code.

Contenu de la rubrique

Écrire un écouteur de file d’attente

Écrire un écouteur unidirectionnel, bidirectionnel ou REST

Filtrer les messages

Écrire un écouteur de file d’attente

Une file d’attente messages est un référentiel de messages reçu au point de terminaison de service bus. Un écouteur de file d’attente est une application qui lit et traite les messages mis en file d’attente. Comme les messages de bus des services sont stockés dans une file d’attente, un écouteur n’a pas besoin d’effectuer une écoute active pour que les messages soient reçus dans la file d’attente. Un écouteur de file d’attente peut être démarré une fois que les messages sont arrivés dans la file d’attente en vue de les traiter. D’autres types d’écouteurs décrits dans la section suivante doivent écouter activement ou ils manqueront l’opportunité de lire un message. Ces messages peuvent provenir de Microsoft Dynamics 365 ou d’une autre source. Pour écrire un écouteur de file d’attente, il est important d’activer chaque action d’en-tête de message pour déterminer si le message a été généré sur la base de Microsoft Dynamics 365.

Vous pouvez créer une lecture de message destructive en utilisant le mode ReceiveReceiveAndDelete, où le message est lu et supprimé de la file d’attente, ou une lecture non-destructive en utilisant le mode PeekLock, pour lequel le message est lu mais toujours disponible dans la file d’attente. L’exemple de code d’écouteur de file d’attente persistante fourni dans ce Kit de développement logiciel peut effectuer une lecture destructive. Pour plus d’informations sur les messages de lecture d’une file d’attente, voir How to Receive Messages from a Queue.

Une rubrique est similaire à une file d’attente mais implémente un modèle de publication/d’abonnement. Un ou plusieurs écouteurs peuvent s’abonner à la rubrique et recevoir des messages de sa file d’attente.Pour plus d'informations :Files d’attente, rubriques et abonnements Service Bus

Important

Les files d'attente et rubriques persistantes sont prises en charge, tandis que les files d'attente de messages en mémoire tampon ne le sont pas. Pour utiliser ces contrats, vous devez créer vos applications d’écoute avec la version 1.7 ou 1.8 du Kit de développement logiciel (SDK) Azure.

L’utilisation des files d’attente et des rubriques dans votre conception du logiciel système peut entraîner le découplage des systèmes. Si l’application d’écoute n’est jamais indisponible, la remise des messages issus de Microsoft Dynamics 365 aboutira toujours et l’application d’écoute pourra continuer à traiter le message de file d’attente lorsqu’elle est en ligne.Pour plus d'informations :Files d’attente, rubriques et abonnements.

Mettre à jour un écouteur de messages en mémoire tampon pour utiliser les files d’attente persistantes

La procédure suivante répertorie les étapes génériques à suivre pour mettre à jour une application d’écoute qui récupère le message provenant d’une mémoire tampon en une application qui reçoit le message d’une file d’attente persistante.

  1. Sur le portail Microsoft Azure et dans la même solution, créez une file d’attente avec le même chemin d’accès que celui utilisé pour les messages en mémoire tampon.

  2. Installez la version 1.7 ou 1.8 du Kit de développement logiciel Microsoft Azure sur votre ordinateur de développement.

  3. Mettez le code d’écoute à jour en supprimant les classes et les méthodes associées aux messages en mémoire tampon, puis remplacez-les par QueueClient et Receive. Assurez-vous d’utiliser le mode de lecture souhaité : RetrieveAndDelete ou PeekLock. Pour plus d’informations sur les messages de lecture d’une file d’attente, voir Files d’attente, rubriques et abonnements Service Bus.

  4. Créez l’application d’écoute.

Aucune modification de configuration Microsoft Dynamics 365 n’est nécessaire tant que le point de terminaison de file d’attente utilise le même chemin de solution que celui des messages en mémoire tampon.

Écrire un écouteur unidirectionnel, bidirectionnel ou REST

Outre l’écouteur de file d’attente décrit précédemment, vous pouvez écrire un écouteur pour trois autres contrats de bus des services pris en charge par Microsoft Dynamics 365: unidirectionnel, bidirectionnel et REST. Un écouteur unidirectionnel peut lire et traiter un message publié sur le bus des services. Un écouteur bidirectionnel peut effectuer la même chose mais peut également renvoyer une chaîne de quelques informations dans Dynamics 365. Un écouteur REST fait la même chose que l’écouteur bidirectionnel sauf qu’il fonctionne avec un point de terminaison REST. Notez que ces auditeurs doivent effectuer une écoute active au niveau du point de terminaison de service pour lire un message envoyé via le bus des services. Si l’écouteur n’écoute pas lorsque Microsoft Dynamics 365 tente de publier un message sur le bus des services, le message ne sera pas envoyé.

L’écriture d’un écouteur est structurée autour de ce qui est appelé ABC : Address (adresse), Binding (liaison) et Contract (contrat). Les informations suivantes identifient l’ABC d’un écouteur unidirectionnel.

Lorsque votre écouteur est inscrit avec un point de terminaison, la méthode Execute de l’écouteur est appelée lorsqu’un message est publié sur le bus des services par Microsoft Dynamics 365. La méthode Execute ne retourne aucune donnée à partir de l’appel de la méthode. Pour plus d’informations, voir l’exemple d’écouteur unidirectionnel, Exemple : écouteur unidirectionnel.

Un écouteur bidirectionnel est codé de la même façon qu’un écouteur unidirectionnel. L’ABC d’un écouteur bidirectionnel est le suivante :

Pour ce contrat bidirectionnel, la méthode Exécuter renvoie une chaîne de l’appel de méthode. Pour plus d’informations, voir l’exemple d’écouteur bidirectionnel, Exemple : écouteur bidirectionnel.

Un écouteur REST est codé de la même façon qu’un écouteur bidirectionnel. L’ABC d’un écouteur REST est le suivant :

Pour le contrat REST, la méthode Execute renvoie une chaîne de l’appel de méthode. Reportez-vous à l’exemple d’écouteur REST, Exemple : Port d’écoute REST, pour plus d’informations. Notez que dans l’exemple d’écouteur REST, un WebServiceHost est instancié et non un ServiceHost comme c’est le cas dans l’exemple bidirectionnel.

Notes

Lors de l’utilisation du plug-in prêt à l’emploi (ServiceBusPlugin) avec un écouteur bidirectionnel ou REST, le plug-in n’utilise aucune donnée de chaîne issue de l’écouteur. Toutefois, un plug-in Azurepersonnalisé peut se servir de ces informations.

Lorsque vous exécutez les exemples d’écouteur, le secret de l’émetteur correspondant est la clé de gestion Microsoft Azure Service Bus. La liaison HTTP WS2007 Federation utilise le mode « jeton » et le protocole WS-Trust 1.3.

Filtrer les messages

Il existe un ensemble de propriétés contenant des informations supplémentaires ajoutées à chaque Propriété de message sponsorisé issus de Microsoft Dynamics CRM 2015 et CRM Online. L’ensemble de propriétés, disponibles avec les points de terminaison des files d’attente et des rubriques persistantes, contient les informations suivantes.

  • Organisation Url

  • ID de l’utilisateur appelant

  • ID de l’utilisateur émetteur

  • Nom logique de l'entité

  • Nom de la demande

Ces informations identifient l’organisation, l’utilisateur, l’entité et la demande de message traitée par Microsoft Dynamics 365 résultant du message de bus des services en cours de publication. Votre code d’écouteur peut choisir de traiter un message qu’il reçoit à partir de ces informations.Pour plus d'informations :Exemple : Exécuter plusieurs demandes

Voir aussi

Extensions Azure pour Microsoft Dynamics CRM 2015
Écrire un plug-in compatible Azure personnalisé
Exemple : Écouteur de files d’attente persistantes
Exemple : écouteur unidirectionnel
Exemple : écouteur bidirectionnel
Exemple : Port d’écoute REST
Envoyer des données Microsoft Dynamics CRM 2015 via le Bus des services Azure

© 2017 Microsoft. Tous droits réservés. Copyright