# การผสานรวม Piano Analytics

<Aside type="caution" icon="setting" title="ต้องการความช่วยเหลือจากนักพัฒนา">
 คุณจะต้องได้รับความช่วยเหลือจากทีมพัฒนาของคุณเพื่อตั้งค่าการผสานรวม โปรดแชร์คู่มือนี้กับพวกเขา
</Aside>

[Piano Analytics](https://piano.io/product/analytics/) เป็นเครื่องมือที่ช่วยให้ธุรกิจเข้าใจว่าผู้คนมีปฏิสัมพันธ์กับเว็บไซต์และแอปของตนอย่างไร โดยจะรวบรวมข้อมูลเกี่ยวกับพฤติกรรมของผู้ใช้และให้ข้อมูลเชิงลึกผ่านรายงานและการแสดงภาพข้อมูล ข้อมูลนี้ช่วยให้ธุรกิจตัดสินใจได้ดีขึ้นเกี่ยวกับวิธีการปรับปรุงผลิตภัณฑ์ดิจิทัลและความพยายามทางการตลาดของตน

การผสานรวม [Piano Analytics](https://piano.io/product/analytics/) และ Pushwoosh ช่วยให้ได้ข้อมูลเชิงลึกเกี่ยวกับพฤติกรรมของผู้ใช้โดยละเอียด เพื่อสร้างเซกเมนต์ที่แม่นยำและส่งการแจ้งเตือนแบบพุช อีเมล และข้อความในแอปที่ตรงเป้าหมายไปยังผู้ใช้ที่เหมาะสมในเวลาที่เหมาะสม

## ภาพรวมการผสานรวม

### ประเภทการผสานรวม

*   **ปลายทาง (Destination)**: ข้อมูลถูกส่งจาก Piano Analytics ไปยัง Pushwoosh
*   **ต้นทาง (Source)**: ข้อมูลถูกส่งจาก Pushwoosh ไปยัง Piano Analytics

### ข้อกำหนดเบื้องต้น

บัญชีแบบชำระเงินทั้งใน Pushwoosh และ Piano Analytics

### อภิธานศัพท์ (การจับคู่ชื่อเอนทิตีหากแตกต่างกัน)

เมื่อผสานรวม Pushwoosh และ Piano Analytics ชื่อเอนทิตีบางชื่ออาจแตกต่างกันระหว่างสองแพลตฟอร์ม นี่คือการจับคู่ระหว่าง Pushwoosh และ Piano Analytics:

| Pushwoosh | Piano Analytics |
| --- | --- |
| UserID/hwid | visitorID |
| PostEvent.EventName | PianoEvent.Name |
| PostEvent.UserID | PianoEvent.PushwooshID |
| PostEvent.CampaignID | PianoEvent.SrcMedium |
| PostEvent.PlatformID | PianoEvent.DeviceType |

### เอนทิตีที่ซิงโครไนซ์

**ต้นทาง (Source)**

*   Events
*   สถิติ Push
*   Tags (เป็นแอตทริบิวต์ของ event)

**ปลายทาง (Destination)**

*   Segments

### กรณีการใช้งาน

**การวิเคราะห์แบบครบวงจร**

รวมข้อมูลการมีส่วนร่วมของ Pushwoosh กับ Piano Analytics เพื่อข้อมูลเชิงลึกของผู้ใช้ที่ครอบคลุม ซึ่งช่วยให้คุณเห็นภาพรวมของพฤติกรรมและการโต้ตอบของผู้ใช้ในทุกจุดสัมผัส

**การแบ่งเซกเมนต์**

สร้างเซกเมนต์ผู้ใช้ที่ตรงเป้าหมายใน Pushwoosh โดยใช้ข้อมูลจาก Piano Analytics ใช้การแบ่งเซกเมนต์ที่ปรับปรุงแล้วนี้เพื่อส่งมอบแคมเปญการตลาดที่เป็นส่วนตัวและมีประสิทธิภาพ

**การตรวจสอบประสิทธิภาพ**

ติดตามประสิทธิภาพของแคมเปญและการโต้ตอบของผู้ใช้ข้ามแพลตฟอร์ม

### การผสานรวมทำงานอย่างไร?

##### ภาพรวมขั้นตอนการทำงาน

1.  **การตั้งค่า**: กำหนดการตั้งค่าการผสานรวมทั้งในบัญชี Pushwoosh และ Piano Analytics
2.  **การจับคู่ Event**: จับคู่ events ของ Pushwoosh กับ events ของ Piano (เช่น PostEvent.EventName กับ PianoEvent.Name)
3.  **การถ่ายโอนข้อมูล**: Pushwoosh ส่ง events (Post Events และ Tracking Log Events) ไปยัง Piano Analytics
4.  **การนำเข้าเซกเมนต์**: Piano Analytics ส่งข้อมูลเซกเมนต์ไปยัง Pushwoosh สำหรับการแบ่งกลุ่มเป้าหมาย

##### ขั้นตอนทางเทคนิค

1.  **Post Events**
    *   Pushwoosh ส่งข้อมูล event ไปยัง Piano Analytics
    *   แอตทริบิวต์จะถูกจับคู่ดังนี้:
        *   UserID (Pushwoosh) > PushwooshID (Piano)
        *   CampaignID (Pushwoosh) > SrcMedium (Piano)
        *   PlatformID (Pushwoosh) > DeviceType (Piano)
2.  **Tracking Log Events**:
    *   Pushwoosh ส่งข้อมูลการติดตาม (เช่น Push Sent, Push Delivered) ไปยัง Piano Analytics
    *   ข้อมูลนี้จะช่วยเพิ่มข้อมูลใน Piano Analytics ด้วยเมตริกการส่งมอบและการมีส่วนร่วม
3.  **การผสานรวม Piano VisitorID**:
    *   สามารถเลือกผสานรวม Piano VisitorID กับ Pushwoosh เพื่อการวิเคราะห์แบบครบวงจรข้าม SDK ได้


## การตั้งค่าการผสานรวม

เพื่อตั้งค่าการผสานรวม ไปที่ **Settings > 3rd Party Integrations** ในบัญชี Pushwoosh ของคุณและค้นหา **Piano** คลิก **Configure**

<img src="/integrations-piano-analytics-integration-1.webp" alt="การตั้งค่าการผสานรวม Piano ใน Pushwoosh"/>

ในหน้าต่างที่เปิดขึ้น ให้ระบุข้อมูลรับรองต่อไปนี้:

1. Site ID

เพื่อค้นหา Site ID ของคุณ ให้ลงชื่อเข้าใช้บัญชี Piano ของคุณและไปที่ **Analytics > Data Collection Portal > Dashboard** ค้นหาเว็บไซต์ที่เกี่ยวข้องและคัดลอก ID ของมัน

<img src="/integrations-piano-analytics-integration-2.webp" alt="การค้นหา Site ID ใน Piano Analytics"/>

2. Collection Domain

เพื่อค้นหา Collection Domain ให้ไปที่ **Tagging > Collection Domains** คัดลอก Collection Domain ID ตรวจสอบให้แน่ใจว่าได้ป้อน collection domain ในรูปแบบ **\*\*\*\*.pa-cd.com** โดยไม่มีคำนำหน้า **https://**

<img src="/integrations-piano-analytics-integration-3.webp" alt="การตั้งค่า Collection Domain ใน Piano"/>

3. Piano API Access และ Secret keys

เพื่อรับคีย์:

*   ในบัญชี Piano ของคุณ คลิกที่ **See profile** ใต้ชื่อบัญชีของคุณ

<img src="/integrations-piano-analytics-integration-4.webp" alt="เมนูโปรไฟล์บัญชีใน Piano"/>

*   ไปที่แท็บ **API Keys** และสร้างคีย์ใหม่พร้อมชื่อและคำอธิบายที่ชัดเจน จากนั้นคลิก **OK**

<img src="/integrations-piano-analytics-integration-5.webp" alt="การสร้าง API key ในบัญชี Piano"/>

*   ในหน้าต่างที่เปิดขึ้น ให้คัดลอก **Access Key** และ **Secret Key** ของคุณ

<Aside type="caution">
เพื่อความปลอดภัย **Secret Key** จะแสดงเพียงครั้งเดียวเท่านั้น โปรดตรวจสอบให้แน่ใจว่าคุณได้บันทึกคีย์ทั้งสองไว้ในที่ปลอดภัยก่อนดำเนินการต่อ
</Aside>

<img src="/integrations-piano-analytics-integration-6.webp" alt="การคัดลอก API keys จากบัญชี Piano"/>

*   ในช่อง **API key** ใน Pushwoosh ให้ป้อนทั้ง **Access Key** และ **Secret Key** โดยคั่นด้วยเครื่องหมายขีดล่าง ตัวอย่างเช่น: **accesskey_secretkey**

<img src="/integrations-piano-analytics-integration-7.webp" alt="การป้อน API keys ในการผสานรวม Pushwoosh"/>

### การสร้าง events ของ Piano ให้ตรงกับ events ของ Pushwoosh

เพื่อติดตาม events ที่ส่งจาก Pushwoosh ใน Piano คุณต้องสร้าง events ที่สอดคล้องกันด้วยตนเองภายใน Piano

นี่คือวิธีการทำในบัญชี Piano ของคุณ:

1.  ไปที่ **Settings > Data management > Data model**
2.  เลือก **Events** และคลิกไอคอนบวกเพื่อสร้าง event ใหม่
3.  ในหน้าต่างที่เปิดขึ้น ให้ระบุชื่อและคำอธิบายของ event ตัวอย่างเช่น _**"pw\_siteopened"**_

<Aside type="note">
การตั้งชื่อ events ไม่คำนึงถึงตัวพิมพ์ใหญ่-เล็ก หากคุณสร้างชื่อตัวพิมพ์ใหญ่สำหรับ event ใน Pushwoosh เช่น _PW_SiteOpened_ มันจะตรงกับ event _pw_siteopened_ ใน Piano
</Aside>

4.  ในช่อง **Type** เลือก **On-site**
5.  ในช่อง **Categories** เลือก **Events**
6.  คลิก **Save**

<img src="/integrations-piano-analytics-integration-8.webp" alt=""/>

### การตั้งค่าโซนเวลาของเว็บไซต์ของคุณใน Piano

การตั้งค่าโซนเวลาที่ถูกต้องสำหรับเว็บไซต์ของคุณใน Piano เป็นสิ่งสำคัญสำหรับการติดตามและวิเคราะห์ข้อมูลที่แม่นยำ แนวทางปฏิบัติที่ดีที่สุดคือการจับคู่โซนเวลากับตำแหน่งที่คุณกำลังส่ง events และทำการวิเคราะห์ ซึ่งจะช่วยขจัดความคลาดเคลื่อนของเวลา

เพื่อแก้ไขโซนเวลาใน Piano ให้ไปที่ **Dashboard** และคลิกบรรทัดที่มีข้อมูลไซต์ของคุณ ในหน้าต่างป๊อปอัป คลิก **Edit** และเลือกโซนเวลาที่ต้องการ จากนั้นคลิก **Save**

<img src="/integrations-piano-analytics-integration-9.webp" alt="การตั้งค่าโซนเวลาสำหรับเว็บไซต์ใน Piano"/>

### การสร้างพร็อพเพอร์ตี้สำหรับระบุ events ที่ส่งจาก Pushwoosh ใน Piano

เพื่อให้การจัดการข้อมูลง่ายขึ้น ให้สร้างพร็อพเพอร์ตี้ใน Piano ที่สามารถเชื่อมโยงกับ events ของ Pushwoosh ได้ ซึ่งจะช่วยให้คุณสามารถระบุ events ที่ส่งจาก Pushwoosh ได้อย่างง่ายดาย

นี่คือวิธีการสร้างพร็อพเพอร์ตี้:

1.  ใน Piano ไปที่ **Settings > Data Management > Properties**
2.  คลิก **Create Property**
3.  ในช่อง **Name** ป้อน **pushwooshid**
4.  ในช่อง **Property Key** ป้อน **pushwooshid**
5.  ตั้งค่า **Type** เป็น **String**
6.  คลิก **Save**

<img src="/integrations-piano-analytics-integration-10.webp" alt="การสร้างพร็อพเพอร์ตี้สำหรับ events ของ Pushwoosh ใน Piano"/>

### การตรวจสอบว่า events ของ Pushwoosh ถูกส่งไปยัง Piano หรือไม่

เพื่อตรวจสอบว่า events ที่ตั้งค่าใน Pushwoosh ถูกส่งไปยัง Piano สำเร็จหรือไม่ ให้ทำตามขั้นตอนต่อไปนี้:

1.  ในบัญชี Piano ของคุณ ไปที่ **Explorer > Audience > Overall Traffic**
2.  สร้างเซกเมนต์ตาม events ที่พร็อพเพอร์ตี้ **pushwooshid** ไม่ว่างเปล่า

<img src="/integrations-piano-analytics-integration-11.webp" alt="การสร้างเซกเมนต์ตาม events ใน Piano"/>

มุมมองที่กรองแล้วจะแสดงข้อมูลการเข้าชมโดยรวม รวมถึง events ที่เกี่ยวข้องใดๆ

<img src="/integrations-piano-analytics-integration-12.webp" alt="มุมมองการเข้าชมโดยรวมพร้อม events ของ Pushwoosh"/>

สำหรับมุมมองที่ละเอียดขึ้นของ events ที่ส่งจาก Pushwoosh ให้ไปที่ **Content > Events** ส่วนนี้จะให้รายละเอียดของ events ทั้งหมดที่ส่งจาก Pushwoosh รวมถึงจำนวนครั้งที่แต่ละ event เกิดขึ้น

<img src="/integrations-piano-analytics-integration-13.webp" alt="รายละเอียดของ events จาก Pushwoosh"/>

### การสร้างเซกเมนต์ใน Piano

เมื่อคุณตั้งค่าการผสานรวมเสร็จสิ้นแล้ว คุณสามารถเริ่มวิเคราะห์ events ที่ส่งจาก Pushwoosh ภายใน Piano ได้ หากต้องการเข้าถึง events เหล่านี้ ให้ไปที่ **Explorer > Content > Events** ในบัญชี Piano ของคุณ

<img src="/integrations-piano-analytics-integration-14.webp" alt="มุมมอง Events ใน Piano Analytics"/>

จากนั้น [สร้างเซกเมนต์](https://support.piano.io/hc/en-us/articles/4467486423570-Create-a-segment) โดยใช้ events เหล่านี้ เมื่อสร้างเซกเมนต์ ให้เลือกพร็อพเพอร์ตี้ **`pushwooshid`** ที่คุณสร้างไว้ก่อนหน้านี้เพื่อกรอง events

<img src="/integrations-piano-analytics-integration-15.webp" alt="การสร้างเซกเมนต์ด้วยพร็อพเพอร์ตี้ pushwooshid"/>

ตรวจสอบให้แน่ใจว่าได้ตั้งชื่อเซกเมนต์ของคุณให้ชัดเจนและสื่อความหมาย **Segment Key** ซึ่งเป็นตัวระบุที่ไม่ซ้ำกันสำหรับเซกเมนต์ที่บันทึกไว้ จะมีความจำเป็นในภายหลังสำหรับการส่งเซกเมนต์ไปยัง Pushwoosh

<img src="/integrations-piano-analytics-integration-16.webp" alt="การตั้งชื่อเซกเมนต์จาก Piano"/>

### การส่งเซกเมนต์จาก Piano ไปยัง Pushwoosh

<Aside type="note">
โปรดทราบว่าเฉพาะเจ้าของบัญชี (Account Owners) เท่านั้นที่สามารถนำเข้าเซกเมนต์ได้
</Aside>

เพื่อให้ Pushwoosh สามารถดึงเซกเมนต์จาก Piano ได้ ให้ระบุ SegmentKey ที่คุณสร้างไว้ให้กับ Pushwoosh หากต้องการค้นหา SegmentKey สำหรับเซกเมนต์ ให้ไปที่ **Analysis > Library > Segments** คลิกที่เซกเมนต์ที่คุณต้องการและคัดลอก **Segment Key**

<img src="/integrations-piano-analytics-integration-17.webp" alt="การเลือกเซกเมนต์ที่จะส่งจาก Piano ไปยัง Pushwoosh"/>

ในส่วน Integrations ของ Pushwoosh ให้ค้นหา **Piano** และคลิกที่ **Import Segment** จากนั้น ป้อน Segment key ที่คุณคัดลอกมา

<img src="/integrations-piano-analytics-integration-18.webp" alt="การนำเข้าเซกเมนต์จาก Piano ไปยัง Pushwoosh ผ่านการผสานรวม"/>

หากการนำเข้าสำเร็จ คุณจะเห็นข้อความยืนยัน

<img src="/integrations-piano-analytics-integration-19.webp" alt="เซกเมนต์ที่นำเข้าจาก Piano ไปยัง Pushwoosh"/>

คุณสามารถเข้าถึงเซกเมนต์ที่นำเข้าของคุณใน Pushwoosh ได้ เมื่อการนำเข้าเสร็จสมบูรณ์ เซกเมนต์เหล่านั้นจะแสดงรายการอยู่ในส่วน **Audience > Segments** ของบัญชี Pushwoosh ของคุณ

<img src="/integrations-piano-analytics-integration-20.webp" alt="เซกเมนต์ที่นำเข้าจาก Piano ใน Pushwoosh"/>

## การจับคู่ Piano VisitorID กับ Pushwoosh UserID/HWID สำหรับการวิเคราะห์แบบสะสมข้าม SDK

หากลูกค้าต้องการสะสมการวิเคราะห์จากทั้ง Pushwoosh SDK และ Piano Analytics SDK, Pushwoosh จำเป็นต้องจับคู่ Piano VisitorID กับ Pushwoosh UserID/HWID วิธีแก้ไขคือการส่งแท็ก Piano VisitorID ไปยัง Pushwoosh สำหรับผู้ใช้/อุปกรณ์

สำหรับสิ่งนี้ ให้ทำดังต่อไปนี้:

1.  สร้างแท็กชื่อ '**Piano Visitor ID**' ทางฝั่ง Pushwoosh สำหรับแอปพลิเคชัน หมายเหตุ: ชื่อแท็กต้องตรงตามที่อธิบายไว้ทุกประการ
2.  ทางฝั่งแอปพลิเคชันของลูกค้า ให้รับ Piano Visitor ID ภายใน Piano SDK โดยใช้เมธอด **getVisitorId**
3.  ทางฝั่งแอปพลิเคชันของลูกค้า ให้ใช้ Pushwoosh SDK เพื่อเรียกใช้คำขอ `setTags` พร้อมค่าแท็กหนึ่งครั้ง

หากมีค่าแท็ก (Piano Visitor ID) สำหรับผู้ใช้/อุปกรณ์ Pushwoosh จะรวมค่านั้นเป็น Client ID ในคำขอไปยัง Piano Analytics โดยอัตโนมัติ ทางฝั่ง Piano Analytics มันจะถูกแปลงเป็นค่า visitor ID ที่ไม่ซ้ำกัน

## ตัวอย่างโค้ด

##### Web Push SDK (JavaScript)
```javascript
Pushwoosh.push(function(api) {
// Set tags for a user
api.setTags({
'Piano Visitor ID': pa.getVisitorID(),
});
```

##### Android (Java)
```java
String value1 = PianoAnalytics.getInstance().visitorId();
TagsBundle pianoTag = new TagsBundle.Builder()
    .putString("Piano Visitor ID", value1)
    .build();
Pushwoosh.getInstance().setTags(pianoTag);
```

##### iOS (Swift)
```swift
var pianoId: String = pa.getVisitorId(completionHandler: { visitorId in
Pushwoosh.sharedInstance().setTags([
 "Piano Visitor ID": visitorId
 ])
})
```

##### iOS (Objective-C)
```objective-c
__block NSString *pianoId;
[pa getVisitorIdWithCompletionHandler:^(NSString *visitorId) {
    Piano Visitor ID = visitorId;
    [[Pushwoosh sharedInstance] setTags:@{@"Piano Visitor ID": visitorId}];
}];
```

โดยทั่วไป Pushwoosh ใช้แท็กของอุปกรณ์เพื่อให้ข้อมูลอุปกรณ์และข้อมูลอื่นๆ แก่ Piano Analytics ภายในแต่ละคำขอ นี่คือรายการแท็กทั่วไปที่ใช้:

*   **Country**
*   **Device Model**
*   **OS Version**
*   **Browser Type** (ในบางกรณี)

## วิธีตรวจสอบว่าการผสานรวมทำงานอยู่

#### ต้นทาง: การตรวจจับ events ที่ส่งไปยัง Piano Analytics

มีสองวิธีง่ายๆ ในการตรวจจับ events ที่ถูกส่งไปยัง Piano Analytics:

##### Stream Inspector
   1. ไปที่บัญชี **Piano Analytics** ของคุณ
   2. ไปที่ **Settings** > **Data Collection Portal** > **Tools** > **Stream Inspector**
   3. เลือกไซต์ที่เชื่อมต่อที่คุณต้องการตรวจสอบ
   4. เลือก events ที่คุณต้องการตรวจสอบและเริ่มเซสชัน
   5. ตรวจสอบว่า events ได้รับโดย Piano Analytics แล้ว
##### ตรวจสอบ Events ใน Overall Traffic
   1. ไปที่บัญชี **Piano Analytics** ของคุณ
   2. ไปที่ **Settings** > **Explorer** > **Audience** > **Overall Traffic**
   3. เลือกไซต์และช่วงวันที่ในเมนูด้านล่าง

#### ปลายทาง: การนำเข้าเซกเมนต์ของ Piano

เพื่อตรวจสอบการผสานรวมทางฝั่งปลายทาง:

*   นำเข้าเซกเมนต์ของ Piano
*   คุณควรเห็นเซกเมนต์ใหม่ (ตัวกรอง) ที่มีชื่อสร้างขึ้นเช่น `segment_key (Piano Autogenerated)`
*   คำนวณเซกเมนต์ใหม่เพื่อรับข้อมูลล่าสุดเกี่ยวกับการประมวลผลอุปกรณ์ปัจจุบัน

## การแก้ไขปัญหาและคำถามที่พบบ่อย: ปัญหาทั่วไป

#### ฉันจะแน่ใจได้อย่างไรว่า events ถูกส่งจาก Pushwoosh ไปยัง Piano Analytics อย่างถูกต้อง?

**วิธีแก้ไข**: ใช้ Stream Inspector ของ Piano หรือตรวจสอบ Overall Traffic ใน Piano Analytics เพื่อติดตาม events ที่เข้ามาจาก Pushwoosh

#### ฉันควรทำอย่างไรหากข้อมูลเซกเมนต์ไม่ถูกนำเข้าสู่ Pushwoosh อย่างถูกต้อง?

  **วิธีแก้ไข**: ตรวจสอบให้แน่ใจว่า Segment Key จาก Piano ตรงกับการตั้งค่าใน Pushwoosh ตรวจสอบข้อผิดพลาดในการคำนวณขนาดเซกเมนต์หรือการดึงข้อมูล


#### ฉันสามารถผสานรวม Piano VisitorID กับ Pushwoosh เพื่อการวิเคราะห์ที่ดียิ่งขึ้นได้หรือไม่?

  **วิธีแก้ไข**: ได้ โดยการตั้งค่าแท็กเฉพาะใน Pushwoosh และใช้ SDK ของ Piano เพื่อดึง VisitorID คุณสามารถซิงโครไนซ์ ID ผู้ใช้ข้ามแพลตฟอร์มได้


#### ฉันควรทำอย่างไรหากมีปัญหากับการกำหนดค่า API key?

  **วิธีแก้ไข**: ตรวจสอบบันทึกคำขอ API, ตรวจสอบให้แน่ใจว่า URL ของ endpoint และโทเค็นการรับรองความถูกต้อง (API keys) ถูกต้อง และตรวจสอบข้อผิดพลาดฝั่งเซิร์ฟเวอร์ที่รายงานโดยบริการใดบริการหนึ่ง