> Tech > Envoyer et recevoir des messages

Envoyer et recevoir des messages

Tech - Par Renaud ROSSET - Publié le 24 juin 2010

Il ne reste plus, maintenant qu'à tester le fonctionnement de l'architecture Service Broker ainsi mise en place. Ainsi, depuis la base bd1 le dialogue est initié.

use bd1;
go
begin tran
DECLARE @identifiantConversation UNIQUEIDENTIFIER
-- Initier le dialogue

Envoyer et recevoir des messages

/>
BEGIN DIALOG CONVERSATION @identifiantConversation
FROM SERVICE service1 TO SERVICE ‘service2’
ON CONTRACT [ContratExemple]; declare @messagePersonnalise xml;
set @messagePersonnalise=
N'<client><nom>DUPONT</nom><prenom>Jean</prenom></client>’;
SEND ON CONVERSATION @identifiantConversation
MESSAGE TYPE MResultat (@messagePersonnalise);
commit tran;
go

Depuis la base de données cible, il est possible de lire est de traiter le message reçu de la façon suivante :

use bd2
go
begin tran
DECLARE @identifiantConversation UNIQUEIDENTIFIER
declare @messageRecu TABLE(
NomService NVARCHAR(512),NomContrat NVARCHAR(256), TypeMessage NVARCHAR(256),msg NVARCHAR(MAX));
WAITFOR(
RECEIVE TOP (1) service_name, service_contract_name,message_type_name, message_ body, conversation_handle
FROM file2
INTO @messageRecu,@identifiantConversation ),
TIMEOUT 10;
select * from @messageRecu;
— Lire le message
declare @message nvarchar(4000);
select @message=substring(msg, 1, 4000) from @messageRecu
— lire le message et récupérer les informations
if (@message is not null)
begin
declare @identifiantDocumentXML int;
declare @nom nvarchar(80);
declare @prenom nvarchar(80);
exec sp_xml_preparedocument @identifiantDocumentXML output, @message;
select @nom=text from openxml(@identifiantDocumentXML,’/client/nom’) where nodetype=3;
select @prenom=text from openxml(@identifiantDocumentXML,’/client/prenom’) where nodetype=3;
— Ajouter le nouveau client
INSERT INTO exemple.clients(nom, prenom) VALUES (@nom, @prenom); end;
— Mettre fin a la conversation
END CONVERSATION @identifiantConversation;
commit tran;


Téléchargez cette ressource

Créer des agents dans Microsoft 365 Copilot

Créer des agents dans Microsoft 365 Copilot

Insight vous guide dans l’utilisation de la nouvelle expérience de création d’agents dans Microsoft Copilot Studio, disponible dans Copilot Chat. Découvrez les étapes clés pour concevoir, configurer et déployer ces nouveaux agents et injecter la puissance de l’IA directement dans le flux de travail.

Les plus consultés sur iTPro.fr

A lire aussi sur le site

À la une de la chaîne Tech