List of IRC bot commands: Difference between revisions

From TripSit wiki
Jump to navigation Jump to search
(Added section for thanatos)
 
(48 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== TripBot Commands ==
== TripBot ==
=== Common Commands ===
{| class="wikitable"
! scope="col" style="width: 33%;" | Syntax
! scope="col" style="width: 33%;" | Description
! scope="col" style="width: 33%;" | Example
|-
| ~report <#channel> <user> <reason> || Report a <user> in a <#channel> for a <reason>. This command can either be run publicly in a channel or anonymously in a PM to tripbot. || /msg tripbot ~report #drugs JoeTheTroll Asking where to get stuff.
|-
| ~<drug> || Displays the properties of the <drug>, for example: summary, dose, duration, effects and more. || ~LSD
|-
| ~drug <drug> || Same as above|| ~drug LSD
|-
| ~<drug> <property> || Displays <property> information || ~LSD dose
|-
| ~drug <drug> <property> || Same as above || ~drug LSD dose
|-
| ~factsheet <drug> || Links to the factsheet of the <drug>. || ~factsheet LSD
|-
| ~bconvert <dosage> <benzo1> <benzo2> || Converts <dosage> of <benzo1> to <benzo2>. || ~bconvert 2mg xanax klonopin
|-
|}


All commands prefaced with ~
=== TripSitting ===
{| class="wikitable"
! scope="col" style="width: 33%;" | Syntax
! scope="col" style="width: 33%;" | Description
! scope="col" style="width: 33%;" | Example
|-
| ~tripsit <user> || Ask for help in #tripsit on behalf of the <user> in need help. Messages all tripsitters and posts a message in #tripsitters, #tripsitvip and staff channels. <user> is optional. || ~tripsit TripSitMe_12345
|-
| ~gettripsitcalls || After Issuing this command, you will be PM'd by tripbot when a user uses ~tripsit in #tripsit, #tripsit1 or #tripsit3 and needs help. ||
|-
| ~notripsitcalls || Turns off the above ~tripsit alerts. ||
|-
| ~gettripsitentries || After issuing this command, you will be PM'd by tripbot when a new user comes into #tripsit, #tripsit1 or #tripsit2 and may need help. ||
|-
| ~notripsitentries || Turns off the above alert of new users in the #tripsit channels. ||
|-
| ~clearmissing || If tripbot sends a private message saying you have missed notifies, this is a bug, and you can safely use this command to remove them. ||
|-
| ~recovery position|| Displays a link to an image on how to get into the recovery position. || http://imgur.com/nTEm0QE.png The recovery position is designed to prevent suffocation through obstruction of the airway
|-
| ~breathe[1,2,3] || Displays a link to an image/gif of a breathing pattern to help calm a person down. There's different variants of the command as seen in the bracket || https://i.imgur.com/XbH6gP4.gif
|-
| ~boxbreathing || Same as above just another variations || http://i.imgur.com/g57i96f.gif
|}


There's also a web interface at http://tripbot.tripsit.me/
=== Dosage Tracker ===


== User commands ==
{| class="wikitable"
! scope="col" style="width: 33%;" | Syntax
! scope="col" style="width: 33%;" | Description
! scope="col" style="width: 33%;" | Example
|-
| ~idose <dose> <drug> <method> || Tripbot will remember the dose and the timing for you. [https://wiki.tripsit.me/wiki/List_of_IRC_bot_commands#Utility Make sure to set a timezone before using this], else the absolute time might be inaccurate. Relative time will still be accurate. '''Running this multiple times will overwrite the previous stored dose'''. Please note this functionality only works in private messages with tripbot. ||  ~idose 100mg MDMA
|-
| ~lastdose || Tripbot responds with your latest dose, including drug, dose and timing. || <@tripbot>: You last dosed 100mg of MDMA  3 hours ago (22:00 on 13/05/2017).
|-
| ~set upidose true/false ||  tripbot will upload your dose history and send it to you when you add a new drug with ~idose ||  ~set upidose true
|-
|}


*'''Reports'''
=== Quotes ===
**~report [#channel] <user> [reason for reporting]
{| class="wikitable"
***Report a user in a channel for a reason. This command can either be run publicly in a channel or anonymously in a PM to the bot. The result of using this command will be that all of the users which are currently marked as operators in the reporting channel will receive a PM telling them a user has been reported, by whom, in which channel and why. If there is an administrative channel for the reporting channel (e.g. ##channel), the report will be posted there as well.
! scope="col" style="width: 33%;" | Syntax
*'''TripSit Specific'''
! scope="col" style="width: 33%;" | Description
**~drug <drug> [property]
! scope="col" style="width: 33%;" | Example
***Displays properties of drugs. Properties include summary, dose, onset, duration, effects, comeup. after-effects, avoid, potentiators, detection, wiki, tolerance
|-
***Ex: "~drug 2cb dose" will generate the recommended dosages for 2cb
| ~qadd <category> = <quote> || Add a new <quote> to the <category> in the database, or creates a new <category> if it does not already exist. || ~qadd Jokes = A man walks into a bar and says "ouch".
** ~factsheet <drug>
|-
***Links to a web-page containing quick facts about a drug and linking to its wiki page for more information.
| The following modifiers can be used inside the quote text: || ~~category~~ - Includes text from a random quote in given category. || ~qadd Jokes = A man walks into a ~~noun~~ and says "ouch".
**~setdrug <drug> <property> <info>
|-
*** Sets the property with the info you provided
|  || ~~-nick-~~ - Includes the nick of the user displaying the quote. || ~qadd Jokes = ~~-nick-~~ walks into a bar and says "ouch".
*** Ex: ~setdrug 2cb effects giggling, halucinations, etc.
|-
*** Staff only.
|  || ~~-nicks-~~ - Includes the nick of a random user in the current channel. || ~qadd Jokes = ~~.nicks.~~ walks into a bar and says "ouch".
** ~rmdrug <drug> [property]
|-
*** removes the property from the factsheet
| ~<category> || Display a random quote from a given <category>. || ~Jokes
*** Staff only.
|-
** ~bconvert <amount> <benzo1> <benzo2>
| ~qsearch <category> = <text> || Search a <category> for quotes including the given <text>. || ~qsearch Jokes = walks
*** converts dosage of one benzo to another
|-
*** Ex: ~bconvert 2mg xanax klonopin
| ~link <category> || Use this command to get a URL to the indicated quote <category>. || ~link Jokes
** ~tripsit [user]
|-
*** Ask for help in #tripsit. Messages all tripsitters and posts a message in #drugs and #tripsitvip. [user] is optional.
| ~setwebpass <password> || Use this command to create a password to login on the above link with <username>@tripsit as the user. NOTE: Do this in a private message with tripbot or else everyone can see the password! || ~setwebpass test
** ~gettripsitentries
|-
*** After issuing this command, you will be PMed by tripbot when an unrecognised (new) user comes into #tripsit and may need help.
| ~qcount <category> || Show the number of quotes stored in the given <category>, or if called without a category it will show the total number of quotes in the database. || ~qcount Jokes
** ~notripsitentries
|-
*** Turn the above off.
| ~rmlast <category> || Remove the last quote added to a given <category>. || ~rmlast Jokes
** ~clearmissing
|-
*** Clears the notifies you missed while logged off
| ~rm <category> = <quote> || Remove a given <quote> from the given <category>. || ~rm Jokes = A man walks into a bar and says "ouch".
** ~timezone <timezone>
|-
*** Set a timezone preference with tripbot (default: UTC), notifications on the web will use this timezone. See here for timezone names: http://momentjs.com/timezone/
| ~rq || Show a random quote from the database. ||
*** e.g. ~timezone Europe/London
|-
| ~qstats || Displays quotes with the largest number of entries. ||
|-
|}


*'''Quotes'''
===User-Specific===
**~qadd <category> = <quote>
***Add a new quote to the database.
***The following modifiers can be used inside the quote text:
****~~category~~ - Includes text from a random quote in given category
****~~-nick-~~  - Includes the nick of the user displaying the quote
****~~-nicks-~~  - Includes the nick of a random user in the current channel
**~q <category>
***Display a random quote from a given category.
**~rq
***Show a random quote from the database.
**~title <category>
***Use this command to get a URL to the indicated quote category
**~qsearch <category> = <needle>
***Search a category for quotes including the given text.
**~qcount [category]
***Show the number of quotes stored in the given category, or if called without a category it will show the total number of quotes in the database.


*'''Entertainment'''
{| class="wikitable"
**~ri
! scope="col" style="width: 33%;" | Syntax
***Generate a random imgur image and post a link to it in the channel. Only returns images that are greater than 500x500 and omits common screen shot sizes.
! scope="col" style="width: 33%;" | Description
**~sri
! scope="col" style="width: 33%;" | Example
***Uses imgur's built in API to return results. Returns less random images that generally have large numbers of views and are tagged.
|-
**~lri
| ~set timezone <timezone> || Set a <timezone>. See here for <timezone> names:&nbsp;http://momentjs.com/timezone/ || ~set timezone America/Chicago
***The truly random imgur search.
|-
**~flashy <colour> <message>
| ~time || Dispays your current time. || ~time
***Give a link to a page hosted by the flashy module which produces big flashing text in the given colour.
|-
**~ud <word to define>
| ~time <user> || Displays the <time> of the <user>. || ~time Teknos
***Returns the first Urban Dictionary definition for the headword provided.
|-
***Note: If tripbot does not find a quote when you use ~category it will search UD.
| ~set lastfm <username> || Assigns your Last.FM <username> to tripbot for the ~listening command. || ~set lastfm TeknosMusic
**~xkcd [number]
|-
***Returns a link to the xkcd comic specified, or the latest one if [number] is not given. Use '*' to return a link to a random comic.
| ~listening || Displays the last track the user listened to. || ~listening
**~rt <search term>
|-
***Searches rotten tomatoes
| ~listening <user> || Displays the last track the <user> listened to. || ~listening Teknos
**~listening [user]
|-
***Displays currently playing track according to a user's Last.FM profile.
| ~words || Displays number of words used by the user since registering || ~words
***Returns result for the user running the command if [user] is not specified
|-
**~set lastfm <username>
| ~words <user> || Displays number of words used by <user> since registering. Not all users are tracked. || ~words Teknos
***Assigns your Last.FM account to tripbot for ~listening
|-
|}


*'''Utility'''
=== Utility ===
**~usage <command>
{| class="wikitable"
***Show usage information for a given command.
! scope="col" style="width: 33%;" | Syntax
**~help <command>|<module>
! scope="col" style="width: 33%;" | Description
***Link module help for a module given either the module name or the name of a command belonging to a module.
! scope="col" style="width: 33%;" | Example
**~js <things and stuff>
|-
***For regular users, there is the ~js command, which is completely sandboxed, but can still be used for calculation and the like.
| ~usage <command> || Show usage information for a given <command>. || ~usage js
**Spelling Corrections
|-
***Allows you to run regex replaces on both your own and others messages. One may run a regex on their own last message like so:
| ~help <command>|<module> || Link module help for a <module> given either the module name or the name of a <command> belonging to a <module>. || help qadd
***> user: I like turtles
|-
***> user: s/turtles/pizza/
| ~ignore <module> || Ignore a given <module>. If the user does not specify a <module>, or provides an invalid one a list of modules which are available to ignore will be given. <Modules> you can ignore are: spotify, github, js, link, quotes, report, spelling, poll, regex, youare, kick. || ~ignore spelling
***One may run a regex on another user's last message simple by highlighting the nick before the pattern:
|-
***> batman: I like TURTLES
| ~unignore <module> || Unignore a previously ignored< module>. If you does not specify a <module>, or provide an invalid choice, a list of modules which are currently ignored will be given. || ~unignore spelling
***> user: batman: s/turtles/pizza/i
|-
**~ignore <module>
| ~yt <video name> || Searches YouTube for <video name> and returns the top result || ~yt joey diaz ranch dressing
***Ignore a given module. If the user does not specify a module, or provides an invalid one a list of modules which are available to ignore will be given.
|-
***Modules you can ignore are: spotify, github, js, link, quotes, report, spelling, poll, regex, youare, kick.
| ~spotify <song> || Searches Spotify for <song> and returns a https link if found || ~spotify Ott Mr Balloon Hands
***Example: Say ~ignore spelling to not have tripbot correct your spelling for you.
|-
**~unignore <module>
| ~wr <word> || Sends a search <word> to Wolfram Alpha and returns the result. || ~wr 20f to c
***Unignore a previously ignored module. If the user does not specify a module, or provides an invalid choice a list of modules which are currently ignored will be given.
|-
**~wr <input>
| ~js <things and stuff> || For regular users, there is the ~js command, which is completely sandboxed, but can still be used for calculation and the like. ||
***Sends a search input to Wolfram Alpha and returns the result
|-
| ~botcommands || Links to this page ||
|-
| ~basiccommands || Links to our section on basic IRC commands || https://wiki.tripsit.me/wiki/IRC_User_Guide#Basic_Commands
|-
| Spelling Corrections || Allows you to run regex replaces on both your own and others messages. One may run a regex on their own last message like so: || > user: I like turtles
|-
|  || || > user: s/turtles/pizza/
|-
|  || One may run a regex on another user's last message simple by highlighting the nick before the pattern: || > batman: I like TURTLES
|-
|  || || > user: batman: s/turtles/pizza/i
|-
|}


*'''Polls'''
=== Entertainment ===
**~newpoll <pollname> options=[each,poll,option] [Poll Description]
{| class="wikitable"
***Creates a new poll with the given name, options and descriptions. From this point people will be able to use the ~vote command to cast their vote in the poll.
! scope="col" style="width: 33%;" | Syntax
**~addoption <pollname> <newoption>
! scope="col" style="width: 33%;" | Description
***Using this command you can add a given option to a poll you are the creator of.
! scope="col" style="width: 33%;" | Example
**~rmoption <pollname> <optiontoremove>
|-
***Using this command you can remove a given option from a poll you are the creator of.
| ~ri || Generate a random imgur image and post a link to it in the channel. Only returns images that are greater than 500x500 and omits common screen shot sizes. ||
**~vote <pollname> <option>
|-
***Cast your vote for the given option in the given poll. If you have already cast your vote in the given poll, your vote will be changed to the new option you have provided.
| ~sri || Uses imgur's built in API to return random results. Returns less random images that generally have large numbers of views and are tagged. ||
**~pdesc <pollname>
|-
***Show the full description for a given poll name along with its available voting options.
| ~lri || The truly random imgur search. ||
 
|-
== Moderators ==
| ~ud <word> || Returns the first Urban Dictionary definition for the <word> provided. || ~ud TripSit
 
|-
*'''Verbal warning, Quiet, Formal Warning, Ban (should be used in this order)'''
| ~xkcd <number> || Returns a link to the xkcd comic <number> specified, or the latest one if <number> is not given. || ~xkcd 1173
**~notify [#channel] <message>
|-
***Notify staff of a channel of a message. This can be run in either PM or in the channel. If notifyVoice is set, voiced users will also receive notifications.
| ~flashy <colour> <message> || Gives a link to a page that shows the <message> flashing in <colour>. || ~flashy blue hello
**~quiet [time] [#channel] <user> [reason]
|-
**~unquiet [#channel] <user>
| ~triptoy || Gives a link to a fun website for tripping. Click the link to see a full list of [[List_Of_Trip_Toys|Trip Toys]] ||
**~warn <user> <reason>
|-
**~rmwarning <user> = <warn>
|}
***This will add a warning to the user and show a link to all warnings of that user in #tripsit.me
**~cban [#channel] <user> [reason]
***Ban a user from a channel.
**~nban [time] <user> [reason] [#kline or #specialk]
***Ban a user from the network
***Only used by Moderators and above.  
***#kline and #specialk tags will also automatically k-line the user
***Make sure other staff members agree with your actions
**~nunban <user> [reason]
***Unban a user from the network.
 
==User management==
 
*~alias [user]
**If an alias is provided, this command will return the primary user for which this is an alias for. If a primary user is provided, it will return a confirmation of this fact and a count of how many aliases belong to the user.
*~setaliasparent <newparent>
**Set a nick which is currently serving as an alias to the primary user, while setting what was previously the primary user as an alias of the new primary user. Requires moderator level access by default.
*~mergeusers <primaryuser> <secondaryuser>
**This command merges two nicks which are recorded as primary users into one user. The secondary user and all of their aliases will be merged under primaryuser. Requires moderator level access by default.
*~ban <user> [command]
**Ban a user from using a command. Command may be replaced with '*,' which will ban a user from use of all commands. Users banned from all commands will still be subject to module listeners.
*~unban <user> [command]
**Unban a user from using a given command. If a user was previously banned using the '*' wildcard, they may also be unbanned from such by replacing command with an asterisk here as well.
 
*'''Utilities'''
**~say <target> <message>
***Have DBot post the given message in the given channel (uses the server from which you are sending the message). <target> may be a channel name, '@' to specify the current channel, or a user's nick to have him send the message to the user as a PM.
 
==Quote Management==
 
*~rmlast <category>
**Remove the last quote added to a given category.
*~rmstatus
**Show how many quotes are currently in the removal cache, and whether they will be randomly removed.
*~rm <category> = <quote>
**Remove a given quote from the given category.
*List of quotes to be deleted: http://nourishedcloud.com:1337/quoteremovals
*~rmconfirm
**Confirm that the quotes currently in the removal cache are okay to be removed, and permanently delete them.
*~rmdeny
**Re-instate the quotes that are currently in the removal cache back into the main quote database.
 
==Tripbot Management==
 
*~join <channel>
**Join the given channel.
*~part <channel>
**Leave the given channel.
*~opme [channel]
**Gives the caller ops in a given channel if possible. If called without a channel, it will attempt to give the caller ops in the current channel.
 
== Admin Commands (Reality only) ==
 
*~greload
**Perform a git pull, and then execute the 'reload' command. Saves a lot of time updating!
*~reload
**Reload all of the modules currently in use by DBot. By using this, all module functionality should be reloadable and replaceable without having to restart the bot or interrupt the connection to the server.
*~load <module>
**Load a new module. This works by adding a module name to the roster and then triggering a reload of all modules, at which point the new module is actually loaded by the standard DBot process.
*~unload <module>
**Unload a currently loaded module. This removes the module, and then triggers a reload of all modules.
*~setconfig
**Set a config key
*~showconfig
**Show a config key
 
== Tob Commands ==
Most commands below can be done in PM as well. Contact CustaiCo for any problems with tob
 
*!seen <nick>
**When was a user last seen?
*!lastspoke <nick>  
**When did tob last see a user talk?
*!bing <search>
**Searches Bing and gives top 3 results
*!news <search>
**Gets top headline for a news search from Bing
*!business !entertain !health !politics !sports !usnews !worldnews !tech
**Domain specific news
*!image <search>
**Finds a random image on the top 50 results returned by Bing. Adult filter is deactivated
*!spell <query>
**Attempts to find a spelling correction for the query
*!wa <query>
**Submits query to [http://www.wolframalpha.com/| Wolfram Alpha] for evaluation
*!hmacsha256 <key> <message>
**Calculates a hmac on the message using the bytes of the key phrase as the key
<!-- we save these for later so that I can re-implement some of it
**shows weather forecast for that area
*!isup <domain>
**checks whether a website works, and shows latency
*!shorturl <url>
**creates a short(er) URL for that URL
*!ping
**if you get a reply, you're still connected to IRC
**shows balance for a bitcoin addresscountdowns
*!setcountdown <unix timestamp>
**set countdown (set to 0 to disable)
**op or voice !countdownshows time until countdown
*!str2time <text>
**calculate unix timestamp for the text, it could be anything like "2pm CST" or "+5 hours" or "december 25, 2013". mostly used for setting a countdown
*!until <unix timestamp>
**calculate time to unix timestamp, can be useful for testing a countdown.search
*!erowid <query>
**searches erowid
-->
 
== Thanatos Commands ==
Thanatos primarily works with tripbot to handle filtering for racial slurs, known-sourcing site links, spam/flood protection, and assorted shenanigans. Due to thana's specific design philosophy, coding strategy, and quality of his scripts (none, for all of those), he sometimes has really /fun/ and sometimes exciting bugs. Please ping toasterlizard on irc/telegram when thana's acting strange or it seems like his insidey-parts are broken. <3
 
All commands prefaced with %
 
==Moderators==
 
*%amode <mode> [mask]
**Sets <mode> in all channels thanatos is opped in
**Ex: %amode +zq *!*@tripsit/sysop/toasterlizard
*%aq <mask>
**Quiets <mask> in all channels thanatos is opped in
**Example: %aq *!*@tripsit/sysop/toasterlizard
*%aunq <mask>
**Unquiets <mask> in all channels thanatos is opped in
**Example: %aunq *!*@tripsit/sysop/toasterlizard
*%findnicks <nick>
**Searches for past connections/disconnections of <nick> and returns previously used IPs and nicks
**Ex: %findnicks Sqwonk
*%grepbans <string> <#channel>
**Checks the ban/quiet list in <#channel> for everything matching <string>
**Ex: "%grepbans 50.153 #drugs", "%grepbans Gordon #drugs"
*%updatefindnicks
**Forces findnicks to update itself immediately (normally updates every five minutes)
 
==Operators==
*%akill on
**Turns on DNSBL auto-kill for "Possibly Naughty" connections
*%akill off
**Turns off DNSBL auto-kill for "Possibly Naughty" connections
*%op [#channel] <nick>
**Ops <nick> in either [#channel] or (if [#channel] is not specified) the current channel
**Ex: %op #drugs toasterlizard
*%deop [#channel] <nick>
**De-ops <nick> in either [#channel] or (if [#channel] is not specified) the current channel
**Ex: %deop #drugs toasterlizard
*%voice [#channel] <nick>
**Voices <nick> in either [#channel] or (if [#channel] is not specified) the current channel
**Ex: %voice #drugs toasterlizard
*%devoice [#channel] <nick>
**De-voices <nick> in either [#channel] or (if [#channel] is not specified) the current channel
**Ex: %devoice #drugs toasterlizard
*%join <#channel>
**Join the channel <#channel>
**Ex: %join #pantaloons
*%part <#channel>
**Leaves the channel <#channel>
**Ex: %part #pantaloons
*%act <#channel> <action>
**Performs <action> in <#channel>
**Ex: %act #drugs hugs tripbot
*%say <#channel> <text>
**Messages <#channel> with <text>
**Ex: %say #drugs tripbot: ily <3
 
 
 
[[Category:IRC]]

Latest revision as of 20:39, 21 November 2021

TripBot

Common Commands

Syntax Description Example
~report <#channel> <user> <reason> Report a <user> in a <#channel> for a <reason>. This command can either be run publicly in a channel or anonymously in a PM to tripbot. /msg tripbot ~report #drugs JoeTheTroll Asking where to get stuff.
~<drug> Displays the properties of the <drug>, for example: summary, dose, duration, effects and more. ~LSD
~drug <drug> Same as above ~drug LSD
~<drug> <property> Displays <property> information ~LSD dose
~drug <drug> <property> Same as above ~drug LSD dose
~factsheet <drug> Links to the factsheet of the <drug>. ~factsheet LSD
~bconvert <dosage> <benzo1> <benzo2> Converts <dosage> of <benzo1> to <benzo2>. ~bconvert 2mg xanax klonopin

TripSitting

Syntax Description Example
~tripsit <user> Ask for help in #tripsit on behalf of the <user> in need help. Messages all tripsitters and posts a message in #tripsitters, #tripsitvip and staff channels. <user> is optional. ~tripsit TripSitMe_12345
~gettripsitcalls After Issuing this command, you will be PM'd by tripbot when a user uses ~tripsit in #tripsit, #tripsit1 or #tripsit3 and needs help.
~notripsitcalls Turns off the above ~tripsit alerts.
~gettripsitentries After issuing this command, you will be PM'd by tripbot when a new user comes into #tripsit, #tripsit1 or #tripsit2 and may need help.
~notripsitentries Turns off the above alert of new users in the #tripsit channels.
~clearmissing If tripbot sends a private message saying you have missed notifies, this is a bug, and you can safely use this command to remove them.
~recovery position Displays a link to an image on how to get into the recovery position. http://imgur.com/nTEm0QE.png The recovery position is designed to prevent suffocation through obstruction of the airway
~breathe[1,2,3]  Displays a link to an image/gif of a breathing pattern to help calm a person down. There's different variants of the command as seen in the bracket https://i.imgur.com/XbH6gP4.gif
~boxbreathing Same as above just another variations  http://i.imgur.com/g57i96f.gif

Dosage Tracker

Syntax Description Example
~idose <dose> <drug> <method> Tripbot will remember the dose and the timing for you. Make sure to set a timezone before using this, else the absolute time might be inaccurate. Relative time will still be accurate. Running this multiple times will overwrite the previous stored dose. Please note this functionality only works in private messages with tripbot. ~idose 100mg MDMA
~lastdose Tripbot responds with your latest dose, including drug, dose and timing. <@tripbot>: You last dosed 100mg of MDMA 3 hours ago (22:00 on 13/05/2017).
~set upidose true/false tripbot will upload your dose history and send it to you when you add a new drug with ~idose ~set upidose true

Quotes

Syntax Description Example
~qadd <category> = <quote> Add a new <quote> to the <category> in the database, or creates a new <category> if it does not already exist. ~qadd Jokes = A man walks into a bar and says "ouch".
The following modifiers can be used inside the quote text: ~~category~~ - Includes text from a random quote in given category. ~qadd Jokes = A man walks into a ~~noun~~ and says "ouch".
~~-nick-~~ - Includes the nick of the user displaying the quote. ~qadd Jokes = ~~-nick-~~ walks into a bar and says "ouch".
~~-nicks-~~ - Includes the nick of a random user in the current channel. ~qadd Jokes = ~~.nicks.~~ walks into a bar and says "ouch".
~<category> Display a random quote from a given <category>. ~Jokes
~qsearch <category> = <text> Search a <category> for quotes including the given <text>. ~qsearch Jokes = walks
~link <category> Use this command to get a URL to the indicated quote <category>. ~link Jokes
~setwebpass <password>  Use this command to create a password to login on the above link with <username>@tripsit as the user. NOTE: Do this in a private message with tripbot or else everyone can see the password!  ~setwebpass test
~qcount <category> Show the number of quotes stored in the given <category>, or if called without a category it will show the total number of quotes in the database. ~qcount Jokes
~rmlast <category> Remove the last quote added to a given <category>. ~rmlast Jokes
~rm <category> = <quote> Remove a given <quote> from the given <category>. ~rm Jokes = A man walks into a bar and says "ouch".
~rq Show a random quote from the database.
~qstats Displays quotes with the largest number of entries.

User-Specific

Syntax Description Example
~set timezone <timezone> Set a <timezone>. See here for <timezone> names: http://momentjs.com/timezone/ ~set timezone America/Chicago
~time Dispays your current time. ~time
~time <user> Displays the ~time Teknos
~set lastfm <username> Assigns your Last.FM <username> to tripbot for the ~listening command. ~set lastfm TeknosMusic
~listening Displays the last track the user listened to. ~listening
~listening <user> Displays the last track the <user> listened to. ~listening Teknos
~words Displays number of words used by the user since registering ~words
~words <user> Displays number of words used by <user> since registering. Not all users are tracked. ~words Teknos

Utility

Syntax Description Example
~usage <command> Show usage information for a given <command>. ~usage js
<module> Link module help for a <module> given either the module name or the name of a <command> belonging to a <module>. help qadd
~ignore <module> Ignore a given <module>. If the user does not specify a <module>, or provides an invalid one a list of modules which are available to ignore will be given. <Modules> you can ignore are: spotify, github, js, link, quotes, report, spelling, poll, regex, youare, kick. ~ignore spelling
~unignore <module> Unignore a previously ignored< module>. If you does not specify a <module>, or provide an invalid choice, a list of modules which are currently ignored will be given. ~unignore spelling
~yt <video name> Searches YouTube for <video name> and returns the top result  ~yt joey diaz ranch dressing
~spotify <song> Searches Spotify for <song> and returns a https link if found ~spotify Ott Mr Balloon Hands
~wr <word> Sends a search <word> to Wolfram Alpha and returns the result. ~wr 20f to c
~js <things and stuff> For regular users, there is the ~js command, which is completely sandboxed, but can still be used for calculation and the like.
~botcommands  Links to this page
~basiccommands  Links to our section on basic IRC commands  https://wiki.tripsit.me/wiki/IRC_User_Guide#Basic_Commands
Spelling Corrections Allows you to run regex replaces on both your own and others messages. One may run a regex on their own last message like so: > user: I like turtles
> user: s/turtles/pizza/
One may run a regex on another user's last message simple by highlighting the nick before the pattern: > batman: I like TURTLES
> user: batman: s/turtles/pizza/i

Entertainment

Syntax Description Example
~ri Generate a random imgur image and post a link to it in the channel. Only returns images that are greater than 500x500 and omits common screen shot sizes.
~sri Uses imgur's built in API to return random results. Returns less random images that generally have large numbers of views and are tagged.
~lri The truly random imgur search.
~ud <word> Returns the first Urban Dictionary definition for the <word> provided. ~ud TripSit
~xkcd <number> Returns a link to the xkcd comic <number> specified, or the latest one if <number> is not given. ~xkcd 1173
~flashy <colour> <message> Gives a link to a page that shows the <message> flashing in <colour>. ~flashy blue hello
~triptoy Gives a link to a fun website for tripping. Click the link to see a full list of Trip Toys