Архив: Доработка сайта на CMS Subdreamer
Бюджет
По договоренности
Создан: 7 лет назад
Закрыт
- Описание
- Разработка внутреннего мессенджераОбщий функционал похож на скайп. Слева контакты: пользователи, групповые чаты, "прикрепленные" чаты (обсуждения объектов, задач, событий, формируемых в других модулях), а также - в дальнейшем - контакты, подтянутые из сторонних мессенджеров по API. Сортировка - по важности и хронологии. Т.е. сообщения, помеченные как "экстренные" и "срочные" выталкивают контакт наверх, независимо от того, сколько "обычных" сообщений пришло позже.Все однажды начатые чаты хранятся в отдельной таблице и не удаляются (но могут быть помечены как "удаленные" юзером с соответствующими правами и не показываться в списке контактов).Каждый чат хранит следующую инфу:- ID- Тип чата (ниже)- id автора (создателя чата)- Тип объекта, к которому "привязан" чат (типы - отдельная таблица), 0 - ни к чему не привязан. Чат, привязанный к объекту 1, привязанный к объекту 2 и не привязанный ни к чему - это три разных чата, даже если участники одни и те же.- ID объекта (может быть пустым)- Время создания- Время последнего сообщения- список участников (отд. таблица).Типы чатов:- Диалог (юзер-юзер) - создается, как только один юзер написал другому.- Групповой - создается юзером по соответствующей кнопке "создать групповой чат" с последующим выбором участников. В чат можно добавлять участников в процессе, при этом он становится групповым. Если чат до этого был диалогом, диалог сохраняется неизменным, и формируется новый (пустой) групповой чат.- Привязанный - то же, что и групповой, но создается "извне". Каждый юзер в системе имеет реквизиты своих мессенджеров, доступных по API, и может добавлять в чат контакты оттуда. Т.е. если в чате юзер1 и юзер2, затем юзер2 добавил своего абонента из ватсапа, то в чате участвуют трое, все сообщения попадают в чат и отсылаются в мессенджер добавленному абоненту. Поскольку интеграция с мессенджерами будет выполняться позже, сейчас нужно предусмотреть следующий функционал: - таблица с типами мессенджеров: ID, название. - таблица с их реквизитами для юзеров: id юзера. id мессенджера. логин, пароль, дополнительные дланные (пока просто текстовое поле, что и как там будем хранить - будет зависеть от мессенджера). - Таблица с внешними контактами: юзер, мессенджер, имя контакта, доп инфа (свободное текстовое поле). - функция получения контактов юзера из выбранного мессенджера и функция отправки сообщения через выбранный мессенджер с аккаунта юзера определенному контакту - пока просто заготовки, пусть возвращают false.Функция создания чата должна принимать параметры: тип чата, тип объекта, id объекта, id юзера, список юзеров-участников, список "сторонних" контактов. Обязательный параметр - только тип. Возвращает ID созданного чата.Переписка: обычный текст, тэги сообщения (отдельная строка с функцией автозаполнения. можно последовательно выбрать несколько тэгов) плюс отправка файлов. Файлы складируются в папке attachments/files_messenger. В базе фиксируется каждое сообщение: id чата, юзера-отправителя, стороннего контакта-отправителя, дата-время (все даты в timestamp), id файла, приоритет. Для файлов отдельная таблица: id, источник (пока пусть будет 1 - чат, дальше будут и другие), оригинальное название, "внутреннее" название (формируется при сохранении, можно использовать uniquid или что-то другое, обеспечивающее уникальность) - под этим именем файл сохраняется на диске.Приоритет - обычное, срочное, экстренное.Настройки доступа: Есть специальный модуль plugins/p1001_options, страница nastrojki.html, где можно создать свой набор настроек, задаваемых отдельно для каждой группы пользователей. Эти настройки попадают в таблицы qx2_plugin_options (собственно описание настроек) и qx2_plugin_optval (их значения для групп). Дальше их можно использовать внутри плагина. При помощи этих настроек нужно организовать права доступа:- управление списком чатов: видны все чаты, фильтрация и сортировка по пользователю, типу/id объекта, дате создания, дате последнего сообщения. Возможность удалять чаты (не удалять физически. а помечать в базе как "удаленные", после чего юзеры перестают их видеть, но управляющий может восстановить)- отправка срочных и экстренных сообщенийФункции, используемые извне: создание чата (уже описывал), отправка сообщения в чат - указывается id чата, юзера-отправителя (0 - системное), собственно сообщение (текст, тэги, файл, статус). Возвращает true|falseпроверка новых сообщений для пользователя. Как лучше организовать (признак "прочитано", по времени захода юзера в чат/последнего сообщения в чате, или как-то еще) - без разницы, главное, чтобы функция возвращала ID сообщений, которых юзер еще не видел.
- Категория
Похожие проекты
0
4
Сайт arg2028t. beget. tech/. Нужно сделать вот такой калькулятор. airprint. by/outdoor/wide-format. и еще некоторые доработки....
8 месяцев назад
0
4
Требуется создать скрипт для premiere pro. Данная суть скрипта: в выделеном бине нужно что бы автоматически проставлялся in out ровно по серидине файла так что бы выделенная область была длиной 3 секунды. И требуется кнопка что бы работало через окно expressions. Проблема текущего в том что он не работает......
10 месяцев назад
$714
0
3
Описание задачи: Необходимо разработать serverless функцию на базе NestJS и TypeScript для автоматизированной обработки видеофайлов, загружаемых в Yandex Cloud Storage. Функция должна выполнять конвертацию видео в формат, поддерживаемый основными веб-браузерами, с последующим сжатием до оптимального......
1 год назад
44
12
Необходимо разработать бек и фронт мини-сервиса таким образом, чтоб его можно было развернуть внутри другого проекта....
1 год назад
23
0
Стоит на Бизнесе для своих нужд на простеньком базовом шаблоне, складываю туда контент потихоньку. Нужно начинать приводить в соответствие что бы публика сразу не убегала, а как то цеплялась, да и продвигать не торопясь. Шаблон где порвался от вставки баннеров подправить, для мобилок может сверстать.......
1 год назад
105
9
117
5
Очень простой криптообменник в виде веб-сайта. Без смарт-контрактов и т. Все платежи вручную....
1 год назад
73
2
Исправление и доработки php и js в воде. Платформа на joomla....
1 год назад
$20
136
1
384
6
Привет! Рад, что тебя заинтересовала наша стажировка! Мы являемся аккредитованной ИТ-компанией, . при наличии высшего образования сможем предоставить бронь . от мобилизации или отсрочку от призыва на срочную службу. надоело работать за 1000$ в месяц? понимаешь что такое Active Directory и как оно работает?......
1 год назад
152
1
Нужно написать чекер аккаунтов на Валид по базе login:password, сайта http://southwest. com с парсингом количества поинтов , на пост гет запросах, использование прокси, много поток, перечек аккаунтов которые не прошли чек из за прокси. Сложность в том что токен при авторизации приходит с js запросов......
1 год назад
80
0
Необходимо проводить работы по технической поддержке и сопровождению сайта банка работающего на CRM 1-C bitrix через GIT. Прошу СТРОГО (! ) указывать окончательную цену нормо-часа в отклике, без неё не смотрю, предпочтение будет оказываться разработчикам из Ярославля и окрестностей (области и из Костромской......
1 год назад
87
1
Необходим специалист, который настроит шлюз Power BI на Windows Server 2012 R2. Проблема: при настройке шлюза Power BI возникает проблема с подключением БД mySQL к шлюзу по причине отсутствия драйвера БД. Попытки установки не привели к успеху. Пожалуйста, прикрепите к отклику кейсы. Также укажите приблизительную......
1 год назад
131
4
редактировать код сайта на Wordpress исходя из тз 2. оперативно добавлять и редактировать информацию на сайте (новые страницы, разделы, блоки) 3. поддерживать стабильный уровень загрузки согласно google speed 4. оптимизировать «тяжелые» страницы сайта 5. быть на связи в рабочее время и решать задачи......
1 год назад
217
1
Предоставляю в Аренду аккаунт Upwork для работы с своего ПК. Установленой зп нет, так как все зависит от вас....
1 год назад
337
4
(Для диплома). Разработать сервис для организации проекта "IT для людей" ЗАО "Тандер". Функции веб сервиса:. пользователь может подать заявку на установку ПО, ремонт оборудования, консультацию. обучение сотрудников, курсы(бесплатные в рамках нац. проекта "образование"). обучение сторонних людей(бесплатно)......
1 год назад
81
0
https://github. com/ant-media/Ant-Media-Server используя antmedia собрать простой сайт с авторизацией/регистрацией + главная страница вывод активных стримов ( название/превью) страница добавления стрима, поля: название стрима / описание стрима / превью стрима страница стрима с плеером/названием/описанием/логином......
1 год назад
94
5
Оплата сдельная Необходимо сверстать карту проектов на основе сервиса mapbox....
1 год назад
217
7
$875
324
4
Нужно доработать действующий сайт маркет плейс на опен карт 3 и исправить баги сайта на Yii2. Тех задание представим. Оплата от 70 000 руб и выше, сроки до 1 месяца + высокие премиальные....
1 год назад
$775
95
0
Нужен шаблон регистрации аккаунтов и рассылки линкидин. Есть готовый шаблон - можете либо доработать либо сделать новый. Работа в первый месяц строго через гарант сервис а в последуюшем возможны варианты. Напишите на те ле гр zakaz021 для получения Тех Задания....
1 год назад
Похожая удалённая работа
- Удаленная работа для веб-программиста
- Удаленная работа для разработчика баз данных
- Удаленная работа для прикладного программиста
- Удаленная работа для системного программиста
- Удаленная работа для разработчика игр
- Удаленная работа для разработчика мобильных приложений
- Удаленная работа для тестировщика ПО
- Удаленная работа для 1С программиста
- Удаленная работа для разработчика встраиваемых систем
- Удаленная работа для разработчика CRM и ERP