2014-01-08 3 views
0

Как часть общего проекта, мне нужно создать одно приложение Message-Broker, которое принимает данные в формате XML и создает электронную почту.Как отправить электронное письмо с помощью IBM Message Broker?

Я создал один поток сообщений, как показано ниже

«MQ Input - Compute - EmailOutput»

Пожалуйста, помогите мне, что я должен написать в XML-файл, чтобы сгенерировать поток выше.

ESQL файл содержит код, приведенный ниже: CREATE FUNCTION Main() Возвращает булево НАЧАТЬ ВЫЗОВЫ CopyMessageHeaders();

-- Add recipient information to the EmailOutputHeader 
    SET OutputRoot.EmailOutputHeader.To = '<recipient email address>'; 
    SET OutputRoot.EmailOutputHeader.Cc = '<recipient email address>'; 
    SET OutputRoot.EmailOutputHeader.Bcc = '<recipient email address>'; 

    -- Add sender information to EmailOutputHeader 
    SET OutputRoot.EmailOutputHeader.From = '<sender email address>'; 
    SET OutputRoot.EmailOutputHeader."Reply-To" = '<reply email address>'; 

    -- Add subject to EmailOutputHeader 
    SET OutputRoot.EmailOutputHeader.Subject = 'Replaced by ESQL compute node.'; 

    -- Add SMTP server information to the LocalEnvironment 
    SET OutputLocalEnvironment.Destination.Email.SMTPServer ='<smtp.server:port>'; 

    -- Create a new message body, which will be sent as the main text of the email. 
    SET OutputRoot.BLOB.BLOB = CAST('This is the new text for the body of the email.' AS BLOB CCSID 1208);   

    RETURN TRUE; 
END; 
+0

Вы пытаетесь произвести ими программным потоком? В этом случае единственной поддерживаемой опцией является использование API потока сообщений? – Dave

ответ

0

У меня нет абсолютно никакого представления о том, какой XML-файл вы говорите. Выложите поток msg в наборе брокеров сообщений, добавив и подключив три указанных вами узла. Затем добавьте свой код в вычислительный узел.

+0

может дать один образец отправки электронной почты с использованием wmb с кодировкой и каков предпочтительный поток u – user3173432

0

Вы можете передавать значения Используя XPATH, используя InputRoot.XMLNC, используя среду или LocalEnvironment. Если мы примем ваши требования, , что кажется, что сообщение приходит с вашего узла MQInput, использующего XMLNSC Parser.

-- Add recipient information to the EmailOutputHeader 
    SET OutputRoot.EmailOutputHeader.To = InputRoot.XMLNSC.EmailData.To; 

    -- Add sender information to EmailOutputHeader 
    SET OutputRoot.EmailOutputHeader.From = InputRoot.XMLNSC.EmailData.From; 

    -- Add subject to EmailOutputHeader 
    SET OutputRoot.EmailOutputHeader.Subject = InputRoot.XMLNSC.EmailData.Subject; 

    -- Add SMTP server information to the LocalEnvironment 
    -- You can Add Smtp Server From Configuration in Your Broker Administration side as Configurable Service 
    SET OutputLocalEnvironment.Destination.Email.SMTPServer ='<smtp.server:port>'; 

    -- Create a new message body, which will be sent as the main text of the email. 
    SET OutputRoot.BLOB.BLOB = CAST(InputRoot.EmailData.Body AS BLOB CCSID 1208); 

для тестирования, в Test Тип клиента этот XML-файл

<EmailData> 
    <To>[email protected]</To> 
    <From>[email protected]</From> 
    <Subject>Testing Email App</Subject> 
    <Body><![CDATA[<h1>Testing Email Data</h1><br/><hr /><br/><h6>Testing Email</h6></hr />]]></Body> 
</EmailData> 
Смежные вопросы