PC Soft WinDEV Mobile не получает свойства уведомления

Я отправляю уведомления FCM через laravel-notification-channels/fcm и, похоже, это работает так, как ожидалось:

public function toFcm($notifiable): FcmMessage
{
    $message = (new FcmMessage(notification: new FcmNotification))->data([
        'WX_PUSH_EXT_VERSION' => '1.0',
        'WX_PROP_CONTENT' => 'Test',
        //'WX_PROP_MESSAGE' => 'Your account has been activated',
        'WX_PROP_LOCAL' => false,
        'WX_PROP_TITLE' => 'Account Activation',
        'WX_PROP_ACTIVATEAPPLICATION' => true,
        'WX_PROP_PRIORITY' => 1,
        'WX_PROP_DELETABLE' => true,
        'WX_PROP_VIBRATION' => true,
    ])->custom($this->customOptions());

    config()->set('fcm.debug', $message->toArray());

    return $message;
}

Следуя документации PC Soft WinDEV Mobile (https://doc.windev.com/en-US/?1000021399), я вижу, что если я пройду WX_PROP_MESSAGE, это отображает локальное уведомление, которое при нажатии на него попадает в процедуру.

Опять же, следуя документации, в которой говорится, что если WX_PROP_MESSAGE не отправлено, процедура должна быть запущена без отображения локального уведомления (я хочу сделать это только для синхронизации), она действительно попадает в процедуру, которая определена следующим образом:

PROCEDURE NotificationCallBack(MyNotif is Notification)
 
<COMPILE IF ConfigurationType=Android>
    sContent    is string
    sFContent   is string
    sSecondary  is string
    sTitle      is string
    Info("Im In")
    sContent    = MyNotif.Content // I expect Test here but its empty
    sTitle      = MyNotif.Title
    Info(sContent)
    Info(sFContent)
    Info(sSecondary)
    Info(sTitle)
<END>

Проблема в том, что каждое из этих Notification свойств пусто, когда приходит уведомление... что я здесь делаю не так? Полезная нагрузка, которую я отправляю, выглядит следующим образом:

{
  "data": {
    "WX_PUSH_EXT_VERSION": "1.0",
    "WX_PROP_CONTENT": "Test",
    "WX_PROP_LOCAL": false,
    "WX_PROP_TITLE": "Account Activation",
    "WX_PROP_ACTIVATEAPPLICATION": true,
    "WX_PROP_PRIORITY": 1,
    "WX_PROP_DELETABLE": true,
    "WX_PROP_VIBRATION": true
  },
  "registration_ids": [
    "<TRUNCATED>"
  ]
}

Я ожидаю, что внутри MyNotif.Content есть Test, который позже я изменю на полезную нагрузку JSON, чтобы направить телефон на синхронизацию с определенными частями сервера.

Из документации по Notification видно, что нам нужно свойство Content для данных пользовательских уведомлений: https://doc.windev.com/en-US/?1000019441&name=notification_variable_type

Я не вижу ничего плохого. Возможно, это ошибка WINDEV. Вы используете последнюю версию?

Olivier 06.06.2024 11:36

Точно так же, но прежде чем я сделал предположение и сказал им, что им нужно обновиться, я подумал, что стоит дважды проверить, я не делаю ничего плохого со своей стороны xD. Я использую WinDEV 27, где последней версией является WinDEV 2024, что означало бы обновление всего проекта. и тратить тысячи на новые ключи :( Если у вас 2024, сможете ли вы воспроизвести такое поведение? Или это работает на 2024?

Jaquarh 06.06.2024 11:43
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Эта проблема описана здесь: ключи JSON должны быть на французском, а не на английском языке. Французскую версию страницы документации вы найдете здесь.

В частности, ключ контента — WX_PROP_CONTENU, а не WX_PROP_CONTENT.

Другие вопросы по теме

Похожие вопросы

Отображать текстовое содержимое CPT во всплывающем окне Elementor
Как увидеть различия в коде версий PHP в PhpStorm?
Мой веб-сайт использует html2pdf (javascript) для создания PDF-файла из html, но возникают проблемы с загрузкой в ​​веб-просмотре Android: kotlin
Пользовательский метод доставки с дополнительной проблемой выбора поля в блоке WooCommerce Checkout
Автоматическое завершение обработки заказов WooCommerce с бронированиями, дата начала которых уже прошла
Laravel – ошибка с объединением и курсоромPaginate
Конвертировать аудио pcm_s16le в mp3 (в php с помощью ffmpeg/sox/...)?
Неустранимая ошибка PHP: Uncaught RuntimeException: невозможно создать каталог Doctrine Proxy при чистой установке SuiteCRM
Paypal Advanced Checkout не работает в приложении laravel
Laravel – как создать свойство динамического идентификатора в кнопке для добавления элемента с помощью javascript, идентификатор задается путем прохождения через модальное окно