ข้ามไปยังเนื้อหาหลัก

การแจ้งเตือน

กล่องข้อความส่วนตัวส่งการกล่าวถึง DM การแชร์ ความล้มเหลวของ automation และตัวเตือน แม้ปิดหน้าแล้ว

ป๊อปอัปสถานะ​

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

กล่องข้อความ​

แถวฐานข้อมูลเข้ารหัส เก็บสูงสุด 500 รายการและลบรายการเก่า key แหล่งที่มาช่วยตัดรายการซ้ำ RESTful API ใช้แสดงรายการ นับ ทำเครื่องหมาย และลบ

ส่งสดผ่าน notify:<userId> และ GET /api/notifications/events (SSE) ตัวตนมาจากเซสชัน SQL คือแหล่งข้อมูลจริง

แหล่งที่มา​

channel-dm, channel-mention (เมื่อมีผู้ @mentions คุณใน channel หรือตอบข้อความ), channel-invite, share, automation-failed, calendar-reminder, work-run-finished, work-run-attention, work-takeover, work-approval, system ส่งเฉพาะ user ที่เกี่ยวข้อง

การแจ้งเตือนยังสั่งให้ automation ที่มีทริกเกอร์ event ทำงานได้ เมื่อการแจ้งเตือนชนิดที่เลือกไว้มาถึงเจ้าของ จำกัดด้วย cooldown หนึ่งนาทีต่อ automation

Webhook​

  • URL ที่ตรง ห้าม redirect ที่อยู่ private/link-local ถูกปฏิเสธ เว้นแต่ host อยู่ใน TOOLS_PRIVATE_NETWORK_ALLOWLIST
  • ลงลายเซ็น body ที่ตรงเป็น X-Libre-Signature: sha256=<hmac>
  • ส่งออกเฉพาะ type ชื่อเรื่อง ID และเวลา ไม่ส่งข้อความ พรอมต์ หรือเอกสาร
  • retry จำกัด: 5xx ลองใหม่ 4xx สิ้นสุด
  • เลือก type เฉพาะหรือ *

Push บนเบราว์เซอร์​

  • VAPID RFC 8292: ES256 คู่ key ที่เข้ารหัสและเก็บไว้ หรือ VAPID_PUBLIC_KEY/VAPID_PRIVATE_KEY และที่ติดต่อ VAPID_SUBJECT
  • RFC 8291: aes128gcm ด้วย key อุปกรณ์
  • แยกตามอุปกรณ์และเซสชัน logout จะลบการลงทะเบียน Endpoint เข้ารหัสและต้องเป็น HTTPS สาธารณะ
  • retry จำกัด 404/410 ลบ subscription
  • Payload มีชื่อเรื่อง ข้อความ type และลิงก์

ต้องใช้แอป production และ origin ที่ปลอดภัย Service worker จัดการการติดตั้งและ shell offline โดยไม่ cache API

Email​

อีเมลเป็นช่องส่งที่สามและเป็นช่องเดียวที่ต้องให้ผู้ดูแลระบบตั้งค่าก่อน การตั้งค่า → จัดการผู้ใช้ → การเข้าถึงและนโยบาย → การแจ้งเตือนทางอีเมล เก็บเซิร์ฟเวอร์ SMTP ขาออกหนึ่งตัว: host, port, ความปลอดภัยการเชื่อมต่อ (STARTTLS, TLS ตั้งแต่เริ่มต้น หรือไม่มีสำหรับเครือข่ายที่เชื่อถือได้) ข้อมูลรับรองแบบทางเลือก ที่อยู่ผู้ส่ง และ URL สาธารณะที่ใช้ในลิงก์ ตัวแปรสภาพแวดล้อม SMTP_* ในตัวแปรสภาพแวดล้อม ตั้งค่าเดียวกันไว้เป็นค่าเริ่มต้นสำหรับ deployment แบบ container ค่าที่บันทึกใน UI มีสิทธิ์เหนือกว่า รหัสผ่านถูกเก็บแบบเข้ารหัสและไม่ส่งกลับไปที่เบราว์เซอร์ เลย ส่งทดสอบ จะส่งข้อความไปที่ที่อยู่ของผู้ดูแลระบบเอง (หรือที่อยู่ใดก็ ได้ที่พิมพ์เข้าไป) เพื่อพิสูจน์ round trip ก่อนให้ผู้ใช้พึ่งพามัน

ผู้ดูแลระบบยังเลือกเทมเพลตอีเมลแบบ สว่าง หรือ มืด และดูตัวอย่างก่อนบันทึกได้ ค่าเริ่มต้นคือสว่าง ค่าที่ตั้งไว้ล่วงหน้าที่บันทึกจะใช้กับทุกการแจ้งเตือนและอีเมลทดสอบบนอินสแตนซ์นี้ รวมถึงผลลัพธ์ Markdown และไม่ขึ้นกับธีมอินเทอร์เฟซของผู้ใช้แต่ละคน ตัวอย่างจะแสดงเนื้อหาตัวอย่างโดยไม่ติดต่อ SMTP ไม่ส่งอีเมล และไม่เข้าคิวงาน มีเพียงผู้ดูแลระบบที่อ่านหรือเปลี่ยนค่าที่ตั้งไว้ล่วงหน้าหรือขอดูตัวอย่างได้ ค่าที่ตั้งไว้ล่วงหน้าในตัวจะทำให้ข้อความ ลิงก์ บล็อกโค้ด และปุ่มอ่านได้ชัดเจน และไม่รับเทมเพลต HTML แบบกำหนดเอง ไคลเอนต์อีเมลอาจยังปรับสีตามการตั้งค่าการแสดงผลของตนเอง

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

  • การกล่าวถึงในแชนเนล: ข้อความที่กล่าวถึงคุณใน channel พร้อมตัวอย่างและ ลิงก์ไปยัง channel นั้น
  • ผลลัพธ์ของระบบอัตโนมัติ: ผลของแต่ละรอบ automation ของคุณ ไม่ว่าสำเร็จ หรือล้มเหลว รอบแชตพกคำตอบของผู้ช่วยเอง (สูงสุดสองสามพันตัวอักษร) รอบ Work พกบรรทัดสถานะของ task ส่วนความล้มเหลวพกข้อผิดพลาด ลิงก์เปิดแชตหรือ task ที่ เป็นผล

ทั้งสองสวิตช์ปิดอยู่จนกว่าผู้ใช้จะเปิดเอง และทำงานได้เฉพาะบัญชีที่มีที่อยู่ อีเมล ซึ่งเจ้าของบัญชีตั้งไว้ตอนสมัครหรือผู้ดูแลระบบเพิ่มให้ที่หน้า Users ข้อความออกผ่าน durable job runtime เดียวกับ Web Push พร้อม retry แบบจำกัดสำหรับ ความล้มเหลวชั่วคราวของ relay และ SMTP client เป็น implementation ในตัวขนาดเล็ก (EHLO, STARTTLS, AUTH PLAIN หรือ LOGIN) ที่ไม่ส่งข้อมูลรับรองผ่านการเชื่อมต่อ ที่ไม่เข้ารหัสเลย เว้นแต่ตั้งโหมดเป็น none อย่างชัดเจน ทุกข้อความมีส่วน plain-text และทางเลือก HTML ในสไตล์ของเว็บไซต์: wordmark ของ Libre WebUI การ์ดเดียวที่มีเนื้อหา ปุ่มสีส้มอมชมพูไปยังเป้าหมาย และ footer ที่ชี้กลับไปยัง การตั้งค่า → การแจ้งเตือน ผลลัพธ์ automation แสดงผลจาก Markdown (หัวข้อ, รายการ, ตัวเน้น, code, ลิงก์เฉพาะเป้าหมาย http(s)) ส่วนที่เหลือถูก escape และ รูปภาพภายนอกรูปเดียวที่มีคือโลโก้ที่ส่งจาก librewebui.org ไม่มีการติดตาม

ข้อจำกัด​

ยังไม่มีการตั้งค่าตาม type การออกจาก channel จะหยุดการแจ้งเตือนของ channel นั้น