SMB Sync: z dysku sieciowego do Photopilot
Mały program, który monitoruje udział SMB/Samba, na przykład maszynę StyleShoots, i automatycznie przesyła foldery ze zdjęciami jako shooty i packshoty.
Mały program, który monitoruje udział SMB/Samba, na przykład maszynę StyleShoots, i automatycznie przesyła foldery ze zdjęciami jako shooty i packshoty.
Foldery o nazwie S-<setnummer> (np. S-1234) są przesyłane jako shoot dla tego zestawu.
Każdy inny folder jest traktowany jako artykuł: zeskanowany EAN/kod kreskowy albo publiczny numer artykułu. Zdjęcia z back, side lub label w nazwie pliku zostaną przypisane jako ten widok — albo według Twojego własnego wzorca, zobacz niżej.
Dla StyleShoots, które zapisują wszystkie pliki osobno w folderze: ustaw FLAT_PACKSHOT=true. Pojedyncze zdjęcia są grupowane według identyfikatora artykułu (część przed pierwszym podkreśleniem) i synchronizowane jako packshoty.
Dla StyleShoots, które zapisują wszystkie pliki osobno w folderze: ustaw FLAT_PACKSHOT=true. Pojedyncze zdjęcia są grupowane według identyfikatora artykułu (część przed pierwszym podkreśleniem) i synchronizowane jako packshoty.
Folder jest synchronizowany dopiero wtedy, gdy przez 10 minut nic się w nim nie zmieniło. Nieznane artykuły są pomijane, a próba jest ponawiana później. Przy packshotach usuwamy tylko pliki, które faktycznie zostały przesłane — folder i pozostałe pliki zostają na miejscu.
Wybierz wersję dla swojego systemu. Zawsze otrzymasz najnowszą podpisaną wersję; potem smbsync będzie aktualizować się automatycznie.
Pobierz powyżej windows-amd64.exe, zmień nazwę na smbsync.exe i umieść plik w osobnym folderze, na przykład C:\Photopilot\smbsync\.
CUSTOMER=Bedrijfsnaam
SMB_IP=192.168.1.10
SMB_USERNAME=styleshootssharing
SMB_PASSWORD=wachtwoord
SMB_MOUNT=StyleshootsDrive
START_DIR=sync
API_TOKEN=jouw-api-token
API_URL=https://app.photopilot.ai/api
LOG_LEVEL=info
TZ=Europe/Amsterdam
# Optioneel: StyleShoots-modus waarbij alle bestanden los in START_DIR staan
# (geen submap per artikel). Losse foto's worden gegroepeerd op artikel-
# identifier (het deel voor de eerste underscore) en als packshots gesynct.
FLAT_PACKSHOT=falseSMB_IP to adres IP urządzenia z share (np. StyleShoots albo Twojego NAS). SMB_MOUNT to nazwa samego share, a START_DIR to folder w share, który jest synchronizowany. Konto wymaga uprawnień do odczytu i zapisu: przesłane pliki są usuwane z share po uploadzie.
Otwórz Harmonogram zadań (Task Scheduler), utwórz zadanie uruchamiające smbsync.exe przy starcie komputera i ustaw „Start in” na folder z plikiem .env. Wybierz „Run whether user is logged on or not”.
Utwórz na share folder testowy nazwany kodem EAN, umieść w nim zdjęcie i poczekaj ±10 minut. Zdjęcie pojawi się przy artykule w Photopilot i zniknie z share. Sam folder pozostanie, razem z plikiem status.json jako potwierdzeniem przetworzenia — zdjęcia, których nie przesłaliśmy, również pozostaną na miejscu. Błędy trafiają do nas automatycznie przez Sentry.
Domyślnie SMB Sync sprawdza w nazwie pliku słowa back, side i label; wszystkie pozostałe zdjęcia stają się osobnym packshotem z tym zdjęciem jako przód. Nie każde studio podaje widok w nazwie. StyleShoots na przykład numeruje zdjęcia dla każdego artykułu: <EAN>_PNG_1 to przód, _PNG_2 to tył, a _PNG_3 to opcjonalny bok. W takim przypadku samodzielnie podaj wzorzec w swoim pliku .env:
FRONT_IDENTIFIER=_PNG_1$
BACK_IDENTIFIER=_PNG_2$
SIDE_IDENTIFIER=_PNG_3$FRONT_IDENTIFIER Przód Domyślnie: pierwsze zdjęcie, które nie należy do żadnego innego widoku.BACK_IDENTIFIER Tył Domyślnie: back w nazwie pliku.SIDE_IDENTIFIER Bok Domyślnie: side w nazwie pliku.LABEL_IDENTIFIER Etykieta (instrukcja prania) Domyślnie: label w nazwie pliku.Przy tym ustawieniu 8712345678906_PNG_1, _PNG_2 i _PNG_3 zostaną zaimportowane razem jako jeden packshot dla artykułu 8712345678906 — a nie jako trzy osobne zdjęcia. Brakuje boku? Ten widok po prostu pozostanie pusty.
Każdy wzorzec ignoruje wielkość liter i jest sprawdzany względem nazwy pliku bez rozszerzenia, więc PNG_1 działa tak samo dobrze jak _PNG_1$ (znak $ oznacza: na końcu nazwy). Gdy ustawisz FRONT_IDENTIFIER, przesyłane będą tylko zdjęcia pasujące do jednego z tych wzorców — pozostałe pliki w folderze pozostaną bez zmian. Jeśli pominiesz zmienną, nadal będzie obowiązywać reguła domyślna.
Zdjęcie etykiety to dodatkowe zdjęcie metki z instrukcją prania lub składem. LABEL_IDENTIFIER działa dokładnie tak jak pozostałe trzy, z jedną ważną zasadą: zmienne, których nie ustawisz, zachowują wartość domyślną. W powyższym przykładzie LABEL_IDENTIFIER nadal ma więc wartość label. Trzy sytuacje:
off (albo none) działa też dla BACK_IDENTIFIER i SIDE_IDENTIFIER i jest jedynym sposobem na wyłączenie domyślnego słowa. W przypadku FRONT_IDENTIFIER off oznacza po prostu powrót do ustawienia domyślnego: pierwszego zdjęcia, które nie należy do żadnego innego widoku.
Potrzebujesz pomocy przy instalacji? Chętnie skonfigurujemy ją razem z Tobą.