通知
- 管理員及管理區域
- 8天前
- 16热度
- 0评论
WHMCS 與多種流行嘅團隊通訊應用程序(包括 Slack®同 HipChat™ )整合,令 WHMCS 能夠喺事件發生時即時通知你。
你可以喺設置( < I id=1 > ) % 3E 系統設置% 3E 通知中訪問此功能。
透過設置條件,你可以畀 WHMCS 喺你嘅 Slack 頻道同 HipChat 房間中通知你關注嘅事件。 例如:
- 当支持部門中開啟一張高優先級嘅新工單時,通知我嘅支持頻道或房間。
- 当企業客戶客戶組中嘅客戶開啟新工單或回覆時,通知我嘅企業支持頻道或房間。
- 当開啟一張主題中包含
緊急
字樣嘅新工單時,通知我嘅緊急頻道或房間。 - 当有人下單金額超過 25 美金時,通知我嘅銷售頻道或房間。
- 当高價值客戶群組嘅客戶支付發票時,通知我嘅賬單頻道或房間。
- 當客戶訂購商業主機產品時,通知我的客戶服務頻道或房間。
配置通知供應商#
WHMCS 支持以下通知供應商:
你可以透過創建自定義通知糢塊嚟添加自己嘅通知供應商。
- WHMCS 自帶嘅電郵糢塊並未加密。 你可以複製它作為自定義通知糢塊開發嘅糢闆。
- 更多信息,請參閱我哋嘅開發者文檔 。
創建通知規則#
通知使用規則。 每條規則透過事件和條件嘅組合嚟定義何時觸發通知。
要創建新規則:
- 點擊建立新通知規則 。
- 為您的規則輸入名稱和描述,以便日後輕鬆識別。
- 選擇一個事件類別。
- 在選中事件類別中選擇一個或多個事件嚟觸發通知。 使用
Ctrl+點擊
嚟揀多個事件。您可以使用 WHMCS API 添加自定義事件。 更多信息,請參閱自定義通知事件 。 - 配置你希望用嚟限制系統觸發通知嘅任何條件。 可用條件取決於所選的事件類別。
- 默認情況下,所有條件均為無限制。
- 要套用條件,請為指定條件選擇或提供一個值。
- 對於像主題這類自由文字條件,您可以選擇完全匹配或包含匹配。
- 對於像訂單總額這類貨幣值條件,您可以指定大於或小於匹配。
- 您可以使用
NotificationPreSend
掛鉤點創建自定義條件邏輯。更多信息,請參閱進階通知邏輯 。
- 配置通知供應商。
更多信息,請參閱:
- 設定通知設定。
- 可用的通知設置將取決於您選擇的供應商。 例如,對於 HipChat 同 Slack,你必須選擇一個房間或頻道,然後可以設定所需嘅消息。
- HipChat 仲允許你設定通知是否觸發警報,例如聲音或移動通知。
- 點擊創建 。
通知規則#
通知規則列表包括你 WHMCS 安裝中嘅所有規則。
啟用和禁用通知#
要啟用通知規則,將切換掣設為開啟 ,或設為關閉以停用它。
編輯通知規則#
要編輯通知規則,請點擊該通知規則嘅鉛筆圖標。
複製通知規則#
要複製通知規則,請點擊複製圖標。 自定義顯示嘅配置,然後點擊複製 。
刪除通知規則#
要刪除通知規則,請點擊垃圾桶圖標,然後確認刪除。
高級通知邏輯#
你可以使用 NotificationPreSend
掛鉤點進一步自定義通知條件。 NotificationPreSend
掛鈎點會喺系統發送通知前執行,畀你能夠應用額外嘅條件準則並控通知訊息。
您亦可以使用此掛鉤點來阻止發送使用您邏輯嘅通知。
例如,以下掛鈎代碼會阻止 WHMCS 發送發票 ID 大於 1000
嘅通知:
<?php
add_hook('NotificationPreSend', 1, function($vars) {
$eventType = $vars['eventType']; // e.g. "Ticket", "Invoice", "Order", "Service" or "Domain"
$eventName = $vars['eventName'];
$rule = $vars['rule'];
$hookParameters = $vars['hookParameters'];
$notification = $vars['notification'];
// Perform additional conditional logic and throw the AbortNotification
// exception to prevent the notification from sending.
if ($eventType == 'Invoice'
&& $eventName == 'created'
&& (isset($hookParameters['invoiceid'])
&& $hookParameters['invoiceid'] > 1000)
) {
throw new \WHMCS\Notification\Exception\AbortNotification();
}
// If allowing the notification to continue, you can manipulate the
// notification using the \WHMCS\Notification\Notification object.
$notification->setTitle('Override notification title');
$notification->setMessage('Override notification message body');
});
為阻止通知,系統會返回一個 \WHMCS\Notification\Exception\AbortNotification();
異常。
如果 ID 低於 1000
,系統將繼續發送通知,但會覆蓋標題和信息。
要覆蓋值,請使用 $notification
中嘅 set
函數。
自定義通知事件#
你可以使用 TriggerNotificationEvent
WHMCS API 功能嚟建立自定義通知事件。 這讓您能夠擴展已有的事件列表,當您在設置()> 系統設置 > 通知中設置通知規則時可供選擇。
創建自定義事件#
要建立自定義事件,請喺你嘅自定義代碼中調用 TriggerNotificationEvent
API 功能。
例如,以下代碼建立一個使用 AdminLogin
掛鈎嘅事件,每當管理員登錄管理區域時觸發通知:
<?php
add_hook('AdminLogin', 1, function($vars) {
$command = 'TriggerNotificationEvent';
$postData = array(
'notification_identifier' => 'adminarea.staff.login', // A unique identifier used when referencing the notification rule.
'title' => 'A Staff Member Just Logged In',
'message' => $vars['username'] . ' just logged in to the WHMCS Admin Area.',
'url' => 'https://whmcs.example.test/admin/',
'status' => 'Success',
'statusStyle' => 'info',
);
$adminUsername = 'ADMIN_USERNAME'; // Optional
$results = localAPI($command, $postData, $adminUsername);
print_r($results);
});
請確保你包含一個獨特嘅 notification_identifier
值。 當您為此事件設定通知規則時,將會使用此標識符。
使用自定義事件#
創建自定義代碼後,您仍需使用事件創建通知規則。
作步驟如下:
- 前往設置( < I id=1 > ) % 3E 系統設置% 3E 通知 。
- 點擊創建新通知規則 。
- 為您的規則輸入名稱和描述,以便日後輕鬆識別。
- 選擇 API 作為事件類別。
- 選擇自定義 API 觸發作為事件。
- 在觸發標識符中,輸入您在自定義代碼中指定的通知標識符。 喺上面嘅例子中,係
adminarea.staff.login
。 - 選擇完全匹配 。
- 配置通知提供者。
更多信息,請參閱:
- 配置通知設定。
如需更多信息,請參閱通知 。
- 點擊建立 。
每當您在自定義代碼中觸發 API 呼叫時,系統將會發送已配置的通知。