extension-email

extension-email

支援發送服務/交易性電子郵件。請勿用於發送行銷郵件或驗證郵件。

0星標
0分支
更新於 2026/7/13
SKILL.md
readonlyread-only
name
extension-email
description

支援發送服務/交易性電子郵件。請勿用於發送行銷郵件或驗證郵件。

version
0.1.5

Email — 服務/交易性

Caffeine AI 的服務/交易性電子郵件擴充功能。

概述

此技能新增從後端容器發送服務與交易性電子郵件的支援。使用 sendServiceEmail 來發送訂單確認、通知等一次性郵件。

後端

此元件用於發送服務/交易性電子郵件。

預先建置的模組 mo:caffeineai-email/emailClient.mo 無法修改。

  • 使用 sendServiceEmail 函式。
  • 每位收件者會收到個別郵件。
  • 回傳 SendResult,若郵件成功發送則為 #ok,否則為 #err(error) 並附上錯誤文字。
module {
  public type SendResult = {
    #ok;
    #err : Text;
  };

  public func sendServiceEmail(
    fromUsername : Text,
    recipients : [Text],
    subject : Text,
    htmlBody : Text,
  ) : async SendResult;
};

sendServiceEmail 的使用方式:

import Runtime "mo:core/Runtime";
import EmailClient "mo:caffeineai-email/emailClient";

actor {
  public func sendOrderConfirmationEmail(recipientEmailAddress : Text, username : Text, orderReference : Text) : async () {
    let result = await EmailClient.sendServiceEmail(
      "no-reply",
      [recipientEmailAddress],
      "訂單 " # orderReference # " 已確認",
      "您好 " # username # ",\n您的訂單 " # orderReference # " 已確認。您的商品將於明日出貨。",
    );
    switch (result) {
      case (#ok) {};
      case (#err(error)) {
        Runtime.trap("發送訂單確認郵件失敗:" # error);
      };
    };
  };
};