Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Attaching a dynamic attachment (from a DMS) to a message center email

isahore
Level 3
Level 3

Hi experts,

 

I am trying to put my head around a requirement where we need to fetch and attach a file (.pdf) to an email delivery from the message center.

The file itself resides inside a DMS (document management system), and is not available publicly (cannot be accessed simply by a URL).

The only way the DMS provides access to a file is via a REST call, where the document ID is passed in the request parameter. The response from the DMS is not a URL, but the whole PDF file itself.

Now, I am struggling to make this work because I am not sure how and where to write some script (if possible at all) that retrieves the PDF via that REST call, saves it somewhere on the message center instance, and then attaches it to the email.

 

Any pointers/examples are highly appreciated.

 

Thanks,

Ishan

1 Accepted Solution
wodnicki
Correct answer by
Community Advisor
Community Advisor

Hi,

 

As with all things Message Center, the solution lies in the question 'is a 30 second delay acceptable'?

If what you're doing here is attaching receipts to order confirmations, probably fine to wait 30 seconds.

 

In which, do this:

  1. Spool requests to marketing instance instead of to Message Center
  2. Create a campaign that polls request table for unresolved requests every 30 seconds
  3. Depending on volume, send one at a time per recipient (easiest) or batch them
  4. Mark requests as resolved in table

 

Do not do this (I worked at a client that was sold this):

  1. Install AEM forms
  2. Install AEM
  3. Install Message Center
  4. Wait until project is cancelled

 

Thanks,

-Jon

View solution in original post

5 Replies
wodnicki
Correct answer by
Community Advisor
Community Advisor

Hi,

 

As with all things Message Center, the solution lies in the question 'is a 30 second delay acceptable'?

If what you're doing here is attaching receipts to order confirmations, probably fine to wait 30 seconds.

 

In which, do this:

  1. Spool requests to marketing instance instead of to Message Center
  2. Create a campaign that polls request table for unresolved requests every 30 seconds
  3. Depending on volume, send one at a time per recipient (easiest) or batch them
  4. Mark requests as resolved in table

 

Do not do this (I worked at a client that was sold this):

  1. Install AEM forms
  2. Install AEM
  3. Install Message Center
  4. Wait until project is cancelled

 

Thanks,

-Jon

View solution in original post

isahore
Level 3
Level 3

Hi @wodnicki,

Thanks for the reply. You are correct to assume what I am trying to do here - attach invoices to order related emails.

Even if the requests are directed to the marketing instance, still I need to make a REST call to an API and save the file with which the API responds.

Can you help me understand how to implement this? Would it at all be possible to do something like this in a javascript code inside the email template itself?

 

Thanks,

Ishan

denisb91363072
Employee
Employee
Using the marketing instance as a middleware will not scale as for large transactional messages volume. Technically it will work but depending how the marketing instance is getting the request, it will not scale Use a serverless function instead such as Adobe I/O Runtime to make the in-between logic.