The description of Presence Publisher
This free open-source app regularly publishes to a configurable MQTT topic whenever
connected to a given Wi-Fi network or in proximity to a Bluetooth beacon.
It can be used to integrate the presence of your phone in home automation.
The app uses the built-in Android alarm manager, so notifications are sent
even if the phone is in stand-by. In addition to regularly scheduled checks,
the app also reacts to changes in the network connection.
The MQTT client supports anonymous and username / password authentication
as well as client certificate authentication. For more details on how to
configure certificate-based authentication, please have a look at
https://github.com/ostrya/PresencePublisher/blob/master/README.md.
Permissions
• ACCESS_BACKGROUND_LOCATION: on Android 10+, necessary to retrieve SSID of connected Wi-Fi while running in background
• ACCESS_FINE_LOCATION: necessary to discover beacons; on Android 9+, necessary to retrieve SSID of connected Wi-Fi
• ACCESS_NETWORK_STATE: necessary to register network change listener
• ACCESS_WIFI_STATE: necessary to retrieve SSID of connected Wi-Fi
• BLUETOOTH: necessary to communicate with beacons
• BLUETOOTH_ADMIN: necessary to discover beacons
• INTERNET: only necessary if your MQTT server is not running locally
• RECEIVE_BOOT_COMPLETED: necessary to start service on start-up
• REQUEST_IGNORE_BATTERY_OPTIMIZATIONS: on Android 6+, necessary to request disabling battery optimization
• WRITE_EXTERNAL_STORAGE: only necessary if you want to export log files in Android 4.0 - 4.3