Expand my Community achievements bar.

Announcing the launch of new sub-community for Campaign Web UI to cater specifically to the needs of Campaign Web UI users!
SOLVED

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

Avatar

Community Advisor

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

Avatar

Correct answer by
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

Avatar

Correct answer by
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

Avatar

Community Advisor

Hi @Jonathon_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

Avatar

Administrator
Hi @Jonathon_wodnicki, Could you please look into @isahore 's query further? Thanks!


Sukrity Wadhwa

Avatar

Employee Advisor
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.