Техническое приложение. Можно использовать на выбор одну из предоженных технологий: Технология №1 nodejs - программная платформа rabbitmq - шина данных, система очередей событий mongodb - основная база данных postgress - база данных для хранения архива публикаций bootstrap - HTML, CSS и JS framework Технология №2 Язык программирования: Scala Framework: Play Framework (https://www.playframework.com/) База данных: FlockDB (https://github.com/twitter/flockdb) Характеристики серверного оборудования Дата центр: Reg.ru Сервер: REG.Dedicated-30044 (https://hosting.reg.ru/dedicated/server_details/30044) Этапы разработки проекта 1. 2. 3. 4. Разработка технического задания Настройка серверов Создание структуры БД Разработка функционала: 1. API (документированное) 2. Пользователи и роли 3. Регистрация и авторизация 4. Профиль пользователя 5. Черный список пользователей 6. Публикации 7. Архив публикаций 8. Закладки 9. Поделиться публикацией 10. Популярные авторы 11. В том же духе 12. В курсе 13. Аналогичное 14. Актуальные темы 1 15. Уведомления 16. Личные сообщения 17. Рекламные публикации 18. Переводчик публикаций (на основе API Яндекс.Переводчик) 19. Механизм контроля повторной публикации от одного автора 20. Обратная связь 21. Панель управления сервисом 1. Настройки сервиса 2. Управление блокировкой пользователей 3. Управление блокировкой постов 4. Управление рассылкой 5. Управление рекламными публикациями 6. Управление пользователями 7. Управление обратной связью 8. Статистика сервиса 22. GEO IP (определение местоположения пользователя) 23. Голосовой набор текста 5. Статичные страницы 6. Шаблоны email уведомлений от сервиса Российский сервис микроблогов ВДВУХСЛОВАХ Представляет из себя систему для публичного объмена сообщениями (не более 200 символов), рисунками, фото, видео, гиперссылками (с последующим выводом в публикации, заголовка гиперссылки). Сервис реализован в двух версиях основная (для компьютеров) и мобильная(для планшетов и смартфонов). При разработке необходимо помнить, что сервис Российских микроблогов является клоном американского twitter которого уже испольуют 8 лет. Необходимо сделать в функционале сервиса Российских микроблогов сходные моменты, для удобства пользователей привыкших к twitter-y. Пользователю НЕ зарегистрированному в сервисе Российских микроблогов, доступна лишь индексная страница сервиса, но при переходе по гиперссылке с другого сайта на публикацию какого либо пользователя сервиса Российских микроблогов, пользователь может увидеть и прочитать результат, но прокомментировать его , лишь зарегистрировавшись в сервисе Российских микроблогов. Поэтому после перехода по ссылке ему вместе с результатом выдается окошко для регистрации в сервисе Российских микроблогов.(должно быть расположено сбоку и не мешать читать результат полученный при переходе по ссылке.) Фон Индексной страницы Российского сервиса микроблогов, представляет слайд шоу из фото достопримичательностей России. Справа находится форма для ввода пароля и логина, кнопка «войти» , включатель «запомнить пароль» , текстовая гиперссылка «забыли пароль» 2 Под формой для зарегистрированных пользователей находится отдельная форма для регистрации новых пользователей, с окнами где нужно ввести ИМЯ , в следующем окне ФАМИЛИЮ, в следующем окне АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ, следующем окне ПАРОЛЬ, пароль вводится один раз изначально выглядит как «***********», тут же есть кнопка показать пароль. Далее идет кнопка «регистрация» под которой расположена гиперссылка «Нажимая зарегистрироваться Вы соглашаетесь с Правилами.» Слева от форм входа в сервис и регистрации расположена надпись: Добро пожаловать в Российские микроблоги! Общайтесь с интересными людьми. Следите за новостями. ( цвет шрифта для этой надписи, белый). После нажатия кнопки «Регистрация» пользователь попадает на страницу проверки номера телефона, на этой странице расположено окно для ввода номера телефона и кнопка «Подтвердите номер телефона» далее следует мелкий текст «Примечание: Ваш номер не будет отображаться публично. Другие смогут найти вас по телефону, и вы можете изменить настройки конфиденциальности в любое время. Стандартная цена текстовых сообщений зависит от После ввода номера телефона и нажатии кнопки «Подтвердите номер телефона» на странице появляется окно для ввода символов и надпись «Вы должны получить код в смс сообщении укажите его в окне ниже» , чуть ниже находится надпись «Если вы не получили смс сообщение, введите номер телефона еще раз (последняя фраза в виде гиперссылки) при нажатии на которую пользователь попадает на страницу ввода номера телефона. В случае если человек указал номер телефона который уже использовался при регистрации , в этом случае страница обновляется окна очищаются и пользователь видит надпись « Этот номер телефона уже используется, укажите другой номер» вашего оператора мобильной связи.» После ввода кода и нажатие кнопки «Подтвердить» пользователь попадает на страницу выбора имени пользователя. В случае если пользователь указал неверный 3 код и ему об этом сообщается. Под формой имеется гиперссылка «Выслать код повторно» В сервисе есть возможность использования русских букв в имени пользователя об этом написано , так же написано на этой странице, по умолчанию предлагается указывать имя пользователя на русском языке с приведением примера конечного вида адреса страницы : вдвухсловах.рф/николаев После ввода имени пользователя и нажатии кнопки «продолжить» Попадаем на страницу выбора интересов (популярные пользователи, новости, спорт, правительство, политика, музыка, инновации, благотворительность, развлечения, юмор, искусство, мода) после выбора групп(ы) интересов и нажатии кнопки «продолжить» пользователь попадает на страницу где находятся пользователи из выбранной группы, они все выделены в подписчиках пользователь может отключить всех или отдельно взятых пользователей. После нажатия кнопки продолжить пользователь попадает на страницу загрузки фотографии для своего аккаунта. Возможно, загрузить только одну фотографию на аватар и одну на фон аккаунта. Можно пропустить этот шаг перейдя к следующему. На следующем этапе пользователю предлагается пригласить своих друзей в «Российские микроблоги» используя СМС рассылку по записной книжке если пользователь проводит регистрацию с мобильного либо рассылку по адресной книге электронной почты если пользователь регистрируется с компьютера. После нажатия кнопки продолжить пользователь попадает на главную страницу сервиса микроблогов (ленту) в которой он видит публикации пользователей, на которых была произведена подписка при регистрации. Подписчиков можно поменять зайдя в пункт «Читаю» и отключив неугодных. Найти нужного пользователя можно используя окно поиска, предусмотренное в системе. в ленту российских микроблогов в которой видит публикации пользователей, на которых он подписался. Если же пользователь не выбрал ничего, то его лента пустая. При этом пользователь видит сообщение «Ваша лента новостей пуста, начните читать кого нибудь» Внизу индексной страницы расположена гиперссылка «Форма обратной связи» Форма обратной связи представляет из себя оффлайн форму для объмена сообщениями между пользователями сервиса Российских микроблогов и его администрации. Попадая на форму человек в первом окне указывает свое «Имя», в втором «Фамилию», в третьем «адрес электронной почты», в четвертом вводит сообщение, после чего вводит капчу и нажимает кнопку отправить. (впоследствии после появления большого колличества пользователей и найма операторов, нужно 4 сделать онлайн форму чата). Окно «Фамилия» необязательное. Обязательные, остальные три, поэтому помечены красной звездочкой. Так же на индексной странице расположены гиперссылки «Правила» «Политика конфиденциальности» «О компании» , которые ведут на текстовые страницы с соответствующим содержимым. Фукция регистрации : Предлагается указать имя пользователя. При наведении курсора на окно ввода имени пользователя, появляется меню в котором указано, что Российский сервис микроблогов предлагает Вам использовать для указания имени пользователя русские буквы. Что бы адрес Вашей страницы выглядел естественней . Далее идут примеры: вдвухсловах.рф/газета вдвухсловах.рф/россия24 вдвухсловах.рф/николаев вдвухсловах.рф/александр В сервисе исключена возможность повторной публикации одним пользователем. Затем предлагается ввести ИМЯ , в следующем окне ФАМИЛИЮ, в следующем окне АДРЕС ЭЛЕКТРОННОЙ ПОЧТЫ, следующем окне ПАРОЛЬ, пароль вводится один раз изначально выглядит «***********», тут же есть кнопка показать пароль. Далее идет кнопка регистрации под которой расположена гиперссылка «Нажимая зарегистрироваться Вы соглашаетесь с Правилами.» Возможности личного кабинета пользователя Российских микроблогов: Редактирование профиля: 1. 2. 3. 4. 5. 6. Изменение имени пользователя Изменение фамилии и имени Изменение адреса электронной почты (с подтверждением) Изменение пароля. Загрузки фотографии Загрузка флага(логотипа) при желании. Если пользователь не загрузил (флаг или логотип) , в этом случае его фотография располагается на стандартном фоне сервиса, если пользователь загрузил (флаг или логотип), его фото располагается на фоне (флага или логотипа) загруженного пользователем. 5 7. На странице зарегистрированного пользователся расположены счетчики: 1. Счетчик «публикации» 2. Счетчик «Читатели» 3. Счетчик «Читаю» 4. Счетчик «Избранное» Так же зарегистрированному пользователю доступны : 1. Внесение в черный список определенного пользователя, в этом случае система вырезает из потока для этого пользователя публикации, которые исходят от пользователя внесенного в черный список тем самым не публикуя их для него. 2. Создания архивов своих публикаций с последующей выгрузкой с сервиса на компьютер или мобильное устройство. Фунции в доступные пользователю сервиса Российских микроблогов: 1. Функция размещения публикаций размером не более 200 символов 2. Функция перепубликации с комментариями и без: публикаций, рисунков, фотографий, видеороликов других пользователей. 3. Функция публикации рисунков, фотографий. 4. Функция публикации видеороликов. 5. Функция публикации гиперссылок( с последующим выводом заголовка) 6. Функция закладок. 7. Функция популярные авторы 8. Функция «Аналогичное» 9. Функция голосового набора сообщений. 10. Функция поиска публикаций либо пользователей, в сервисе Российских микроблогов. Фукция поиска имеет возможнось выбрать область поиска: (фотографии, видео, новости, люди, ленты, читаемые вами пользователи, везде) 11. Функция «Актуальные темы» предоставляют уникальную возможность получать информацию о том, что вам интересно. Они подобраны на основе вашего местоположения и читаемых вами людей. Пример формы ленты: 6 Не соблюдена цветовая гамма! Цветовая гамма должна соответствовать…. Цветовое оформление сервиса состоит из Красный 10% синий 45% белый 45% Цвет текста черный. другие цвета в сервисе не используются Пример формы личной страницы: 7 Используемая цветовая гамма: Обращаю внимание, что синий и красный цвета используются ослабленные как на примере. При разработке структуры сервиса микроблогов необходимо учитывать, что сервис будет всероссийским, а соответственно количество пользователей будет исчисляться 100 ми тысяч человек в сутки. Сервис Российских микроблогов получает доход от размещения рекламы. В сервисе реализован механизм «целевая реклама» Т.е. сервис отслеживает что добавляет в закладки, публикует и перепубликует пользователь и выводит ему рекламу по тематике соответствующую этой области данных. В сервисе реализована возможность вычисления местоположения пользователя. например с помощью GeoIP или встроенных Geolocation API, а соответственно на странице каждого пользователя написано страна и город его расположения. Можно использовать любую систему позиционирования. 8 По тому же принципу реализована функция «Близкие по духу», сервис отслеживает что добавляет в закладки, публикует и перепубликует пользователь и показывает в отдельной колонке пользователей у которых смысл публикаций, аналогичен. Функция «популярные авторы» – система фиксирует колличество подписчиков, перепубликаций, закладок у всех авторов, колличество обращений к странице, из этого делает выводы об их популярности. Выводит колонку с самыми популярными авторами Функция «В КУРСЕ» самое свежее и интересесное подобранное специально для Вас (реализована по принципу интересов пользователя. Темы к которым происходит максимальное колличество обращений от пользователя, а именно , публикаций, перепубликаций закладок, комментариев. ), а так же аналогичные темы. В колонке «Уведомления» находятся сообщения от системы о перепубликациях, публикаций пользователя, о закладках сделанных другими пользователями на публикации пользователя. При появлении нового подписчика у пользователя. Если его публикация пользователя была добавлена другим пользователем в Избранное, Если публикацию пользователя - перепубликовали. Уведомления дублируются письмом на электронную почту пользователя. В колонке «Сообщения» находятся личные (прямые) сообщения данному пользователю от других пользователей или от системы Российских микроблогов. При отправке личного сообщения, размер не более 5000 символов. Использовать в сервисе русские синонимы английских слов. Например: слово «пост» заменить на «публиковать» Слово «перепост (perepost)» на слово «перепубликовать» Слово «email» на «электронная почта», соответвенно то что публикуется называется «публикацией» и т.п. Зарегистрированный пользователь имеет возможность производить с чужой публикацией следующие действия: Поделиться в личном сообщении с другим пользователем Поделиться с помощью электронной почты Разместить публикацию на другом сайте( пользователю в этом случае выдается код для вставки) 9 Игнорировать Внести в черный список Пожаловаться Зарегистрированный пользователь имеет возможность производить с своей публикацией следующие действия: Поделиться в личном сообщении с другим пользователем Поделиться с помощью электронной почты Разместить публикацию на другом сайте( пользователю в этом случае выдается код для вставки) Разместить публикацию в начале ленты Удалить публикацию Цветовая гамма сервиса: Процентное использование цветов: 45% - белый цвет. 45% - синий цвет. 10 10% - красный цвет. Синие и красные цвета нужно брать НЕ насыщенные, а ослабленные, как на примере. В сервисе стоит защита от одинаковых публикаций одним пользователем. В сервисе встроена функция перевода текста на основные языки(русский, английский, немецкий, француский). Визуально должен представлять из себя иконку(например «земной шар») в форме публикации, при нажатии на которую текст в окне переводится на язык соответствующий территориальному расположению пользователя сервиса Российских микроблогов. Весь остальной Функционал самого сервиса полностью соответствует Twitter. Реклама представляет из себя ту же публикацию, лишь с тем отличием что ее публикацией занимается не пользователь а система Российских микроблогов, так же рекламная публикация показывается только тем пользователям которых по мнению системы может интересовать рекламируемый продукт, система получает эту информацию основываясь на подписках пользователей их интересах их публикациях. Реклама заказывается пользователями через форму обратной связи. Рекламодатель предоставляет Российскому сервису микроблогов, рекламный текст, рекламный баннер, логотип либо ссылку на рекламный видео ролик. Формированием рекламной публикции занимается сотрудник сервиса Российских микроблогов из материалов предоставленных рекламодателем. Пример реализации рекламы в twitter: 11 Рекламная публикция отличается от обычной публикации лишь тем, что рекламная публикация подписана как например «Реклама от (здесь указано название рекламодателя)» и ее публикацией занимается не рекламодатель, а механизм публикации рекламы находящийся в сервисе Российских микроблогов. Для заказа рекламы в сервисе российских микроблогов, пользователь использует гиперссылку «реклама» на главной странице сервиса. При нажатии на гиперссылку пользователь попадает в форму в которой указаны расценки на рекламу форма ввода рекламного сообщения, форма для загрузки баннеров и изображений для рекламного сообщения, форма для указания времени показов рекламной публикации, кнопка для запуска и остановки рекламной компании. После создания рекламной компании, она уходит на проверку о чем сообщается пользователю, в случае положительного исхода проверки рекламная компания запускается автоматически при наличии средств на счете заказчика. Для зачисления средств в системе будем использовать уже разработанные механизмы подключения платежных систем к интернет ресурсу. В функции административной панели входят: - блокировка/разблокировка любого аккаунта сервиса с автоматическим оповещением заблокированного/разблокированного пользователя. - массовая либо выборочная рассылка сообщений (размером не более 200 символов) - механизм публикации рекламы: Проверка составленных рекламных публикаций. Пропуск на трансляцию либо возврат с оповещением пользователя. - смена пароля и изменение логина администратора. 12 - удаление публикаций с автоматическим уведомлением автора публикации. - Форма для общения с пользователями. Форма обратной связи. Подключена к мобильному телефону администратора, который получает извещения при получении сервисом очередного обращения. В базе данных должны сохраняться все данные которые когда либо публиковались пользователями сервисе Российских микроблогов, даже те которые они удалили. Т.е. удаляя публикацию, пользователь делает это только для себя и других пользователей. Оригинальный твиттер силен в том числе благодаря API: https://dev.twitter.com/overview/documentation . Кроме API для программистов так же свою роль сыграли share кнопки и виджеты постов. АПИ у твиттера существует фактически с момента запуска. Его необходимо разработать и написать документацию. 13