# อัปเดตโปรไฟล์ผู้ใช้

องค์ประกอบ **Update user profile** จะกำหนดค่า Tag ให้กับผู้ใช้ขณะที่พวกเขาเคลื่อนที่ผ่าน Journey คุณสามารถตั้งค่าได้ด้วยตนเองหรือดึงค่าจากแอตทริบิวต์ของ Event หรือการตอบกลับจาก [**Webhook**](#use-a-value-from-a-webhook-response)

## ตัวเลือกการอัปเดต

### การอัปเดตด้วยตนเอง

ในการกำหนดค่า Tag ให้กับผู้ใช้ภายใน Journey ด้วยตนเอง:

* เพิ่มองค์ประกอบ **Update user profile** ที่ใดก็ได้ที่คุณต้องการบน canvas
* กด **+ Manual value** และเลือก Tag จากรายการดรอปดาวน์ที่มี Tag ทั้งหมดที่สร้างขึ้นในบัญชี Pushwoosh ของคุณ
* ระบุค่าสำหรับ Tag ที่เลือกโดยขึ้นอยู่กับประเภทของ Tag นั้น

คุณสามารถตั้งค่าได้สูงสุด 10 Tags ในครั้งเดียว

สำหรับ Tag ที่เป็นแบบเฉพาะผู้ใช้ (user-specific) ค่าจะถูกกำหนดให้กับอุปกรณ์ทั้งหมดของผู้ใช้ที่มี user ID เดียวกัน สำหรับ Tag ที่ไม่เป็นแบบเฉพาะผู้ใช้ ค่าจะถูกกำหนดให้กับอุปกรณ์เฉพาะที่ผู้ใช้กำลังเดินทางใน Journey

สำหรับกรณีการใช้งานมีมากมาย ตัวอย่างเช่น การติด Tag ผู้ใช้ที่ไปถึงขั้นตอนใดขั้นตอนหนึ่งของ Journey จะมีประโยชน์ในการสร้างการสื่อสารต่อไป

<img src="/journey-elements-README-37.webp" alt="องค์ประกอบ Update user profile ที่แสดงตัวเลือกการกำหนด Tag ด้วยตนเองในเครื่องมือสร้าง Customer Journey"/>

### ค่า Tag แบบไดนามิก

การอัปเดตแบบไดนามิกหมายถึงค่า Tag จะถูกดึงมาจากแอตทริบิวต์ของ Event ที่ผู้ใช้ทริกเกอร์ก่อนที่จะมาถึงองค์ประกอบ **Update user profile** โดยอัตโนมัติ คุณสามารถสื่อสารกับผู้ใช้เหล่านั้นได้อย่างเป็นส่วนตัวมากขึ้นและส่งข้อเสนอที่ปรับให้เหมาะกับพวกเขา

<Aside type="note">
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Events และแอตทริบิวต์ โปรดดูที่ [คู่มือ Events](/th/product/audience-data-and-segmentation/events/)
</Aside>

ในการตั้งค่า Tag แบบไดนามิกจาก Event:

1. วางองค์ประกอบ **Update user profile** บน canvas หลังจากองค์ประกอบที่อิงตามทริกเกอร์อย่างน้อยหนึ่งรายการ (**Trigger-based Entry** หรือ **Wait for Trigger**)

<img src="/journey-elements-README-38.webp" alt="องค์ประกอบ Update user profile ที่วางอยู่หลังองค์ประกอบที่อิงตามทริกเกอร์ในโฟลว์ของ Customer Journey"/>

2. ดับเบิลคลิกที่องค์ประกอบและกด **+ Dynamic Value** ในส่วน **Dynamic Tag Value**
3. เลือก Tag ที่จะตั้งค่า

<Aside type="caution">
หากคุณเลือก Tag ที่จะตั้งค่าด้วยตนเอง Tag นั้นจะไม่ปรากฏในรายการ Tag ของส่วน **Dynamic Tag Value**
</Aside>

4. เลือก Event และแอตทริบิวต์ที่จะให้ค่า Tag

<Aside type="caution">
ตรวจสอบให้แน่ใจว่าประเภทของ Tag และแอตทริบิวต์ของ Event ตรงกัน ตัวอย่างเช่น ในการตั้งค่า STRING Tag ให้ใช้แอตทริบิวต์ STRING Event หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับประเภทของ Tag โปรดดูที่ [คู่มือ Tags and Filters](/th/product/audience-data-and-segmentation/user-data-tags/tags#types-of-tags)
</Aside>

<img src="/journey-elements-README-39.webp" alt="การกำหนดค่า Dynamic Tag Value ที่แสดงตัวเลือกการเลือก Event และการจับคู่ Tag"/>


#### ใช้ค่าจากการตอบกลับของ webhook

หากองค์ประกอบ [**Webhook**](/th/product/customer-journey/journey-elements/channels/webhook/#map-webhook-response-data-to-variables) ก่อนหน้านี้ใน Journey มีการกำหนดค่า **Response mapping** ไว้ องค์ประกอบนั้นจะปรากฏในดรอปดาวน์ **Event** ตามชื่อขั้นตอน webhook ที่คุณตั้งไว้ (เช่น `Create user in CRM`) ควบคู่ไปกับ Events ทั่วไป สำหรับตัวอย่าง Journey แบบเต็ม โปรดดูที่ [การใช้ข้อมูลการตอบกลับของ webhook ใน Journey ของคุณ](/th/product/customer-journey/journey-elements/using-webhook-response-data-in-journeys/)

1. วาง **Update user profile** หลังจากขั้นตอน **Webhook**
2. ใน **Dynamic Tag Value** กด **+ Dynamic Value**
3. ใน **Tag** เลือก Tag ที่จะอัปเดต
4. ใน **Event** เลือกขั้นตอน webhook ตามชื่อที่คุณตั้งไว้ (เช่น `Create user in CRM`)
5. ใน **Dynamic Value** เลือกแอตทริบิวต์ที่จับคู่ไว้ (เช่น `subscription_status`)

<img src="/journey-elements-update-user-profile-1.webp" alt="Dynamic Tag Value ที่มี Tag, Event ถูกตั้งค่าเป็นชื่อขั้นตอน Webhook และ Dynamic Value จากการจับคู่การตอบกลับ" />

<Aside type="caution">
หากค่าที่จับคู่กับ webhook หายไปสำหรับผู้ใช้ (การตอบกลับไม่ใช่ JSON, **Path** ไม่สามารถ resolve ได้ หรือการเรียก webhook ล้มเหลว) Pushwoosh จะข้ามการอัปเดต Tag นั้นไป Tag จะยังคงมีค่าเดิมหรือยังคงไม่ได้ตั้งค่า และ Journey จะดำเนินต่อไปโดยไม่มีข้อผิดพลาดในขั้นตอนนี้ ซึ่งแตกต่างจาก [**Time Delay**](/th/product/customer-journey/journey-elements/flow-controls/time-delay/#use-a-date-from-a-webhook-response) ซึ่งจะนำผู้ใช้ออกจาก Journey พร้อมข้อผิดพลาดเมื่อค่าหายไปหรือไม่ใช่วันที่ที่ถูกต้อง ให้เรียกใช้ [**Test webhook**](/th/product/customer-journey/journey-elements/channels/webhook/#test-the-webhook) ก่อนเปิดใช้งานเพื่อยืนยันการจับคู่ของคุณ
</Aside>

<LinkCard title="การใช้ข้อมูลการตอบกลับของ webhook ใน Journey ของคุณ" href="/product/customer-journey/journey-elements/using-webhook-response-data-in-journeys/" />