Невозможно отправить push-уведомление.ErrorCode 460 - PullRequest
0 голосов
/ 03 февраля 2019

Я использую MongooseIM с функцией MongooseIM-Push.Я настроил FCM на Android и IOS, и он отлично работает для обоих (проверено отправкой push-уведомлений из кода js узла).

при использовании MongooseimPush (запущенный образ докера), хотя я могу получать push-сообщения на Android, но я получаю приведенную ниже ошибку для каждого отправленного раздела

11:46:00.372 [error] Unable to submit push notification. ErrorCode 460, Payload <<"{\"topic\":null,\"service\":\"fcm\",\"mode\":\"prod\",\"data\":{\"message-count\":1,\"last-message-sender\":\"a9jpmqz7sil9qdbr@localhost\",\"last-message-body\":\"{\\\"text\\\":\\\"nh\\\"}\"}}">>.Possible API mismatch - tried URL: <<"v2/notification/fdOXsUNXwHc:APA91bG2oIdmhrRZ5L3w2RCPE17sn9fur74LGYGnqHWl5p5o3Xr4Y-1YDhwjfhQAs4gLr7gOETsKDArL5wPuFXJGvoW2nrhr87DdAxvWpY0J4uh1ZuoZMTqn7w14vwg7kW48Lki9T8Xx">>.

11:46:00.383 [error] Unable to submit push notification. ErrorCode 460, Payload <<"{\"topic\":null,\"service\":\"fcm\",\"mode\":\"prod\",\"alert\":{\"title\":\"a9jpmqz7sil9qdbr@localhost\",\"tag\":\"a9jpmqz7sil9qdbr@localhost\",\"click_action\":null,\"body\":\"{\\\"text\\\":\\\"nh\\\"}\",\"badge\":1}}">>.Possible API mismatch - tried URL: <<"v2/notification/fdOXsUNXwHc:APA91bG2oIdmhrRZ5L3w2RCPE17sn9fur74LGYGnqHWl5p5o3Xr4Y-1YDhwjfhQAs4gLr7gOETsKDArL5wPuFXJGvoW2nrhr87DdAxvWpY0J4uh1ZuoZMTqn7w14vwg7kW48Lki9T8Xx">>.

В Docker нет ошибок

11:48:37.174 [debug] Sent 200 in 86ms
11:48:37.327 [debug] Sent 200 in 245ms
11:48:42.580 [debug] POST /v2/notification/dU5K-csGDQ8:APA91bH6V4ctXe_tFy8xE6jfCVLCbS4lMuEU4SlFxZqAF85Hb9I-eoZhRQCfCXSw-JenX8xJ5DYnfSDTyzdoj0JmizdRCmNnCDPecevQj3r6waoYQhRKE_xOKBNLDAQVifn7VzPDwsCX
11:48:42.582 [debug] POST /v2/notification/ffFcxJGqD7Q:APA91bHCGy6qA-i2dzjIVDxBvevo3hcCzbBXXB1JrdFclpalGwaWCdE3PAd-XtEKj9MIJxITnOA7E3l_lUkRPvQybGbGDAkH3sNBawRFekQEocxHnQxJize_BoY4I10GieYY0_4602Xd

Ниже приведены настройки в файле конфигурации mongooseim

   {mod_event_pusher, [
     {backends, [
       {push, [{wpool, [{workers, 100}]}]}
     ]}
   ]},
   {mod_pubsub, [
       {host, "pubsub.@HOST@"},
       {plugins, [<<"push">>]}
   ]},
   {mod_push_service_mongoosepush, [
      {pool_name, mongoose_push_http},
      {api_version, "v2"}
   ]}
{outgoing_pools, [
  {http, global, mongoose_push_http,
    [{strategy, available_worker}],
    [{server, "https://localhost:8443"}]}
]}.

1 Ответ

0 голосов
/ 09 февраля 2019

Код ответа 460 соответствует недействительному токену устройства.Как вы сказали в комментарии, вы установили / удалили приложение несколько раз.Возможно, что все старые токены больше не действительны, и Mongoose получает ошибку 460 .Уведомление выполнено успешно, потому что по крайней мере один (наиболее вероятно, самый новый) токен действителен.Чтобы удалить ранее зарегистрированные токены, вы можете деактивировать токен, как описано в XEP-0357 # отключение .Я также рекомендую прочитать учебник относительно Push-уведомлений с MongooseIM и MongoosePush [3].

Предоставленная вами конфигурация выглядит для меня корректной.

...