# Push

องค์ประกอบ Push ระบุจุดที่จะสื่อสารกับลูกค้าด้วย push notification

หากต้องการส่งข้อความ push ในช่วงเวลาที่เหมาะสมใน journey ให้เพิ่มองค์ประกอบ Push หลังจาก event หรือเงื่อนไขที่ควรจะกระตุ้นให้ส่งข้อความ
## เลือกหรือสร้างเนื้อหา push

จากนั้น เลือก preset จากบัญชี Pushwoosh ของคุณหรือสร้างขึ้นมาใหม่ [เรียนรู้เพิ่มเติมเกี่ยวกับการสร้าง push presets](/th/product/content/push-presets/)

![เพิ่มองค์ประกอบ Push หลังจาก trigger และเลือก preset](/journey-elements-channels-1.webp)
<Aside type="caution">
โปรดทราบว่าหากมีการบันทึกกฎการแบ่งกลุ่มใดๆ ใน Push Preset ที่คุณเลือก กฎเหล่านั้นจะไม่ถูกนำไปใช้กับ journey
</Aside>


## ตั้งค่าประเภทข้อความ

เลือก **Marketing message** หรือ **Transactional message**:

*   **Marketing message**: สำหรับแคมเปญและโปรโมชั่น กฎและข้อจำกัดทั้งหมดมีผลบังคับใช้ เคารพ: การเลือกไม่รับ, frequency capping และช่วงเวลาห้ามรบกวน ไม่รวม: ผู้ใช้ใน [global control group](/th/product/audience-data-and-segmentation/global-control-group/)
*   **Transactional message**: สำหรับข้อความเกี่ยวกับการดำเนินงานหรือบริการ กฎและข้อจำกัดไม่มีผลบังคับใช้ ข้าม: การเลือกไม่รับ, frequency capping และช่วงเวลาห้ามรบกวน ส่งถึง: ผู้ใช้ใน [global control group](/th/product/audience-data-and-segmentation/global-control-group/)

<img src="/journey-elements-push-14.webp" alt="ส่วน Overwrite personalization ขององค์ประกอบ Push พร้อมตัวเลือก Marketing message และ Transactional message"/>

[เรียนรู้ว่าประเภทข้อความส่งผลต่อการจัดส่งอย่างไร](/th/product/messaging-channels/marketing-vs-transactional/)

## ปรับแต่งข้อความเฉพาะบุคคลด้วย Dynamic Content และ Liquid Templates

เพื่อความเกี่ยวข้องของข้อความของคุณกับผู้ใช้ใน journey มากขึ้น คุณสามารถเพิ่มเนื้อหาที่ปรับแต่งเฉพาะบุคคลตามพฤติกรรมของผู้ใช้ได้ ตัวอย่างเช่น เมื่อส่ง push เกี่ยวกับตะกร้าสินค้าที่ถูกทิ้ง ให้เพิ่มชื่อผลิตภัณฑ์เพื่อ conversion ที่ดีขึ้น ซึ่งจะช่วยเตือนผู้ใช้ถึงสิ่งที่พวกเขาต้องการซื้อและทำให้ข้อความของคุณน่าเชื่อถือยิ่งขึ้น

[เรียนรู้เพิ่มเติมเกี่ยวกับการปรับแต่งข้อความ journey เฉพาะบุคคล](/th/product/customer-journey/journey-elements/dynamic-content-and-liquid-templates-in-journeys/)


## ใช้ Vouchers

คุณสามารถปรับแต่ง push notifications เฉพาะบุคคลได้โดยการแนบรหัส voucher จาก pool ที่กำหนดไว้ล่วงหน้า ซึ่งมีประโยชน์สำหรับโปรโมชั่น ส่วนลด และสิ่งจูงใจเพื่อสร้างความภักดี
สำหรับสิ่งนี้ ให้สร้าง push preset ที่มี placeholder ``{{voucher}}`` ล่วงหน้า

ในการรวม voucher:

1.  สลับ **Vouchers** เป็น ON
2.  ในฟิลด์ **Voucher Pool** ให้เลือก pool ที่มีรหัส voucher ของคุณ ตรวจสอบให้แน่ใจว่าได้เพิ่ม pool ของ vouchers ล่วงหน้าแล้ว
3.  (ไม่บังคับ) ใช้ฟิลด์ **Assign Tag** เพื่อใช้ tag กับผู้ใช้ที่ได้รับ voucher tag นี้สามารถใช้สำหรับการแบ่งกลุ่มหรือการรายงานได้
![เปิดใช้งานตัวเลือก **Use Vouchers**](/content-vouchers-9.webp)
[เรียนรู้เพิ่มเติมเกี่ยวกับ vouchers](/th/product/content/vouchers/)

## บันทึกลง Inbox

ตัวเลือก **Save to Inbox** ช่วยให้คุณสามารถจัดเก็บ push notifications ใน inbox ของแอป เพื่อให้ผู้ใช้สามารถเข้าถึงและตรวจสอบข้อความได้ทุกเมื่อที่สะดวก ซึ่งจะช่วยให้แน่ใจว่าการแจ้งเตือนที่สำคัญจะไม่ถูกพลาดและสามารถตรวจสอบได้ในภายหลัง ทำให้ผู้ใช้มีส่วนร่วมได้ง่ายขึ้น


<img src="/journey-elements-README-9.webp" alt="ตัวเลือก Save to Inbox ในองค์ประกอบ Push พร้อมการตั้งค่า"/>


หากต้องการบันทึกข้อความลงใน inbox เพียงสลับตัวเลือก **Save to Inbox** และตั้งค่า

1.  เลือกระยะเวลาที่ข้อความจะอยู่ใน inbox
2.  ปรับแต่งไอคอนข้อความหากจำเป็น คุณสามารถเลือกไอคอนที่แตกต่างกันสำหรับข้อความเพื่อช่วยให้โดดเด่นใน inbox
3.  กำหนดว่าจะเกิดอะไรขึ้นเมื่อผู้ใช้คลิกข้อความ

  [เรียนรู้เพิ่มเติมเกี่ยวกับการตั้งค่า inbox](/th/product/messaging-channels/message-inbox/mobile-message-inbox)



## กำหนดค่าการตั้งค่าการส่งข้อความ

### ตั้งค่า Time to live สำหรับการส่ง push

ใช้ **Time to live** ใน **Delivery settings** เพื่อควบคุมระยะเวลาที่ Pushwoosh จะเก็บ push notification ไว้เพื่อรอการส่ง หากผู้รับออฟไลน์ในขณะที่พยายามส่ง

ใน **Time to live** ให้เลือกระยะเวลาที่กำหนดไว้ล่วงหน้าว่า Pushwoosh จะเก็บข้อความนี้ไว้เพื่อรอการส่งนานเท่าใด ตั้งแต่ 1 ชั่วโมงถึง 3 สัปดาห์

<img src="/journey-elements-push-19.webp" alt="การตั้งค่าการจัดส่งในองค์ประกอบ Push journey พร้อมฟิลด์ Time to live และตัวเลือกระยะเวลาที่เปิดอยู่"/>

คุณยังสามารถเลือก **Custom range** และป้อนจำนวนชั่วโมง วัน หรือสัปดาห์ที่ต้องการได้ ระยะเวลาสูงสุดคือ 4 สัปดาห์

<img src="/journey-elements-push-18.webp" alt="การตั้งค่าการจัดส่งในองค์ประกอบ Push journey พร้อมฟิลด์ Time to live และตัวเลือกระยะเวลาที่เปิดอยู่"/>

<Aside type="note">
การนับถอยหลังจะเริ่มจากช่วงเวลาที่ Pushwoosh พยายามส่ง push ใน journey ไม่ใช่จากเวลาที่ journey ถูกกระตุ้นหรือข้อความถูกสร้างขึ้น
</Aside>

> **หมายเหตุ:** ค่า **Time to live** ที่ตั้งค่าในองค์ประกอบ push จะแทนที่เวลาหมดอายุที่กำหนดใน [แบบฟอร์มดั้งเดิมของ push preset](/th/product/content/push-presets/push-preset-legacy-form/#ios) ตัวอย่างเช่น หาก TTL ของ preset คือ 2 สัปดาห์ แต่ TTL ขององค์ประกอบ push คือ 1 สัปดาห์ push จะหมดอายุหลังจาก 1 สัปดาห์


### ตั้งค่า Frequency capping

<Aside type="note">
ตัวเลือก Frequency capping จะใช้ได้เฉพาะเมื่อเลือก **Marketing message** เท่านั้น เมื่อคุณเลือก **Transactional message** frequency capping จะไม่มีผลและตัวเลือกเหล่านี้จะถูกปิดใช้งาน
</Aside>

ใช้ [**Frequency capping**](/th/product/messaging-channels/global-frequency-capping/#enable-global-frequency-capping) เพื่อจำกัดความถี่ที่ผู้ใช้จะได้รับข้อความ push เพื่อป้องกันการส่งข้อความมากเกินไปและลดการเลิกใช้งาน ในการตั้งค่าองค์ประกอบ Push ให้เลือกหนึ่งในตัวเลือกต่อไปนี้:

*   **Use Global frequency capping settings**
    
    ใช้ข้อจำกัดทั่วทั้งโปรเจกต์ที่กำหนดค่าไว้ใน [Global frequency capping settings](/th/product/messaging-channels/global-frequency-capping/#enable-global-frequency-capping) ของคุณ
    
    ตัวอย่างเช่น หากขีดจำกัดทั่วโลกตั้งไว้ที่ 3 ข้อความใน 9 วัน ข้อความเพิ่มเติมที่เกินขีดจำกัดนี้จะถูกข้ามไป

*   **Ignore Global frequency capping**

    ผู้ใช้จะได้รับข้อความนี้แม้ว่าพวกเขาจะเกินขีดจำกัดข้อความของช่องทางแล้วก็ตาม ใช้ตัวเลือกนี้ด้วยความระมัดระวังเพื่อหลีกเลี่ยงการส่งข้อความมากเกินไป

*   **Use custom frequency capping**

    ตั้งค่าขีดจำกัดข้อความที่กำหนดเองสำหรับข้อความนี้ หากผู้ใช้เกินขีดจำกัดที่กำหนดเองนี้ ข้อความจะถูกข้ามไป และผู้ใช้จะไปยังขั้นตอนถัดไป
    > **สำคัญ:** Custom frequency capping ไม่ได้แยกข้อความออกจาก **Global frequency capping** ข้อความทั้งหมดที่ส่งในช่องทางเดียวกัน รวมถึงข้อความจาก journeys หรือแคมเปญอื่นๆ ยังคงถูกนับรวมในขีดจำกัดทั่วโลก หากผู้ใช้ได้รับข้อความ push 3 ข้อความในสัปดาห์นี้จากแหล่งอื่นแล้ว ข้อความนี้อาจยังคงถูกบล็อก แม้ว่า custom capping จะอนุญาตก็ตาม
    [เรียนรู้เพิ่มเติม](/th/product/messaging-channels/global-frequency-capping/#customize-capping-for-specific-messages)

### ตั้งค่าขีดจำกัดอัตราการส่ง

การตั้งค่า **Send rate** ควบคุมความเร็วในการส่งข้อความไปยังผู้ชมของคุณ การปรับอัตราการส่งช่วยให้คุณจัดการความเร็วในการส่ง ป้องกันการโอเวอร์โหลดของ backend และปรับปรุงความสามารถในการส่งโดยรวม

เลือกหนึ่งในตัวเลือกต่อไปนี้:

*   **Use global send rate settings**  
    ใช้ขีดจำกัดอัตราการส่งที่กำหนดค่าไว้ในการตั้งค่าการส่งข้อความของโปรเจกต์ของคุณ หากไม่ได้ตั้งค่าขีดจำกัดไว้ ข้อความทั้งหมดจะถูกส่งทันที ใช้ตัวเลือกนี้เมื่อคุณต้องการให้ความเร็วในการส่งเป็นไปตามกฎเริ่มต้นของโปรเจกต์ของคุณ [เรียนรู้เพิ่มเติมเกี่ยวกับขีดจำกัดอัตราการส่งทั่วโลก](/th/product/messaging-channels/global-frequency-capping/#set-send-rate-limits)

![ใช้การตั้งค่าอัตราการส่งทั่วโลก](/send-rate-in-journey-elements-1.webp)

*   **Send messages without send rate**  
    ส่งข้อความให้เร็วที่สุดเท่าที่จะทำได้ โดยไม่สนใจขีดจำกัดอัตราการส่งทั่วโลกใดๆ ใช้ด้วยความระมัดระวังเพื่อหลีกเลี่ยงการโอเวอร์โหลด backend ของคุณหรือสร้างการพุ่งสูงขึ้นของการส่ง

![ส่งข้อความโดยไม่มีอัตราการส่ง](/send-rate-in-journey-elements-2.webp)

*   **Use custom send rate**  
    แทนที่อัตราการส่งทั่วโลกสำหรับข้อความนี้เท่านั้น ช่วยให้คุณสามารถระบุจำนวนข้อความที่ส่งต่อนาที ทำให้คุณควบคุมความเร็วในการส่งได้อย่างเต็มที่ ข้อความจะถูกส่งในอัตราที่กำหนดเองที่คุณกำหนดในองค์ประกอบข้อความ

![ใช้อัตราการส่งที่กำหนดเอง](/send-rate-in-journey-elements-3.webp)


## เปิดใช้งานเวลาที่ดีที่สุดในการส่ง (Best time to send)

หากคุณต้องการให้ผู้ใช้แต่ละคนได้รับ push notification เมื่อพวกเขามีแนวโน้มที่จะโต้ตอบกับ push มากที่สุด ให้เปิดใช้งานตัวเลือก **Best time to send** เวลาในการส่งข้อความถึงผู้ใช้แต่ละคนจะถูกคำนวณตามพฤติกรรมและประสิทธิภาพของข้อความที่ส่งไปก่อนหน้านี้

<img src="/journey-elements-README-10.webp" alt="ตัวเลือก Best time to send ในองค์ประกอบ Push พร้อมการตั้งค่าเวลาและไทม์โซนเริ่มต้น"/>

<Aside type="note">
ในการใช้ตัวเลือกนี้ ก่อนอื่นให้เปิดใช้งาน Events เริ่มต้น [**PW\_ApplicationOpen**](/th/product/audience-data-and-segmentation/events/default-events#pw_applicationopen) และ [**PW\_NotificationOpen**](/th/product/audience-data-and-segmentation/events/default-events#pw_notificationopen) ในโปรเจกต์ของคุณ เราขอแนะนำให้ทำเช่นนี้สองสามวันก่อนส่ง push เพื่อรวบรวมข้อมูลให้เพียงพอ
</Aside>

ความแม่นยำในการคำนวณเวลาที่ดีที่สุดสำหรับผู้ใช้แต่ละคนขึ้นอยู่กับจำนวน push ที่คุณส่งให้ผู้ใช้รายนี้ก่อนหน้านี้

หากมีข้อมูลเกี่ยวกับผู้ใช้ไม่เพียงพอ พวกเขาจะได้รับ push ใน **Default time** ที่คุณระบุตามไทม์โซนของพวกเขา

<Aside type="caution">
- **Best time to send** จะถูกคำนวณสำหรับ 24 ชั่วโมงข้างหน้าหลังจากที่ผู้ใช้เข้าสู่จุดใน journey ที่เปิดใช้งานตัวเลือกนี้

- หากคุณใช้ [Time Delay](/th/product/customer-journey/journey-elements/flow-controls/time-delay/) สำหรับขั้นตอนถัดไปและเวลาที่ดีที่สุดในการส่งอยู่หลังเวลาที่หน่วงไว้ ผู้ใช้จะรอจนถึงเวลาที่ดีที่สุด ได้รับข้อความ แล้วจึงไปยังขั้นตอนถัดไปใน journey

- อย่างไรก็ตาม หาก Time Delay ถูกตั้งค่าเป็นวันที่และเวลาที่แน่นอน และเวลาที่ดีที่สุดในการส่งอยู่หลังเวลานั้น ผู้ใช้จะไม่ได้รับข้อความและจะออกจาก journey

</Aside>

## ส่งโดย User ID

เมื่อเปิดใช้งาน ข้อความจะถูกส่งไปยังอุปกรณ์ทั้งหมดที่เชื่อมโยงกับ ID ของผู้ใช้ที่มาถึงองค์ประกอบ journey นี้ ดังนั้น หากผู้ใช้มีอุปกรณ์หลายเครื่อง ซึ่งทั้งหมดเชื่อมโยงกับ userID เดียวกัน ผู้ใช้รายนั้นจะได้รับข้อความหลายข้อความ ข้อความละหนึ่งเครื่อง

<img src="/journey-elements-README-13.webp" alt="ตัวเลือก Send by user ID ในองค์ประกอบ Push"/>

## ส่งไปยังอุปกรณ์ที่ใช้งานล่าสุด

เปิดใช้งาน **Send to last active device** ข้อความจะถูกส่งไปยังอุปกรณ์ที่มีการเปิดแอปครั้งล่าสุดภายใต้ ID ของผู้ใช้เท่านั้น

<img src="/journey-elements-push-20.webp" alt="สวิตช์ Send to last active device เปิดใช้งานในองค์ประกอบ Push พร้อมคำอธิบาย UI ใต้ป้ายกำกับ"/>

ตัวเลือกนี้ไม่สามารถใช้ร่วมกับ **Send by User ID** ได้ เมื่อคุณเปิดตัวเลือกหนึ่ง อีกตัวเลือกหนึ่งจะปิดลง

<Aside type="tip" title="ตัวอย่าง: Send by User ID เทียบกับ Send to last active device">

ผู้ใช้มีโทรศัพท์และแท็บเล็ตที่เชื่อมโยงกับ User ID เดียวกัน ผู้ใช้เปิดแอปครั้งล่าสุดบนแท็บเล็ต

*   **Send by User ID:** push จะถูกส่งไปยังโทรศัพท์และแท็บเล็ต ผู้ใช้จะได้รับการแจ้งเตือนสองครั้ง
*   **Send to last active device:** push จะถูกส่งไปยังแท็บเล็ตเท่านั้น โทรศัพท์จะไม่ได้รับ

</Aside>



## แยก flow หลังจาก push

ใช้ **Flow options** ในองค์ประกอบ Push เพื่อแยก journey เมื่อผู้ใช้เปิด push, เมื่อ push ถูกส่งไปยังอุปกรณ์ หรือเมื่อคุณใช้การตรวจสอบทั้งสองอย่าง

### แยก flow ตามการเปิดหรือการไม่สนใจ

แยก flow ของ journey ที่เหลือตามว่า push นี้ถูกเปิดหรือถูกไม่สนใจ ตัวอย่างเช่น ส่งอีเมลถึงผู้ใช้ที่ไม่เปิด push หรือส่ง push อื่นไปยังผู้ที่เปิด

<img src="/journey-elements-README-11.webp" alt="แยก flow ตามการเปิด push ใน journey"/>

ในการตั้งค่า:

1.  เปิด **Split flow if message is opened** canvas จะเพิ่มสาขา **Opened** และ **Not opened**
2.  ตั้งค่า **How long to wait to check message opens** โดยใช้ **days**, **hours** และ **mins** เวลารอสูงสุดคือ 7 วัน
3.  บน canvas ให้เชื่อมต่อ **Opened** และ **Not opened** กับองค์ประกอบถัดไปใน journey ของคุณ

<img src="/journey-elements-README-12.webp" alt="ตั้งค่าระยะเวลารอสำหรับสาขา opened และ not opened"/>

### แยก flow ตามการส่งข้อความ

ตัวเลือก flow นี้ขึ้นอยู่กับว่า Pushwoosh สามารถยืนยันได้หรือไม่ว่า push นี้ถูกส่งไปยังอุปกรณ์ของผู้ใช้แล้ว ส่งผู้ใช้ในสาขา **Not delivered** ไปยังช่องทางสำรอง เช่น SMS, อีเมล หรือข้อความในแอป เพื่อให้พวกเขายังคงได้รับข้อความของคุณ

<Aside type="caution" title="Send by User ID ส่งผลต่อสาขา Delivered อย่างไร">
เมื่อเปิดใช้งาน **Send by User ID** Pushwoosh จะส่ง push นี้ไปยังอุปกรณ์แต่ละเครื่องที่ผูกกับผู้ใช้ สำหรับการแยกการส่ง ผู้ใช้จะไปตามสาขา **Delivered** ทันทีที่การส่งได้รับการยืนยันบนอุปกรณ์ใดๆ ก็ตาม
</Aside>

ในการตั้งค่า:

1.  เปิด **Split flow if message is delivered** canvas จะเพิ่มสาขา **Delivered** และ **Not delivered**
2.  ตั้งค่า **How long to wait to check message delivery** โดยใช้วัน ชั่วโมง และนาที ใช้รูปแบบเดียวกับการแยกการเปิด เวลารอสูงสุดคือ 7 วัน

<img src="/journey-elements-push-15.webp" alt="ตัวเลือก Flow ขององค์ประกอบ Push พร้อมการแยกตามการเปิด, การแยกตามการส่ง, ตัวจับเวลารอ และหมายเหตุเมื่อเปิดใช้งานการแยกทั้งสองอย่าง"/>

3.  บน canvas ให้เชื่อมต่อ **Delivered** และ **Not delivered** กับองค์ประกอบถัดไปใน journey ของคุณ (ตัวอย่างเช่น ข้อความสำรองในสาขา **Not delivered**)

<img src="/journey-elements-push-16.webp" alt="Customer Journey canvas แสดงสาขา Delivered และ Not delivered พร้อมจำนวนผู้ใช้และเปอร์เซ็นต์"/>

ผลลัพธ์การแยกการส่งจะปรากฏในการวิเคราะห์ journey บน canvas รวมถึงจำนวนผู้ใช้และเปอร์เซ็นต์ในแต่ละสาขา

### เมื่อเปิดใช้งานทั้งการแยกการส่งและการเปิด

หากเปิดใช้งานการแยกทั้งสองอย่าง อุปกรณ์ที่ได้รับ push จะไปยังสาขา **Opened** หรือ **Not opened** อุปกรณ์ที่ไม่ได้รับ push จะไปยังสาขา **Not delivered**

<img src="/journey-elements-push-17.webp" alt="Customer Journey canvas แสดงสาขาการแยกการส่ง push พร้อมจำนวนผู้ใช้และเปอร์เซ็นต์ในแต่ละสาขา"/>

เมื่อคุณกำหนดค่าองค์ประกอบ Push นี้เสร็จแล้ว ให้คลิก **Save**