ผู้ใช้:Crazycomputers/WatchlistBot

อินเทอร์เฟซการจัดการเว็บใหม่ ซึ่งช่วยให้การดำเนินการรายการเฝ้าดูหลายอย่างง่ายขึ้น

WatchlistBotเป็นบอทXMPP ที่จะอนุญาตให้ผู้ใช้รักษารายการเฝ้าดูที่คล้ายกับ (แต่แยกออกจาก) รายการเฝ้าดูบน Wikipedia ข้อแตกต่างที่สำคัญคือ เมื่อเพจในรายการเฝ้าดู WatchlistBot ของผู้ใช้มีการเปลี่ยนแปลง พวกเขาจะได้รับแจ้งการแก้ไขทันทีผ่านไคลเอนต์ IM

หากคุณชอบใช้ WatchlistBot คุณสามารถใส่ {{ User:Crazycomputers/Userbox/WatchlistBot }} บนหน้าผู้ใช้ของคุณเพื่อแจ้งให้ผู้อื่นทราบเกี่ยวกับโครงการนี้

ประเภทรายการเฝ้าดู

บทความ
คุณจะได้รับการแจ้งเตือนทุกครั้งที่มีการแก้ไขบทความ
ผู้ใช้
คุณจะได้รับการแจ้งเตือนทุกครั้งที่ผู้ใช้ทำการแก้ไข
เครือข่าย
คุณจะได้รับการแจ้งเตือนเมื่อใดก็ตามที่ที่อยู่ IP ใด ๆ ในเครือข่ายทำการแก้ไข
ไวท์ลิสต์
การแก้ไขที่ทำโดยผู้ใช้ที่ได้รับอนุญาตพิเศษจะไม่ถูกรายงานให้คุณทราบ และจะแทนที่รายการเฝ้าดูประเภทอื่นๆ ทั้งหมด

ข้อกำหนดรายการเฝ้าดู

รายการเฝ้าดูทั้งหมดสามารถระบุได้โดยใช้ไวยากรณ์ทั่วไป โดยมีการเปลี่ยนแปลงเล็กน้อยสำหรับรายการแต่ละประเภท:

  • สำหรับบทความ ผู้ใช้ และเครือข่าย:ชื่อเปล่า เช่น "Wikipedia:Sandbox" สิ่งนี้จะดูรายการที่ระบุบนวิกิเริ่มต้นของคุณตามตัวแปรของคุณ
  • สำหรับบทความ ผู้ใช้ และเครือข่าย:ชื่อที่เข้าเกณฑ์วิกิ เช่น "{en.wikipedia}Wikipedia:Sandbox" สิ่งนี้จะดูรายการที่ระบุบนวิกิที่ระบุ
  • สำหรับบทความ: URL ไปยังบทความที่จะรับชม ชื่อวิกิจะถูกแยกออกจาก URL (โปรดทราบว่าไวยากรณ์นี้สามารถ แต่ไม่ควรใช้ในการดูผู้ใช้ เนื่องจากเนมสเปซของผู้ใช้จะไม่ถูกถอดออก ดังนั้น การพยายามดูผู้ใช้ "http://en.wikipedia.org/wiki/User:Crazycomputers" จะ ลงเอยด้วยการดูผู้ใช้ "User:Crazycomputers" (ที่ไม่มีอยู่จริง) แทนที่จะเป็นเป้าหมาย "Crazycomputers" ที่ตั้งใจไว้)

ต้องระบุเครือข่ายเป็นบล็อก CIDR (สัญลักษณ์xxx.xxx.xxx.xxx/nn ) ตามที่ระบุข้างต้น คุณสามารถระบุวิกิที่จะรับชมการแก้ไขโดยเครือข่ายนี้โดยใช้คำนำหน้า "{ language.project}" เพื่อเป็นการป้องกัน บอทจะไม่อนุญาตให้ดูเครือข่ายที่มีตัวระบุเครือข่ายที่มีความยาวน้อยกว่า 16 บิต

บทความและชื่อผู้ใช้ถูกทำให้เป็นมาตรฐานโดยใช้ชุดย่อยของอัลกอริธึมการทำให้เป็นมาตรฐานของ MediaWiki เอง โดยมีข้อยกเว้นบางประการ:

  • ไม่เข้าใจเนมสเปซ ดังนั้นการพยายามดู "user:crazycomputers" จะส่งผลให้ดู "User:crazycomputers" แน่นอนว่าสิ่งนี้จะไม่ให้ผลลัพธ์ใดๆ เลยจริงๆ ระบุชื่อรายการให้ถูกต้องเสมอ (นี่เป็นเพราะความจริงที่ว่าเนมสเปซแตกต่างกันไปในแต่ละโปรเจ็กต์และจากภาษาหนึ่งไปอีกภาษา และฉันไม่สนใจที่จะปรับแต่งข้อมูลนี้อยู่ตลอดเวลาเพื่อความสะดวกเล็กน้อย)
  • เครื่องหมายปอนด์ (#) และอักขระต่อท้ายทั้งหมดจะถูกถอดออก มีจุดมุ่งหมายเพื่อให้ง่ายต่อการคัดลอกและวาง URL โดยไม่ต้องกังวลว่าจะมีการตามลิงก์ส่วนหรือไม่
  • อักขระที่ไม่ถูกต้องในชื่อบทความจะไม่ถูกตัดออก และจะไม่ทำให้เกิดข้อผิดพลาด คุณสามารถเพิ่มบทความ "<>{}:" ลงในรายการเฝ้าดูได้ฟรีหากต้องการ
  • ในโครงการเช่น Wiktionary ซึ่งอักษรตัวแรกของชื่อไม่ได้ถูกบังคับให้ใช้ตัวพิมพ์ใหญ่ บอทจะไม่ดำเนินการใช้อักษรตัวพิมพ์ใหญ่โดยอัตโนมัติเช่นกัน

การพยายามดูรายการบนวิกิที่ไม่มีอยู่จะส่งผลให้เกิดข้อผิดพลาด

การใช้งาน

หากต้องการเริ่มใช้ WatchlistBot ให้ส่งคำขอสมัครสมาชิกไปที่[email protected]ในไคลเอนต์ XMPP ของคุณ บอทควรอนุมัติคำขอนี้ทันที (โปรดทราบว่านี่ไม่ใช่ที่อยู่อีเมล )

จากนั้นเพียงส่งข้อความ "ช่วยเหลือ" ไปยังบอทเพื่อสรุปคำสั่ง คำสั่งที่ใช้ได้มีบันทึกไว้ที่นี่ด้วย

คำสั่งแยกวิเคราะห์

บอทใช้อัลกอริธึมการแยกวิเคราะห์เวอร์ชันพื้นฐานที่ใช้โดยเชลล์เป้าหมาย โปรดทราบว่าเครื่องหมายคำพูดเดี่ยวและคู่ ( 'และ") จะถือเป็นแบบพิเศษ และอนุญาตให้ฝังช่องว่างลงในอาร์กิวเมนต์คำสั่งได้ง่ายขึ้น (เมื่อจำเป็น) หากคุณกำลังพยายามดูบทความที่ชื่อเรื่องมีอักขระตัวใดตัวหนึ่งเหล่านี้ คุณจะต้องหลีกเลี่ยงอักขระเหล่านั้นโดยใส่เครื่องหมายแบ็กสแลช ( \'หรือ ) นำหน้าด้วยเครื่องหมายแบ็กสแลช ( หรือ\") หากคุณไม่ทำเช่นนั้น บอทจะบ่นว่าคุณจับคู่เครื่องหมายคำพูดไม่ถูกต้อง เว้นแต่จะสามารถค้นหาเครื่องหมายคำพูดที่ตรงกันในชื่อได้ (และหากเป็นเช่นนั้น ก็จะไม่ได้ดูบทความที่คุณต้องการดู)

ตัวอย่างเช่น:

article add Don't Let Me Down
ล้มเหลวด้วย: Unable to parse arguments: unterminated '.
article add Don\'t Let Me Down
นาฬิกาอย่าทำให้ฉันผิดหวัง แบ็กสแลชบังคับให้ใช้เครื่องหมายอะพอสทรอฟี่ตามตัวอักษร
article add "Don't Let Me Down"
ได้ดูDon't Let Me Downด้วย เครื่องหมายอะพอสทรอฟีอยู่ระหว่างเครื่องหมายคำพูดคู่ ดังนั้นจึงถือเป็นเครื่องหมายคำพูดอย่างแท้จริง
article add "Weird Al" Yankovic
นาฬิกาWeird Al Yankovicซึ่งเปลี่ยนเส้นทางไปยัง"Weird Al" Yankovic (เครื่องหมายคำพูดคู่ถูกใช้โดย parser)
article add \"Weird Al\" Yankovic
เฝ้าดู"Weird Al" Yankovicโดยการหลีกเลี่ยงเครื่องหมายคำพูด
article add '"Weird Al" Yankovic'
เฝ้าดู"Weird Al" Yankovicโดยการฝังเครื่องหมายคำพูดไว้ในสตริงที่มีเครื่องหมายคำพูดเดี่ยว

กฎเหล่านี้อาจไม่คุ้นเคยสำหรับคุณ หากเป็นเช่นนั้น ให้ลองคัดลอกและวาง URL แทน เบราว์เซอร์ทั้งหมดจะเข้ารหัสเครื่องหมายคำพูดเดี่ยวเป็นเปอร์เซ็นต์ เพื่อป้องกันไม่ให้ตัวแยกวิเคราะห์คำสั่งจัดการกับเครื่องหมายเหล่านั้นเป็นพิเศษ เบราว์เซอร์ส่วนใหญ่ยังเข้ารหัสเครื่องหมายคำพูดคู่ด้วย แต่ไม่จำเป็นในทางเทคนิค ดังนั้นวิธีที่ปลอดภัยที่สุดในการดูหน้าเว็บด้วย URL คือการล้อม URL ด้วยเครื่องหมายคำพูดเดี่ยว ตัวอย่างเช่น:

article add 'http://en.wikipedia.org/wiki/"Weird_Al"_Yankovic'
ชม"เวียร์อัล" ยานโควิช .

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

คำสั่ง

เกี่ยวกับ

แสดงเวอร์ชันและเครดิตของบอท

บทความ

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

(พารามิเตอร์การกระทำขึ้นอยู่กับความสมบูรณ์ ดังนั้น "r" จะเพียงพอสำหรับ "remove" เป็นต้น)

ไวยากรณ์:

บทความ <เพิ่ม|แก้ไข> [--comment=" comment "] <item>
บทความลบ <item>
รายการบทความ

บรรณาธิการ

จัดการรายชื่อบรรณาธิการที่ดูของคุณ ดูคำสั่งบทความเพื่อดูรายละเอียด

ไวยากรณ์:

ตัวแก้ไข <เพิ่ม|แก้ไข> [--comment=" comment "] <item>
ตัวแก้ไขลบ <item>
รายการบรรณาธิการ

ช่วย

แสดงข้อมูลสรุปของคำสั่งเหล่านี้

เครือข่าย

จัดการรายการเครือข่ายที่ดูของคุณ ดูคำสั่งบทความเพื่อดูรายละเอียด

ต้องระบุเครือข่ายในรูปแบบ CIDR เครือข่ายที่เทียบเท่าจะถือเป็นรายการเดียว ดังนั้นการพยายามรับชมเครือข่าย 127.0.255.255/16 ในขณะที่รับชม 127.0.0.0/16 จะส่งผลให้เกิดข้อผิดพลาด เนื่องจากสิ่งเหล่านี้อธิบายถึงเครือข่ายเดียวกัน ในทำนองเดียวกัน การพยายามลบ 127.0.255.255/16 ในขณะที่ 127.0.0.0/16 อยู่ในรายการเฝ้าดูของคุณจะเป็นการลบ 127.0.0.0/16

ไวยากรณ์:

เครือข่าย <เพิ่ม|แก้ไข> [--comment=" comment "] <item>
เครือข่ายลบ <รายการ>
รายการเครือข่าย

ชุด

ตั้งค่าหรือแสดงตัวแปรของคุณ ตารางต่อไปนี้แสดงรายการตัวแปรที่มีอยู่และอธิบายการทำงานของตัวแปรเหล่านั้น

ตัวแปร พิมพ์ ค่าเริ่มต้น คำอธิบาย
ภาษา สตริง ห้องน้ำในตัว ภาษาโครงการเริ่มต้น
โครงการ สตริง วิกิพีเดีย ชื่อโครงการเริ่มต้น

ไวยากรณ์:ตั้งค่า [< ตัวแปร > < การตั้งค่า >]

สถิติ

แสดงสถิติการดำเนินงานบางส่วน:

  • เมื่อบอทถูกรีสตาร์ทครั้งล่าสุด
  • มีการส่งการแจ้งเตือนไปกี่ครั้งแล้วตั้งแต่บอทรีสตาร์ท
  • ไม่ว่าการเชื่อมต่อ IRC จะทำงานอยู่หรือไม่ ใช้งานได้นานเท่าใด และมีการเปลี่ยนแปลงจำนวนเท่าใดที่ประมวลผลระหว่างการเชื่อมต่อปัจจุบัน รวมถึงตั้งแต่ที่บอทรีสตาร์ท
  • ผู้แจ้งเตือนแต่ละคนแสดงมานานแค่ไหนแล้ว ("ขึ้น" ในบริบทนี้มักจะหมายถึง "เชื่อมต่อกับเซิร์ฟเวอร์แล้ว" ดังนั้นหากตัวแจ้งเตือน XMPP หยุดทำงาน นั่นหมายความว่าบอทไม่ได้เชื่อมต่อกับเซิร์ฟเวอร์ XMPP ซึ่งคุณจะไม่มีวันเห็นเว้นแต่คุณจะเรียกใช้คำสั่งนี้ เครือข่ายแชทอื่นแน่นอน)

ไวยากรณ์:สถิติ

เว็บ

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

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

รายการที่อนุญาต

จัดการรายชื่อบรรณาธิการที่ได้รับอนุญาตพิเศษของคุณ ดูคำสั่งบทความเพื่อดูรายละเอียด

ไวยากรณ์:

รายการที่อนุญาต <เพิ่ม|แก้ไข> [--comment=" comment "] <item>
รายการที่อนุญาตลบ <item>
รายการไวท์ลิสต์

การรายงานปัญหา

ไม่พร้อมใช้งาน

หากบอทไม่ออนไลน์ การรายงานปัญหาไปยังหน้าพูดคุยใดๆ ของฉันไม่น่าจะได้รับการตอบกลับอย่างรวดเร็วเนื่องจากฉันจะไม่ได้รับข้อความแจ้งเตือนเกี่ยวกับรายงานของคุณ วิธีที่ดีที่สุดในการติดต่อฉันคือผ่านวิธีการสื่อสารแบบเรียลไทม์ที่ฉันเผยแพร่ไว้

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

แมลง

ใช้หน้าพูดคุยของหน้านี้เพื่อรายงานข้อบกพร่องใดๆ หากเป็นไปได้ โปรดรวมตัวระบุการคอมมิต ซึ่งคุณสามารถรับได้โดยการรันคำสั่ง "เกี่ยวกับ" หรือโดยไปที่เว็บอินเตอร์เฟส (หากบอทล่ม เว็บอินเทอร์เฟซจะยังคงตอบสนองอยู่) ซึ่งจะช่วยให้ฉันจำลองปัญหาในสภาพแวดล้อมการทดสอบโดยเทียบกับเวอร์ชันเฉพาะที่คุณใช้อยู่ในขณะนั้น

หมายเหตุเกี่ยวกับการไล่ล่า

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

แพลตฟอร์ม

  • ระบบปฏิบัติการ: Linux 3.9.2 (Debian Wheezy)
  • ฐานข้อมูล: PostgreSQL 9.1.9
  • รันไทม์ของบอท: Mono 3.0.10 โดยใช้:
    • jabber-net สำหรับการเชื่อมต่อ XMPP
    • SmartIrc4net สำหรับการเชื่อมต่อ IRC
    • ASP.NET MVC Frameworkและเพื่อจัดเตรียมอินเทอร์เฟซเว็บ ให้บริการจากnginxพร้อมแบ็กเอนด์ FastCGI ของ Mono

ความเป็นส่วนตัว

ในฐานะผู้พัฒนาและผู้ดำเนินการบอท ฉันจำเป็นต้องมีสิทธิ์เข้าถึงรายการเฝ้าดูของทุกคนอย่างเต็มรูปแบบ ฉันจะเก็บข้อมูลนี้ไว้เป็นความลับอย่างสุดความสามารถ หากคุณกังวลเกี่ยวกับความเป็นส่วนตัว โปรดคำนึงถึงสองสิ่งต่อไปนี้:

  1. ฉันไม่มีความรู้เกี่ยวกับที่อยู่ IP ของคุณ เว้นแต่คุณจะใช้อินเทอร์เฟซเว็บ
  2. ฉันไม่ทราบชื่อบัญชี Wikipedia ของคุณ เว้นแต่จะเป็นส่วนหนึ่งของการจัดการ IM ของคุณ หรือคุณกำลังดูหน้าผู้ใช้ของคุณ (และไม่มีหน้าผู้ใช้อื่น)

ข้อสงวนสิทธิ์

ฉันไม่รับประกันอย่างแน่นอนเกี่ยวกับความถูกต้องหรือความทันเวลาของข้อมูลที่ส่งโดย WatchlistBot คุณไม่สามารถถือว่าฉันรับผิดชอบต่อข้อมูลที่ไม่สามารถจัดส่งหรือจัดส่งไม่ถูกต้อง คุณไม่สามารถถือว่าฉันรับผิดชอบต่อความเสียหายที่เกิดขึ้นจากการใช้งาน ไม่สามารถใช้งาน หรือการทำงานผิดพลาดของบริการนี้ได้ คุณไม่สามารถถือว่าฉันรับผิดชอบต่อการละเมิดความปลอดภัยของข้อมูลใด ๆ ที่อาจเกิดขึ้น เช่น การเปิดเผยเนื้อหาในรายการเฝ้าดูและ/หรือหมายเลขอ้างอิง IM ของคุณ

ดึงมาจาก "https://en.wikipedia.org/w/index.php?title=User:Crazycomputers/WatchlistBot&oldid=927775050"