> 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

Guide de Threat Intelligence contextuelle

Guide de Threat Intelligence contextuelle

Ce guide facilitera l’adoption d’une Threat Intelligence - renseignement sur les cybermenaces, cyberintelligence - adaptée au "contexte", il fournit des indicateurs de performance clés (KPI) pour progresser d' une posture défensive vers une approche centrée sur l’anticipation stratégique

Les plus consultés sur iTPro.fr

A lire aussi sur le site

À la une de la chaîne Tech