Mobile app integration
Device name
On first app start you can choose device name for your integration. All entity names created by this integration will depend on that name.
If you want to change device name for already created integration, you need to remove Mobile App: [your device name] from Home Assistant Configuration – Integrations, then restart your server and launch HA Client once again. The app will ask you to create new integration allowing to change default device name.
Notifications
HA Client supports sending notifications with custom actions from Home Assistant to the app. Actions could trigger events of call services.
After mobile app will be registered and your Home Assistant will be restarted you’ll get a new notify like notify.mobile_app_egor_s_pixel_3_xl (depends on device name). It can be used to send notifications to HA Client on a specific device. Just call this service with data:
title: "Oi!"
message: "Something is moving on your backyard!"
data:
tag: camera_movement
image: http://myserver.co.uk/cameraImage.jpeg
autoDismiss: false
actions:
- action: call-service
title: "Service action"
service: light.turn_on
service_data:
entity_id: light.living_room
- action: my_action
title: "Event action"
options for notify service data
Option | Value | Description |
---|---|---|
title | String | Notification title. Default is HA Client |
message | String | Notification body. This field is required by Home Assistant. You need to add it event if you want to dismiss any notification. |
data | Object | Notification settings |
options for data
Option | Value | Description |
---|---|---|
tag | String | Notification tag. Not mandatory. Use it to replace existing notification with the same tag |
image | String | Image url to be shown in notification |
dismiss | true or false | Use it to dismiss excisting notification with specific tag . Default is false . Note that message field is always required so you need to use it even in case of dismissing any notification. Just use any random value for message |
autoDismiss | true or false | If false notification will not be dismissed after click/tap on its body or action. Default is true |
channelId | String | Custom notification channel to create and use. Default is ha_notify |
actions | List | Up to 3 actions to add to the notification |
options for actions item
Option | Value | Description |
---|---|---|
action | call-service or String | Will try to call service or fire an event to your Home Assistant. Event type will be ha_client_event and action value will be passed in data of event |
title | String | Button title for action |
service | String | Home Assistant service to be called if action is call-service |
service_data | Object | Any set of data to be passed to service . For example: entity_id |
Location tracking
HA Client supports updating device_tracker
entity with real device GPS location.
Location tracking is implemented with Andorid Workmanager. It means that background location tracking is battery friendly and work as intended from OS perspective.
After mobile app will be registered and your Home Assistant will be restarted you’ll get a new device_tracker entity like device_tracker.mobile_app_egor_s_pixel_3_xl (depends on device name). To start sending location to this entity you need to enable Location tracking in HA Client through Integration settings in App settings
Troubleshooting
If notifications or location tracking doesn’t work, first thing you need to check is entities name you are using. You can check that in Configuration – Integrations – Mobile App: [your device name] in your Home Assistant.
Also it could be useful to remove Mobile App integration from Home Assistant and restrat server to allow HA Client to create integration once again.
Notification issues
There is a restriction on daily notifications count for each device: 50.
Location tracking issues
- Make sure the Location permission is granted for HA Client.
- You can disable background location tracking task and enable it again to resolve possible issues. Go to Integration settings in HA Client and disable Location tracking to cancel backgroud tasks. Then enable it back.
- You can add exception for HA Client in battery saving settings on your Android device to improve background tasks execution. This can help solving some location tracking issues on older Android versions. It can be achieved differently on different Android versions and even on different devices. For example in Android 10 on Pixel phones you need to go to Settings -> Apps & notifications tap Advanced -> Special app access -> Battery optimization. Or simply search for Battery optimization on main Settings screen with search field. Inside Battery optimization switch to All apps, find HA Client in the list and tap it. On the popup appeared choose Don’t optimize