Hi Team,
I am seding emails through javascript API like the below :
in my javascript code :
var emailCondition = "@email = 'abc@gmail.com'";
var deliveryId = nms.delivery.SubmitNotification ("prdDM30608",
<delivery>
<targets >
<deliveryTarget >
<targetPart type='query' exclusion='false' ignoreDeleteStatus='false'>
<where>
<condition expr={emailCondition} />
</where>
</targetPart>
</deliveryTarget>
</targets>
</delivery>);
logInfo("deliveryid : "+deliveryId)
Currently it is taking the email address statically. I want the email address to be taken dynamically from the query activity. How can i do that ?
solution which I am following ( but i don't think so this is a nice solution as when i follow this solution the exclude duplicate option in the email settings not working)
Solution which i am thinking is a wrong approach :
// vars.tableName = table which is generated by query activity and it has email column
var cnx = application.getConnection();
var details = cnx.query("select * from "+vars.tableName);
for each(var row in details)
{
var emailCondition = "@email = '"+row[1]+"'";
var deliveryId = nms.delivery.SubmitNotification ("prdDM30608",
<delivery>
<targets >
<deliveryTarget >
<targetPart type='query' exclusion='false' ignoreDeleteStatus='false'>
<where>
<condition expr={emailCondition} />
</where>
</targetPart>
</deliveryTarget>
</targets>
</delivery>);
logInfo("deliveryid : "+deliveryId)
}
cnx.dispose();
Is there any good approach to directly pipe the email from query activity this way i can exclude duplicate addresses for emails.
Question 2:
Also if in email template if we have a variable piping like "<%=recipient.firstname>" how can i pass this varable from api call ?? any solution for this??
Solved! Go to Solution.
Views
Replies
Total Likes
You should use message center for this cases if you want your recipient/user to receive an email after your api call.
from the marketing instance, i will recommend to send api call to recipient table and trigger a workflow every 10-15 min.
Thanks
David
Views
Replies
Total Likes
You should use message center for this cases if you want your recipient/user to receive an email after your api call.
from the marketing instance, i will recommend to send api call to recipient table and trigger a workflow every 10-15 min.
Thanks
David
Views
Replies
Total Likes
Hi @DavidKangni,
I am new to this. Can you give me an example ?
Currently i am able to send the deliveries through API but there are some variables of recipient table which i need to pass to delivery template like ( recipient.firstname) how can i do so ?
along with email i need to pass two more variables of recipient table.
Currently this is my code :
// vars.tableName = table which is generated by query activity and it has email column
var cnx = application.getConnection();
var details = cnx.query("select * from "+vars.tableName);
for each(var row in details)
{
var emailCondition = "@email = '"+row[1]+"'";
var deliveryId = nms.delivery.SubmitNotification ("prdDM30608",
<delivery>
<targets >
<deliveryTarget >
<targetPart type='query' exclusion='false' ignoreDeleteStatus='false'>
<where>
<condition expr={emailCondition} />
</where>
</targetPart>
</deliveryTarget>
</targets>
</delivery>);
logInfo("deliveryid : "+deliveryId)
}
cnx.dispose();
Views
Replies
Total Likes