firebot is a bot on irc.mozilla.org.
- Administrator: glob <email@example.com>
- Bugzilla Component: Webtools::Mozbot
- Repository: github/globau/firebot
- Blog : blog.glob.com.au
- 1 Modules
- 1.1 Bugzilla
- 1.2 Checkins
- 1.3 Converter
- 1.4 Crashstats
- 1.5 FortuneCookies
- 1.6 General
- 1.7 Greeting
- 1.8 Infobot
- 1.9 Karma
- 1.10 MagicEightBall
- 1.11 Parrot
- 1.12 RDF
- 1.13 Seen
- 1.14 TimeIn
- 1.15 UUIDGen
- The Bugzilla module provides an interface to the bugzilla bug database
- It will spot anyone mentioning bugs, too, and report on what they are
- eg. If someone says 'I think that's a dup of bug 5693, the :hover thing', then this module will display information about bug 5693
- This module also provides the ability to report on changes to bugs in near real-time in channel
- eg. "New mozilla.org - CA Certificates bug 123456 filed by firstname.lastname@example.org"
- Same as 'bug' but only displays the total line
- A simple DWIM search. Not very clever. ;-)
- Syntax: '<query string> bugs' e.g. 'mozbot bugs'
- Causes the bot to stop reporting all bug changes made by a particular user in the current channel
- Syntax: 'ignore <email@example.com>'
- Causes the bot to un-ignore a previously ignored user. See 'ignore' for more details
- This feature has been replaced by glandium's pulsebot, which listens for mercurial commits via pulse and announces accordingly
- A generic converter
- Currently supports converting between positive integers in binary, octal, decimal and hexidecimal forms, and converting temperatures, lengths, times and masses
- To convert a number, simply give the number with units or appropriate prefixes, for example to convert from hexadecimal: '0x2F'
- Decimal: Simply give the number
- Hexadecimal: Prefix with 0x
- Octal: Prefix with 0
- Binary: Prefix with 0b
- Kelvin: Suffix with K
- Celsius: Suffix with C
- Fahrenheit: Suffix with F
- Imperial: in, ft, yd, mi
- Metric: A, nm, mm, cm, m, km
- ISO time units: year, month, week, day, hour, minute, second
- Exotic time units: millifortnight
- Imperial: lbs, oz, stone
- Metric: kg, g
- Listens in channel for crash stats uuids and responds with a link to the crash.
- eg. "bp-28411feb-90d8-40fc-ab5d-238822140522" --> "https://crash-stats.mozilla.com/report/index/28411feb-90d8-40fc-ab5d-238822140522"
- A module to get random fortune cookies
- Get a fortune cookie
- Same as 'cookie'
- To set a new fortune cookie, say 'new cookie' followed by the text
- eg. 'new cookie: you will have a nice day'
- The string %from% will be replaced by the name of whoever requests the cookie
- Same as 'new'
- The command 'fetch cookies from <uri>' will add each line in <uri> to the cookie list
- Cookie lists must start with one line that reads 'DATA FILE: cookies' and must be at most 100 lines long
- Blank lines and lines starting with a hash ('#') are ignored
- A module that provides the bot-wide services
- Gives information about modules and commands
- Tells the bot to stop talking to you
- A polite module for saying hello and goodbye and so on
- To greet the bot
- To say goodbye to the bot
- To check the bot is alive
- Gives the amount of time that the bot has been active
- Keeps track of factoids and returns them on request
- To set factoids, just tell me something in the form 'apple is a company' or 'apples are fruit'
- To find out about something, say 'apple?' or 'what are apples'
- To correct me, you can use any of: 'no, apple is a fruit', 'apple =~ s/company/fruit/', or 'apple is also a fruit'
- To make me forget a factoid, 'forget apple'
- You can use '|' to separate several alternative answers
- If a definition contains $who, then it will be replaced by the name of the person who asked the question
- If a definition starts with <reply> then when responding the initial prefix will be skipped
- eg. 'apples are <reply>mm, apples' will mean that 'what are apples' will get the response 'mm, apples'
- If a definition starts with <action> then when responding the definition will be used as an action
- eg. 'apples are <action>eats one' will mean that 'what are apples' will get the response '* bot eats one'
- If a definition starts with <alias> then it will be treated as a symlink to whatever follows
- eg. 'crab apples are <alias>apples' and 'apples are fruit' will mean that 'what are crab apples' will get the response 'apples are fruit'
- Reports on how many factoids are in the database
- Make me tell someone something. eg. 'tell pikachu what apples are' or 'tell fred about me'
- To find out exactly what is stored for an entry apples, you would say to me: literal apples
- If you are having trouble making me remember something (for example 'well, foo is bar' getting treated as 'foo' is 'bar'), then you can prefix your statement with 'remember:' (following the 'no,' if you are changing an entry)
- eg. 'remember: well, foo is bar'
- Note that 'well, foo?' is treated as 'what is foo' not is 'what is well, foo', so this is not always useful
- To correct an entry, prefix your statement with 'no,'
- eg. 'no, I am good' to correct your entry from 'is bad' to 'is good' :-)
- A karma tracker
- Increase someone's karma
- Syntax: victim++
- Decrease someone's karma
- Syntax: victim--
- Find someone's karma level
- Omit the victim's name to get a top 10 list
- Syntax: 'rank victim' or just 'rank'
- The all knowing magic eight ball, in electronic form
- Ask a question and the answer shall be provided
- Syntax: '!8ball: will it happen?
- This module allows you to make the bot do stuff
- Makes the bot say something
- The <target> can be a person or channel
- Syntax: say <target> <text>
- Makes the bot do (/me) something
- The <target> can be a person or channel
- Syntax: do <target> <text>
- Makes the bot invite (/invite) somebody to a channel
- Syntax: invite <who> <channel>
- Makes the bot announce something to every channel in which this module is enabled
- Syntax: announce <text>
- The RDF module monitors various websites
- The Seen module watches channels and stores when someone last spoke or performed an action for later recall
- Says how long it's been since the last time someone was seen
- Syntax: 'seen <nick>'
- eg. 'seen mozbot'
- Tells you the time in the specified location
- Syntax: 'time in <location>'
- eg. 'time in perth'
- This module is an interface to the uuidgen application
- Generates a UUID
- Generates a UUID but outputs format suitable for components (CID)