Можете ли да използвате част от темата на имейла, за да попълните полето До в изходящата точка на имейл в mule?

Имам поток от имейл към имейл, който трябва да изпрати конкретни податели в зависимост от темата на имейла. Използвах #[message.inboundProperties.subject.substring(40,3), за да получа стойността, но завърши с грешка. Не съм сигурен коя функция да използвам, за да получа стойността, от която се нуждая от темата, тъй като номерът на поръчката също е там. Някакви съвети? Всичките ми необходими стойности са в темата в момента.

Също така, мога ли да използвам тази стойност, за да генерирам имейл тяло за съобщението?

До: [Подател]

Здравей [Подател]

Вашата поръчка № [Поръчка] беше успешно импортирана

Благодаря Муле


person Paul D.    schedule 05.03.2016    source източник


Отговори (1)


Първият въпрос, който идва на ум, е откъде взимате Subject? Фиксирано изявление ли е?

Това, което можете да направите, е обратното. Можете да съхранявате [Order] и [Sender] в променливи на потока и след това можете да конструирате ред за тема и текст на имейл от него.

Например ви позволява да съхранявате вашите [Order] в променлива на потока, както следва:-

<set-variable variableName="Order" value="#[message.inboundProperties.'order']" doc:name="Variable"/>

и [Sender] в друга променлива на потока: -

<set-variable variableName="Sender" value="[email protected]" doc:name="Variable"/>

След това можете да изпратите [Order] и [Sender] в реда за тема: -

Hi #[flowVars.Sender.split('@')[0]] your order number #[flowVars.Order] is ready

И в тялото на имейла можете да напишете следното: -

Hi #[flowVars.Sender.split('@')[0]]

Your order no#[flowVars.Order] was successfully imported

Thanks Mule

Моля, имайте предвид, че използвах flowVars.Sender.split('@')[0], за да получа името на подателя от имейл адреса ... справка: - Как мога да извлека потребителското име от имейл адрес с помощта на javascript?

person Anirban Sen Chowdhary    schedule 05.03.2016
comment
Здравей Anirban, Благодаря за полезното предложение. Сега действах по същата логика. Между другото, как пишете тялото на имейла, тъй като виждам само полетата за заглавка в изходящата SMTP точка. Също така, вие сте прав, опитвам се да получа стойността от подниза на темата. Единственият проблем може да бъде, когато това се промени. Търся как да получа стойността от края на реда за тема за моя брой поднизи. Имате ли идея за това? Благодаря отново, тъй като все още се уча да манипулирам с муле и връв - person Paul D.; 05.03.2016
comment
Можете да зададете полезен товар, за да зададете тялото на имейла ... Полезният товар Mule служи като тяло на имейла.. Ако искате да имате форматирано тяло на имейла, можете да се обърнете тук: - stackoverflow.com/questions/26178799/ и BTW, много е лоша идеята да се извлече стойност от дълъг ред за тема и това също не е с фиксирана дължина... можете да имате стойността на подателя със себе си и да я поставите в реда за тема в края, като го направите по друг начин - person Anirban Sen Chowdhary; 05.03.2016
comment
Благодаря отново, ще взема под внимание всички ваши предложения. Нямам друг начин да получа подателя и номера на поръчката, тъй като идва от външна система, която го поставя в реда за тема. Имате ли някаква идея как да прочетете това от последния знак, тъй като последният низ ще бъде клеймото за време, а преди това е стойността, която ми трябва. Благодаря отново - person Paul D.; 05.03.2016
comment
Импортирането на XML на склад е успешно - Knauff_ROC_3510254_0403201610290345.xml е моето име на файл и трябва да получа „ROC и номера след това за поръчката. - person Paul D.; 05.03.2016
comment
Моля, напишете тук цялата тема и думата, която трябва да извлечете от нея - person Anirban Sen Chowdhary; 05.03.2016
comment
Здравей Anirban, бих искал да извлека ROC и номера на поръчката от горния ред. Използвах поток за избор, за да разгранича успеха и неуспехите, за да получа фиксираните дължини, но смятам, че ще бъде по-добре да го получа от подниза на последния знак. - person Paul D.; 05.03.2016
comment
Също така виждам, че предишните прикачени файлове са включени в новата поща. Има ли начин да премахнете и това? - person Paul D.; 05.03.2016
comment
Трябва да използвате <remove-attachment/>, за да премахнете предишния прикачен файл. Ето няколко връзки за извличане на дума от темата с помощта на java код... за справка: - codereview.stackexchange.com/questions/90474/ можете да използвате java компонент или изразен компонент за Направи го - person Anirban Sen Chowdhary; 05.03.2016
comment
Благодаря приятел! бяхте много полезни. Успявам да го накарам да работи. Все още не е толкова красив и все още има нужда от фина настройка, но е чудесно начало. добри неща. Благодаря отново - person Paul D.; 06.03.2016