เอกสารประกอบ

คุณสมบัติของผู้ติดต่อ (Contact Properties)

กำหนดฟิลด์ที่กำหนดเองสำหรับผู้ติดต่อ — เช่น ประเภทบัญชี ภูมิภาค หรือระดับสัญญา — แล้วส่งผ่านวิดเจ็ตได้ คุณสมบัติจะแสดงบนโปรไฟล์ของผู้ติดต่อ เจ้าหน้าที่แก้ไขได้ และใช้กรองในกล่องข้อความได้

ภาพรวม#

คุณสมบัติของผู้ติดต่อช่วยให้คุณแนบข้อมูลที่มีโครงสร้างเข้ากับบทสนทนา นอกเหนือจากฟิลด์ที่มีมาให้ (email, name, userId) ต่างจาก metadata ที่เป็นรูปแบบอิสระ คุณสมบัติจะมี schema ที่กำหนดไว้พร้อมชนิดข้อมูล ป้ายกำกับ และการตรวจสอบความถูกต้อง — คล้ายกับฟิลด์ที่กำหนดเองใน HubSpot หรือ Salesforce

กำหนด Schema

สร้างนิยามคุณสมบัติใน Agent Settings ด้วยชนิดข้อมูล เช่น string, number, enum, boolean, date, url

ส่งจาก Widget

ส่งค่าคุณสมบัติผ่าน Respondo.identify() — ค่าจะถูกจัดเก็บและแสดงผลโดยอัตโนมัติ

กรอง & แก้ไข

กรองบทสนทนาตามค่าคุณสมบัติในกล่องข้อความได้ เจ้าหน้าที่สามารถดูและแก้ไขแอตทริบิวต์ของผู้ติดต่อได้บนโปรไฟล์ผู้ติดต่อ

การกำหนดคุณสมบัติ#

คุณสมบัติถูกกำหนดต่อเอเจนต์ใน Agent Settings → Contact Propertiesแต่ละคุณสมบัติมี:

ฟิลด์คำอธิบาย
keyตัวระบุที่ไม่ซ้ำกันที่ใช้ในโค้ด สร้างอัตโนมัติจากป้ายกำกับ (แก้ไขได้) ตัวพิมพ์เล็ก ตัวเลข และขีดล่าง; ต้องขึ้นต้นด้วยตัวอักษร; ยาว 2-63 อักขระ คีย์ของระบบ (user_id, visitor_id, timezone, page_url, …) ถูกสงวนไว้ ตัวอย่าง: account_type
labelชื่อที่มนุษย์อ่านได้ซึ่งแสดงในแดชบอร์ด ตัวอย่าง: "Account Type"
typeชนิดของค่า: string, number, boolean, enum, date, url
enum_valuesสำหรับชนิด enum — รายการค่าที่อนุญาต ตัวอย่าง: ["starter", "pro", "enterprise"]
is_filterableสงวนไว้สำหรับการควบคุมตัวกรองในอนาคต; ถูกจัดเก็บไว้กับนิยาม แต่ตัวเลือกตัวกรองของกล่องข้อความปัจจุบันแสดงคุณสมบัติที่กำหนดไว้ทั้งหมด (ค่าเริ่มต้น: true)
is_visibleสงวนไว้สำหรับการควบคุมการแสดงผลในอนาคต; ถูกจัดเก็บไว้กับนิยามแต่ยังไม่ถูก บังคับใช้ใน UI (ค่าเริ่มต้น: true)
สูงสุด 50 คุณสมบัติต่อเอเจนต์ สามารถจัดลำดับคุณสมบัติใหม่ได้ด้วยการลากและวางใน UI ของการตั้งค่า

การส่งจากวิดเจ็ต#

ส่งค่าคุณสมบัติในฟิลด์ properties ของ Respondo.identify()key ต้องตรงกับนิยามคุณสมบัติจาก Agent Settings

การผสานรวมกับวิดเจ็ตjavascript
Respondo.identify({
  email: 'user@example.com',
  name: 'Jane Smith',
  userId: 'usr_456',
  properties: {
    account_type: 'enterprise',   // enum
    region: 'eu-west',            // string
    monthly_spend: '15000',       // number (ส่งเป็น string)
    is_partner: 'true',           // boolean (ส่งเป็น string)
    contract_end: '2026-12-31',   // date
    dashboard_url: 'https://app.example.com/org/123'  // url
  }
});
ค่าคุณสมบัติทั้งหมดถูกส่งเป็น string แดชบอร์ดจะจัดการการแสดงผลตามชนิด (เช่น boolean → Yes/No, url → ลิงก์ที่คลิกได้, enum → badge)

สนิปเพ็ตการผสานรวม#

Integration Snippet จะปรากฏโดยอัตโนมัติใต้ Agent Settings → Contact Properties เมื่อคุณกำหนดคุณสมบัติไว้อย่างน้อยหนึ่งรายการ โดยกรอก key คุณสมบัติทั้งหมดของคุณไว้ล่วงหน้าแล้ว คลิก Copy เพื่อคัดลอกและวางลงในแอปพลิเคชันของคุณ สไนปเป็ตที่สร้างขึ้นยังมี placeholder userHash สำหรับการยืนยันตัวตน (HMAC-SHA256) ด้วย

ค่าถูกจัดเก็บอย่างไร#

ค่าคุณสมบัติถูกจัดเก็บในฟิลด์ JSONB metadataของบทสนทนา โดยมีคำนำหน้า cp_ ตัวอย่างเช่น คุณสมบัติที่มี key account_type จะถูกจัดเก็บเป็น cp_account_type

คุณสมบัติจะถูกอัปเดตในทุกข้อความ — หากวิดเจ็ตส่งค่าใหม่มา ค่าเหล่านั้นจะเขียนทับค่าเดิม หมายความว่าค่าคุณสมบัติจะสะท้อนข้อมูลล่าสุดจากแอปพลิเคชันของคุณเสมอ

การกรองในกล่องข้อความ#

กรองบทสนทนาตามค่าคุณสมบัติโดยใช้แถบตัวกรองของกล่องข้อความหรือมุมมองที่บันทึกไว้ (View) เพิ่มเงื่อนไข Property เลือกคุณสมบัติตามชื่อ — ตัวเลือกจะแสดงทุกนิยามจากเอเจนต์ทั้งหมดของคุณ และยังรับ key ดิบที่ไม่มีนิยามด้วย — แล้วเลือกค่า ช่องค่าจะแนะนำค่าที่เคยพบและค่า enum ขณะที่คุณพิมพ์

ผ่าน API, endpoint รายการบทสนทนารับพารามิเตอร์คิวรี cp.<key>=<value> (alias ที่เทียบเท่ากับ attr.<key> ทุกประการ) ไม่มีไวยากรณ์คิวรีข้อความอิสระ:

GET /api/v1/conversations?cp.account_type=enterprise

การแก้ไขค่า#

ค่าคุณสมบัติถูกกำหนดโดยแอปพลิเคชันของคุณ — ผ่านการผสานรวมวิดเจ็ตหรือ API — และเป็นแบบอ่านอย่างเดียวในแผงรายละเอียดบทสนทนา แผงนี้ลิงก์ไปยังโปรไฟล์ของผู้ติดต่อ ที่ซึ่งเจ้าหน้าที่สามารถดูและแก้ไขแอตทริบิวต์ของผู้ติดต่อได้ (Contacts → ผู้ติดต่อ → Attributes)

Properties เทียบกับ Metadata

คุณลักษณะpropertiesmetadata
Schemaกำหนดใน Agent Settings พร้อมชนิดข้อมูลคู่ key-value แบบอิสระ
กรองได้ได้ ผ่านแถบตัวกรอง / มุมมองที่บันทึกไว้ (API: พารามิเตอร์ cp.<key>)ไม่ได้
เจ้าหน้าที่แก้ไขได้ไม่ได้ — ค่ามาจากแอปพลิเคชันของคุณ; แอตทริบิวต์ของผู้ติดต่อแก้ไขได้บนโปรไฟล์ผู้ติดต่อไม่ได้
แสดงผลตามชนิดได้ (badge, ลิงก์, วันที่, boolean)ข้อความธรรมดาเท่านั้น
เติมคำอัตโนมัติได้ แนะนำค่าในช่องค่าของตัวกรองไม่ได้
ใช้ metadata สำหรับฟิลด์เฉพาะกิจที่ไม่ต้องการการกรอง หรือการแสดงผลตามชนิด ใช้ propertiesสำหรับข้อมูลที่มีโครงสร้างที่ทีมของคุณจะใช้งานอย่างจริงจังในการแบ่งกลุ่มและเวิร์กโฟลว์