ADOS - замена Download Master
В соответствии с своим обещанием, выкладываю скрипт, который, надеюсь, станет полноценной заменой Download Master, как известно, не работающего на прошивках Олега.
Вот некоторые возможности моего скрипта:- Обработка неограниченного количества ссылок на файлы (в том числе поиск ссылок в тексте).
- Многопользовательский режим работы с поддержкой учетных записей администраторов и обычных пользователей.
- Запуск закачек по расписанию. Как вариант — принудительная привязка закачек к расписанию, чтобы, например, закачки производились только ночью.
- Поддержка различных БД: как встроенной в PHP SQLite, так и популярной MySQL.
- Поддержка различных программ-качалок (cURL, wget и др.). Для каждой закачки можно использовать свою программу.
- Поддержка пользовательских каталогов. Каждый файл можно сохранять в определенную директорию в зависимости от его расширения или желания пользователя.
- Поддержка аутентификации и переадресации. Полезная вещь для скачивания с FTP или при использовании платных аккаунтов.
- Ограничение общей скорости закачек для каждого из пользователей.
- Обновление состояния закачек в режиме реального времени.
- Поддержка различных языков.
Описание и инструкции: части первая и вторая.
Подготовка, установка и настройка: советы и рекомендации.
---------------
Текущая версия: 1.3.9 (сборка 74)
Ссылка на скачивание: http://download.dini.su/ados/stable (511 Кб)
md5: c301c8dabae7c7efee29f71cd146ba8c
Код обновления: jmcGL7BYBWoGwNpOwQle/gF+V7XDuoKk5YU=
Последнее обновление: 7 сентября 2008 года 21:20 мск
---------------
Внимание!
К сожалению, я больше не могу осуществлять техническую поддержку своего скрипта.
Возможно, ее будут осуществлять другие люди, если они захотят это делать. Поэтому, пожалуйста, проявляйте терпение, если у вас возникнут вопросы или проблемы, и относитесь с уважением к тем людям, которые захотят вам помочь. Спасибо.
Также вынужден сообщить, что дальнейшее развитие проекта моими силами маловероятно. По этой причине последняя версия скрипта распространяется по лицензии GPL v3 (неофициальный перевод). Если у кого-либо возникнет желание и появится возможность развивать мой проект, то теперь никаких правовых проблем возникать не должно.
Спасибо всем пользователям моего скрипта и спасибо всем за теплые отзывы о моей работе!
На личные сообщения я отвечать, скорее всего не буду, т.к. я здесь буду появляться редко и просто не буду знать о появлении новых сообщений. Тем не менее, по вопросам, связанным со скриптом (однако не связанным с его технической поддержкой), вы можете обращаться по электронному адресу: ados [собака] dini [точка] su (этот ящик я стараюсь просматривать пару раз в неделю, поэтому быстрого ответа тоже не ждите).
---------------
FAQ
В: Все установил(а) как надо, но ничего не работает.
О: Может быть, дело в кодировке?
В: Постоянно выводится страница авторизации, даже если логин и пароль указаны верно.
О: Удалите все cookies, установленные системой, и переустановите ее. Во время установки поля "Домен, используемый в cookie" и "Путь, используемый в cookie" оставьте пустыми.
В: Файл вечно находится в состоянии "Закачивается".
О: Проверьте наличие ошибок при выполнении заданий cron.
В: Будут ли поддерживаться торренты?
О: Скорее всего, не будут. Ведь уже есть программы, имеющие и WebUI, и даже GUI для Windows. Например, rTorrent.
Если у вас проблема со скачиванием файла по определенной ссылке, то эту ссылку отправляем мне в личку, а не пишем ее в теме!
При описании проблемы указывайте:
- версию скрипта
- название и версию модуля закачки, который вы используете
- номер ошибки (смотрите в журнале)
- название и версию вашего браузера
- наиболее полное и подробное описание ситуации, при которой возникает ошибка
---------------
ОБЯЗАТЕЛЬНОЕ ДЕЙСТВИЕ:
Для того, чтобы не получать при установке такую ошибку:
Code:
Fatal error: This system requires PHP 5.1.3 or over. Your PHP version is
Необходимо проделать следующее:
Code:
В файле /opt/share/www/ados/install/index.php в строке 141 меняем "<" на ">"
т.е. if( strcmp( $phpver[1], "5.1.3" ) < 0 )
меняем на
if( strcmp( $phpver[1], "5.1.3" ) > 0 )
---------------
История версий
1.0.0 beta 1: первый публичный релиз.
1.0.0 beta 2: список изменений.
1.0.0 beta 3: список изменений.
1.0.0 beta 4: список изменений.
1.0.0 RC 1: список изменений.
1.0.0 RC 2: список изменений.
1.0.0 RC 3: список изменений.
1.0.0: список изменений.
1.0.1: список изменений.
1.1.0 beta 1: список изменений.
1.1.0: список изменений.
1.1.1: список изменений.
1.1.2: список изменений.
1.1.3: список изменений.
1.1.4: список изменений.
1.2.0 beta 1: список изменений.
1.2.0 beta 2: список изменений.
1.2.0 beta 3: список изменений.
1.2.0 beta 4: список изменений.
1.2.0 beta 5: список изменений.
1.2.0: список изменений.
1.2.1: список изменений.
1.2.2: список изменений.
1.2.3: список изменений.
1.2.4: список изменений.
1.3.0 beta 1: список изменений.
1.3.0 beta 2: список изменений.
1.3.0 beta 3: список изменений.
1.3.0 beta 4: список изменений.
1.3.0 beta 5: список изменений.
1.3.0: список изменений.
1.3.1: список изменений.
1.3.2: список изменений.
1.3.3: список изменений.
1.3.4: список изменений.
1.3.5: список изменений.
1.3.6: список изменений.
1.3.7: список изменений.
1.3.8: список изменений.
1.3.9: список изменений
P.S. Скрипт называется Automatic DOwnloading System (ADOS). Ничего оригинальнее и лучше не придумал, но и так, вроде, ничего :)
P.P.S. For English description and instructions go here.
Бета-версия ненадолго задерживается
К сожалению, в выходные почти не было времени тестировать скрипт, поэтому тестированием я буду заниматься завтра. Завтра же мне предстоит написать установщик и мануал по работе со скриптом.
Если все это я сделать успею и тестирование пройдет нормально, то бета-версию я выложу во вторник утром.
В противном случае бета будет выложена как только все будет готово. Но даже при таком раскладе не думаю, что это будет позже среды.
Извиняюсь за задержку, но я не хочу выкладывать сырой и недокументированный скрипт. Поэтому придется еще немного подождать.
Описание и инструкции (продолжение)
Авторизация посредством логина-пароля:
Если у вас есть аккаунты на платных файловых серверах типа RapidShare или FileFactory или если требуется авторизация на FTP серверах, то вы можете добавить список параметров авторизации в настройках.
Домен — это шаблон адресов, для которых требуется авторизация. Пример: httр://*.rapidsahre.com. Авторизация будет производиться на всех поддоменах домена rapidshare.com.
Другой пример: httр://rs200.rapidsahre.*. Авторизация будет производиться только на поддомене rs200, но независимо от доменной зоны (de, ru, com.ua).
Если хотите расшарить параметры авторизации для всех пользователей, то поставьте флажок в колонке "Общее".
Закачка:- Откройте вкладку "Закачки".
- Нажмите кнопку "Добавить ссылки" (крайняя левая над списком файлов).
- Введите одну или несколько ссылок, которые надо скачать. Можно просто вставить текст, содержащий нужные ссылки. Одно условие: ссылки должны отделяться друг от друга хотя бы одним пробелом, табом или переводом строки.
Если ссылка содержит пробелы или если необходимо задать ссылку явно, то ее необходимо заключить в тэг [url]...[ /url] (закрывающий тэг указывается без пробела).
Если для ссылки необходимо задать описание прямо при добавлении, то это можно сделать, заключив текст описания сразу после ссылки в тэг [desc]...[/desc]. - Если ссылка одна, то см. следующий пункт.
Если ссылок много, то будет предложено уточнить их адреса и выбрать те из них, которые следует закачивать. Здесь же можно в более удобном виде добавить описание для каждой из ссылок, нажав на соответствующую кнопку справа от ссылки. Описания, введенные во время предыдущего шага, уже будут отображены. - Установите необходимые параметры:
- укажите имя файла, под которым он будет сохранен;
- выберите категорию, куда он будет сохранен;
- уточните, если необходимо, путь для сохранения;
- введите описание (если еще не сделали это раньше, но такое желание все-таки появилось);
- выберите модуль, который будет производить закачку (рекомендуется cURL);
- сделайте привязку (если необходимо) к одному из ранее созданных, но еще не выполненных событий расписания. - Если добавлялась одна ссылка, то можно сразу же начать закачку, нажав на соответствующую кнопку, или нажать на кнопку "Применить настройки" внизу формы для сохранения введенных параметров.
Если добавлялось много ссылок, то можно применить указанные параметры (категорию, путь для сохранения, модуль и привязку к расписанию) для всех введенных ранее ссылок. При этом имя файла для каждой ссылки будет получаться от сервера, с которого будет происходить закачка, а описание будет применяться то, что было указано на предыдущих шагах (если оно было дано).
Управление закачками:
Под управлением подразумевается изменения текущего состояния закачки на одно из следующих:
- закачка (выполнение)
- пауза (отмена закачки с сохранением закачанной информации и возможностью последующей докачки, если такая возможность поддерживается модулем)
- остановка (отмена закачки и удаление закачанной информации)
- удаление (остановка + удаление информации о закачки из БД)
- Выделите те закачки, которыми вы хотите управлять (просто щелкайте по строкам в списке; для выделения нескольких строк подряд зажмите Ctrl, щелкните на первой строке и ведите курсор вниз, чтобы выделить нижеследующие строки).
- Если выделена одна закачка, то можно нажать кнопку "Свойства закачки" и выполнять управления из открывшегося окна.
- Если выделено несколько закачек, то для управления ими используйте первый блок кнопок управления (значки на фоне одного листа бумаги).
- Для управления сразу всем списком используйте второй блок кнопок (значки на фоне двух листов бумаги).
Замечание: на изменение состояния может потребоваться время. В зависимости от объема списка файлов (см. выше).
В основном, это все.
С расписанием, категориями, управлением пользователями и модулями, постарайтесь, пожалуйста, разобраться сами. У меня уже нет времени это расписывать. В крайнем случае оставьте все как есть и дождитесь мануала.
Пользователям Internet Explorer 6 (и более ранних версий):
Браузером некорректно обрабатываются PNG файлы, имеющие альфа-канал (прозрачные участки). Именно такие изображения используются в скрипте.
Тем не менее, в скрипте применяется специальный алгоритм, позволяющий подкорректировать обработку альфа-канала. Минусом алгоритма является то, что коррекция производится в режиме реального времени после каждой загрузки (обновления) страницы. И чем больше элементов требуется обработать, тем больше времени это займет.
Для отключения обработки альфа-канала откройте в любом текстовом редакторе, поддерживающим кодировку UTF-8, файл index.php в корневом каталоге скрипта и найдите строку
Code:
define( 'PARSE_PNG' , TRUE );
Замените слово "TRUE" на "FALSE" (без кавычек) и сохраните файл.
Эпилог (в основном относится к первой бете)
Скрипт умеет качать файлы. Он может качать сразу много файлов. Он позволяет изменять состояния одной или сразу нескольких закачек. Это проверено мной и уже не раз.
Насколько хорошо он выполняет другие заложенные в него функции, я не знаю, т.к. далеко не все успел проверить.
Тем не менее, как я сказал выше, с основной задачей, возложенной мной на скрипт — скачиванием — он справляется. Увы, больше я не могу тратить так много времени, как я это делал последние полтора месяца, чтобы улучшать скрипт и налаживать и дополнять его функционал. Времени у меня вообще больше нет.
Поэтому вы можете писать сюда обо всех багах и глюках, с которыми вы столкнетесь, но я не гарантирую, что исправлю их так быстро, как вы и я этого хотели бы.
Я не знаю, когда я смогу выпустить финальную версию и буду ли я вносить изменения для оптимизации скрипта и добавления в него новых функций в будущем.
В общем, извините, если что не так.