この文章を使って、Intercomが日付をどのように扱うかを理解しましょう。自分のシステムから日付属性を送信する方法と、Workspacesでの日付の表示方法の両方です。
Intercomで日付を追跡する理由はさまざまです。Intercomはすでに、usersがサインアップした日や初めてウェブサイトで見られた日など、いくつかの日付をデフォルトで追跡しています。Intercomが自動的に追跡するデータの詳細はこちらをご覧ください。
注意:この記事の最初のセクション(日付属性の送信)は、Intercomの設定を行う開発者や技術的なチームメンバー向けです。2番目のセクション(アプリで表示される日付)はすべてのチームメンバーに適用されます。
Intercomにはカスタムuser属性として日付を送信することもできます。例えば、usersが製品のサブスクリプションを開始した日や解約した日を追跡できます。
これらの日付属性をIntercomに送信したら、1週間前に解約したusersにProactive Support Messageを送ったり、新規サブスクライブしたusersにProduct Tourを送ってオンボーディングを支援したりできます。
Intercomでの日付属性の追跡
Intercomでusersに関する日付属性を追跡する方法は2つあります。
1. カスタム属性名が「_at」で終わる場合、自動的に数値ではなく日付として扱います(以下の「last_order_at」を参照)。
window.intercomSettings = {
email: "bob@example.com",
user_id: "123",
app_id: "abc1234",
"last_order_at" : 1350466020, // Send dates in unix timestamp format and end key names with "_at"
}
2. または、Workspacesの設定 > データ > Peopleから日付属性を作成できます。
これらの属性を作成するときは日付形式を選択してください。Intercomにデータを送信するときは、Unixタイムスタンプ(1970年1月1日UTCからの経過秒数を表す整数—秒単位のみ、ミリ秒は不可)かDD/MM/YYYY形式で送信してください。
Messenger経由での属性の更新や作成はセキュリティリスクとなるため、許可しないことを推奨します。詳細はこちら。
Unixタイムスタンプとは何で、なぜ必要なのか?
日付属性は理想的にはUnixタイムスタンプとしてIntercomに送信すべきです。Unixタイムスタンプは1970年1月1日UTCからの経過秒数を表す整数です。例えば、1350466020は2012年10月17日12:27 UTCを示します。すべてのプログラミング言語でこれらのタイムスタンプを計算できます。Intercomは秒単位のタイムスタンプのみ受け入れ、ミリ秒は拒否します。Unixタイムスタンプが生成できない場合は、ISO 8601形式のタイムスタンプ(例:2012-10-17T12:27:00Z)も受け入れます。
UnixタイムスタンプはIntercomでの日付属性の推奨形式で、特定の時刻を示すためタイムゾーン間で変換可能です。正確なタイムスタンプが不明または生成できない場合は、DD/MM/YYYY形式でも送信可能です。これにより、「30日以上前にサインアップ」などのフィルターがProactive Support MessagesやWorkflowsなどで正しく機能しますが、精度はやや劣ります。
Intercomアプリでの日付表示は?
IntercomのUIのほとんどの日付はブラウザのローカルタイムゾーンで表示されるため、異なるタイムゾーンのチームメンバーと表示が異なる場合があります。例えば、あなたにとって5月4日と表示される会話のタイムスタンプが、タイムゾーンが早いチームメンバーには5月3日と表示されることがあります。
例えば、usersが初めて見られた日付は閲覧者のローカルタイムゾーンで表示されます。
または、Inboxのチャネルアイコンにカーソルを合わせたときに表示されるタイムスタンプ:
メッセージのスケジューリングや営業時間の定義などには、あなたのworkspaceのタイムゾーンが別途使用されます。異なるタイムゾーンのチームメンバーが同じユーザーレコードや会話で異なる日付表示を見るのは正常です。ブラウザのタイムゾーンが異なるためです。




