WoW:Telepathy: Difference between revisions
Jump to navigation
Jump to search
(Telepathy Docs v1.0) |
m (→Features) |
||
Line 19: | Line 19: | ||
*Works for raids, parties, guilds and battlegrouds | *Works for raids, parties, guilds and battlegrouds | ||
*Standard/shared global channel name (only ever uses 1 and it is only joined when used) | *Standard/shared global channel name (only ever uses 1 and it is only joined when used) | ||
*Addons merely needs to register a | *Addons merely needs to register a listener and send messages with the Telepathy API for minimal usage | ||
*Performs basic flood control through ChatThrottleLib | *Performs basic flood control through ChatThrottleLib | ||
*Message priority system for alerts, bulk data and normal messages. | *Message priority system for alerts, bulk data and normal messages. | ||
Line 25: | Line 25: | ||
*Telepathy.sendTable allows for serialization and direct transfer of lua tables for everything but functions | *Telepathy.sendTable allows for serialization and direct transfer of lua tables for everything but functions | ||
*Telepathy global and whisper messages are automaticly forcibly suppressed via a ChatFrame_OnEvent hook and the other messages are not read by the default ChatFrames. This can also be circumvented for debugging. | *Telepathy global and whisper messages are automaticly forcibly suppressed via a ChatFrame_OnEvent hook and the other messages are not read by the default ChatFrames. This can also be circumvented for debugging. | ||
*Verbose debug options for seeing hidden chat and diagnosing problems using Sea.io.error (prints to chatframe or optionally ImprovedErrorFrame) | *Verbose debug options for seeing hidden chat and diagnosing problems using Sea.io.error (prints to chatframe or optionally ImprovedErrorFrame) | ||
==Built-in Slash Commands== | ==Built-in Slash Commands== |
Revision as of 20:47, 23 August 2006
Summary
- Network Chat Communication Library for Mods
- Telepathy is a chat communications library for cross client addon information sharing. It uses SendAddonMessage for "PARTY", "RAID", "GUILD" or "BATTLEGROUND" communication and hidden chat messages for "GLOBAL" or "WHISPER" communication. Global comm uses a global (faction/server wide) channel called "GlobalComm" while whispers are prefixed with "<T>" and hidden on the sending and recieving ends.
- Telepathy maintains a user list of everyone in the "GlobalComm" channel, but because other addons also use this standard comm channel it does not mean they are necissarily using Telepathy. Telepathy will automaticly join "GlobalComm" after the other channels have loaded if an addon has registered a listener for "GLOBAL". The player can also opt to dissable auto-join/leave using "/gcautojoin 0" or "/gcautojoin 1" to enable it again.
- Embedded Libs (Standalone vers): ChatThrottleLib, SeaHooks, SeaPrint, SeaString, Chronos and Satellite
Download
- Available at www.wowinterface.com.
Features
- Embeddable library
- Works for raids, parties, guilds and battlegrouds
- Standard/shared global channel name (only ever uses 1 and it is only joined when used)
- Addons merely needs to register a listener and send messages with the Telepathy API for minimal usage
- Performs basic flood control through ChatThrottleLib
- Message priority system for alerts, bulk data and normal messages.
- Datagrams are automaticly fragmented, queued and reconstructed for multiple message transfers
- Telepathy.sendTable allows for serialization and direct transfer of lua tables for everything but functions
- Telepathy global and whisper messages are automaticly forcibly suppressed via a ChatFrame_OnEvent hook and the other messages are not read by the default ChatFrames. This can also be circumvented for debugging.
- Verbose debug options for seeing hidden chat and diagnosing problems using Sea.io.error (prints to chatframe or optionally ImprovedErrorFrame)
Built-in Slash Commands
- /gcautojoin 1/0 - Allow (1) or Dissallow (0) auto-joining of a GlobalComm Channel when needed
Quick Start Example
Minimal Required Example
Basic Example of a Telepathy command:
Telepathy.registerListener("TelepathyTest", "WHISPER", function(msg, sender) Sea.io.printComma("TelepathyTester1: ", msg, sender) end ); Telepathy.sendMessage("TelepathyTest", "This whisper is invisible!", "WHISPER", UnitName('player'));
User Functions
- Outbound Messages
- sendMessage - Sends a hidden text message to a specified target or channel.
- sendTable - Sends a lua serialized object using Telepathy.
- Listener Registration
- registerListener - Registers a listener which will call a callback function when a message is recieved.
- unregisterListener - Unregisters a listener.
- isListener - Checks if the id/method is already in use.
- Global Channel Management
- isInGlobalChannel - Checks if a user (by name) is in the GlobalComm channel
- getCurrentChannelTable - Gets an iteratable list of active channels.
- getChannelCount - Returns the number of channels you are currently in.