dJemon |
|
---|---|
Помогите с реализацией плагина "Видео чат", советом или делом. Процесс взаимодествия (работа чата): Зависимость от плагина Onlinestatus. Если пользователь в сети, то у него в профиле или возле аватарки показывается кнопка [Связаться]. При нажатие на кнопку у звонящего появляется окно с фреймом внутри. А у звонимому приходит уведомление, что с вами хотят связаться и на экране появляется кнопка [Ответить], при нажатие на которую появляется окно с фреймом внутри. Фрейм представляет из себя html тег IFRAME указывающий на страницу по адресу https://appr.tc/r/GUID-КОМНАТЫ. GUID-комнаты представляет из себя GUID, он создается и хранится в базе SQL как связка между пользоателем №1 и №2. Таблица в SQL - это три колонки: userid_1, userid_2, guid. Поиск существования комнаты соответственно так: "... WHERE (userid_1 = $uid1 AND userid_2 = $uid2) OR (userid_1 = $uid2 AND userid_2 = $uid1)". P.S. Вроде ничего сверх-естественного нет, но это мой первый опыт создания плагинов. |
Macik |
|
---|---|
Если GUID это некий уникальный идентификатор, а чат, как я понимаю, предполагается только тет-а-тет (т.е. 2 участника), то таблица для хранения, по сути, не нужна. Т.к. идентификатор можно формировать на основе ID пользователей участников и он будет однозначно идентифицировать пару. Простейший вариант хеш от строки «некий_секрет|id_user1|id_user2». И это хеш посылать принимающей стороне. https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F |
dJemon |
|
---|---|
#42223 Macik: В принципе можно и так! Сразу избавляет от: нескольких лишних запросов к базе и пары строк кода. Добавлено 1 день спустя: Каким образом реализовать взаимодествие по передаче хэша? Есть что-то подходящее из коробки в cot? или использование доп.таблицы в базе или луше через Redis? |
|
This post was edited by dJemon (2016-10-24 08:44, 8 years ago) |