Multiple ESP8266 and Android or NodeMCU

Hi

I need to get info from 4 ESP8266 devices:
Please have a look at this picture.

  • User should be free to choose 4 of them that are in range. So no hardcoded names
  • Sensors should only response their values if they are asked to do so
  • There is no Interner available
  • Sensors should give their info as fast as they can. If Android phone sends them request to do so
  • If it is not possible, I can use NodeMCU as a server, which is connected to Android phone

My ideas so far:

  1. Mesh network, which seems like a lot of overhead, since devices do not need to communicate with each other.
  2. Wifi direct, because as I read the manual, ESPs should support it and so do Android. But I still don't know how it should work in real life... There is not much info available as well. THIS
  3. Android phone act as a client, and making requests to 4 ESP8266 that are in range and that user can choose, and those 4 sensors should return their current sensor value.
  4. I can make each of these sensors act as an AP, but that means I have to connect one of them, get info, then disconnect from it, and then connect another sensor, get info etc... Which is why I offered NodeMCU which can establish multiple connections. Although it
  5. Your suggestions :slight_smile:

Sorry if stupid question, I work as an Android developer so this all seems too vague for me. But I am a beginner in Arduino/ESP field