Having some issues with sending data back and forth between players using GLOBAL:
Player A can successful send data to player B, but player B can't send the same data back to player A. Did a /RL with player B, and all the data populated again from player A. Did vise-versa with player B having the data and did a /RL on player A, and they still won't receive the data from player B.
If Player B has different/new data then player A, player A isn't receiving it. But if player A has different/new data it gets sent successfully to player B.
I know using GLOBAL is taboo from reading different posts, but I can't for the life of me figure out how to send WHISPER to all the players that are using my addon with data.
This is the gist of the communication part here, oh BTW this was testing on my main account and a trial account, not sure if that is an issue? All the debug messages where correct, so player B knew what the info was being sent, just player A wouldn't receive it.
I'm not fluent in LUA/WoW API. So I'm sure this is a heaping mess, but parts work perfectly and others, well meh!
Dailies:RegisterComm(self.CommPrefix, "GLOBAL");
Dailies.OnCommReceive = {}
function Dailies.OnCommReceive:Command1(prefix, sender, distribution, channel, ...)
---
end
Nice part about ace2 comms is that it will automagically serilise data sent. so you don't need to do anything fancy with sending a single string command.
Set everything up the way you have it with the notes from the link and it still does the same thing, only player A can send the data. Player A won't receive anything from player B.
They both are sending the data the exact same way, I don't know why player A won't accept any comm messages.
from looking at that code snipet, it looks like your not doing anything with the incomming data, looks like your setting a few locals/global variables.. problem with using non-table references is that when they change they really change and messes up consistancy sometimes if your moving scopes.
try making a function that handles set and gets for the quest IE
addon:SetDailiyQuest(type, questName)
self.CurrentQuests[type] = questname
end
addon:GetDailiyQuest(type)
return self.CurrentQuests[type] and self.CurrentQuests[type]
end
I'm beginning to wonder if trial accounts are even able to send data in any sort through private channels, maybe to keep them from hijacking a mod to send spam?
I made another trial account, to see with my Main and 2 trials accounts. And my Main wouldn't receive any data from them but they could get data from my main account.
/Sigh. I didn't think it'd be this difficult just to send alittle bit of info back and forth to people using my mod.
Interesting, I'm trying to get the list of people in the AceComm channel to try what Shock said with just getting a whisper list and GetChannelDisplayInfo() won't even return that AceComm is a valid channel. It'll display the header 'CUSTOM', but no channel lists within.
Got it all figured out and used the WHISPER approach that Shock mention, with holding a table of members in the channel and then sending whispers to peeps using my add-on.
All members are sending a receiving data as expected. Thanks for the assistance.
that's more complete with both chat and addon distribution, using CBH as the dispatcher and Ace3 Serilizer to allow for just about anything to get accrost..
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Player A can successful send data to player B, but player B can't send the same data back to player A. Did a /RL with player B, and all the data populated again from player A. Did vise-versa with player B having the data and did a /RL on player A, and they still won't receive the data from player B.
If Player B has different/new data then player A, player A isn't receiving it. But if player A has different/new data it gets sent successfully to player B.
I know using GLOBAL is taboo from reading different posts, but I can't for the life of me figure out how to send WHISPER to all the players that are using my addon with data.
Any enlightenment would be appreciated.
grab the channle list and pairs thought it . . . it would work :D
other than that, we're prolly gona need to see some synch code & what not...
use ace.pastey.net
This is the gist of the communication part here, oh BTW this was testing on my main account and a trial account, not sure if that is an issue? All the debug messages where correct, so player B knew what the info was being sent, just player A wouldn't receive it.
I'm not fluent in LUA/WoW API. So I'm sure this is a heaping mess, but parts work perfectly and others, well meh!
http://ace.pastey.net/87482-z2zk
Nice part about ace2 comms is that it will automagically serilise data sent. so you don't need to do anything fancy with sending a single string command.
so this:
turns into this:
and your function turns out to be like so:
http://www.wowace.com/wiki/AceComm-2.0#:RegisterComm.28.22prefix.22.2C_.22distribution.22_.5B.2C_.22methodName.22_or_func_.5D.29_or_.28.22prefix.22.2C_.22CUSTOM.22.2C_.22channelName.22.2C_.5B.2C_.22methodName.22_or_func_.5D.29
sometimes you love ace2 comms, other times it can be hateful :\
They both are sending the data the exact same way, I don't know why player A won't accept any comm messages.
try making a function that handles set and gets for the quest IE
addon:SetDailiyQuest(type, questName)
self.CurrentQuests[type] = questname
end
addon:GetDailiyQuest(type)
return self.CurrentQuests[type] and self.CurrentQuests[type]
end
IMO
I made another trial account, to see with my Main and 2 trials accounts. And my Main wouldn't receive any data from them but they could get data from my main account.
/Sigh. I didn't think it'd be this difficult just to send alittle bit of info back and forth to people using my mod.
Trial accounts are heavily restricted due to gold selling spam issues.
All members are sending a receiving data as expected. Thanks for the assistance.
http://shock-wow.googlecode.com/svn/trunk/Ideas/ChatChannelComms.lua
could always use that for chat comms... it's pritty simple just add methods off the main module and it'll act as expected :D
Or my more complicated version used in IRolePlay, that im developing
http://shock-wow.googlecode.com/svn/trunk/IRolePlay/Communications.lua
that's more complete with both chat and addon distribution, using CBH as the dispatcher and Ace3 Serilizer to allow for just about anything to get accrost..