Main

Автоматическое копирование и сортировка фотографий

Используемые модули: Scripts, USBDevices, Функция синхронизации

Данный пример показывает, как можно организовать автоматическое копирование и сортировку файлов с внешних ностилей.

Во-первых, нам нужно, чтобы система распознавала наш носитель в модуле USBDevices. Для этого достаточно вставить один раз устройство в USB-порт и оно появится в списке:

Далее, нам нужно добавить скрипт, который будет вызываться при подключении устройства. Через раздел Scripts делаем скрипт такого содержания:

$src='e:/Pictures/Camera'; // откуда брать фотографии
$dst='d:/video/Camera'; // куда складывать

if (!is_dir($src)) {
 say("Неправильный путь к фотографиям");
} else {
 say("Начинаю копирование фотографий");
 processLine($src." => ".$dst."/%Y/%m - %F"); // фотографии будут разложены по годам/месяцам
 say("Копирование фотографий завершено");
}

и называем его copyFromCamera. (В вышеописанном скрипте замените пути к папкам на свои собственные)

Теперь осталось только зайти снова в модуль управления USB-устройствами, нажать Edit на нашем устройстве и выбрать скрипт, который будет запускаться при подключении:

Вот и всё. При подключении устройства система скажет, что началось копирование и сообщит о завершении, после чего файлы будут аккуратно разложены по папкам.

 
 

Обсуждение

 

adzam: Обсуждение страницы Автоматическое копирование и сортировка фотографий Интересная тема ,я даже попробовал установил у себя. Фотик втыкаешь в usb говорит "начинаю копирование" прикольно но самого копирования я не вижу, появляется досовское окошко и молчит файлы никуда не дергаются и так пока не вытащу разьем фотика, после вытаскивания разьема говорит что копирование закончено, Почему сам процесс копирования не идет?

ksgroup: Вопрос к разработчику. Ситуация такая - сценарий работает, но замечено - не все файлы копирует с флешки фотоаппарата в папки на диск. Наблюдения показали что не копирует файлы видео снятые фотоаппаратом и не копирует файлы которые подверглись редактированию (например если вставить флешку в компьютер и перевернуть фотографию). Мало того, все файлы которые сценарий не копирует, он складывает в папку куда установлен majordomo. Правда с нулевой длиной файла. Система Linux. Похоже процедура processLine, вызов которой вписан в сценарий, определяет дату съемки фотографий по каким то данным из файла (возможно EXIF) и когда не находит этих данных в файле (скорее всего в видео файлах этих данных нет, как и в редактированных кадрах) не может корректно разместить файлы. Хотелось бы это исправить, так как снимаем не только фотки, но и видео. Да и кадры переворачивать тоже частенько приходится. Прошу помощи у разработчика. UPD. Еще появились подозрения что не копирует файлы больше 2 мегабайт. Посмотрел фотки которые не копирует - у всех размер больше 2 мегабайт. Подозреваю что нужно php.ini настроить, хотя у меня там стоит 10 мегабайт и в post_max_filesize и в upload_max_filesize. Может еще где то что то подстроить нужно? UPD1: Проблема решена. Кому интересно в файле syncfiles.class.php был установлен лимит на размер файла 2 мб. Увеличил его и все заработало. Вообще думаю что установки разных лимитов и прочие установки следует выносить либо в настройки из админки, либо в файлы инициализации. Не придется изучать код программы для того что бы что то поднастроить.

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

sergejey: думаю что установки разных лимитов и прочие установки следует выносить либо в настройки из админки, либо в файлы инициализации. Не придется изучать код программы для того что бы что то поднастроить. Поддерживаю По возможности так и делаю -- в панели управления есть раздел общих настроек, где практически всё и настраивается. В данном случае использовался очень старый код, я даже не знал, что там какие-то лимиты есть :) Лимит на объём файла уберу в ближайших обновлениях.

rtroyakov: привет всем.Разъясните.пожалуйста: "....В данном файле также имеется строка с запуском приложения USBDeview.exe. Для работы модуля данное приложение должно быть запущено. Для корректной работы данного модуля, следует в настройках данного приложения изменить путь к системе MajorDoMo на свой...." В файле start.bat я раскоментировал строчку с запуском приложения,перезапустил MDM,программа запустилась.А что за "свой путь" к системе?????????????????У меня также на диске C:\_majordomo\htdocs\obj.bat (Windows10) И ,соответственно,ни один съёмный носитель не видится

sergejey: Запустите отдельно C:\_majordomo\apps\usbdeview\USBDeview.exe

fynto: Для Windows8 и Windows10 нужно обновить USBDeview с официального сайта. После этого USBDeview будет видеть флешки

[ Обсудить на форуме ]

 

MajorDomo

Информация

Проекты

Партнёры

edit SideBar

 
 
 

 

Blix theme adapted by David Gilbert, powered by PmWiki