-
Notifications
You must be signed in to change notification settings - Fork 101
Home
An IRC bot written in python and originally created by Sean B. Palmer. Forked by Michael Yanovich of the Ohio State University Open Source Club.
How to create a module of your own for jenni/Phenny
These are the ones from the original project by Sean B. Palmer
- .beats - Returns the current internet time
- .bytes <str> - Return the byte representation of <str>.
- .char <seq> - Get info about a sequence.
- .u <regexp> - Search for a particular Unicode codepoint.
- .ety <word> - Return a word's etymology.
- .g <query> - Google for <query> and return the top result.
- .calc <query> - Return the Frink calc for <query>.
- .gc <query> - Return the Googlecount for <query>.
- .head <URI> - Perform an HTTP HEAD on URI.
- jenni: "<phrase>"? - Translate <phrase>
- tell <nick> <blargh> - I'll remind nick about blargh.
- .seen <nick> - Reports when <nick> was last seen.
- .t <timezone> - Returns the current time
- .tock - Return the time from the USNO Master Clock.
- .val <URI> - Validate <URI> using validator.w3.org.
- .w <word> - Returns the definition of <word>.
- .weather <ICAO> - Show the weather at airport with the code <ICAO> or <ZIP> code.
- .wiki <term> - Return information about <term> from Wikipedia. (.wik also works too!)
- .suggest <search query> - Provides "Google Suggest" of provided query.
- .ddg <search query> - Provides the first link from a DuckDuckGo search. (.duck works too!)
- .bing <search query> - Provides the first result from a Bing search.
- .search <search query> - Provides the first result from Bing, DuckDuckgo, and Google.
- .join <channel> - Join the provided channel. (admin only)
- .msg <channel|nick> <message> - Message a given channel or nick a given message. (admin only)
- .quit - Disconnect from the network. (owner only)
- .me <channel|nick> <message> - Do a /me to a given nick or channel. (admin only)
Added by this project.
- .uno - Start a game of uno. More commands and how to play included at the UNO page.
- .ask - Ask jenni a yes or no question, and she'll respond randomly with yes or no. Also if you give her a list of items separated by ' or ' she'll randomly choose one of them.
- s/misspelled word/correctly spelled word - jenni will help say what you meant to say.
- .addpoint <nick> - Give a point to a user.
- .rmpoint <nick> - Remove a point for a given user.
- .scores - Show the scores jenni currently has a record of.
- .q - Randomly displays a quote.
- .why - Randomly display a sentence that tries to explain 'why'.
- .xkcd - Randomly generates a valid URL for an xkcd item.
- <a href="https://github.com/myano/jenni/wiki/Blocks">.blocks</a> - Allow manipulation of the blocklist. (You can block people from using jenni on a nick and/or hostmask basis)
- .nws - Query NOAA for warnings, watches or advisories for a given ZIP code or county, state pair.
- .addquote - Adds a quote to the internal quote database
- .rmquote - Delete a quote from the internal quote database
- .quote - displays a random quote and total number of quotes
- .quote <number> - displays a specific quote
- .fw <ZIP> - displays results from thefuckingweather.com
- .fw city, state - displays results from thefuckingweather.com
- .imdb or .movie <film name> - displays information from IMDB about a given film. Thanks [Embolalia](https://github.com/Embolalia)!
- .woot - displays the current item available on woot.com
- .version - displays the current git information that jenni is using
- .rand <num> <num> - randomly picks a number between the two points. One number can be provided and jenni will assume the other bound is 0.
- .in <time> <message> - displays a message after the given time has elapsed. Thanks sbp~
- .tell or .to <person> <message> - relays a message to a person the next time they say something anywhere jenni is present.
- .hi <term> - provides the Hindi Etymology for a given term. Thanks Kays!
- .wotd - displays the current Word of the Day from http://wordsmith.org/words/today.html
- .help <function_name> - displays help information if a function name is provided from the list returned by .commands
- .cs <calllsign> - returns the name of a given call sign using QTH's website
- .sc - displays the supercombiner.
- .latex <string of latex> - returns a tinyurl of an image generated by provided LaTeX
- .easter <year> - displays the date for Easter for a given year.
- .tld <top level domain> - displays a description of information about a given Top Level Domain including whether it supports IDN, DNSSEC, and SLD.
- .countdown <YYYY> <MM> <DD> - displays the time difference between now and a given date at 00:00Z
- .twitter <UID> - displays a tweet provided a given UID. For example: ".twitter 302123537890693120" will return the tweet, "Warren Buffett and Brazilian investor to buy Heinz for $28 billion: http://on.cnn.com/UjzpNK" from this address, https://twitter.com/CNN/status/302123537890693120 Thanks sbp!
- .write <command> - jenni will send a raw IRC command to the server (owner only) type literally type out "x01" and it will be replaced as the unprintable character.
ai.py, resp.py, school.py, and twit.py, are a bit more involved because they don't specifically have a "command" that triggers them.
ai.py - This is the "artificial intelligence module." This module tries to provide some interaction with jenni. If you want a bot that only responds when spoken to, you might want to disable this module or just delete it.
resp.py - This is the "jenni response module." This module has the most annoying features that use to be included in ai.py. As above, if you want a bot that only responds when spoken to, you might want to disable this module or just delete it.
school.py - This feature parses schedulizer.com for classes schedule. To utilize this feature use the command .school. However, at the moment it does not work. _This feature has been disabled for the time being._
If you give jenni OP status she can moderate the channel as far as giving people voice and op status. As of the current set up only the admin listed in jenni can give OP status to other people. These features were created by Alek Rollyson from the Open Source Club at The Ohio State University.
- .voiceme - Gives the user + voice
- .devoiceme - Removes voice for current user.
- .voice <user> - Gives "user" voice (only used for admin).
- .opme - Gives OP status to who requests it. (only works for admin).
- .op <user> - Gives OP status to "user". (only works for admin).