• Effective-Office Effective-Office
  • Информация о проекте
    • Информация о проекте
    • Активность
    • Метки
    • Участники
  • Репозиторий
    • Репозиторий
    • Файлы
    • Коммиты
    • Ветки
    • Теги
    • Участники
    • Диаграмма
    • Сравнение
  • mos.track
    • mos.track
    • Список
    • Доски
    • Спринты
  • Запросы на слияние 3
    • Запросы на слияние 3
  • CI/CD
    • CI/CD
    • Конвейеры
    • Задания
    • Расписания
  • Развертывания
    • Развертывания
    • Окружения
    • Релизы
  • Пакеты и реестры
    • Пакеты и реестры
    • Реестр пакетов
    • Реестр контейнеров
  • Мониторинг
    • Мониторинг
    • Инциденты
  • Аналитика
    • Аналитика
    • Поток ценности
    • CI/CD
    • Репозиторий
  • mos.wiki
    • mos.wiki
  • Сниппеты
    • Сниппеты
  • Активность
  • Диаграмма
  • Создать новую задачу
  • Задания
  • Коммиты
  • Доски с задачами
Свернуть панель
  • effective-dev-opensource
  • Effective-Office
  • Запросы на слияние
  • !338

EO-792 Fix: Mattetmost bot - Update photo upload in SynologyRepositoryImpl and SynologyApi

  • Ревью изменений

  • Скачать
  • Почтовые патчи
  • Простое отличие
Закрыто effective-dev-opensource запросил слияние tvApp/fix/EO-792 в develop Июл 01, 2025
  • Обзор 1
  • Коммиты 1
  • Конвейеры 0
  • Изменения 3

Created by: KrugarValdes

Reason

Synology API successfully accepted photo uploads, but the response format changed and our code could not deserialize it. As a result, the upload returned an error and no reaction was posted under the Mattermost message. The previous implementation incorrectly used @Body with a manually built multipart request. Synology requires a proper multipart/form-data request with parameters passed as parts, not in the body.

Solution

API interface update: Switched uploadPhoto in SynologyApi to a proper https://github.com/multipart endpoint (/entry.cgi?api=SYNO.Foto.Upload.Item&method=upload&version=1)

Repository refactor:

  • Removed manual multipart builder and header‑stripping hack.
  • Added setRequestToUpload(file, fileName, fileType) to prepare the three parts (file, name, duplicate)
  • Updated uploadPhoto to call the new multipart method, then manually read ResponseBody, and parse JSON with Moshi into UploadPhotoResponse

Result Photos are uploaded to Synology and the JSON response is parsed without errors. The repository now correctly recognizes a successful upload and triggers the reaction under the Mattermost post.

Ответственный
Назначить
Проверяющие
Запросить ревью
Оценка трудозатрат
Исходная ветка: tvApp/fix/EO-792