User:OtpBot

From otp22 db
Jump to: navigation, search

OtpBot IRC Bot for use in the OTP22 Alternate-Reality-Game channel.

The main page for the bot can be found at: https://code.google.com/p/otpbot/ or http://otpbot.googlecode.com/

The newest Release Archive can be found here. This archive is semi-automatically generated from the repository; contact the author if there is any inconsistency.

OtpBot22 by-default offers helpful tools to the #ARG channel on freenode.

Note: Channel operators can invite this bot to their own channel!


Commands

OtpBot provides various commands useful to IRC users and ARG players alike. Commands are divided into the following topic groups: AutoIt, UDF, General, Xor, ShortUrl, Users, Wiki, Xlate, NATO, Coords, log, Dialer, DNS, Forum, PGP, Niche, MessageDesk, Bot.

AutoIt and UDF Commands are available via a customizable whitelist and are actually internal functions of the AutoIt interpreter and the User-Defined Function libraries supplied with AutoIt.

Command listings for each of these topic groups are available below. Note: This documentation is current as of 2014-06-29 16:23:03.


AutoIt Commands

Command Parameters Description
@ACos ( expression ) Calculates the arcCosine of a number. | Returns the trigonometric arccosine of the number. Result is in radians. | source: http://www.autoitscript.com/autoit3/docs/functions/ACos.htm
@ASin ( expression ) Calculates the arcsine of a number. | Returns the trigonometric arcsine of the number. Result is in radians. | source: http://www.autoitscript.com/autoit3/docs/functions/ASin.htm
@ATan ( expression ) Calculates the arctangent of a number. | Returns the trigonometric arctangent of the number. Result is in radians. | source: http://www.autoitscript.com/autoit3/docs/functions/ATan.htm
@Abs ( expression ) Calculates the absolute value of a number. | Returns absolute value of expression . | source: http://www.autoitscript.com/autoit3/docs/functions/Abs.htm
@Asc ( "char" ) Returns the ASCII code of a character. | Returns the ASCII code of the specified char. | source: http://www.autoitscript.com/autoit3/docs/functions/Asc.htm
@Binary ( expression ) Returns the binary representation of an expression. | Returns a Binary variant. | source: http://www.autoitscript.com/autoit3/docs/functions/Binary.htm
@BinaryLen ( binary ) Returns the number of bytes in a binary variant. | Returns the length of the binary data in bytes. | source: http://www.autoitscript.com/autoit3/docs/functions/BinaryLen.htm
@BinaryMid ( binary, start [, count] ) Extracts a number of bytes from a binary variant. | Returns the extracted binary data. | source: http://www.autoitscript.com/autoit3/docs/functions/BinaryMid.htm
@BinaryToString ( expression [, flag = 1] ) Converts a binary variant into a string. | Success: the string representation of the binary data. Failure: an empty string and sets the @error flag to non-zero. @error: 1 = Input string had zero length. 2 = Input string had an odd number of bytes but was supposed to be UTF16 (must contain an even number of bytes to be valid UTF16). | source: http://www.autoitscript.com/autoit3/docs/functions/BinaryToString.htm
@BitAND ( value1, value2 [, value n] ) Performs a bitwise AND operation. | Returns the value of the parameters bitwise-AND'ed together. Bit operations are performed as 32-bit integers. | source: http://www.autoitscript.com/autoit3/docs/functions/BitAND.htm
@BitNOT ( value ) Performs a bitwise NOT operation. | Returns the bitwise NOT of the value. Bit operations are performed as 32-bit integers. | source: http://www.autoitscript.com/autoit3/docs/functions/BitNOT.htm
@BitOR ( value1, value2 [, value n] ) Performs a bitwise OR operation. | Returns the two parameters bitwise-OR'ed together. Bit operations are performed as 32-bit integers. | source: http://www.autoitscript.com/autoit3/docs/functions/BitOR.htm
@BitRotate ( value [, shift = 1 [, size = "W"]] ) Performs a bit shifting operation, with rotation. | Success: the value rotated by the required number of bits. Failure: Sets the flag @error to non-zero if size is invalid. Bit operations are performed as 32-bit integers. | source: http://www.autoitscript.com/autoit3/docs/functions/BitRotate.htm
@BitShift ( value, shift ) Performs a bit shifting operation. | Returns the value shifted by the required number of bits. Bit operations are performed as 32-bit integers. | source: http://www.autoitscript.com/autoit3/docs/functions/BitShift.htm
@BitXOR ( value1, value2 [, value n] ) Performs a bitwise exclusive OR (XOR) operation. | Returns the value of the parameters bitwise-XOR'ed together. Bit operations are performed as 32-bit integers. | source: http://www.autoitscript.com/autoit3/docs/functions/BitXOR.htm
@Ceiling ( expression ) Returns a number rounded up to the next integer. | Returns the rounded number. | source: http://www.autoitscript.com/autoit3/docs/functions/Ceiling.htm
@Chr ( ASCIIcode ) Returns a character corresponding to an ASCII code. | Success: a string containing the ASCII representation of the given code. Failure: an empty string and sets the @error flag to 1 if the ASCIIcode is greater than 255. | source: http://www.autoitscript.com/autoit3/docs/functions/Chr.htm
@ChrW ( UNICODEcode ) Returns a character corresponding to a unicode code. | Success: a string containing the representation of the given code. Failure: an empty string and sets the @error flag to non-zero if the UNICODE value is greater than 65535. | source: http://www.autoitscript.com/autoit3/docs/functions/ChrW.htm
@Cos ( expression ) Calculates the cosine of a number. | Returns the trigonometric cosine of the number. | source: http://www.autoitscript.com/autoit3/docs/functions/Cos.htm
@Dec ( "hex" [, flag = 0] ) Returns a numeric representation of a hexadecimal string. | Success: the required data. Failure: 0 and sets the @error flag to 1 if an invalid hex string was used or if an overflow occurs. | source: http://www.autoitscript.com/autoit3/docs/functions/Dec.htm
@Exp ( ression ) Calculates e to the power of a number. | Returns e raised to the power of expression . | source: http://www.autoitscript.com/autoit3/docs/functions/Exp.htm
@Floor ( expression ) Returns a number rounded down to the closest integer. | Returns the rounded number. | source: http://www.autoitscript.com/autoit3/docs/functions/Floor.htm
@Hex ( expression [, length] ) Returns a string representation of an integer or of a binary type converted to hexadecimal. | Success: a string of length (never more than 16) characters, zero-padded if necessary for integer. Returns the binary type converted. Special: "" (empty string) if length is less than 1. | source: http://www.autoitscript.com/autoit3/docs/functions/Hex.htm
@Int ( expression [, flag = 0] ) Returns the integer (whole number) representation of an expression. | Returns an integer. | source: http://www.autoitscript.com/autoit3/docs/functions/Int.htm
@Log ( expression ) Calculates the natural logarithm of a number. | Success: the parameter's natural logarithm. Failure: Tends to return -1.#IND for non-positive parameters. | source: http://www.autoitscript.com/autoit3/docs/functions/Log.htm
@Mod ( value1, value2 ) Performs the modulus operation. | Success: the remainder when value1 is divided by value2. Failure: -1.#IND if the divisor is zero. | source: http://www.autoitscript.com/autoit3/docs/functions/Mod.htm
@Number ( expression [, flag = 0] ) Returns the numeric representation of an expression. | Returns a number. | source: http://www.autoitscript.com/autoit3/docs/functions/Number.htm
@Random ( [Min = 0 [, Max = 1 [, Flag = 0]]] ) Generates a pseudo-random float-type number. | Success: a pseudo-random number between Min and Max. Failure: sets the @error flag to non-zero. | source: http://www.autoitscript.com/autoit3/docs/functions/Random.htm
@Round ( expression [, decimalplaces] ) Returns a number rounded to a specified number of decimal places. | Returns rounded number. | source: http://www.autoitscript.com/autoit3/docs/functions/Round.htm
@SRandom ( Seed ) Set Seed for random number generation. | None. | source: http://www.autoitscript.com/autoit3/docs/functions/SRandom.htm
@Sin ( expression ) Calculates the sine of a number. | Returns the trigonometric sine of the number. | source: http://www.autoitscript.com/autoit3/docs/functions/Sin.htm
@Sqrt ( expression ) Calculates the square-root of a number. | Success: the square-root. Failure: -1.#IND if parameter is negative. | source: http://www.autoitscript.com/autoit3/docs/functions/Sqrt.htm
@String ( expression ) Returns the string representation of an expression. | Returns a string. | source: http://www.autoitscript.com/autoit3/docs/functions/String.htm
@StringFormat ( "format control", var1 [, ... var32] ) Returns a formatted string (similar to the C sprintf() function). | Returns the formatted string according to "format control" parameter. | source: http://www.autoitscript.com/autoit3/docs/functions/StringFormat.htm
@StringInStr ( "string", "substring" [, casesense = 0 [, occurrence = 1 [, start = 1 [, count]]]] ) Checks if a string contains a given substring. | Success: the position of the substring. Failure: 0 if substring not found. @error: 1 = Invalid "start" or "occurrence" parameter given. | source: http://www.autoitscript.com/autoit3/docs/functions/StringInStr.htm
@StringLeft ( "string", count ) Returns a number of characters from the left-hand side of a string. | Returns a string containing the leftmost count characters of the string. | source: http://www.autoitscript.com/autoit3/docs/functions/StringLeft.htm
@StringLen ( "string" ) Returns the number of characters in a string. | Returns the length of the string. | source: http://www.autoitscript.com/autoit3/docs/functions/StringLen.htm
@StringLower ( "string" ) Converts a string to lowercase. | Returns the string converted to lowercase. | source: http://www.autoitscript.com/autoit3/docs/functions/StringLower.htm
@StringMid ( "string", start [, count = -1] ) Extracts a number of characters from a string. | Returns the extracted string. | source: http://www.autoitscript.com/autoit3/docs/functions/StringMid.htm
@StringRegExp ( "test", "pattern" [, flag = 0 [, offset = 1]] ) Check if a string fits a given regular expression pattern. | Flag = $STR_REGEXPMATCH (0) : : @error 2 Bad pattern. @extended = offset of error in pattern. Flag = $STR_REGEXPARRAYMATCH (1) or $STR_REGEXPARRAYFULLMATCH (2) : : @error 0 Array is valid. Check @extended for next offset 1 Array is invalid. No matches. 2 Bad pattern, array is invalid. @extended = offset of error in pattern. Flag = $STR_REGEXPARRAYGLOBALMATCH (3) or $STR_REGEXPARRAYGLOBALFULLMATCH (4) : : @error 0 Array is valid. 1 Array is invalid. No matches. 2 Bad pattern, array is invalid. @extended = offset of error in pattern. | source: http://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm
@StringRegExpReplace ( "test", "pattern", "replace" [, count = 0] ) Replace text in a string based on regular expressions. | Success: an updated string based on regular expressions. Check @extended for the number of replacements performed. Failure: sets the @error flag to non-zero. @error: 2 = Pattern invalid. @extended = offset of error in pattern. | source: http://www.autoitscript.com/autoit3/docs/functions/StringRegExpReplace.htm
@StringReplace ( "string", "searchstring/start", "replacestring" [, occurrence = 0 [, casesense = 0]] ) Replaces substrings in a string. | Returns the new string with the number of replacements performed stored in the @extended macro. | source: http://www.autoitscript.com/autoit3/docs/functions/StringReplace.htm
@StringReverse ( "string" [, flag = 0] ) Reverses the contents of the specified string. | Returns a reversed string. | source: http://www.autoitscript.com/autoit3/docs/functions/StringReverse.htm
@StringRight ( "string", count ) Returns a number of characters from the right-hand side of a string. | Returns a string containing the rightmost count characters of the string. | source: http://www.autoitscript.com/autoit3/docs/functions/StringRight.htm
@StringSplit ( "string", "delimiters" [, flag = 0] ) Splits up a string into substrings depending on the given delimiters. | Returns an array, by default the first element ($aArray[0]) contains the number of strings returned, the remaining elements ($aArray[1], $aArray[2], etc.) contain the delimited strings. If the flag parameter is set to $STR_NOCOUNT (2) then the count is not returned in the first element. If no delimiters were found then the @error flag is set to 1, count is equal to 1 ($aArray[0]) and the full string is returned ($aArray[1]). | source: http://www.autoitscript.com/autoit3/docs/functions/StringSplit.htm
@StringStripWS ( "string", flag ) Strips the white space in a string. | Returns the new string stripped of the requested white space. | source: http://www.autoitscript.com/autoit3/docs/functions/StringStripWS.htm
@StringToBinary ( expression [, flag = 1] ) Converts a string into binary data. | Returns a binary variant. | source: http://www.autoitscript.com/autoit3/docs/functions/StringToBinary.htm
@StringTrimLeft ( "string", count ) Trims a number of characters from the left hand side of a string. | Returns the string trimmed by count characters from the left. | source: http://www.autoitscript.com/autoit3/docs/functions/StringTrimLeft.htm
@StringTrimRight ( "string", count ) Trims a number of characters from the right hand side of a string. | Returns the string trimmed by count characters from the right. | source: http://www.autoitscript.com/autoit3/docs/functions/StringTrimRight.htm
@StringUpper ( "string" ) Converts a string to uppercase. | Returns the string converted to uppercase. | source: http://www.autoitscript.com/autoit3/docs/functions/StringUpper.htm
@TCPNameToIP ( name ) Converts an Internet name to IP address. | Success: a string containing IP address corresponding to the name. Failure: "" and sets the @error flag to non-zero. @error: windows API WSAGetError return value (see MSDN ). | source: http://www.autoitscript.com/autoit3/docs/functions/TCPNameToIP.htm
@Tan ( expression ) Calculates the tangent of a number. | Returns the trigonometric tangent of the number. | source: http://www.autoitscript.com/autoit3/docs/functions/Tan.htm
@TimerDiff ( handle ) Returns the difference in time from a previous call to TimerInit(). | Returns the time difference (in milliseconds) from a previous call to TimerInit() . | source: http://www.autoitscript.com/autoit3/docs/functions/TimerDiff.htm
@TimerInit ( ) Returns a handle that can be passed to TimerDiff() to calculate the difference in milliseconds. | Returns a handle that can be passed to TimerDiff() to calculate the difference in milliseconds. | source: http://www.autoitscript.com/autoit3/docs/functions/TimerInit.htm
@UBound ( Array [, Dimension = 1] ) Returns the size of array dimensions. | Success: the size of the array dimension. Failure: 0 and sets the @error flag to non-zero. @error: 1 = Array given is not an array. 2 = Array dimension is invalid. | source: http://www.autoitscript.com/autoit3/docs/functions/UBound.htm
@VarGetType ( expression ) Returns the internal type representation of a variant. | Returns a string representing the type of the expression. | source: http://www.autoitscript.com/autoit3/docs/functions/VarGetType.htm

UDF Commands

Command Parameters Description
@_ArrayAdd {in Array.au3 Library} ( ByRef $aArray, $vValue [, $iStart = 0 [, $sDelim_Item = "|" [, $sDelim_Row = @CRLF [, $hDataType = 0]]]] ) Adds a specified value at the end of an existing 1D or 2D array | Success: the index of last added item. Failure: -1 and sets the @error flag to non-zero. @error: 1 - $aArray is not an array 2 - $aArray is not a 1 or 2 dimensional array 3 - $vValue has too many columns to fit into $aArray 4 - $iStart outside array bounds (2D only) 5 - Number of dimensions for $avArray and $vValue arrays do not match | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArrayAdd.htm
@_ArrayDelete {in Array.au3 Library} ( ByRef $aArray, $vRange ) Deletes the specified element(s) from the specified 1D or 2D array | Success: the new size of the array (see remarks) Failure: -1 and sets the @error flag to non-zero. @error: 1 - $aArray is not an array 2 - $aArray is not a 1D or 2D array 3 - $vRange is not a valid range string 4 - $vRange is not a 1D array or has only 1 element 5 - $vRange content is outside array bounds | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArrayDelete.htm
@_ArrayPop {in Array.au3 Library} ( ByRef $aArray ) Returns the last element of an array, deleting that element from the array at the same time | Success: the last element of the array (see remarks). Failure: sets the @error flag to non-zero. @error: 1 - The Input Must be an array 2 - $aArray is not a 1D array 3 - $aArray is empty | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArrayPop.htm
@_ArrayPush {in Array.au3 Library} ( ByRef $aArray, $vValue [, $iDirection = 0] ) Add new values without increasing array size by inserting at the end the new value and deleting the first one or vice versa | Success: 1. Failure: 0 and sets the @error flag to non-zero. @error: 1 - $aArray is not an array 2 - $vValue is an array larger than $aArray (so it can't fit) 3 - $aArray is not a 1D array | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArrayPush.htm
@_ArraySearch {in Array.au3 Library} ( Const ByRef $aArray, $vValue [, $iStart = 0 [, $iEnd = 0 [, $iCase = 0 [, $iCompare = 0 [, $iForward = 1 [, $iSubItem = -1 [, $bRow = False]]]]]]] ) Finds an entry within a 1D or 2D array. Similar to _ArrayBinarySearch(), except that the array does not need to be sorted | Success: the index that $vValue was found at. Failure: -1 and sets the @error flag to non-zero. @error: 1 - $aArray is not an array 2 - $aArray is not a 1D or 2D array 3 - $aArray is empty 4 - $iStart is greater than $iEnd 5 - Array not 2D and $bRow set True 6 - $vValue was not found in array | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArraySearch.htm
@_ArraySort {in Array.au3 Library} ( ByRef $aArray [, $iDescending = 0 [, $iStart = 0 [, $iEnd = 0 [, $iSubItem = 0 [, $iPivot = 0]]]]] ) Sort a 1D or 2D array on a specific index using the dualpivotsort/quicksort/insertionsort algorithms | Success: 1. Failure: 0 and sets the @error flag to non-zero. @error: 1 - $aArray is not an array 2 - $iStart is greater than $iEnd 3 - $iSubItem is greater than subitem count 4 - $aArray is not a 1D or 2D array 5 - $aArray is empty 6 - $iPivot used with 2D array | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArraySort.htm
@_ArrayToString {in Array.au3 Library} ( Const ByRef $aArray [, $sDelim_Col = "|" [, $iStart_Row = 0 [, $iEnd_Row = 0 [, $sDelim_Row = @CRLF [, $iStart_Col = 0 [, $iEnd_Col = 0]]]]]] ) Places the elements of a 1D or 2D array into a single string, separated by the specified delimiters | Success: a string which combined selected elements separated by the delimiters. Failure: sets the @error flag to non-zero. @error: 1 - $aArray is not an array 2 - $aArray is not a 1D or 2D array 3 - $iStart_Row or $iEnd_Row outside array bounds 4 - $iStart_Row greater then $iEnd_Row 5 - $iStart_Col or $iEnd_Col outside array bounds 6 - $iStart_Col greater then $iEnd_Col | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_ArrayToString.htm
@_Degree {in Math.au3 Library} ( $iRadians ) Converts radians to degrees | Success: Degrees converted from radians. Failure: Empty string and @error set to 1. | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_Degree.htm
@_HexToString {in String.au3 Library} ( $sHex ) Convert a hex string to a string | Success: a string. Failure: an empty string and sets the @error flag to non-zero. | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_HexToString.htm
@_Max {in Math.au3 Library} ( $iNum1, $iNum2 ) Evaluates which of the two numbers is higher | Success: the higher of the two numbers. Failure: 0 and sets the @error flag to non-zero @error: 1 - $iNum1 isn't a number. 2 - $iNum2 isn't a number. | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_Max.htm
@_Min {in Math.au3 Library} ( $iNum1, $iNum2 ) Evaluates which of the two numbers is lower | Success: the lower of the two numbers. Failure: 0 and sets the @error flag to non-zero @error: 1 - $iNum1 isn't a number. 2 - $iNum2 isn't a number. | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_Min.htm
@_Radian {in Math.au3 Library} ( $iDegrees ) Converts degrees to radians | Success: the radians converted from degrees. Failure: an empty string and sets the @error flag to non-zero. | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_Radian.htm
@_StringToHex {in String.au3 Library} ( $sString ) Convert a string to a hex string | Success: a hex string. Failure: an empty string. | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_StringToHex.htm
@_TCPIpToName {in Inet.au3 Library} ( $sIP [, $iOption = 0 ] ) Resolves IP address to Hostname(s) | Success: Hostname or Array (see Remarks) Failure: "" @error: 1 - inet_addr Call Failed 2 - inet_addr Failed 3 - gethostbyaddr Call Failed 4 - gethostbyaddr Failed, WSAGetLastError = @extended 5 - gethostbyaddr Failed, WSAGetLastError Failed 6 - strlen/sZStringRead Failed 7 - Error reading Aliases Array | source: http://www.autoitscript.com/autoit3/docs/libfunctions/_TCPIpToName.htm

General Commands

Command Parameters Description
@calc <AutoIt or Numeric Expression> Performs a calculation or executes an expression. Input strings are sanitized against a whitelist of function names.
@calc_sanitize <AutoIt or Numeric Expression> Sanitizes an expression against a whitelist of function names and returns the sanitized version. Used to debug expressions. See `@help calc`
@calc_dump <AutoIt or Numeric Expression> Performs a calculation or executes an expression like @CALC, but with full type information and formatting.
@help [command name] Lists and provides help information for registered commands. Use the syntax "help command" for information about the command. (eg: "@help more" provides information about @More.). The Usage information for each command displays the parameters you can use for the command. Brackets like [] incidate the parameter is optional. Nested brackets may imply that a series of optional parameters requires each previous one to be used first.
@more Provides more text from the end of a previous post that was cut off. Using `@more` will not clear the original text held unless the new text is also too long or the text held is the oldest cached entry. Note: `@more` results are specific to PM username and channel name.
@tokens <string> Returns the tokenized version of the command string, accounting for parameters containing spaces as marked with " ".
@stats Provides otpbot host system information.

Xor Commands

Command Parameters Description
@pastebinxor <pastebin link> [key filename] Performs a XOR operation on a transcribed decimal NATO message with an offset (given as a pastebin entry), with a local keyfile. eg `@pastebinxor http://pastebin.com/djeUWxm elpaso.bin`
@elpaso <pastebin link> This command defaults the keyfile used in pastebin xor operations. See `@help pastebinxor`.
@databin <pastebin link> This command defaults the keyfile used in pastebin xor operations. See `@help pastebinxor`.
@littlemissouri <pastebin link> This command defaults the keyfile used in pastebin xor operations. See `@help pastebinxor`.

ShortUrl Commands

Command Parameters Description
@tinyurl <link> Generates a shortened link using a preset url-shortening service. (not necessarily tinyurl) Resulting URLs are cached.

Users Commands

Command Parameters Description
@TELL <user> <message> Leaves a message for a user for the next time they show up. (Must be a recognized account)
@READ Reads messages left for you using the @TELL command and clears them.
@POUNCE <user> Adds a user to your Pounce List and notifies you when they show up next. (@WHOPOUNCE will display your Pounce List)
@NOPOUNCE <user> Removes a user to your Pounce List and stops notifying you when they show up next. (@WHOPOUNCE will display your Pounce List)
@WHOPOUNCE Lists users on your Pounce List that you receive notifications for (use @POUNCE to add users and @NOPOUNCE to remove them)
@SEEN [nickname] Displays information about the account name - for your nickname if none is given.
@IDENTIFY [nickname] Refreshes the account name information for a nickname - for your nickname if none is given. Try @WHOAMI after this to see updated information.
@WHOAMI Retrieves the NickServ account-name for your nickname in the channel if you are recognized. Try using the @IDENTIFY command before this if you are not recognized correctly.
@WHOIS <nickname> Retrieves the NickServ account-name for a nickname in the channel if the user is recognized.
@OPTION <command> <values> Retrieves or changes your personal bot settings. You must be registered with NickServ to use this command. use @OPTION LIST to see all of the options, @OPTION GET <optionname> to get a setting value, @OPTION SET <optionname> <value> to change a setting. You may use @HELP OPTION <command> for more information.
@OPTION LIST Lists all of the per-user settings for the bot. Use @OPTION GET <optionname> for information about a specific option.
@OPTION GET <optionname> Retrieves one of your personal bot settings and describes the option. NOTE: Password-style options cannot be retrieved by using this command. Use @OPTION LIST for a list of possible settings.
@OPTION SET <optionname> <value> Changes one of your personal bot settings. Use @OPTION LIST for a list of possible settings.
@USERINFO Lists the current state of the userinfo file. @USERINFO CLEAN will audit the file for old entries and remove them. (see @HELP USERINFO CLEAN )
@USERINFO CLEAN Audits the userinfo file and removes entries older than 7 days with no options set.

Wiki Commands

Command Parameters Description
@update Displays News information and current events. Note: the @newupdate command can be used to submit an update to the wiki.
@updatechan Displays News information and current events - sent to the channel.
@newupdate summary Posts a news update to the wiki. (alias: @new_update) Bot update time may exclude this message from the @UPDATE command for around 5min. This command can only be used by registered IRC users from the public channel. Your account name will be recorded.
@query <query string> Performs a Semantic-MediaWiki query and results CSV results.
@page <page name> Looks up a page name on the wiki and provides a link. Provides the first title search result if no exact match is found.
@search <search terms> Performs a search of the wiki by title name. If no results are found, a Text search is done.

Xlate Commands

Command Parameters Description
@xhex <hex digits> Converts hex data to a string. Similar to inbuilt @_HexToString or @BinaryToString but allows spacing.
@xdec <decimal bytes> Converts decimal bytes to a string. Alias: @xascii. Example: @xdec 68 82 79 80 results in `DROP`

NATO Commands

Command Parameters Description
@5gram <number of keyfile> <string of 5-letter words> Decodes a 5-gram message using OTPNato and a P#.txt file (right-to-left). Using more than one digit for the keyfile will decode with each keyfile in sequence. Using 'e' at the beginning of the number will perform reverse decoding (left-to-right). Using '*' at the end of the number will perform a final decode using P#.txt files 1-4 separately.
@5gramFind <number of keyfile> <5-letter word> Finds the lines of a P#.txt file that a particular 5gram appears on (there is always two).

Coords Commands

Command Parameters Description
@UTM <UTM coordinate> Returns the Latitude and Longitude for a UTM coordinate. Usage: @UTM zone/easting/northing or UTM zone easting northing -- Courtesy: Nadando
@LL <latitude> <longitude> Returns the UTM conversion for the given coordinate. -- Courtesy: Nadando
@Coord <latitude> <longitude> Returns the Google Maps link for the given coordinate.

log Commands

Command Parameters Description
@last <search> Find the last posts containing a phrase in the logs.
@lastby <user> [search] Find the last posts by a user in the logs. Optionally, you may supply a search phrase to narrow the results.
@aliases <nickname> [doUserMatch] Find possible aliases for a nickname using the logs. If 'doUserMatch' argument is entered as anything, a username search is also done. (takes longer) Note that this has possible false-positives and Username-text matches are even less reliable.

Dialer Commands

Command Parameters Description
@dial <agentcode> [line] Posts an agent number (DTMF extension) request to the OTP22 auto-dialer. (NOTE: @CALL will place a call without an agent code). Completely numeric agent codes will have `#` automatically appended to them. Use the line parameter to specify which number to dial by keyword. (See @LINES for a list) Note: Uses your account saved dialer password. (see @OPTION GET DIALERPASS )
@call <line> Posts a call request to the OTP22 auto-dialer. No agent number is used for this call. Use the line parameter to specify which number to dial by keyword. (See @LINES for a list. Use @DIAL to input an agent code/DTMF extension) Note: Uses your account saved dialer password. (see @OPTION GET DIALERPASS )
@lines Lists the valid phone line keywords for use with the @DIAL and @CALL commands.

DNS Commands

Command Parameters Description
@host <hostname/address> [option] Performs either a DNS Lookup or a Reverse lookup depending on the input. The option parameter is passed to the Lookup command, if used. See @HELP LOOKUP and @HELP REVERSE.
@servers <hostname> Produces a named list of servers available for an input hostname. This is similar to @lookup <hostname> A
@lookup <hostname> [recordType] Retrieves DNS records for a hostname. RecordType defaults to * when not supplied - using * will output all records.
@reverse <IP Address> Retrieves hostname records for a given IP.

Forum Commands

Command Parameters Description
@lastforumpage Retrieves the URL for the current last page of the forum topic.
@forumdebug forces a new-reply notification with at least the last 10 posts.

PGP Commands

Command Parameters Description
@GetKey <keyid> [keyserver] Retrieves a PGP key from a keyserver for use with the Verify command. The default server is pgp.mit.edu.
@Verify <pastebin link> Retrieves and verifies a PGP-signed message from a pastebin link. You may need to use the @GetKey first.

Niche Commands

Command Parameters Description
@Worm <5gram entries> Decodes 5gram messages using the OTP22 Green Book QR-Code table. eg: `@worm FNAIU YPBIE`
@ZTime <date string> Attempts to present PRJMLPL-style date codes in a readable format. eg: `@ztime 31125959Z`
@ITA2 <binary string> Decodes ITA2 bits into a string. eg: `@ITA2 10100001101101110000` (see http://en.wikipedia.org/wiki/Baudot_code#ITA2 )
@ITA2S <binary string> Decodes ITA2 bits into strings using various bit shifts on the input. See `help ita2` for more information.
@Ternary <condition> <value A> <value B> Performs a ternary operation. Note: all condition strings except for 0 and empty (blank parameter) evaluate to True internally. eg: `@ternary 1 a b` or `@ternary 0 a b`
@LengthsToBits <numeric string> [flip] Translates a list of single-digit bit lengths into a binary string. That is, every digit (`length`) represents the number of bits to print, and the value (1 or 0) alternates with each length. If the `flip` paramter is given (as 1) then the binary string will be inverted in value. eg: `@lengthstobits 4412 1`
@FlipBits <binary string> Inverts a binary string switching 1's and 0's similar to a binary NOT operation. eg: `@flipbits 1011`
@uint16 <integer> Performs a Modulo 65536 operation.
@UTC Retrieve the UTC time and date from... timeanddate.com

MessageDesk Commands

Command Parameters Description
@md <input code> <response type> <response> [notes] Submits an entry to the Message Desk Indexer noting the outcome of a call to Message Desk that you made with an input and a response. . If you need to use spaces in any of the fields, surround the text with "double quotes".The Response Type can be one of the following: Hangup,Coord,Referral,location,Book,Number,Pointless,Return,Unknown - However, some partial matches are accepted also.
@MDIDebug Returns internal state information about MessageDeskIndexer polling.

Bot Commands

Command Parameters Description
@uptime Displays uptime information about IRC Connection, OtpBot and OtpHost.
@botping Sends a ping message to OtpHost. Note: OtpHost pong responses are asynchronous and arrive at the bot's primary channel.
@botupdate Requests OtpHost to check for updates. This may result in an immediate program update. Note: OtpHost version responses are asynchronous and arrive at the bot's primary channel.
@version Display version information about OtpBot.
@debug Display command debugging, otphost, and keyfile debugging and status information.