ページをPDF添付ファイルとしてメール送信する方法

ページをPDF添付ファイルとしてメール送信する方法

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

要件

Deluge の sendMail タスクを使用して、指定した時間間隔で Zoho Creator のページを PDF 添付ファイルとしてメール送信するようスケジュールします。

ユースケース

顧客エンゲージメントと企業プロモーションを強化するため、ある組織は Zoho Creator のページ機能を使用して、顧客の声、指標、製品の販売件数を掲載したニュースレターを作成しています。このニュースレターは、購読している顧客に対して、毎月初日に PDF 添付ファイル付きメールとして配信されます。
メモ: ページは API を介して PDF としてダウンロードされ、メールの添付ファイルとして送信されます。

手順

  1. フォームを作成し、以下の詳細で顧客情報を追加できるようにします。

    フォーム

    フォームリンク名

    項目タイプ

    項目名

    項目リンク名

     

     

    顧客詳細

     

     

    Customer_Details

    名前

    顧客名

    Customer_Name

    メール

    メール

    メール

    電話番号

    電話番号

    電話番号

    住所

    住所

    住所

    判定ボックス

    月間ニュースレターの購読管理

    Subscribe_to_monthly_newsletter

  2. ページを作成し、「Newsletter」という名前を付けて、必要に応じてカスタマイズします。
  3. メモ:API を使用してページをダウンロードする機能が制限されるため、ページ内にフォームやレポートを埋め込まないことを推奨します。

  4. 公開したい Newsletter ページを、添付ファイルとして送信できるように公開します。
  5. メモ:公開後はパーマリンク経由で誰でもアクセスできるようになるため、ページ内に機密情報を含めないようにしてください。
  6. スケジュールワークフローを作成し、毎月の初日に実行されるように設定します。開始日と時刻に、任意の月の初日と希望の時刻を指定します。ここでは、日付を 01-Dec-2023、時刻を 07:00:00 Hrs に設定しています。ワークフローの実行頻度を 月間 に設定し、名前を メール Newsletter とします。

  7. [新しいアクションを追加]をクリックし、Deluge Script を選択します。以下のスクリプトをエディタに追加して保存します。
メモ: 以下のDeluge sendMailタスクを使用したコードでは、1 回あたり最大 340 件のアドレスにのみメールを送信できます。340 件を超えるアドレスに対応する場合は、次のスニペットを参照してください。
  1. 以下のスクリプトを使用して、340 件未満のメールアドレスにメールを送信します。
  1. //invokeurlタスクを使用して Creator ページを PDF ファイルとしてダウンロードします。
  2. fileResp = invokeurl
  3. [
  4. url :'https://creatorapp.zohopublic.com/export/<adminUserName>/<appLinkName>/pdf/pageLinkName>/<encryptedKey>?isc5page=true'
  5. 種類 :取得する
  6. ];
  7. //ニュースレターを購読しているすべての顧客のメールアドレスを取得します。
  8. emailList = Customer_Details[Subscribe_to_monthly_newsletter = 真].メール。getAll();
  9. //ダウンロードした PDF ファイルを添付ファイルとして含め、リスト内のすべてのメールアドレスにメールを送信します。
  10. sendmail
  11. [
  12. 差出人 :Zoho。loginuserid
  13. to :emailList
  14. 件名 :'Zylker Corporation Newsletter'
  15. メッセージ :'Zylker Corporation からご挨拶申し上げます。2023 年 11 月号のニュースレターをお届けできることを大変うれしく思います。良い一日をお過ごしください。'
  16. 添付ファイル :file:fileResp
  17. ]

.

  1. メールアドレスが 340 件を超えるメールリストを扱う場合は、以下のコードを使用します。
  1. //invokeurlタスクを使用して Creator ページを PDF ファイルとしてダウンロードします。
  2. fileResp = invokeurl
  3. [
  4. url :'https://creatorapp.zohopublic.com/export/<adminUserName>/<appLinkName>/pdf/<pageLinkName>/<encryptedKey>?isc5page=true'
  5. 種類 :取得する
  6. ];
  7. //ニュースレターを購読しているすべての顧客のメールアドレスを取得します。
  8. emailList = Customer_Details[Subscribe_to_monthly_newsletter = 真].メール。getAll();
  9. batchSize = 340; //各バッチに含めるメールアドレスの数を指定します。
  10. emailBatch = List(); //各バッチのメールアドレスを格納する空のリストです。
  11. index = 0; //追加済みのメールアドレス数を管理するカウンターです。

  12. //メールアドレスのリストを反復処理し、バッチ単位でメールを送信します。
  13. //index が最大バッチサイズに達した場合、340 件のメールアドレスから成るバッチにメールを送信し、すべての変数をリセットします。それ以外の場合は、現在のメールアドレスを emailBatch に追加し、バッチが完了するまで index 変数をインクリメントします。

  14. for each メール in emailList
  15. {
  16. if(index >= batchSize)
  17. {
  18. sendmail
  19. [
  20. 差出人 :Zoho。loginuserid
  21. to :emailBatch
  22. 件名 :'Zylker Corporation Newsletter'
  23. メッセージ :'Zylker Corporation からご挨拶申し上げます。2023 年 11 月号のニュースレターをお届けできることを大変うれしく思います。良い一日をお過ごしください。'
  24. 添付ファイル :file:fileResp
  25. ]
  26. emailBatch = List();
  27. index = 0;
  28. }
  29. emailBatch。追加する(メール);
  30. index = index + 1;
  31. }
  32. //最後のバッチ処理後にメールアドレスが残っている場合は、それらを最終バッチとして送信します。
  33. if (emailBatch。size() > 0)
  34. {
  35. sendmail
  36. [
  37. 差出人 :Zoho。loginuserid
  38. to :emailBatch
  39. 件名 :'Zylker Corporation Newsletter'
  40. メッセージ :'Zylker Corporation からご挨拶申し上げます。2023 年 11 月号のニュースレターをお届けできることを大変うれしく思います。良い一日をお過ごしください。'
  41. 添付ファイル :file:fileResp
  42. ]
  43. }
先行するスクリプト内の変数を、以下の表に示す該当データに置き換えてください。

<adminUserName>

は、アプリケーション所有者のユーザー名です。

<appLinkName>

は、アプリケーションのリンク名です。

<pageLinkName>

は、API を介してダウンロードするページのリンク名です。

<encryptedKey>

は、ページを公開する際に作成される一意のキーです。公開済みページの URL 内に含まれています。例として、次の公開 URL の場合:https://creatorapp.zohopublic.com/zylker/customer-relationship-manager/page-perma/dashboard/HPtR6ZeWSEJW4TwCS2rJOCCg2k1QJZAmrngnbhVECqCWtER8FmDzEdspDwMySSsAMR9gd6PW79jNwa3gp4kjvfez9UJCp4SrmBfU

暗号化キーは次のとおりです: HPtR6ZeWSEJW4TwCS2rJOCCg2k1QJZAmrngnbhVECqCWtER8FmDzEdspDwMySSsAMR9gd6PW79jNwa3gp4kjvfez9UJCp4SrmBfU

 

動作を確認する


  1. ページの公開について
  2. invokeURL
  3. sendMail
  4. スケジュールについて