forked from bus000/Dikunt
-
Notifications
You must be signed in to change notification settings - Fork 0
License
Baekalfen/Dikunt
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
------------------------------------ DIKUNT ------------------------------------ Bot for IRC chats. The bot receives messages from an IRC channel it is connected to and responds to those messages. The bot consist of a main program located in the ./main folder. The main program reads configuration and starts all plugins used by Dikunt. The plugins are located in the plugins folder. The plugins are given all messages the bot receives and any lines written to stdout on any plugin is send as a PRIVMSG to the channel the bot is connected to. --------------------------------- INSTALLATION --------------------------------- To install the bot start by cloning the git project $ git clone https://github.com/bus000/Dikunt/ Then to install type $ cabal install The bot will be installed where cabal deems it appropriate. To run the tests in the package run $ cabal configure --enable-tests $ cabal install --only-dependencies --enable-tests $ cabal test To run the bot either make sure that the executables is on your PATH or specify the path to the plugins on the command line. Type, $ dikunt --nickname=somenick \ --server=someserver \ --channel=somechannel \ --plugin-location=somepath By default all plugins having external dependencies are disabled. To enable the plugins either change the configuration file ./data/dikunt.config before an install or specify the extra plugins on the command line, --with-plugin=path-to-plugin If a specific plugin is unwanted or does not work it can be disabled by changing ./data/dikunt.config before an install or by passing the command line argument, --without-plugin=path-to-plugin To generate documentation install the bot with the flag --enable-documentation. $ cabal install --enable-documentation ----------------------------------- PLUGINS ----------------------------------- AsciiPicture: Takes URL's to jpg's and print asciiart version of the images using jp2a. Dependencies: jp2a - https://github.com/cslarsen/jp2a AsciiText: Takes a text string and print an asciiart version of the text with big letters. Dependencies: TOIlet BibleGem: Print a random quote from the bible. DanishMoan: Print a string like Åååååååhhh Fix: Fix last message given vim like substitute command. Greetings: Print greetings and goodbyes to users connecting and disconnecting respectively. Help: Print how to find help information on the modules. Insult: Print an insult directed to another IRC user on the channel. News: Print the latest BREAKING news from BBC. Trump: Print a random trump quote generated using Markov chains. WordReplacer: Replaces words in the PRIVMSG's from other users. Policeman: Print warning to users using swear words. TicTacToe: Play a game of TicTacToe with the bot. Asked: Writes "Spurgt!" to messages with a probability that can be changed. Remind: Print reminders to users from other users on time or on message. Eval: Evaluate all pure Haskell expressions. Dependencies: mueval - https://hackage.haskell.org/package/mueval Mark: Replace faces between a source image and The Mark. Dependencies: open-cv2 - https://pypi.python.org/pypi/opencv-python dlib - http://dlib.net/python/index.html numpy - https://docs.scipy.org/doc/numpy-1.13.0/user/install.html dropbox - https://www.dropbox.com/developers-v1/core/sdks/python parsy - https://github.com/python-parsy/parsy Trained face detector machine learning model - http://sourceforge.net/projects/dclib/files/dlib/v18.10/shape_predictor_68_face_landmarks.dat.bz2 To get the plugin running a couple of command line arguments need to be given to Dikunt. The plugin needs the path to an image containing a face it can insert over other images, the path to the trained machine learning model and a token to connect to dropbox. Therefore dikunt should be run with, --plugin-arg="--predictor-path=<path-to-face-model>" --plugin-arg="--mark-image-path=<path-to-face>" --plugin-arg="--dropbox-token=<token>" BCPrice: Get the current price of one bitcoin in US $. Merry: Responds to certain greetings such as good morning, merry christmas, happy newyear, (...). Mundheld: A database of danish "sayings" that can be queried.
About
No description, website, or topics provided.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Haskell 92.2%
- Python 7.8%