Skip to content

A Dockerized IRC Emoji Bot written in Python 3

License

Notifications You must be signed in to change notification settings

nihues/irc-emoji-bot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IRC Emoji Bot

A Dockerized IRC Emoji Bot written in Python 3


Setting up

Quickstart
# Clone the repository
git clone https://github.com/AlexGustafsson/irc-emoji-bot
# Enter the directory
cd irc-emoji-bot
# Run
python3 -m bot.main --server irc.example.com

You can also run the container using Docker, like so:

# Build the image
docker build -t axgn/irc-emoji-bot:latest .

# Run
docker run axgn/irc-emoji-bot --server irc.example.com --channel "#random"

Documentation

Running with Docker

docker run axgn/irc-emoji-bot --server irc.example.com --channel "#random"

The image is stateless and based on Alpine and is roughly 90MB in size. While running, the container usually uses 0% of the CPU and roughly 7MB of RAM. During load it uses about 0.20% CPU and while starting about 0.4% on a single core and an unchanged amount of RAM.

To prevent any unforseen events, one can therefore limit the container's resources by using the flags --cpus=0.05 and --memory=10MB which should both leave some head room.

Invoking via IRC

To see help messages send emoji-bot: help in the channel where the bot lives.

To send a message containing an emoji and text, use the format emoji-bot: (bond) freeze, sucka!!! which will send ┌( ͝° ͜ʖ͡°)=ε/̵͇̿̿/’̿’̿ ̿ freeze, sucka!!!.

By sending a message such as I just saw my friend use Vim (rage), the bot will send t(ಠ益ಠt).

Available emojis

Source: http://asciimoji.com

Note: there may be some rendering issues in the table below. See bot/emojis.csv for exact values.

command emoji
(acid) ⊂(◉‿◉)つ
(afraid) (ㆆ _ ㆆ)
(alpha) α
(angel) ☜(⌒▽⌒)☞
(angry) •`_´•
(arrowhead) ⤜(ⱺ ʖ̯ⱺ)⤏
(apple)
(ass) (‿
(butt) (‿
(awkward) •͡˘㇁•͡˘
(bat) /
(bear) ʕ·͡ᴥ·ʔ
(koala) ʕ·͡ᴥ·ʔ
(bearflip) ʕノ•ᴥ•ʔノ ︵ ┻━┻
(bearhug) ʕっ•ᴥ•ʔっ
(because)
(since)
(beta) β
(bigheart)
(blackeye) 0__#
(blubby) ( 0 _ 0 )
(blush) (˵ ͡° ͜ʖ ͡°˵)
(bond) ┌( ͝° ͜ʖ͡°)=ε/̵͇̿̿/’̿’̿ ̿
(007) ┌( ͝° ͜ʖ͡°)=ε/̵͇̿̿/’̿’̿ ̿
(boobs) ( . Y . )
(bored) (-_-)
(bribe) ( •͡˘ _•͡˘)ノð
(bubbles) ( ˘ ³˘)ノ°゚º❍。
(butterfly) ƸӜƷ
(cat) (= ФェФ=)
(catlenny) ( ͡° ᴥ ͡°)
(check)
(cheer) ※(^o^)/※
(chubby) ╭(ʘ̆◞౪◟ʘ̆)╮
(claro) (͡ ° ͜ʖ ͡ °)
(clique) ヽ༼ ຈل͜ຈ༼ ▀̿̿Ĺ̯̿̿▀̿ ̿༽Ɵ͆ل͜Ɵ͆ ༽ノ
(gang) ヽ༼ ຈل͜ຈ༼ ▀̿̿Ĺ̯̿̿▀̿ ̿༽Ɵ͆ل͜Ɵ͆ ༽ノ
(squad) ヽ༼ ຈل͜ຈ༼ ▀̿̿Ĺ̯̿̿▀̿ ̿༽Ɵ͆ل͜Ɵ͆ ༽ノ
(cloud)
(club)
(coffee) c[_]
(cuppa) c[_]
(cmd)
(command)
(cool) (••) ( ••)>⌐■-■ (⌐■_■)
(csi) (••) ( ••)>⌐■-■ (⌐■_■)
(copy) ©
(c) ©
(creep) ԅ(≖‿≖ԅ)
(creepcute) ƪ(ړײ)‎ƪ​​
(crim3s) ( ✜︵✜ )
(cross)
(cry) (╥﹏╥)
(crywave) ( ╥﹏╥) ノシ
(cute) (。◕‿‿◕。)
(d1)
(d2)
(d3)
(d4)
(d5)
(d6)
(dab) ヽ( •_)ᕗ
(damnyou) (ᕗ ͠° ਊ ͠° )ᕗ
(dance) ᕕ(⌐■_■)ᕗ ♪♬
(dead) x⸑x
(dealwithit) (⌐■_■)
(dwi) (⌐■_■)
(delta) Δ
(depressed) (︶︹︶)
(derp) ☉ ‿ ⚆
(diamond)
(dj) d[-_-]b
(dog) (◕ᴥ◕ʋ)
(dollar) $
(dollarbill) [̲̅$̲̅(̲̅ιο̲̅̅)̲̅$̲̅]
($) [̲̅$̲̅(̲̅ιο̲̅̅)̲̅$̲̅]
(dong) (̿▀̿ ̿Ĺ̯̿̿▀̿ ̿)̄
(donger) ヽ༼ຈل͜ຈ༽ノ
(dontcare) (- ʖ̯-)
(idc) (- ʖ̯-)
(do not want) ヽ(`Д´)ノ
(dontwant) ヽ(`Д´)ノ
(dope) <(^_^)>
(<<) «
(>>) »
(doubleflat) 𝄫
(doublesharp) 𝄪
(doubletableflip) ┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻
(down)
(duckface) (・3・)
(duel) ᕕ(╭ರ╭ ͟ʖ╮•́)⊃¤=(————-
(duh) (≧︿≦)
(dunno) ¯(°_o)/¯
(ebola) ᴇʙᴏʟᴀ
(eeriemob) (-(--(-(-(--)-)--)-)-)-)
(ellipsis)
(...)
(emdash)
(--)
(emptystar)
(emptytriangle)
(t2)
(endure) (҂◡_◡) ᕤ
(envelope) ✉︎
(letter) ✉︎
(epsilon) ɛ
(euro)
(evil) ψ(`∇´)ψ
(evillenny) (͠≖ ͜ʖ͠≖)
(excited) (ノ◕ヮ◕)ノ*:・゚✧
(execution) (⌐■_■)︻╦╤─ (╥﹏╥)
(facebook) (╯°□°)╯︵ ʞooqǝɔɐɟ
(facepalm) (-‸ლ)
(fancytext) "вєωαяє, ι αм ƒαη¢у!"
(fart) (ˆ⺫ˆ๑)<3
(fight) (ง •̀_•́)ง
(finn)
(fish) "<""(((<3"
(5)
(five)
(5/8)
(flat)
(bemolle)
(flexing) ᕙ(`▽´)ᕗ
(fliptext) ǝןqɐʇ ɐ ǝʞıן ǝɯ dıןɟ
(fliptexttable) (ノ ゜Д゜)ノ ︵ ǝןqɐʇ ɐ ǝʞıן ʇxǝʇ dıןɟ
(flipped) ┬─┬ ︵ /(.□. \)
(heavytable) ┬─┬ ︵ /(.□. \)
(flower) (✿◠‿◠)
(flor) (✿◠‿◠)
(f)
(fly) ─=≡Σ((( つ◕ل͜◕)つ
(friendflip) (╯°□°)╯︵ ┻━┻ ︵ ╯(°□° ╯)
(frown) (ღ˘⌣˘ღ)
(fuckoff) ୧༼ಠ益ಠ╭∩╮༽
(gtfo) ୧༼ಠ益ಠ╭∩╮༽
(fuckyou) ┌П┐(ಠ_ಠ)
(fu) ┌П┐(ಠ_ಠ)
(gentleman) ಠ_ರ
(sir) ಠ_ರ
(monocle) ಠ_ರೃ
(ghast) = _ =
(ghost) ༼ つ ╹ ╹ ༽つ
(gift) (´・ω・)っ由
(present) (´・ω・)っ由
(gimme) ༼ つ ◕_◕ ༽つ
(givemeyourmoney) (•-•)⌐
(glitter) (・‿・)ノ⌒:・゚✧
(glasses) (⌐ ͡■ ͜ʖ ͡■)
(glassesoff) ( ͡° ͜ʖ ͡°)ノ⌐■-■
(glitterderp) (ノ☉ヮ⚆)ノ ⌒*:・゚✧
(gloomy) (゜_゜)
(goatse) (з๏ε)
(gotit) (☞゚∀゚)☞
(greet) ( ´◔ ω◔`) ノシ
(greetings) ( ´◔ ω◔`) ノシ
(gun) ︻╦╤─
(mg) ︻╦╤─
(hadouken) ༼つಠ益ಠ༽つ ─=≡ΣO))
(hammerandsickle)
(hs)
(handleft)
(hl)
(handright)
(hr)
(haha) ٩(^‿^)۶
(happy) ٩( ๑╹ ꇴ╹)۶
(happygarry) ᕕ( ᐛ )ᕗ
(h)
(heart)
(hello) (ʘ‿ʘ)╯
(ohai) (ʘ‿ʘ)╯
(bye) (ʘ‿ʘ)╯
(help) (°Ω°)/
(highfive) ..)/(..
(hitting) ( `皿´)。ミ/
(hug) (づ。◕‿‿◕。)づ
(hugs) (づ。◕‿‿◕。)づ
(iknowright) ┐|・ิω・ิ#|┌
(ikr) ┐|・ิω・ิ#|┌
(illuminati) ୧(▲ᴗ▲)ノ
(infinity)
(inf)
(inlove) (っ´ω`c)♡
(int)
(internet) ଘ(੭ˊᵕˋ)੭ ̀ˋ ɪɴᴛᴇʀɴᴇᴛ
(interrobang)
(jake) (❍ᴥ❍ʋ)
(kappa) "(¬,‿,¬)"
(kawaii) ≧◡≦
(keen) ┬┴┬┴┤Ɵ͆ل͜Ɵ͆ ༽ノ
(kiahh) (≧▽≦)/
(kiss) (づ  ̄ ³ ̄)づ
(kyubey) /人◕ ‿‿ ◕人\
(lambda) λ
(lazy) (:3」∠)
(left)
(<-)
(lenny) ( ͡° ͜ʖ ͡°)
(lennybill) [̲̅$̲̅(̲̅ ͡° ͜ʖ ͡°̲̅)̲̅$̲̅]
(lennyfight) (ง ͠° ͟ʖ ͡°)ง
(lennyflip) (ノ ͡° ͜ʖ ͡°ノ) ︵ ( ͜。 ͡ʖ ͜。)
(lennygang) ( ͡°( ͡° ͜ʖ( ͡° ͜ʖ ͡°)ʖ ͡°) ͡°)
(lennyshrug) ¯_( ͡° ͜ʖ ͡°)_/¯
(lennysir) ( ಠ ͜ʖ ರೃ)
(lennystalker) ┬┴┬┴┤( ͡° ͜ʖ├┬┴┬┴
(lennystrong) ᕦ( ͡° ͜ʖ ͡°)ᕤ
(lennywizard) ╰( ͡° ͜ʖ ͡° )つ──☆*:・゚
(loading) ███▒▒▒▒▒▒▒
(lol) L(° O °L)
(look) (ಡ_ಡ)☞
(loud) ᕦ(⩾﹏⩽)ᕥ
(noise) ᕦ(⩾﹏⩽)ᕥ
(love) ♥‿♥
(lovebear) ʕ♥ᴥ♥ʔ
(lumpy) ꒰ ꒡⌓꒡꒱
(luv) -`ღ´-
(magic) "ヽ(`Д´)⊃━☆゚. * ・ 。゚,"
(magicflip) (/¯◡ ‿ ◡)/¯ ~ ┻━┻
(meep) (°^°)/
(meh) ಠ_ಠ
(metal) "\m/,(> . <)_\m/"
(rock) "\m/,(> . <)_\m/"
(mistyeyes) ಡ_ಡ
(monster) ༼ ༎ຶ ෴ ༎ຶ༽
(natural)
(needle) ┌(◉ ͜ʖ◉)つ┣▇▇▇═──
(inject) ┌(◉ ͜ʖ◉)つ┣▇▇▇═──
(nerd) (⌐⊙_⊙)
(nice) ( ͡° ͜ °)
(no) →_←
(noclue) /人◕ __ ◕人\
(nom) (っˆڡˆς)
(yummy) (っˆڡˆς)
(delicious) (っˆڡˆς)
(note)
(sing)
(nuclear)
(radioactive)
(nukular)
(nyan) "~=[,,_,,]:3"
(nyeh) @^@
(ohshit) ( º﹃º )
(omega) Ω
(omg) ◕_◕
(1/8)
(1/4) ¼
(1/2) ½
(1/3)
(opt)
(option)
(orly) (눈_눈)
(ohyou) (◞థ౪థ)ᴖ
(ou) (◞థ౪థ)ᴖ
(peace) ✌(-‿-)✌
(victory) ✌(-‿-)✌
(pear) (__>-
(pi) π
(pingpong) ( ••)O*¯·.¸.·´¯°Q(•• )
(plain) ._.
(pleased) (˶‾᷄ ⁻̫ ‾᷅˵)
(point) (☞゚ヮ゚)☞
(pooh) ʕ •́؈•̀)
(porcupine) (•ᴥ• )́́'́́'́⻍
(pound) £
(praise) (☝ ՞ਊ ՞)☝
(punch) O=('-'Q)
(rage) t(ಠ益ಠt)
(mad) t(ಠ益ಠt)
(rageflip) (ノಠ益ಠ)ノ彡┻━┻
(rainbowcat) (=^・ェ・^=))ノ彡☆
(really) ò_ô
(r) ®
(right)
(->)
(riot) ୧༼ಠ益ಠ༽୨
(rolldice)
(rolleyes) (◔_◔)
(rose) ✿ڿڰۣ—
(run) (╯°□°)╯
(sad) ε(´סּ︵סּ`)з
(saddonger) ヽ༼ຈʖ̯ຈ༽ノ
(sadlenny) ( ͡° ʖ̯ ͡°)
(7/8)
(sharp)
(diesis)
(shout) ╚(•⌂•)╝
(shrug) ¯_(ツ)_/¯
(shy) =^_^=
(sigma) Σ
(sum) Σ
(skull)
(smile)
(smiley) ☺︎
(smirk) ¬‿¬
(snowman)
(sob) (;´༎ຶД༎ຶ`)
(soviettableflip) ノ┬─┬ノ ︵ ( \o°o)\
(spade)
(sqrt)
(squid) <コ:彡
(star)
(strong) ᕙ(⇀‸↼‶)ᕗ
(suicide) ε/̵͇̿̿/’̿’̿ ̿(◡︵◡)
(sum)
(sun)
(surprised) (๑•́ ヮ •̀๑)
(surrender) _(--)/
(stalker) ┬┴┬┴┤(・_├┬┴┬┴
(swag) (̿▀̿‿ ̿▀̿ ̿)
(sword) o()xxxx[{::::::::::::::::::>
(tabledown) ┬─┬ ノ( ゜-゜ノ)
(tableflip) (ノ ゜Д゜)ノ ︵ ┻━┻
(tau) τ
(tears) (ಥ﹏ಥ)
(terrorist) ୧༼ಠ益ಠ༽︻╦╤─
(thanks) (^-^)/
(thankyou) (^-^)/
(ty) (^-^)/
(this) ( ͡° ͜ʖ ͡°)_/¯
(3/8)
(tiefighter)
(tired) (=____=)
(toogood) ᕦ(òᴥó)ᕥ
(tm)
(triangle)
(t)
(2/3)
(unflip) ┬──┬ ノ(ò_óノ)
(up)
(victory) (๑•̀ㅂ•́)ง✧
(wat) (ÒДÓױ)
(wave) ( * ^ *) ノシ
(whaa) Ö
(whistle) (っ^з^)♪♬
(whoa) (°o•)
(why) ლ(`◉◞౪◟◉‵ლ)
(witchtext) WHΣИ $HΛLL WΣ †HЯΣΣ MΣΣ† ΛGΛ
(woo) \(^O^)/
(wtf) (⊙_⊙')
(wut) ⊙ω⊙
(yay) ( ゚ヮ゚)/
(yen) ¥
(yinyang)
(yolo) Yᵒᵘ Oᶰˡʸ Lᶤᵛᵉ Oᶰᶜᵉ
(youkids) ლ༼>╭ ͟ʖ╮<༽ლ
(y u no) (屮゚Д゚)屮 Y U NO
(yuno) (屮゚Д゚)屮 Y U NO
(zen) ⊹╰(⌣ʟ⌣)╯⊹
(meditation) ⊹╰(⌣ʟ⌣)╯⊹
(omm) ⊹╰(⌣ʟ⌣)╯⊹
(zoidberg) "(V) (°,,,,°) (V)"
(zombie) [¬º-°]¬
(flip) (ノ ゜Д゜)ノ ︵
(yum) ლ(´ڡ`ლ)
(yummyd) ╰⋃╯ლ(´ڡ`ლ)
(cutd) ✂╰⋃╯
(flag)
(surrender) (oT-T)尸
(monster2) ٩(̾●̮̮̃̾•̃̾)۶
(monster3) ٩(- ̮̮̃-̃)۶
(fuckall) ╭∩╮(-_-)╭∩╮
(cat2) 龴ↀ◡ↀ龴
(happy2) ۜ(סּںסּَ` )/ۜ
(ded) (✖╭╮✖)
(hundrakrona) [̲̅$̲̅(̲̅ιοο̲̅)̲̅$̲̅]

Contributing

Any contribution is welcome. If you're not able to code it yourself, perhaps someone else is - so post an issue if there's anything on your mind.

Development

Clone the repository:

git clone https://github.com/AlexGustafsson/irc-emoji-bot && cd irc-emoji-bot

Disclaimer

Although the project is very capable, it is not built with production in mind. Therefore there might be complications when trying to use the bot for large-scale projects meant for the public. The bot was created to easily send emojis in IRC channels and as such it might not promote best practices nor be performant.

About

A Dockerized IRC Emoji Bot written in Python 3

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.4%
  • Dockerfile 0.6%