FreeScout na Synology Web Station

ODPOWIEDZ
as100
Początkujący
Posty: 1
Rejestracja: wt sty 18, 2022 7:06 am

FreeScout na Synology Web Station

Post autor: as100 »

Witam, jestem nowym użytkownikiem Synology, a to mój pierwszy post, proszę o wyrozumiałość w temacie.
Próbuję uruchomić aplikację do poczty grupowej i zgłoszeń FreeScout (https://freescout.net/) na Synology Web Station.

Nadmienię, że aplikacja FreeScout używa Framework PHP Laravel.

Aplikacja się instaluje bez problemu, podczas instalacji FreeScout sprawdza wymagania dostępu do plików i wymaganych rozszerzeń i wszystko jest niby w porządku. Konfiguruję pierwszą skrzynkę do pobierania i wysyłania maili poprzez IMAP i SMTP i jest w porządku. Próbowałem też przez POP i też jest dobrze, w sensie testy połączenie są prawidłowe.

Mam natomiast później problemy z cron.

Zadania Cron, w FreeScout mają być ustawione jak poniżej:
* * * * * php /volume1/web/test1/artisan schedule:run >> /dev/null 2>&1

Przerobiłem to pod wbudowany w Synology Harmonogram zadań, nie wiem czy dobrze:
Skrypt zdefiniowany przez użytkownika: php74 /volume1/web/test1/artisan >> /dev/null 2>&1

Otrzymuję wynik przy sprawdzaniu:
Bieżący stan: Normalna (0)
Skrypt: php73 /volume1/web/test1/artisan >> /dev/null 2>&1
Standardowe wyjście/błąd: Brak danych

i nie pobiera maili z serwera.
W logach aplikacji nie ma błędów, zakładam więc że pewnie gdzieś zrobiłem błąd, przy przerabianiu polecenia crone.

Mam natomiast w aplikacji FreeScout odnośnik URL do crone web jako metodę niezalecaną/opcjonalną i gdy go wywołuję przez przeglądarkę mam wynik:

Running scheduled command: '/bin/php' 'artisan' freescout:fetch-monitor > '/dev/null' 2>&1
Running scheduled command: '/bin/php' 'artisan' freescout:check-conv-viewers > '/dev/null' 2>&1
Running scheduled command: '/bin/php' 'artisan' freescout:fetch-emails > '/volume1/web/test1/storage/logs/fetch-emails.log' 2>&1
Running scheduled command: '/bin/php' 'artisan' queue:work --queue='emails,default,04992e55096db8e07f4b6d0ce7e35bcd' --sleep=5 --tries=1 > '/volume1/web/test1/storage/logs/queue-jobs.log' 2>&1

i po jej wywołaniu w logach FreeScout dostaję błędy w pliku dotyczącym laravel:
Use of undefined constant FT_UID - assumed 'FT_UID' (this will throw an Error in a future version of PHP) {"exception":"[object] (ErrorException(code: 0): Use of undefined constant FT_UID - assumed 'FT_UID' (this will throw an Error in a future version of PHP) at /volume1/web/test1/vendor/webklex/laravel-imap/src/config/imap.php:105)

[stacktrace]
#0 /volume1/web/test1.mojadomena.eu/vendor/webklex/laravel-imap/src/config/imap.php(105): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'Use of undefine...', '/volume1/web/te...', 105, Array)
#1 /volume1/web/test1.mojadomena.eu/vendor/webklex/laravel-imap/src/IMAP/Providers/LaravelServiceProvider.php(66): require('/volume1/web/te...')
#2 /volume1/web/test1.mojadomena.eu/vendor/webklex/laravel-imap/src/IMAP/Providers/LaravelServiceProvider.php(51): Webklex\\IMAP\\Providers\\LaravelServiceProvider->setVendorConfig()
#3 /volume1/web/test1.mojadomena.eu/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(586): Webklex\\IMAP\\Providers\\LaravelServiceProvider->register()
#4 /volume1/web/test1.mojadomena.eu/overrides/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php(89): Illuminate\\Foundation\\Application->register(Object(Webklex\\IMAP\\Providers\\LaravelServiceProvider))
#5 /volume1/web/test1.mojadomena.eu/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(561): Illuminate\\Foundation\\ProviderRepository->load(Array)
#6 /volume1/web/test1.mojadomena.eu/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterProviders.php(17): Illuminate\\Foundation\\Application->registerConfiguredProviders()
#7 /volume1/web/test1.mojadomena.eu/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(213): Illuminate\\Foundation\\Bootstrap\\RegisterProviders->bootstrap(Object(Illuminate\\Foundation\\Application))
#8 /volume1/web/test1.mojadomena.eu/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(296): Illuminate\\Foundation\\Application->bootstrapWith(Array)
#9 /volume1/web/test1.mojadomena.eu/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(119): Illuminate\\Foundation\\Console\\Kernel->bootstrap()
#10 /volume1/web/test1.mojadomena.eu/artisan(62): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput))
#11 {main}
"}

Znalazłem informację że to brak w PHP funckji IMAP, jednak ona jest włączona i druga sprawa, że raczej działa prawidłowo, bo instalator Freescout sprawdza to podczas instalacji aplikacji i przechodzi bez problemu.

Proszę o informacje jak rozwiązać problem, zależy mi żeby zostać przy WebStation, nie konfigurować kontenerów czy maszyn wirtualnych.
Dobrze by było (choć to nie koniecznie) zostać też przy Harmonogramie zadań Synology ale nie konieczne, jednak w tym wypadku też wolałbym korzystać z wbudowanych opcji.

Testowałem na Apache 2.4 i PHP 7.4 oraz próbowałem też na niższych wersjach PHP 7.3, ale efekt bez zmian.

Prośba o pomoc.
ODPOWIEDZ