Привет, мир! Сегодня мне нужен программист на symfony.
Официальное ТЗ:
1. Реализовать скрипт отправки СМС-сообщений, получаемых через email, следующим образом:
1.1. Выполнить в виде task'а.
1.2. Использовать уже существующий функционал получения писем и отправки СМС-сообщений.
1.3. Фильтровать получаемые письма по имени домена отправителя (пропускать только от конкретных доменов, указанных в конфигурационном файле (app.yml)).
1.4. Формат письма:
1.4.1. Заголовок – номер телефона.
1.4.2. Тело сообщения – текст СМС-cообщения:
1.4.2.1. Использовать текстовую часть письма.
1.4.2.1.1. В ее отсутствие использовать очищенную от тегов HTML-часть.
1.5. В случае превышения лимита размера СМС-сообщения (размер взять из конфигурационного файла) разбивать его на части.
1.6. В случае успешной отправки помечать письмо как прочитанное и перемещать в папку с отправленными сообщениями.
1.6.1. Имя папки получать из конфигурационного файла (app.yml).
1.7. В случае ошибки в письме (отсутствия или неверности номера телефона, текста сообщения, неверного домена, и т.д.) перемещать письмо в папку для писем с ошибками.
1.7.1. Имя папки получать из конфигурационного файла (app.yml).
1.8. При любой ошибке высылать email-оповещение.
1.8.1. Отправку производить с помощью уже существующего функционала (техническая заметка: метод mailError класса tfMail).
1.9. Скрипт должен запускаться по сron с периодом запуска 1 минута.
1.10. Реализовать систему защиты от одновременного запуска нескольких копий task'ов с помощью lock'ов.
1.10.1. По умолчанию включить систему защиты для всех task'ов.
1.10.2. Реализовать возможность отключения системы для конкретных task'ов.
1.11. Написать автоматические тесты на phpunit:
1.11.1. Для отправки сообщений.
1.11.2. Для системы защиты от одновременного запуска.
1.12. Обновить шаблоны конфигурационных файлов и их эффективные копии (app.yml-sample , app.yml).
Срок — 3 дня. Если вы заинтересовались, присылайте сразу пример вашего кода на andrey.kolashtov@trueoffice.ru.
Опубликован 26.03.2011 в 21:59 Последнее изменение: 26.03.2011 в 23:07