การแจ้งเตือนแบบพุชเป็นเครื่องมือทางการตลาดที่สำคัญสำหรับทุกคนที่มีแอปบนอุปกรณ์เคลื่อนที่
เป็นวิธีที่ดีที่สุดในการสื่อสารกับผู้ใช้ของคุณ โดยส่งข้อความด่วนไปยังโทรศัพท์มือถือของพวกเขา
แอปบนอุปกรณ์เคลื่อนที่สามารถส่งการแจ้งเตือนแบบพุชให้กับผู้ใช้ ซึ่งเป็นข้อความป๊อปอัปสั้นๆ ที่ปรากฏบนสมาร์ทโฟนแม้ว่าแอปจะไม่เปิดอยู่ก็ตาม
การแจ้งเตือนเหล่านี้อาจรวมถึงการช่วยเตือน การอัปเดต ส่วนลด และอื่นๆ
สร้างขึ้นเพื่อดึงดูดสายตาผู้ใช้ ชื่อเรื่อง ข้อความ รูปภาพ และ URL เป็นส่วนประกอบที่เป็นไปได้ทั้งหมดของการแจ้งเตือนแบบพุช อีโมจิ โลโก้ และสิ่งอื่น ๆ ก็สามารถเป็นส่วนหนึ่งของสิ่งเหล่านี้ได้เช่นกัน
ระบบปฏิบัติการ เช่น Apple OS และ Google Android มีอินเทอร์เฟซที่หลากหลายสำหรับการแจ้งเตือนแบบพุช
การแจ้งเตือนแบบพุชสามารถใช้เพื่อส่งเสริมการมีส่วนร่วม เพิ่มการใช้แอพ ส่งผลกระทบต่อคอนเวอร์ชั่น และอื่นๆ อีกมากมาย
ตัวเลือกนั้นไร้ขีดจำกัดอย่างแท้จริง
การแจ้งเตือนแบบพุชสำหรับอุปกรณ์มือถือหรือที่เรียกว่าการแจ้งเตือนแบบพุชสำหรับอุปกรณ์มือถือสามารถเสริมการใช้งานช่องต่างๆ ของคุณ เช่น อีเมล, SMS และการแจ้งเตือนแบบพุชออนไลน์ด้วยข้อดีพิเศษหลายประการ
คุณจะได้รับคำอธิบายสั้นๆ เกี่ยวกับบริการแจ้งเตือนในโพสต์นี้และข้อมูลเกี่ยวกับวัตถุประสงค์ การออกแบบระดับสูง คุณสมบัติพิเศษ และอื่นๆ
วัตถุประสงค์
เพื่อพัฒนาบริการแจ้งเตือนที่สามารถกระจายข้อความสินค้าถึงผู้ใช้ได้อย่างมีประสิทธิภาพในหลากหลายช่องทาง
ความต้องการ:
- การส่ง API: เผยแพร่ปลายทางที่ได้รับอนุญาตเพื่อให้แบ็กเอนด์และไมโครเซอร์วิสสามารถเริ่มส่งการแจ้งเตือนได้
- ช่องที่เข้ากันได้: รองรับการส่งการแจ้งเตือนไปยังช่องทางใดๆ ที่เผยแพร่ API เช่น อีเมล ข้อความ และพุช
- ค่ากำหนดของผู้ใช้: อนุญาตให้ผู้ใช้เลือกค่ากำหนดของผู้ใช้สำหรับแต่ละช่องและการแจ้งเตือน
- ข้อจำกัดสำหรับการปฏิบัติตามบริการดาวน์สตรีม: หลีกเลี่ยงการมี อีเมล หรือบริการ SMS ถูกควบคุมหรือหยุด
- ปรับขนาดได้: อนุญาต (ตามทฤษฎี) ปรับขนาดแนวนอนไม่สิ้นสุด
สถาปัตยกรรมระดับสูง
สมมติว่ารหัสของคุณควรจะแจ้งให้ผู้อื่นทราบ:
- POST /send endpoint ถูกเรียกใช้โดยรหัสของคุณ สำหรับแต่ละช่องทางที่มีอยู่ คำขอจะรวม ID ผู้ใช้ของผู้รับ ประเภทของการแจ้งเตือน และเนื้อหา
- โฟลว์ข้อมูลรับรองไคลเอ็นต์ OAuth2 ถูกใช้โดย /send end-point เพื่อตรวจสอบสิทธิ์คำขอ
- จากนั้นจะขอตัวเลือกการแจ้งเตือนของผู้ใช้จากฐานข้อมูล การตั้งค่าจะแสดงว่าผู้ใช้สมัครรับข้อมูลจากช่องและการแจ้งเตือนบางช่องหรือไม่
- จากฐานข้อมูลจะอ่านลักษณะผู้ใช้เช่นที่อยู่อีเมลและหมายเลขโทรศัพท์
- จุดสิ้นสุดนี้จะสร้างวัตถุข้อความที่มีลักษณะเฉพาะของผู้ใช้ ช่อง และเนื้อหาเฉพาะช่อง แต่จะไม่รวมช่องที่ปิดใช้งาน ข้อความจะถูกส่งไปยังบริการกระจายเสียง
- ข้อความขาเข้าจะกระจายไปยังคิวงานผ่านบริการ fanout อย่างไรก็ตาม มีการกรองเพื่อเพิกเฉยต่อคิวงานสำหรับช่องทางที่ไม่ได้ระบุไว้ในข้อความ
- แต่ละแชนเนลมีโปรเซสเซอร์และคิวงาน ตัวประมวลผลทำงานแล้วขอบริการที่เหมาะสม เช่น อีเมลธุรกรรมหรือบริการ SMS
องค์ประกอบสถาปัตยกรรมที่สำคัญ
โพสต์/ส่ง
คุณอาจสังเกตเห็นเป็นอย่างดีว่ามีเฉพาะรหัสผู้ใช้และทั้งที่อยู่อีเมลและหมายเลขโทรศัพท์เท่านั้นที่รวมอยู่ในคำขอไปยังจุดสิ้นสุดนี้ ซึ่งจะทำให้บริการแจ้งเตือนไม่เปิดเผยตัวตนต่อผู้ใช้ของคุณ
เพื่อให้แน่ใจว่าสามารถปรับขนาดได้ จุดสิ้นสุดจะถูกวางไว้ด้านหลัง a เครื่องถ่วงโหลด.
การรับรองความถูกต้องโดยผู้ใช้ทั่วไปของคุณไม่มีการป้องกันสำหรับปลายทาง
คุณต้องใช้วิธีการตรวจสอบสิทธิ์ที่แตกต่างกันซึ่งเรียกว่า OAuth2 Client Credential Flow ที่ใช้สำหรับการสื่อสารระหว่างเซิร์ฟเวอร์กับเซิร์ฟเวอร์ เนื่องจากบริการที่ส่งคำขอนั้นเป็นซอฟต์แวร์เอง
แอปพลิเคชันของคุณจะแจ้งเตือนในสถานที่ต่างๆ คุณสามารถใช้ฟังก์ชัน send ได้เกือบทุกที่ เช่น จากโค้ดเบสใหม่หรือเวิร์กโฟลว์บิลด์ของคุณ โดยนำไปใช้เป็นจุดสิ้นสุดที่อยู่เบื้องหลังโหลดบาลานเซอร์ ซึ่งรับประกันว่าจะสามารถปรับขนาดได้อย่างอิสระ
PUT/การตั้งค่าผู้ใช้
ใช้คู่คีย์/ค่าหรือฐานข้อมูล NoSQL ที่สามารถปรับขนาดได้อย่างมาก จัดรูปแบบเร็กคอร์ดดังนี้: KEY: id ผู้ใช้ตัวอย่าง:sample notification id, VALUE: ["email", "state: true", "SMS", "state: false" channel: "email", "email", state : จริง
หากมีค่า "เท็จ" ในบันทึก จุดสิ้นสุดการส่งจะแยกช่องสัญญาณที่เกี่ยวข้องออกจากข้อความที่ส่งไปยัง fanout หากไม่มีบันทึกสำหรับช่อง ผู้ใช้ไม่ได้ระบุการตั้งค่าของตนเองอย่างชัดแจ้ง คุณต้องยินยอมให้ผิดนัดในสถานการณ์นี้
ผู้ใช้สามารถแก้ไขข้อมูลในฐานข้อมูลการตั้งค่าผู้ใช้โดยใช้ UI ของคุณและจุดปลายปกติที่รักษาความปลอดภัยโดยขั้นตอนการรับรองความถูกต้องมาตรฐานของคุณ
ผู้ใช้จะหงุดหงิดและถูกบังคับให้กำหนดให้การแจ้งเตือนของคุณเป็นสแปมหรือปิดเสียงหากคุณไม่ได้ให้ตัวเลือกแก่ผู้ใช้ในการเปลี่ยนแปลงการตั้งค่าการแจ้งเตือน ประสบการณ์ผู้ใช้ของคุณจะได้รับผลกระทบมากขึ้น และบริการจัดส่งอีเมลหรือ SMS อาจระงับบัญชีของคุณ
แฟนออก
Fanout คัดลอกข้อความและแจกจ่ายไปยังที่ต่างๆ มีราคาไม่แพงและสามารถปรับขนาดได้มาก ใช้ SNS ใน AWS ใช้ Pub/Sub ใน Azure และหัวข้อและการสมัครรับข้อมูลใน Google Cloud Platform
เพื่อป้องกันการส่งข้อความที่ไม่มีจุดหมายไปยังคิวงานของแชนเนลที่แยกออก คุณสามารถกำหนดค่าการกรองระหว่าง fanout และคิวงาน ตัวอย่างเช่น ใน AWS SNS คุณสามารถระบุว่าคิวงานอีเมลควรได้รับข้อความ fanout หากมีค่า "อีเมล" ในช่อง "ช่องทาง"
แม้ว่าคุณสามารถสร้างโค้ดเพื่อส่งข้อความที่เหมือนกันไปยังคิวงานที่ต้องการได้ แต่ fanout นั้นมีประสิทธิภาพมากกว่าและต้องการการเข้ารหัสน้อยกว่า Fanout ยังให้ความสะดวกในการเพิ่มและลบคิว ช่วยให้คุณสามารถขยายและจัดระเบียบช่องของคุณใหม่ได้
การประมวลผลงาน
ข้อความจะถูกเก็บไว้ในคิวที่รอการประมวลผลโดยผู้ประมวลผลงานของคุณ พวกเขายังราคาไม่แพงและสามารถปรับขนาดได้มาก ตัวประมวลผลงานเป็นส่วนของรหัสที่ประมวลผลข้อความจากคิวงาน ขึ้นอยู่กับปริมาณข้อความในคิว พวกเขาสามารถปรับขนาดได้
ผู้ประมวลผลงานควรทำการเรียก API ไปยังผู้ให้บริการที่เหมาะสมเพื่อส่งคำบอกกล่าวในสถานการณ์ของเราผ่านบริการอีเมลธุรกรรม
อีเมล SMS และผู้ให้บริการส่งข้อความที่คล้ายกันส่วนใหญ่มีข้อกำหนดที่เข้มงวดสำหรับปริมาณและขนาดของข้อความที่คุณส่ง นอกจากนี้ คุณต้องการตรวจสอบสิ่งเหล่านี้และตั้งค่าขั้นตอนที่เหมาะสมอย่างละเอียด นี่คือคำแนะนำของเราเกี่ยวกับวิธีหลีกเลี่ยงการยุติการใช้งาน AWS SES
คุณสามารถกำหนดจำนวนสูงสุดของตัวประมวลผลงานเพื่อป้องกันไม่ให้เกินอัตราสูงสุดของบริการจัดส่ง
การปรับปรุงเพิ่มเติม
คุณสามารถดูรายการเหล่านี้ได้อย่างรวดเร็ว
- พวกเขาต้องการ API ตาราง ฯลฯ ของตัวเองเพื่อที่จะมีบริการแจ้งเตือนในแอปที่ปรับขนาดได้
- รวบรวมและแสดงรายงานการเปิด/คลิก
- การลบเนื้อหาของการแจ้งเตือนออกจากรหัสและให้ผลิตภัณฑ์และทีมออกแบบของคุณแก้ไขการแจ้งเตือนด้วยสายตาแทนโดยไม่ต้องเปลี่ยนรหัส
- โดยไม่ต้องเปลี่ยนรหัส ทีมของคุณสามารถใช้แดชบอร์ดเพื่อเปิดใช้งานหรือปิดใช้งานการแจ้งเตือนสำหรับบางช่อง
ประโยชน์ของการแจ้งเตือนแบบพุช
- เพิ่มการโต้ตอบกับผู้ใช้: การอัปเดตและเนื้อหาใหม่จะทำให้ผู้ใช้ของคุณสนใจ
- เพิ่มการมองเห็นการสื่อสาร: ตรวจสอบให้แน่ใจว่าได้รับข้อความของคุณทันที แม้ว่าผู้คนจะไม่ได้ใช้งาน ส่งการแจ้งเตือนด่วนและมอบประสบการณ์ที่ราบรื่นแก่ผู้ใช้
- รักษาการเก็บข้อมูล: ใช้ข้อความ Push ที่มองเห็นได้ชัดเจนเพื่อกระตุ้นให้ผู้ใช้ของคุณกลับมา คุณสามารถเพิ่มการรักษาผู้ใช้และลดการเลิกราได้โดยการผลักดันลูกค้ากลับเข้าสู่เว็บไซต์และแอปของคุณ
- ปรับปรุงคอนเวอร์ชั่น: การสร้างแคมเปญแบบพุชเกี่ยวกับรางวัลในแอป โปรโมชัน ส่วนลด หรือข้อเสนออื่นๆ คุณสามารถเพิ่มยอดขายได้
- ปรับขนาดองค์กรของคุณ: วิธีการสื่อสารของคุณต้องขยายขนาดเมื่อผู้ชมของคุณขยาย เมื่อฐานลูกค้าของคุณเติบโตขึ้น การแจ้งเตือนแบบพุชเป็นวิธีที่มีประสิทธิภาพในการติดต่อกับพวกเขา
- ทำให้ประสบการณ์ผู้ใช้เชื่อมต่อ (UX): ด้วยการให้การแจ้งเตือนการทำธุรกรรมกับผู้บริโภคเพื่อให้พวกเขาทราบและมอบประสบการณ์ข้ามช่องทางที่ราบรื่น คุณสามารถลดความขัดแย้งตลอดเส้นทางของลูกค้า
สรุป
โดยสรุป เราได้รับความรู้เกี่ยวกับสถาปัตยกรรมของบริการแจ้งเตือนแบบพุชที่ปรับขนาดได้ นอกจากนี้เรายังได้พิจารณาเครื่องมือที่ผู้ให้บริการระบบคลาวด์หลักทั้งหมดจัดหาให้ เพื่อให้คุณสามารถตั้งการแจ้งเตือนตามสิ่งเหล่านี้ได้
แม้ว่าฉันจะพยายามอย่างดีที่สุดเพื่อให้คุณเห็นภาพรวมของสถาปัตยกรรมระบบการแจ้งเตือนแบบพุช แต่ก็ยังมีอะไรอีกมากมายเกิดขึ้นเบื้องหลัง
ฉันหวังเป็นอย่างยิ่งว่าคุณจะพบว่าข้อมูลนี้มีประโยชน์และนำไปใช้ให้เกิดประโยชน์
เขียนความเห็น