Message names, like function names, always begin with the prefix "TAPI", "LINE" or "PHONE", and are followed by a concatenated multi-word description. "TAPI"-prefixed messages are sent to the application's window. "LINE" and "PHONE" messages describe the parameters passed to an application's callback function. Message names are written entirely in uppercase letters. To differentiate message names from data type names, an underscore bar must follow the prefix. This underscore is then followed by one or more words describing the purpose of the message. For example, LINE_CALLSTATE is a message indicating a callstate event on a line device.