Концепция сервиса конкурса

1. Каждый участник конкурса готовит видеосюжет в формате HD *.MP4 (h264, h265),  MPEG- 2 и MPEG-4. Для того, чтобы сюжет можно было подключить к анализу, участник осуществляет процедуру регистрации. Для регистрации он предоставляет:

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

Кабинет имеет ограниченный размер для выкладываемого ролика.  Это ограничение составляет примерно 500 МБ. Поэтому владелец кабинета должен иметь возможность не только выложить ролик в кабинете, но обновить его, если имя совпадает и удалить, если имя отличается. Количество роликов в кабинете не ограничивается. Последний выложенный ролик удалению не подлежит. Кабинет пользователя неудаляемый. Поэтому при создании кабинета нужно проверять все атрибуты владельца на уникальность и не позволять открывать копий с теми же атрибутами владельца.

При публикации ролика в кабинете, сервис требует следующие данные:

Все данные принимаются на любом языке (в Unicode), но предпочтительный язык: английский. Весь менеджмент (удаление/обновление) роликов делается через базу, расписывать тут особо нечего, любые изменения в кабинете заканчиваются изменением данных для всех страниц автора, генерируемых кабинетом. При обновлении или удалении ролика предварительно набранная статистика уничтожается, о чем вежливо предупреждаем при осуществлении модификации данных базы ролика. Также проверяем ролик на соответствие формату (размер файла и наличие контейнера MP4 или MPEG- 2/MPEG-4.

По окончанию публикации сервис выдает ссылку на страницу сервиса, на которой ролик и сопроводительные данные можно посмотреть. (Можно открыть эту страницу в новом окне броузера или просто в таблице опубликованных роликов разместить ссылку на страницу ролика.)

2. Страница ролика содержит встроенный плейер для просмотра, поле с количеством набранных баллов, и пять кнопок для оценки пользователями. С каждого IP адреса голосование за ролик может быть сделано только один раз, в противоположном случае выводится сообщение, что с этого IP за этот фильм уже проголосовали, с предложением голосовать с другого IP или писать письмо админу сервиса. Кроме фильма и выставленной оценки на странице ролика отображается:

Рейтинговая таблица состоит из нескольких условий:

Зрительская отметка ставится отдельно по каждому из условий.

Каждый просмотр ролика страницы с уникального IP-адреса увеличивает счетчик просмотров. Каждый просмотр ролика страницы с неуникального IP-адреса увеличивает счетчик клацаний по ролику. Что делать с этой разницей, пока не ясно.

3. Есть также сводная страница роликов, где все ролики рассортированы по среднему суммарному рейтингу, который вычисляется по тематическим оценкам зрителей и комиссии с разными весами, например, 20:1

Таблица содержит:

Комиссия жюри состоит из нескольких через сервис не голосует. Результаты решения комиссии вносятся админом сервиса вручную.

Язык страницы по умолчанию: английский.

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

4. Сайт и, в особенности видео, должны быть совместимы с мобильными платформами:

5. С условием ограничения размера кабинета в 500 MB и количеством участников 10000 может потребоваться 5 TB места на хостинге. Поэтому есть смысл начать с хостинга размером в 1 TB, следить за свободным местом и вручную осуществлять расширение фрагментами по 1 TB.

6. В качестве основного платежного сервиса предлагаем систему банк-линкинга PaySera. Поэтому право на публикацию возникает в течение суток со дня оплаты. Хренова система не проверяет платежей, лишь рассылает подтверждения факта платежа на предустановленный адрес. Этот факт нужно учитывать при разработке системы учета трансакций платежей в кабинете. Например, до разрешения на публикацию придется писать сообщение, что платеж находится в состоянии подтверждения в течение суток, Если за сутки право публикации не образовалось, свяжитесь с администратором сервиса. Это мимнимум, возможно удастся найти лучшее решение. Хитрые задницы могут попробовать открыть право пользования кабинетом за десять центов. Этого нельзя допустить. PaySera может принимать фиксированные платежи, про остальные системы неизвестно. Может, есть идеи получше.

7. Поиск ролика осуществляется:

8. Отчетная страница конкурса содержит:

9. Сервис конкурса не имеет уникального доменного имени и должен быть подключен к действующему сайту, как раздел.

10. Сервис конкурса действует в течение полугода (общая длительность инициативы от девяти месяцев до года) после чего сервис уничтожается, остаются лишь результаты конкурса и топ 20 роликов для просмотра на сайте организаторов.

11. В качестве языков разработки сервиса я бы лично предпочел C++ или Perl. База в XML или даже в куче TXT, в принципе, пофиг, хоть MSSQL/MySQL

http://www.merrywizard.com/Contest.htm