JSON形式

トリガは以下の属性を含むJSONオブジェクトとして表されます。

名前  データ型 読み取り専用  説明
name 文字列 なし ユーザーの名前
enabled 整数 なし トリガが有効かどうか
description 文字列 なし トリガの説明
definition オブジェクト なし トリガの定義詳細については、次の「トリガの定義」を参照してください。

トリガの定義

メモ:「トリガの更新」で定義を編集することはできません。

各トリガの詳細については、「トリガ条件とアクションのリファレンス」を参照してください。

トリガは単純にJSONを使って定義されます。各トリガは次の3つのキーを含むJSONオブジェクトです。

トリガ定義キー 説明
イベント (JSON文字列)このトリガがアクティブになるイベントのタイプ。イベントのリストについては、「トリガイベント」を参照してください。
条件 (JSONリスト)このトリガがアクションを実行するために満たさなければならない条件。詳しくは、「条件タイプ」を参照してください。
アクション アクション(JSON List)条件が満たされたときに実行されるアクションのリスト。詳しくは、「トリガアクション」を参照してください。

トリガイベント

以下のイベントを使用できます。

トリガイベント 説明
page_enter 訪問者がチャットウィジェットを読み込んだときに発生するイベント。
chat_requested 訪問者がチャットをリクエストしたときに発生するイベント。
chat_message 訪問者がチャットメッセージを送信したときに発生するイベント。

条件イベント

以下のイベントを使用できます。

条件タイプ 説明
or いずれかの条件が満たされていることをチェック
and すべての条件が満たされていることをチェック

条件変数演算子

条件変数には以下の演算子を使用できます。別の変数には演算子を使用できない場合があります。

演算子 説明
eq 等しい
neq 等しくない
lt より小さい
gt より大きい
lte 次より小さいか等しい
gte 次より大きいか等しい
icontains 次を含む
nicontains 次を含まない
contains 次を含む(大文字と小文字を区別)
ncontains 次を含まない(大文字と小文字を区別)
regex 正規表現一致(大文字と小文字を区別)
iregex 正規表現

条件変数

以下の変数を使用できます。

時間と日付の変数

タイプ 説明
@hour_of_day 時間(UTCタイムゾーン)0~23
@day_of_week 曜日。0 = 月曜日、6 = 日曜日
@visitor_time_on_page 訪問者が現在のページを閲覧していた秒数
@visitor_time_on_site 訪問者があなたのサイトを閲覧していた秒数
stillOnSite 次の状態を確認するまでの遅延(秒単位)
stillOnPage 次の状態を確認するまでの遅延(秒単位)

訪問者の場所

タイプ 説明
@visitor_ip 訪問者のIPアドレス(xxx.xxx.xxx.xxx)
@visitor_hostname 訪問者のIPアドレスのホスト名
@visitor_city 訪問者の在住都市
@visitor_region 訪問者の在住地域
@visitor_country_code 訪問者の2文字の国コード
@visitor_country_name 訪問者の在住国

前の訪問情報

タイプ 説明
@visitor_previous_visits 訪問者がこれまでアクセスした回数。新規アクセス = 0
@visitor_previous_chats 訪問者がこれまでエージェントとチャットした回数。新規チャット = 0

ページ情報

タイプ 説明
@visitor_page_url 訪問者が現在閲覧中のページのURL
@visitor_page_title 訪問者が現在閲覧中のページのタイトル
@visitor_page_count 訪問者が閲覧したページ数。最初のページ = 1
@referrer 訪問者が前回アクセスしていたページのURL

訪問者情報

タイプ 説明
@visitor_name 訪問者の名前
@visitor_email 訪問者のメールアドレス
@visitor_referrer 訪問者のリファラURL(訪問者があなたのサイトにアクセスしたときの)
@visitor_search_engine リファラの参照検索エンジン(該当する場合)
@visitor_search_terms 参照検索語(該当する場合)
@visitor_tags タグの名前 (「タグを設定」操作で設定)
@visitor_triggered 訪問者がトリガされた場合、'true' (「トリガ済みに設定」操作で設定)
@visitor_department_id 訪問者の部門(「訪問者の部門を設定」またはJavascript APIで設定)

訪問者のソフトウェア/コンピュータ

タイプ 説明
@visitor_user_agent 訪問者のブラウザのユーザーエージェント文字列
@visitor_browser 訪問者のブラウザ
@visitor_platform 訪問者のオペレーティングシステム/プラットフォーム

オンラインステータス

タイプ 説明
@account_status アカウントのステータス(オンライン/離席中/オフライン)
@visitor_status 訪問者のステータス(オンライン/アイドル/オフライン)

チャット関連情報

タイプ 説明
@visitor_requesting_chat 'true'(訪問者がチャットをリクエストしている場合)
@visitor_served 'true'(訪問者が現在エージェントにより応対されている場合)
@department 訪問者がこのチャットリクエストフォームで選択する部門(名)
@visitor_served 'true'(訪問者が現在エージェントにより応対されている場合)
@sender このメッセージの送信者の名前
@sender_type 「agent」または「visitor」
@message 送信中のメッセージ

 

トリガの操作

アクション パラメータ 説明
sendMessageToVisitor エージェントの名前とメッセージ(文字列) 訪問者にメッセージを送信します
setTriggered True/false(ブール値) 訪問者に「トリガ済み」のフラグを設定します
wait 期間(秒単位)(数値) 指定された秒数だけ待機し、訪問者がまだオンラインの場合はリスト内の次のアクションを実行します
addTag タグ名(文字列) 訪問者にタグ(ダッシュボードの訪問者リストに表示)を追加します。
removeTag タグ名(文字列) 訪問者のセッションからタグを削除します
banVisitor 理由(文字列) 理由のある訪問者を禁止します
banIp 理由(文字列) 理由のある訪問者のIPアドレスを禁止します
setName 訪問者名(文字列) 訪問者の名前を設定します
setDepartment 部署ID(番号) 訪問者の現在の部署を設定します
setNote メモ(文字列) 訪問者のためのメモ(ダッシュボードに永続的に表示)を設定します
appendNote メモ(文字列) 訪問者の現在のメモの最後にメモを追加します

すべてのトリガを取得

GET /api/v2/triggers

アカウントのすべてのトリガを一覧表示します。
許可されるロール:

Owner
Administrator

cURLを使用する

curl https://www.zopim.com/api/v2/triggers \
-v -u {email_address}:{password}

応答の例

HTTP/1.1 200 OK
Content-Type: application/json

[
{
"name" :"Good Trigger",
"enabled" :1,
"description" :"Visitor entered page"
},
{
"name" :"Better Trigger",
"enabled" :1,
"description" :"Visitor requested chat"
}
]

トリガを取得

GET /api/v2/triggers/{trigger_name}

アカウントオーナーや管理者に名前でトリガを取得することを許可します。
許可されるロール:

Owner
Administrator

cURLを使用する

curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-v -u {email_address}:{password}

応答の例

HTTP/1.1 200 OK
Content-Type: application/json

{
"name" :"Good Trigger",
"enabled" :1,
"description" :"Visitor requested chat",
}

トリガを作成

POST /api/v2/triggers

アカウントオーナーや管理者にトリガをアカウントに追加することを許可します。
許可されるロール:

Owner
Administrator

cURLを使用する

curl https://www.zopim.com/api/v2/triggers \
-d '{
"name" :"Good Trigger",
"enabled" :1,
"description" :"Visitor requested chat"
}' \
-v -u {email_address}:{password} \
-X POST -H "Content-Type: application/json"

応答の例

HTTP/1.1 201 Created
Content-Type: application/json

{
"name" :"Good Trigger",
"enabled" :1,
"description" :"Visitor requested chat",
}

特定のページ/ディレクトリをメッセージの送信先にします

自動メッセージを特定のURLまたはディレクトリに送信します

curl https://www.zopim.com/api/v2/triggers \
-d '{
"name" :"Stripe Shoe",
"enabled" :1,
"description" :"Send discount code for Stripe Shoe",
"definition" :{
"event" :"page_enter",
"condition" :[
"and",
[
"icontains",
"@visitor_page_url",
"stripshoe"
],
[
"stillOnPage",
20
]
],
"actions" :[
[
"sendMessageToVisitor",
"Timmy",
"We have a discount code for you!Use DISCOUNT10 on your next checkout"
]
]
}
}' \
-v -u {email_address}:{password} \
-X POST -H "Content-Type: application/json"

トリガの詳細設定については、アカウントのトリガページにアクセスしてください
トリガの更新

PUT /api/v2/triggers/{trigger_name}

アカウントオーナーや管理者がトリガのデータを更新することを許可します。
Allowed for

Owner
Administrator

cURLを使用する

curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-d '{
"name" :"Best Trigger",
"description" :"Visitor requested new chat"
}' \
-v -u {email_address}:{password} \
-X PUT -H "Content-Type: application/json"

応答の例

HTTP/1.1 200 OK
Content-Type: application/json

{
"name" :"Best Trigger",
"enabled" :1,
"description" :"Visitor requested new chat",
}

トリガを削除

DELETE /api/v2/triggers/{trigger_name}

アカウントオーナーや管理者にトリガを削除することを許可します。
許可されるロール:

Owner
Administrator

cURLを使用する

curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-v -u {email_address}:{password} -X DELETE

応答の例

HTTP/1.1 204 OK
Content-Type: application/json

Powered by Zendesk