แชทบอทที่เขียนด้วย Clojure พร้อมให้บริการคุณ
คุณสามารถมอง Yetibot เป็น บรรทัดคำสั่งส่วนกลางได้ มันเก่งที่:
คุณสมบัติที่ทำให้ Yetibot ทรงพลังและยอดเยี่ยม ซึ่งเรียกได้ว่า สนุก :
ลองดูตัวอย่างการใช้งานเพื่อดูบางส่วน สนุก สิ่งที่มีประโยชน์ก็สามารถทำได้
โครงการนี้ได้รับการสนับสนุนโดย:
ยินดีต้อนรับผู้มีส่วนร่วมรายใหม่!
good first issue
นั้นดีสำหรับผู้มีส่วนร่วมกับ Yetibot เป็นครั้งแรก@devth
เกี่ยวกับ Slack, GitHub หรือที่อื่นๆ ที่คุณสามารถหาได้ รับคำเชิญเข้าร่วมงาน Yetibot slack อย่างเป็นทางการที่ slack.yetibot.com มี Yetibot ทำงานบน Droplet ที่ให้บริการโดย DigitalOcean ซึ่งคุณสามารถเล่นได้ใน Slack
หากต้องการลองใช้ Yetibot อย่างรวดเร็วด้วยการกำหนดค่าขั้นต่ำ:
ใช้ Yetibot อยู่แล้ว? กรุณาเพิ่มตัวเองเข้าไปในรายชื่อผู้ใช้ Yetibot!
ดูการมีส่วนร่วม
Yetibot ได้รับการปรับปรุงอย่างต่อเนื่องนับตั้งแต่ก่อตั้ง สิ่งเหล่านี้คือสิ่งสำคัญเร่งด่วน นอกเหนือจากการแก้ไขข้อบกพร่องใดๆ ข้อเสนอแนะและการมีส่วนร่วมยินดีเป็นอย่างยิ่ง!
#yetibot
หรือเข้าร่วม Yetibot Slack ได้แล้ว! มีหลายวิธีในการเรียกใช้ Yetibot:
ทำตามคำแนะนำของ Docker : วิธีที่เร็วที่สุดหากคุณใช้ Docker อยู่แล้ว
yetibot-helm : Helm Chart อย่างเป็นทางการสำหรับการรัน Yetibot บน Kubernetes อย่างรวดเร็ว
โคลน repo นี้ : สิ่งนี้ให้การติดตั้ง Yetibot มาตรฐานแก่คุณ และจัดเตรียมตำแหน่งที่ไม่สนใจ git เพื่อจัดเก็บการกำหนดค่า เรียกใช้จากรูต dir ด้วย lein run
สร้าง repo ของคุณเองและพึ่งพา Yetibot : สิ่งนี้ให้ความสามารถในการปรับแต่งขั้นสูงสุด ช่วยให้คุณสามารถพึ่งพาปลั๊กอิน Yetibot แบบกำหนดเองหรือกำหนดคำสั่งของคุณเองในโปรเจ็กต์ และให้คุณควบคุมตำแหน่งที่คุณจัดเก็บการกำหนดค่าของคุณ (การจัดการด้วยตนเอง ผูกมัดกับคอมไพล์ส่วนตัว ซื้อคืน ฯลฯ...)
ดูเอกสารการกำหนดค่า
สำหรับเอกสารเพิ่มเติม โปรดดูคู่มือผู้ใช้
คำสั่งทั้งหมดขึ้นต้นด้วย !
-
เอาต์พุตจากคำสั่งหนึ่งสามารถส่งไปยังอีกคำสั่งหนึ่งได้ เช่น ไปป์ Unix
!complete does IE support | xargs echo %s? No, it is sucky.
does ie support html5? No, it is sucky.
does ie support css3? No, it is sucky.
does ie support svg? No, it is sucky.
does ie support media queries? No, it is sucky.
does ie support ftps? No, it is sucky.
does ie support png? No, it is sucky.
does ie support canvas? No, it is sucky.
does ie support @font-face? No, it is sucky.
does ie support webgl? No, it is sucky.
does ie support ttf? No, it is sucky.
Backticks มีไวยากรณ์ที่ไม่ซับซ้อนสำหรับนิพจน์ย่อย แต่ไม่สามารถซ้อนกันได้
!meme grumpy cat: `catfact` / False
สำหรับนิพจน์ย่อยที่ซ้อนกันตามอำเภอใจ ให้ใช้ไวยากรณ์ $(expr)
ซึ่งแยกความกำกวมของการเปิดและการปิดของนิพจน์
!meme philos: $(complete how does one $(users | random | letters | random) | random)
!echo `repeat 4 echo i don't always repeat myself but | unwords`…StackOverflowError | meme interesting:
คุณสามารถสร้างนามแฝงของคุณเองได้ที่รันไทม์ สิ่งเหล่านี้ถูกจัดเก็บไว้ในฐานข้อมูลที่กำหนดค่าไว้ ดังนั้นเมื่อรีสตาร์ท พวกมันจะถูกกู้คืน
!alias nogrid = repeat 3 echo `repeat 3 meme grumpy: no | join`
สามารถใช้ไปป์ได้ แต่ต้องเสนอราคาทางด้านขวามือเพื่อถือเป็นค่าตามตัวอักษร แทนที่จะประเมินตามพฤติกรรมของไปป์ปกติ
!alias i5 = "random | echo http://icons.wunderground.com/webcamramdisk/w/a/wadot/324/current.jpg?t=%s&.jpg"
คุณสามารถระบุอาร์กิวเมนต์ตัวยึดตำแหน่งทางด้านขวามือได้โดยใช้ $s
เพื่อระบุอาร์กิวเมนต์ทั้งหมด หรือ $n
(โดยที่ n คือดัชนีฐาน 1 ซึ่งหาเรื่อง)
!alias temp = "weather $s | head 2 | tail"
!temp 98104
=> 33.6 F (0.9 C), Overcast
IRC : Yetibot สามารถรับฟังได้ทุกช่องทาง คุณกำหนดค่าช่องใน config.edn คุณยังสามารถเชิญ Yetibot มาที่ช่องขณะรันไทม์ได้โดยใช้คำสั่ง IRC /invite
:
/invite yetibot #whoa
เมื่อคุณเชิญ Yetibot มาที่ช่องใหม่ config.edn
จะถูกเขียนทับ ดังนั้นครั้งต่อไปที่คุณรีสตาร์ท Yetibot มันจะกลับเข้าร่วมช่องเดิมอีกครั้ง
คุณยังสามารถใช้คำสั่ง !room
เพื่อบอกให้ yetibot เข้าร่วมหรือออกจากช่องได้
!help room
room join # join
room leave # leave
room list # list rooms that yetibot is in
room set # configure a setting for the current room
room settings # show all chat settings for this room
room settings # show the value for a single setting
Slack : บอทไม่สามารถเข้าร่วมช่องได้ด้วยตัวเอง ต้องได้รับเชิญ ดังนั้นจึงใช้การกำหนดค่าห้องไม่ได้ แทนที่จะทำเช่นนั้น /invite @yetibot
ไปที่ช่องใดๆ ที่คุณอยู่ และ /kick @yetibot
หากคุณต้องการให้ออก หมายเหตุ: คุณอาจต้องมีสิทธิ์พิเศษเพื่อที่จะเตะได้
ไม่รองรับแคมป์ไฟอีกต่อไป หากคุณใช้แคมป์ไฟ ให้เปิดปัญหาแล้วเราจะเพิ่มกลับเข้าไปได้!
แพลตฟอร์มแชทอื่นๆ : หากแพลตฟอร์มแชทที่คุณเลือกไม่รองรับ ให้เปิดปัญหา การเพิ่มอะแดปเตอร์นั้นค่อนข้างง่าย
หากห้องใดตั้งค่า broadcast
เป็น true
ทวีตจะถูกโพสต์ไปที่ห้องนั้น โดยค่าเริ่มต้นทุกห้องจะตั้งค่าเป็นเท็จ หากต้องการเปิดใช้งาน:
!room set broadcast true
Yetibot จัดทำเอกสารด้วยตนเองโดยใช้เอกสารของคำสั่งต่างๆ ขอ !help
เพื่อรับรายการหัวข้อความช่วยเหลือ !help all
แสดงรายการคำสั่งแบบขยายสำหรับแต่ละหัวข้อ
!help | join ,
Use help for more details, !, that, alias, ascii, asciichart,
attack, buffer, catfact, chat, chuck, classnamer, clj, cls, complete, config,
count, curl, ebay, echo, eval, features, gh, giftv, grep, haiku, head, help,
history, horse, hs, http, image, info, jargon, jen, join, js, keys, list, log,
mail, meme, memethat, mustachefact, number, order, poke, poms, random, raw,
react, reload, repeat, rest, reverse, rhyme, scala, scalex, sed, set, sort, source,
split, ssh, status, tail, take, tee, twitter, update, uptime, urban, users,
vals, weather, wiki, wolfram, wordnik, words, xargs, xkcd, zen
Yetibot มีสถาปัตยกรรมแบบปลั๊กอิน แกนหลักที่ปลั๊กอินทั้งหมดใช้คือ yetibot.core
Yetibot จะโหลดคำสั่งและผู้สังเกตการณ์ทั้งหมดด้วยเนมสเปซบน classpath ที่ตรงกับ regexes เหล่านี้
สิ่งนี้ช่วยให้คุณสร้างโปรเจ็กต์ปลั๊กอินอิสระจำนวนเท่าใดก็ได้และรวมเข้าด้วยกันผ่านการพึ่งพา Leiningen มาตรฐาน
อยากรู้ว่าระบบภายในของ Yetibot ทำงานอย่างไร? ในระดับสูง:
hook
เข้ากับฟังก์ชัน handle-cmd
ของล่ามโดยใช้มาโคร cmd-hook
และถูกทริกเกอร์ผ่านการจับคู่คำนำหน้า regex หากเอกสารหรือโค้ดการใช้งานไม่ดีนัก โปรดเปิดคำขอดึงข้อมูลและอธิบายสาเหตุ เพื่อให้เราสามารถปรับปรุงเอกสารได้ นอกจากนี้อย่าลังเลที่จะเปิดปัญหาสำหรับการร้องขอคุณสมบัติ!
ลิขสิทธิ์ © 2012-2019 เทรเวอร์ ฮาร์ทแมน เผยแพร่ภายใต้ Eclipse Public License 1.0 เช่นเดียวกับ Clojure
ออกแบบโลโก้โดย Freeform Design Co.