Multi-Tool Technical Overview

Multi-Tool Features

  • Over 60 essential functions covering Math, Comparison, String, Logic, Network, and Time
  • Detailed logging – aids in development of Service Desk procedures
  • Each call to the Multi-Tool can identify the source to simplify debugging
  • Fully documented programming guide
  • Simple installation
  • Simple integration with new or existing procedures
  • Can eliminate dozens of lines of procedure code

Technical Summary of Functions

Math Functions

Thirteen distinct math functions covering all common requirements (and then some!).

  • ADD, SUB, MUL, DIV basic functions
  • MOD – modulo arithmetic, returns the remainder after dividing 2 numbers
  • INT, ABS, RND – convert to integer, absolute value, and round to a specific number of decimals
  • INC / DEC to increment or decrement a value by 1
  • DTH & HTD convert number from Decimal to Hex or Hex to Decimal
  • RNG – a random number generator

Comparison Functions

Six comparison functions that operate at decimal precision.

  • CEQ / CNE – Equal and Not Equal functions, work with strings and numbers. When both values are numbers, a numeric comparison is performed with high accuracy. If either value is a string, a string comparison is performed.
  • CGT, CGE, CLT, & CLT – Greater than and less than type functions for numeric comparisons. Strings are treated as zero.

Logic Functions

These four functions permit more complex processing than would otherwise be available in Kasey’s core capabilities by allowing up to three values to be compared.

  • LAND will return true if two/three supplied values all evaluate to “true”.
  • LOR will return true if any of the three supplied values evaluate to “true”.
  • LNOT returns the logical inverse of the supplied value – 0 becomes 1 and any non-zero number will become 0.
  • LRTF is an unusual function that returns True (1) or False (0) based on specific text values, such as “Yes”, “On”, or “True”, as well as numeric values. An optional list of text values that also represent true can be specified to extend the capabilities of this function.

String Manipulation Functions

Fifteen functions to provide all of the manipulation you can imagine.

  • SLFT, SRGT, & SMID return sub-strings from the left, right, or middle of the string.
  • SINS & SINB return the position of one string in another, or simply a Boolean value to report the presence of one string in another.
  • SLEN returns the length of the string
  • SREV reverses the order of a string
  • SSPL and SSFC split a delimited string and return a specific field or return the number of fields found in the string.
  • SRPL can replace one substring with another in a string.
  • SASC & SCHR converts an ASCII char to a numeric value or a value to an ASCII character.
  • SCLC & SCUC converts a string to all lower or UPPER case characters.
  • SVCS is a software version comparison function that determines if one version string is less than, equal to, or greater than a second version string (V-String format is “A.B.C…”)

Network Functions

The two network functions allow specialized calculations and results to identify networks and name/address resolution.

  • NNSL performs an NSLookup command from the Kaseya server. This will perform name/address resolution of public hosts, or hosts on the network(s) that host the Kaseya server. This is most useful when Kaseya is hosted for a single organization. Given a hostname or IP address, it returns the list of names/addresses returned by DNS.
  • NISN is an “in subnet” calculator. Given an IP address, a network address and netmask, this function will return a True (1) value if the IP address is within the defined network/subnet. This can be used to provide network-specific responses to alerts.

Time Calculation Functions

The largest collection of functions – nineteen in all – are in the time/date category. These provide a formidable array of capabilities for Service Desk ticket processing.

  • TCTS, TCDT, TCTM return a timestamp string (Date Time), a date string, or a time string.
  • TCJD returns the current Julian day.
  • TCWD, TDY0, & TDY7 return the current weekday name or number. The weekday number can represent Sunday as either 0 or 7, depending on the calculation being performed.
  • TIWE returns a True value if the current day is a weekend.
  • TGDP & TGTP return the date or time parts from a supplied timestamp value.
  • TCMN, TCMO, TCDN, & TCYN return the month number or name, the day number of the month, or the year.
  • TCVT converts between a timestamp value and a number representing the number of seconds elapsed since January 1 of the prior year. This number allows simple calculation of time by adding or subtracting seconds. The resulting number is converted back to a timestamp with the same function. Very large (thousands of years) date calculations are possible by specifying an alternate epoch date, such as 1/1/1900.
  • TDIF returns the number of seconds (or minutes, hours, days, or years) between two timestamps.
  • TNTO returns the timestamp of the “next time occurrence”, such as “next Tuesday at 6am” or “third Friday at 8pm”.
  • TITR is a critical function for ticket processing – it returns a Boolean value if the current (or specific) time is between two time values. It is smart enough to know that a 5pm start time and 8am end time span two days. It can be told to restrict its response to weekdays, easily identifying the hours of operation of a helpdesk that operates 9-5 Mon-Fri, for example.
  • TIDR is similar to TITR except that it checks a range of timestamps that can span days (or even years).
  • TDLY provides a time delay similar to goal and escalation procedures without any relation to the customer coverage time.