Вы в основном правы: служба Push действует как интерфейс между работником службы и сервером приложений, за исключением того, что работник службы (или, возможно, веб-приложение) отправляет информацию о подписке на сервер приложений вне службы Push, таким образом, сервер приложений знает конечную точку и как правильно зашифровать любой контент уведомления.
Google использует GCM / FCM для Chrome, а Mozilla использует собственную службу Push в Firefox для настольных компьютеров, используя GCM / FCM и / или собственный сервис для Android; см. «Какую информацию Firefox использует для предоставления Web Push?» сечение здесь .
На момент написания этой статьи Chrome , Firefox и Edge поддерживают Push API, поэтому нет необходимости обрабатывать их отдельно ( WebKit не поддерживает его).
Краткий ответ: разработчики не имеют выбора, в котором Push Service использует клиент, но принятие Push API стандартизирует работника сервиса и веб-push в основных браузерах (исключая WebKit).