Tried to reload iOS app and the iOS component and now I'm stuck

Was having problems with sending notification to my iPhone and after following some different threads and suggestions I have done the following things but have unsuccessfully been able to “re-introduce” my phone into Home Assistant.

I’m running a Rpi3 and originally installed from Hass.io, currently on version 0.84.1. iPhone has Home Assistant Companion version 1.1.1

Steps I have taken:

  1. uninstalling and re-installing the app
  2. deleted “ios:” from my config.yaml
  3. deleted by .ios.conf file
  4. deleted iOS (or maybe it was called Home Assistant for iOS) from the UI section Configuration | Integrations | List of “Configured” items

I thought the .ios.conf file was supposed to re-appear but no luck there. I can successfully access my UI from the iOS app but above the “Device ID” section I don’t see the “Status” section where it lists options for device tracking or notifications.

I am getting the following error every time Home Assistant loads:
“The notify.ios platform was loaded but no devices exist! Please check the documentation at https://home-assistant.io/ecosystem/ios/notifications/ for more information
12:34 PM components/notify/ios.py (ERROR)”

https://imgur.com/a/WOt1Jsy - this shows me logging into Home Assistant from the app

Am I missing some sort of config file or line of code that is preventing me from successfully getting back to the “Getting Started” screen referenced in the initial iOS Setup guide here: https://www.home-assistant.io/docs/ecosystem/ios/

I do have discovery enabled and I’m all out of ideas as to why I’m stuck in this weird limbo of being able to use the iOS app but Home Assistant not being able to use any of the iOS components.

UPDATE
Kept digging and found my way onto the new 1.5 beta version of the iOS app which seems to be working…so far. Or at least I’m making progress. I can see the status area but still don’t seem to have it working because all 3 items have an “X” instead of a checkmark. For instance, I’m not able to use the service notify.ios_<your_device_id_here>, it doesn’t exist in my services list although all of the following components (among many others) are listed in my “Loaded Components” device_tracker, notify, notify.ios, zeroconf

my ios.conf file finally reappeared which also seems like progress… but I’m still getting this error:
The notify.ios platform was loaded but no devices exist! Please check the documentation at https://home-assistant.io/ecosystem/ios/notifications/ for more information
5:21 PM components/notify/ios.py (ERROR)

here is what my app screen looks like: https://imgur.com/a/8VA5XZZ
What does the “basic authentication” switch do? It doesn’t seem to make a difference. I’m using the new login/password authentication + 2factor.

2nd UPDATE
Patience is a virtue. After about 15min and lots of reboots it looks like everything is working. I can see location status, battery status, and notification service calls are functioning.

If anyone stayed with me this long I’m still curious what the “basic authentication” switch on the iOS app is for.

It’s a specific thing for things that use basic auth like an nginx proxy I believe… most users will never use it which is why it’s in the normally hidden advanced section. The only thing most users need do on that screen is select/enter their HA URL and then the HA auth will log you in.

I also had a devil of a job getting rid of it and resetting but as you found, it eventually does catch up…

1 Like

I’m having this same issue now but I haven’t tried the beta app… getting “The notify.ios platform was loaded but no devices exist! Please check the documentation at https://home-assistant.io/ecosystem/ios/notifications/ for more information” I’ve tried disabling stuff in my config that I don’t use and are not associated to isolate the issue, will remove ios: next and try to reauthenticate but seems like i’m chasing my tail.

ya beta version solved it for me but I can’t say for certain that was the ONLY change I made which resulted in success.

I also deleted “ios:” from my config, deleted my ios.conf file, and used the UI Configuration / Integrations section to delete something IOS related that was in the top section labeled “Configured”

In the end making all those changes and also WAITING and rebooting the server is what did the trick.

I know this post is old, but after trying every config and debug for this problem for 3 days without finding anything on the web.
Fix the Errors deal with iOS app 1.5 and iOS 2.0 BETA

error while looking up redirect_uri Home Assistant iOS - Home Assistant
error while looking up redirect_uri Home Assistant iOS beta authentication - Home Assistant

I found this config is working:
(Running HASS via Docker on Unraid server + NGINX reverse proxy)

## Version 2018/12/05 - Changelog: https://github.com/linuxserver/docker-letsencrypt/commits/master/root/defaults/default

################################################################################
#### PORT 80  
################################################################################
# listening on port 80 disabled by default, remove the "#" signs to enable
#redirect all traffic to https
server {
	listen 80 default_server;
	listen [::]:80;
	server_name _;
	return 301 https://$host$request_uri;
}
################################################################################
# main server block
################################################################################
server {
	listen 443 ssl http2 default_server;
	listen [::]:443 ssl http2 default_server;

	root /config/www;
	index index.html index.htm index.php;

	server_name _;

	# all ssl related config moved to ssl.conf
	include /config/nginx/ssl.conf;
    
	client_max_body_size 0;

	location / {
		try_files $uri $uri/ /index.html /index.php?$args =404;
	}

	location ~ \.php$ {
		fastcgi_split_path_info ^(.+\.php)(/.+)$;
		fastcgi_pass 127.0.0.1:9000;
		fastcgi_index index.php;
		include /etc/nginx/fastcgi_params;
	}	
}	

###############################################################
### SUBDOMAIN 1 - Home-Assitant
###############################################################
server {
	listen 443 ssl http2;
	listen [::]:443 ssl http2;
	server_name hass.MYDOMAIN.COM;

    ssl_certificate /config/keys/letsencrypt/fullchain.pem;
    ssl_certificate_key /config/keys/letsencrypt/privkey.pem;

    ssl_dhparam /config/nginx/dhparams.pem;

    # These shouldn't need to be changed
    add_header Strict-Transport-Security "max-age=31536000; includeSubdomains";
    ssl on;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:50m;

    proxy_buffering off;

    location / {
        proxy_pass http://LOCAL_HASS_IP:8123;
        proxy_set_header Host $host;
        proxy_redirect http:// https://;
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Upgrade $http_upgrade;
	    proxy_set_header Connection "upgrade";

		resolver 127.0.0.11 valid=30s; 
        proxy_buffering               off;
        proxy_ssl_verify              off;
    }


    location /api/websocket {
        resolver 127.0.0.11 valid=30s;
        proxy_pass http://LOCAL_HASS_IP:8123;
        proxy_set_header Host $host;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }	
}
1 Like