I've been struggling to sort out exactly what's been going on for a couple hours now, and I've finally discovered something... Well, somewhere between weird and extremely problematic.
It appears that SendAddonMessage, at least when used with WHISPER, will drop the first message of any given prefix to any target outside of the area of interest. This dropping is silent, and applies in both directions if you're expecting a reply.
So scenarios like this happen (when the target is outside the area of interest):
Bob: PREFIX message sent. (Not received by Alice.)
Bob: PREFIX message sent. (Received by Alice.)
Alice: PREFIX message sent in response. (Not received by Bob.)
Bob: PREFIX message sent. (Received by Alice.)
Alice: PREFIX message sent in response. (Received by Bob. Finally, after three tries.)
This is just a huge mess if you're ever dealing with anyone outside the area of interest, and it doesn't even have the good graces to always drop messages. No, instead it has to be INCONSISTENT about it. And god help you if whatever protocol you're working with uses more than one prefix.
So what I'm asking, since I'm at the end of my rope on this one, is a few things:
(1) Is this already a known issue? Has it been brought up to any devs? I see no evidence of it being known yet, but I'm not even sure which devs are responsible for things in this area. (And I'm crossing my fingers to not have to only do a bug report forum post -- those are not exactly the best way to get something noticed in my experience.)
(2) Is there some workaround I've been missing? (Pre-sending dummy messages works... Kinda, but it's messy, a really piss-poor workaround, and also severely problematic if you're not implementing something completely new with zero userbase already.)
(3) Is there at least some way I'm missing to figure out if a named character is inside the area of interest? This would at least let me be sure to not expect a reply, even if they do have a capable addon. UnitIsVisible is great if you can work exclusively with units, but SendAddonMessage doesn't work with units... So I'd prefer to not have to.
It appears that SendAddonMessage, at least when used with WHISPER, will drop the first message of any given prefix to any target outside of the area of interest. This dropping is silent, and applies in both directions if you're expecting a reply.
So scenarios like this happen (when the target is outside the area of interest):
Bob: PREFIX message sent. (Not received by Alice.)
Bob: PREFIX message sent. (Received by Alice.)
Alice: PREFIX message sent in response. (Not received by Bob.)
Bob: PREFIX message sent. (Received by Alice.)
Alice: PREFIX message sent in response. (Received by Bob. Finally, after three tries.)
This is just a huge mess if you're ever dealing with anyone outside the area of interest, and it doesn't even have the good graces to always drop messages. No, instead it has to be INCONSISTENT about it. And god help you if whatever protocol you're working with uses more than one prefix.
So what I'm asking, since I'm at the end of my rope on this one, is a few things:
(1) Is this already a known issue? Has it been brought up to any devs? I see no evidence of it being known yet, but I'm not even sure which devs are responsible for things in this area. (And I'm crossing my fingers to not have to only do a bug report forum post -- those are not exactly the best way to get something noticed in my experience.)
(2) Is there some workaround I've been missing? (Pre-sending dummy messages works... Kinda, but it's messy, a really piss-poor workaround, and also severely problematic if you're not implementing something completely new with zero userbase already.)
(3) Is there at least some way I'm missing to figure out if a named character is inside the area of interest? This would at least let me be sure to not expect a reply, even if they do have a capable addon. UnitIsVisible is great if you can work exclusively with units, but SendAddonMessage doesn't work with units... So I'd prefer to not have to.