# คอนเนกชัน

คอนเนกชันเชื่อมองค์กรของคุณกับแพลตฟอร์มภายนอก ผู้ให้บริการส่วนใหญ่รับอีเวนต์ Webhook แบบเรียลไทม์จากเกม
LINE คอนเนกชันต่างออกไป — ใช้เผยแพร่สตรีมภายใน LINE ผ่าน LIFF หรือ MINI App

## ประเภทคอนเนกชัน

| ประเภท | ทำอะไร | ผู้ให้บริการ |
| :----- | :----- | :----------- |
| **Webhook อีเวนต์** | ส่งอีเวนต์การเล่นและรางวัลไปยังสแต็กของคุณ | Webhook, Custom, Zapier, Braze, HubSpot, Mailchimp, Salesforce, Segment |
| **การเผยแพร่** | เปิดสตรีมในแอปส่งข้อความ | [LINE (LIFF / MINI App)](/th/connections/line) |

---

## ผู้ให้บริการที่รองรับ

| ผู้ให้บริการ  | คำอธิบาย                                      |
| :------------ | :--------------------------------------------- |
| **Webhook**   | HTTP endpoint ใดก็ได้พร้อมการยืนยันตัวตน (ไม่บังคับ) |
| **Custom**    | Custom API URL พร้อม API Key (ไม่บังคับ)       |
| **Zapier**    | Zapier Webhook (ต้องใช้ HTTPS)                 |
| **Braze**     | แพลตฟอร์มส่งข้อความ Braze — ดู [Braze คอนเนกชัน](/th/connections/braze) |
| **HubSpot**   | HubSpot CRM                                   |
| **Mailchimp** | Mailchimp อีเมลมาร์เก็ตติ้ง                   |
| **Salesforce**| Salesforce CRM                                 |
| **Segment**   | Segment Analytics                              |
| **LINE**      | เผยแพร่สตรีมใน LINE ผ่าน LIFF / MINI App — ดู [LINE คอนเนกชัน](/th/connections/line) |

---

## วิธีการทำงานของ Webhook อีเวนต์

1. **สร้างคอนเนกชัน**ที่ระดับองค์กรพร้อมข้อมูลรับรองของผู้ให้บริการ
2. **เชื่อมต่อคอนเนกชัน**กับสตรีม (แคมเปญ) หนึ่งรายการขึ้นไป
3. **เลือกอีเวนต์ทริกเกอร์**ที่กำหนดว่า Webhook จะทำงานเมื่อไหร่
4. เมื่ออีเวนต์ทริกเกอร์เกิดขึ้น DailyPlay จะส่ง POST request พร้อมข้อมูลอีเวนต์ไปยัง endpoint ของคุณ

:::tip
สำหรับการตั้งค่า LINE และลิงก์ถาวร ดูที่ [LINE คอนเนกชัน](/th/connections/line) LINE ไม่ได้เชื่อมกับอีเวนต์ทริกเกอร์ของสตรีม
:::

---

## อีเวนต์ทริกเกอร์

แต่ละคอนเนกชันของสตรีมสามารถตั้งค่าให้ทำงานเมื่อเกิดอีเวนต์ต่อไปนี้:

| อีเวนต์           | ทำงานเมื่อ                                  |
| :----------------- | :------------------------------------------- |
| `stream_access`    | ผู้เล่นเปิดหน้าสตรีม                        |
| `play_start`       | ผู้เล่นเริ่มเล่นเกม                         |
| `play_complete`    | ผู้เล่นเล่นเกมจบ                            |
| `prize_redemption` | ผู้เล่นรับรางวัลหรือบัตรกำนัล                |

---

## การตั้งค่า Webhook Connection

### 1. สร้างคอนเนกชัน

1. ไปที่**คอนเนกชัน**จากเมนูหลัก
2. คลิก**เพิ่มคอนเนกชัน**
3. เลือกผู้ให้บริการ (เช่น **Webhook**)
4. กรอกข้อมูลรับรองที่จำเป็น:
   - **Webhook / Custom** — Endpoint URL และ authentication header หรือ API Key (ไม่บังคับ)
   - **Zapier** — Webhook URL (ต้องใช้ HTTPS)
   - **ผู้ให้บริการอื่น** — API Key และฟิลด์เฉพาะของผู้ให้บริการ
5. บันทึกคอนเนกชัน

### 2. เชื่อมต่อกับสตรีม

1. เปิดสตรีมที่ต้องการเชื่อมต่อ
2. ไปที่แท็บ**คอนเนกชัน**
3. เลือกคอนเนกชันที่มีจากองค์กร
4. เลือก**อีเวนต์ทริกเกอร์**ที่ต้องการให้ Webhook ทำงาน
5. บันทึก

---

## รูปแบบ Payload

เมื่ออีเวนต์ทริกเกอร์เกิดขึ้น DailyPlay จะส่ง HTTP POST request ไปยัง endpoint ที่ตั้งค่า Payload เป็นรูปแบบ JSON ประกอบด้วยข้อมูลเกี่ยวกับอีเวนต์ เกม และผู้เล่น

### ตัวอย่าง: อีเวนต์ `play_complete`

```json
{
  "event_type": "play_complete",
  "game_id": "163",
  "stream_id": 453,
  "stream_slug": "my-campaign-slug",
  "stream_name": "My Campaign Stream",
  "player_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "session_id": "s9k8j7h6-g5f4-d3c2-b1a0-123456789abc",
  "score": 85,
  "play_duration_seconds": 32,
  "url_params": {
    "user_id": "usr_123",
    "email": "player@example.com",
    "source": "email_campaign"
  },
  "timestamp": "2026-04-09T14:30:00.000Z"
}
```