发送客户电子邮件通知。
以下电子邮件模板不能以这种方式发送:
- 订单确认
- 密码重置确认
- 密码重置验证
- 接受引号
- 引号接受通知
- 使用 PDF 引号交付
- 仅限客户退回消息
- 仅回复退回邮件
- 会员月度推荐报告
您必须为相关 ID 提供的内容取决于发送的电子邮件类型。可用的选项有:
- 常规电子邮件类型 = 客户 ID (tblclients.id)
- 产品电子邮件类型 = 服务 ID (tblhosting.id)
- 域电子邮件类型 = 域 ID (tbldomains.id)
- 发票电子邮件类型 = 发票 ID (tblinvoices.id)
- 支持电子邮件类型 = 票证 ID (tbltickets.id)
- 附属电子邮件类型 = 附属 ID (tblaffiliates.id)
发送失败
通用的 Sending Failed 错误响应可能由五种可能的情况之一引起。他们是:
- 相关 ID 无效
- 电子邮件模板在处理后不包含正文内容(通常是 Smarty 错误)
- 为未设置的产品请求的欢迎电子邮件
- Hook 中止了发送
- PHPMailer 发送错误 - 在这种失败情况下,将创建一个活动日志条目,记录发生的错误消息
请求参数
参数 | 类型 | 说明 | 必需的 |
---|---|---|---|
action | string | “SendEmail” | Required |
messagename | string | 要发送的客户端电子邮件模板的名称 | Optional |
id | int | 电子邮件模板类型的相关 ID。例如,这应该是一般类型电子邮件的客户端 ID | Optional |
customtype | string | 要发送的自定义电子邮件模板的类型 (‘general’, ‘product’, ‘domain’, ‘invoice’, ‘support’, ‘affiliate’) | Optional |
custommessage | string | 为自定义电子邮件发送的 HTML 消息正文 | Optional |
customsubject | string | 发送自定义电子邮件的主题 | Optional |
customvars | array | 要提供给电子邮件模板的自定义变量。可用于现有和自定义电子邮件。 | Optional |
响应参数
参数 | 类型 | 说明 |
---|---|---|
result | string | 操作结果:成功或错误 |
示例请求 (CURL)
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.example.com/includes/api.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
http_build_query(
array(
'action' => 'SendEmail',
// See https://developers.whmcs.com/api/authentication
'username' => 'IDENTIFIER_OR_ADMIN_USERNAME',
'password' => 'SECRET_OR_HASHED_PASSWORD',
'//example1' => 'example',
'messagename' => 'Client Signup Email',
'id' => '1',
'//example2' => 'example',
'customtype' => 'product',
'customsubject' => 'Product Welcome Email',
'custommessage' => '<p>Thank you for choosing us</p><p>Your custom is appreciated</p><p>{$custommerge}<br />{$custommerge2}</p>',
'customvars' => base64_encode(serialize(array("custommerge"=>$populatedvar1, "custommerge2"=>$populatedvar2))),
'responsetype' => 'json',
)
)
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
示例请求(本地 API)
$command = 'SendEmail';
$postData = array(
'//example1' => 'example',
'messagename' => 'Client Signup Email',
'id' => '1',
'//example2' => 'example',
'customtype' => 'product',
'customsubject' => 'Product Welcome Email',
'custommessage' => '<p>Thank you for choosing us</p><p>Your custom is appreciated</p><p>{$custommerge}<br />{$custommerge2}</p>',
'customvars' => base64_encode(serialize(array("custommerge"=>$populatedvar1, "custommerge2"=>$populatedvar2))),
);
$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later
$results = localAPI($command, $postData, $adminUsername);
print_r($results);
示例响应 JSON
{
"result": "success"
}
错误响应
可能的错误条件响应包括:
- 您必须提供现有的电子邮件模板名称或自定义消息类型
- 提供的消息类型无效
- 自定义消息需要主题
- 自定义消息需要消息正文
- 您提供的自定义变量无效。
- 需要相关身份证件
- 未找到电子邮件模板
- 电子邮件模板已禁用
- 发送失败。请参阅文档。
相关用法
- PHP WHMCS SendAdminEmail用法及代码示例
- PHP WHMCS SendQuote用法及代码示例
- PHP WHMCS ServerDelete用法及代码示例
- PHP WHMCS ServiceDelete用法及代码示例
- PHP WHMCS SetConfigurationValue用法及代码示例
- PHP WHMCS ServerEdit用法及代码示例
- PHP WHMCS ServiceRecurringCompleted用法及代码示例
- PHP WHMCS ServiceEdit用法及代码示例
- PHP WHMCS ServerAdd用法及代码示例
- PHP String wordwrap()用法及代码示例
- PHP SimpleXMLElement children()用法及代码示例
- PHP SplPriorityQueue isCorrupted()用法及代码示例
- PHP SplObjectStorage key()用法及代码示例
- PHP SplHeap extract()用法及代码示例
- PHP String sprintf()用法及代码示例
- PHP SplPriorityQueue insert()用法及代码示例
- PHP SplFixedArray key()用法及代码示例
- PHP String ucwords()用法及代码示例
- PHP SplFileInfo getRealPath()用法及代码示例
- PHP SplObjectStorage rewind()用法及代码示例
- PHP SplFileInfo getPerms()用法及代码示例
- PHP SplHeap top()用法及代码示例
- PHP SplFileInfo getExtension()用法及代码示例
- PHP String substr()用法及代码示例
- PHP WHMCS SubmitTicketAnswerSuggestions用法及代码示例
注:本文由纯净天空筛选整理自whmcs.com大神的英文原创作品 SendEmail。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。