WoW:API GetChannelName: Difference between revisions
mNo edit summary |
m (Move page script moved page API GetChannelName to API GetChannelName without leaving a redirect) |
||
(10 intermediate revisions by 10 users not shown) | |||
Line 1: | Line 1: | ||
{{wowapi}} | |||
Retrieves the id and the name from a specific channel. | Retrieves the id and the name from a specific channel. | ||
Line 7: | Line 7: | ||
---- | ---- | ||
;''Arguments'' | ;''Arguments'' | ||
:;id : The id of the channel you want to query, | :;id : The numeric id of the channel you want to query, or a string containing the name of the channel. | ||
---- | ---- | ||
Line 15: | Line 14: | ||
:;id : a number containing the id of the channel, e.g. 2, or 0 if the channel is not found | :;id : a number containing the id of the channel, e.g. 2, or 0 if the channel is not found | ||
:;name : a string containing the name of the channel, e.g. "Trade - Stormwind", or nil if the channel is not found | :;name : a string containing the name of the channel, e.g. "Trade - Stormwind", or nil if the channel is not found or the id parameter was a name. | ||
---- | |||
;''Important'' | |||
If the channel argument is the channel name (ie "testchan1"), then the returned channel name is a nil value. | |||
If the channel argument is the channel number (ie 6 or "6"), then the returned channel name is correct. | |||
The channel id returns correctly in both cases. | |||
It's also worthy to note the strange behaviour of (at least) Trade channels. Login to a city, GetChannelName("Trade - City") will return the channel number it's on. Step outside the city, you'll leave the channel yet making that call again will return the channel number you *were* on. As such, it's not entirely reliable for detecting if you're in a trade enabled zone. | |||
---- | ---- | ||
;''Example'' | ;''Example'' | ||
Line 22: | Line 29: | ||
myChannel = 1; | myChannel = 1; | ||
id, name = GetChannelName(myChannel); | id, name = GetChannelName(myChannel); | ||
if ( | if (id > 0 and name ~= nil) then | ||
SendChatMessage("This is just a test.", "CHANNEL", nil, | SendChatMessage("This is just a test.", "CHANNEL", nil, id); | ||
end | end | ||
Line 34: | Line 41: | ||
: Retrieves the name from a specific channel. | : Retrieves the name from a specific channel. | ||
: Also returns a 3rd value, seems to always be 0 on enUS client, its purpose is unknown. | |||
Latest revision as of 04:45, 15 August 2023
Retrieves the id and the name from a specific channel.
id, name = GetChannelName(id);
- Arguments
- id
- The numeric id of the channel you want to query, or a string containing the name of the channel.
- Returns
- id
- a number containing the id of the channel, e.g. 2, or 0 if the channel is not found
- name
- a string containing the name of the channel, e.g. "Trade - Stormwind", or nil if the channel is not found or the id parameter was a name.
- Important
If the channel argument is the channel name (ie "testchan1"), then the returned channel name is a nil value. If the channel argument is the channel number (ie 6 or "6"), then the returned channel name is correct. The channel id returns correctly in both cases.
It's also worthy to note the strange behaviour of (at least) Trade channels. Login to a city, GetChannelName("Trade - City") will return the channel number it's on. Step outside the city, you'll leave the channel yet making that call again will return the channel number you *were* on. As such, it's not entirely reliable for detecting if you're in a trade enabled zone.
- Example
-- Check if the specific channel exists myChannel = 1; id, name = GetChannelName(myChannel); if (id > 0 and name ~= nil) then SendChatMessage("This is just a test.", "CHANNEL", nil, id); end
- Result
Checks if the channel with id stored in myChannel exists and in this case sends the text "This is just a test" to it.
- Description
- Retrieves the name from a specific channel.
- Also returns a 3rd value, seems to always be 0 on enUS client, its purpose is unknown.