Определить пользователей / сгенерировать токен для Ionic.io Push

У меня есть унаследованное приложение Ionic Framework, которое использует Ionic.io. Приложение авторизуется в соответствии с нашим API и получает токен API для использования в будущих запросах.

Я пытаюсь работать с push-уведомлениями - я настроил ionic push и могу без проблем запускать push-уведомления для всех пользователей.

Мне бы хотелось, чтобы целевые пользователи / устройства могли отправлять уведомления, и я понимаю, что для этого мне нужно зарегистрировать устройство, чтобы сгенерировать токен.

В моей функции $ ionicPlatform.ready есть:

$ionicPush.register().then(function(t) {
    return $ionicPush.saveToken(t);
}).then(function(t) {
  console.log('Token saved:', t.token);
});

Это, однако, похоже, не возвращает токен и вызывает

console.log($ionicPush); Показывает, что токен не установлен.

Есть идеи здесь? Что мне не хватает?

1 ответ

Решение

Поэтому после того, как я покопался в какой-то документации, я обнаружил, что проблема связана с пользователем-пользователем.

В основной функции запуска я запускаю

 if ($ionicAuth.isAuthenticated()) {

Если это не удается, я пытаюсь войти в систему пользователя и регистр пользователя, если это необходимо. (пользователь уже вошел в систему с помощью пользовательского токена авторизации против нашего API)

Прежде чем я попытаюсь зарегистрировать токен, мне нужно перезагрузить пользователя, чтобы сохранить приложение и вернуться обратно к ionic.io.

 $ionicUser.load().then(function() {
    $ionicPush.register().then(function(t) {
        console.log('Token sent:', t.token);
        return $ionicPush.saveToken(t);
    }).then(function(t) {
      console.log('Token saved:', t.token);
    });
});
Другие вопросы по тегам