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

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

ตั้งค่า

การแจ้งเตือนจะส่งข้อความผ่าน Discord หรืออีเมลเมื่อมีเหตุการณ์เกิดขึ้น เช่น มีคำขอรออยู่ มีภาพยนตร์เข้ามา หรือการตรวจสุขภาพระบบพบปัญหา ต้องมีสิทธิ์ Change settings (เปลี่ยนการตั้งค่า)

  1. เปิด Settings > Alerts (การตั้งค่า > การแจ้งเตือน) แล้วกด Add an Alert (เพิ่มการแจ้งเตือน)
  2. ตั้ง Name (ชื่อ) และเลือก Kind (ชนิด): Discord หรืออีเมล
  3. กรอกช่องของชนิดนั้น (ดู ชนิด)
  4. ใต้ When to send (ส่งเมื่อไร) เอาเครื่องหมายออกจากเหตุการณ์ที่ไม่ต้องการ ทุกอย่างติ๊กไว้ตั้งแต่ต้น All of these (ทั้งหมดนี้) และ None of these (ไม่เอาเลย) ใช้กับทั้งกลุ่มได้
  5. เปิด Send messages (ส่งข้อความ) ไว้ แล้วกด Save (บันทึก)
  6. กด Send a test (ส่งข้อความทดสอบ) บนการ์ด ข้อความควรมาถึง และการ์ดจะแสดง Last sent (ส่งล่าสุด)

ใน Discord เปิดการตั้งค่าช่อง แล้วไปที่ Integrations > Webhooks แล้วคัดลอกลิงก์ วางลงใน Discord link (ลิงก์ Discord) ลิงก์ต้องขึ้นต้นด้วย https://discord.com/ คนที่ใส่ Discord user ID ไว้ในบัญชีของตัวเองจะถูกแท็กในข้อความที่เกี่ยวกับคำขอของเขา

ช่อง สิ่งที่ต้องกรอก
Mail server (เซิร์ฟเวอร์อีเมล), Port เซิร์ฟเวอร์อีเมลของคุณ
Security (ความปลอดภัย) STARTTLS (port 587), TLS (port 465) หรือ None ใช้ None เฉพาะเซิร์ฟเวอร์อีเมลในเครือข่ายของคุณเอง
From address (ที่อยู่ผู้ส่ง) ที่อยู่อีเมลผู้ส่ง
Mail username, Mail password (ชื่อผู้ใช้และรหัสผ่านอีเมล) บัญชีอีเมล
Staff addresses (ที่อยู่อีเมลของทีมดูแล) หนึ่งที่อยู่หรือมากกว่า คั่นด้วยจุลภาค

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

Telegram, ntfy, Gotify, Pushover และ webhook ยังไม่เปิดให้ใช้ในเวอร์ชันนี้ ดู ฟีเจอร์ที่ยังไม่เปิดให้ใช้

เหตุการณ์ ส่งถึง เมื่อไร
New request (คำขอใหม่) ทีมดูแล ภาพยนตร์ ซีรีส์ หรือศิลปินรออนุมัติ
Approved (อนุมัติแล้ว) ผู้ขอ คำขอของเขาได้รับการอนุมัติ
Declined (ถูกปฏิเสธ) ผู้ขอ ถูกปฏิเสธ พร้อมหมายเหตุของคุณ
Ready (พร้อมแล้ว) ผู้ขอ ไฟล์เข้าคลังแล้ว
New episodes (ตอนใหม่) ผู้ขอและผู้ติดตาม ไม่เกิน 1 ครั้งต่อซีรีส์ต่อชั่วโมง แต่ละคนปิดการแจ้งเตือนนี้เองได้
New albums (อัลบั้มใหม่) ผู้ติดตามศิลปิน ไม่เกิน 1 ครั้งต่อศิลปินต่อชั่วโมง
Problem reported (มีคนแจ้งปัญหา) ทีมดูแล มีคนแจ้งปัญหาของรายการ รายงานอยู่ที่ /requests/reports
Problem fixed (แก้ปัญหาแล้ว) ผู้แจ้งปัญหา พร้อมคำตอบของคุณ
Sent to download (ส่งไปดาวน์โหลดแล้ว) ทีมดูแล ส่งรีลีสไปให้ตัวดาวน์โหลดแล้ว
In the Library (เข้าคลังแล้ว) ทีมดูแล วางไฟล์แล้ว รวมถึงกรณีได้ฉบับที่ดีกว่า
Renamed (เปลี่ยนชื่อแล้ว) ทีมดูแล ไฟล์ได้ชื่อใหม่
Added (เพิ่มแล้ว) ทีมดูแล เพิ่มรายการด้วยมือ จากลิสต์ หรือจากคำขอ
Deleted (ลบแล้ว) ทีมดูแล ภาพยนตร์ ซีรีส์ ซีซัน หรือตอนออกจากคลังไปแล้ว
Health (สุขภาพระบบ) ทีมดูแล การตรวจสุขภาพ พบปัญหาหรือแก้แล้ว
Needs a decision (รอการตัดสินใจ) ทีมดูแล ดาวน์โหลดหรือการนำเข้าที่ต้องให้คุณตัดสินใจ

ใต้ลิสต์ Season packs (ชุดซีซัน) กำหนดว่าดาวน์โหลดหนึ่งครั้งที่มีหลายตอนจะส่งแบบไหน: One Alert for the pack (แจ้งเตือนหนึ่งครั้งต่อชุด) โดยมีหนึ่งบรรทัดต่อตอน หรือ One Alert per episode (แจ้งเตือนหนึ่งครั้งต่อตอน)

เข้าถึงเครือข่ายภายใน

ลิงก์ไปยัง เข้าถึงเครือข่ายภายใน

ปิดไว้โดยค่าเริ่มต้น ระหว่างที่ปิดอยู่ การแจ้งเตือน Discord จะไปที่ discord.com เท่านั้น และชนิดอื่นจะไปที่เซิร์ฟเวอร์บนอินเทอร์เน็ตเท่านั้น ลิงก์ที่ชี้มาที่เครื่องนี้หรือเครือข่ายในบ้านจะถูกปฏิเสธ แม้จะผ่านการค้นหาชื่อแล้วก็ตาม เปิดตัวเลือกนี้เมื่อใช้เซิร์ฟเวอร์อีเมลหรือตัวรับในบ้าน จะไม่ตามการเปลี่ยนเส้นทาง (redirect) เด็ดขาด

หยุดการแจ้งเตือนชั่วคราว

ลิงก์ไปยัง หยุดการแจ้งเตือนชั่วคราว

เอาเครื่องหมายออกจาก Send messages การ์ดจะแสดง Off และการแจ้งเตือนยังอยู่

เก็บแบบเข้ารหัส แล้วแสดงเป็น Stored (เก็บไว้แล้ว) ปล่อยช่องว่างไว้เพื่อคงค่าเดิม ถ้าชี้การแจ้งเตือนไปที่เซิร์ฟเวอร์อื่น ต้องพิมพ์ความลับใหม่อีกครั้ง ความลับที่เก็บไว้จะไม่ถูกส่งไปที่ใหม่

อาการ:

Paste the Discord link (วางลิงก์ Discord)

สาเหตุ: ลิงก์ไม่ได้ขึ้นต้นด้วย https://discord.com/ วิธีแก้: คัดลอกลิงก์ webhook ใหม่ ถ้าเป็นเซิร์ฟเวอร์คล้าย Discord ที่อยู่ในบ้าน ให้เปิด Reach the local network (เข้าถึงเครือข่ายภายใน)

อาการ:

Points to the local network, which this Alert may not reach (ชี้ไปที่เครือข่ายภายใน ซึ่งการแจ้งเตือนนี้เข้าถึงไม่ได้)

สาเหตุ: เซิร์ฟเวอร์อยู่บนเครื่องนี้หรือในเครือข่ายในบ้านของคุณ วิธีแก้: เปิด Reach the local network

อาการ: Last try failed (ลองครั้งล่าสุดไม่สำเร็จ) พร้อมคำตอบ 401 หรือ 404 สาเหตุ: ลิงก์หรือ token ไม่ถูกต้อง กรณีนี้จะไม่ลองซ้ำ วิธีแก้: แก้ให้ถูก แล้วกด Send a test

อาการ: คนที่ขอไม่ได้รับอะไรเลย สาเหตุ: บัญชีของเขาไม่มีอีเมลหรือ Discord user ID, เหตุการณ์นั้นถูกเอาเครื่องหมายออก หรือเขาปิดการแจ้งเตือนตอนใหม่ วิธีแก้: ตรวจทั้งสามข้อนี้

การลองซ้ำ

ถ้าหมดเวลา ได้คำตอบให้ช้าลง หรือเซิร์ฟเวอร์ผิดพลาด จะลองซ้ำหลังจาก 5 วินาที, 30 วินาที และ 2 นาที ถ้าเซิร์ฟเวอร์ขอให้รอนานกว่านั้น จะทำตามได้สูงสุด 5 นาที ถ้าถูกปฏิเสธ เช่นลิงก์ผิด จะไม่ลองซ้ำ ทุกครั้งที่ล้มเหลวจะเพิ่มแถว “Alert could not be sent” ใน History

ชนิดที่ยังไม่เปิดให้ใช้และช่องของแต่ละชนิด

แสดงเฉพาะเมื่อเปิดสวิตช์ alert_channels_more

ชนิด ช่อง
Telegram Bot token จาก @BotFather, Chat ID (ID ของผู้ใช้ กลุ่ม หรือช่อง หรือ @channel) ต้องส่งข้อความหาบอตหรือเพิ่มบอตเข้ากลุ่มก่อน
ntfy Server address (ถ้าว่างหมายถึง ntfy.sh), Topic, Access token ไม่บังคับ ใครรู้ topic ก็อ่านได้
Gotify Server address, App token
Pushover User key (ใช้คีย์กลุ่มได้), App token
Webhook (JSON) Webhook link, Secret ไม่บังคับ, What the secret does
สิ่งที่ webhook ได้รับ

หนึ่ง POST ต่อหนึ่งข้อความ ใช้ Content-Type: application/json พร้อม header เหล่านี้:

Header ค่า
X-HolyArrs-Event เหตุการณ์ เช่น import หรือ test
X-HolyArrs-Delivery ID สุ่มของข้อความนี้
X-HolyArrs-Timestamp เมื่อเปิด Signs each message: จำนวนวินาทีนับจากปี 1970
X-HolyArrs-Signature เมื่อเปิด Signs each message: sha256= ตามด้วย HMAC-SHA256 แบบฐานสิบหกของ <timestamp>.<delivery>.<body> โดยใช้ความลับของคุณเป็นคีย์
Authorization เมื่อเปิด Is sent as a bearer token: Bearer <secret>

ถ้าเลือก Nothing จะไม่ส่งความลับ เมื่อมีการเซ็น ให้ปฏิเสธ timestamp เก่า และ delivery ID ที่เคยเห็นแล้ว เพื่อไม่ให้ข้อความที่ถูกคัดลอกถูกนำมาส่งซ้ำได้

{
"moment": "import",
"event_kind": "import_done",
"subject": "In the Library: Arrival (2016)",
"text": "Import done: 1 placed by hardlink",
"at": "2025-01-01T18:04:11Z",
"movie": { "id": 12, "name": "Arrival", "year": 2016, "tmdb": "329865", "imdb": "tt2543164" },
"data": { "from": "/downloads/Arrival.2016.1080p" }
}

ฟิลด์อื่นจะปรากฏเมื่อเกี่ยวข้อง: test, show และ episodes, artist และ tracks, report, people ฟิลด์ people เก็บชื่อผู้ขอ ไม่เก็บที่อยู่อีเมล ฟิลด์ data เก็บเหตุผลและพาธจากแถว History ที่อยู่เบื้องหลังข้อความ คำตอบ 2xx ทุกตัวนับว่าส่งถึงแล้ว

HolyArrs ใช้ได้ฟรี ถ้าช่วยประหยัดเวลาคุณได้ กดดาวบน GitHub, สนับสนุนโปรเจกต์ หรือ เลี้ยงกาแฟผู้พัฒนา