I think I can mix both solutions to get what I need for my addon. GetSubZoneText by itself wouldn’t solve because I need the area ID. I can try to compare it with C_Map.GetAreaInfo(areaID) and return the areaID.
Update: Guys, thanks a lot!
It worked perfectly!
I’ve just tweaked FindBestAreaNameAtMouse to return the areaID instead of the name.
I appreciate all the help you gave me today!