Различия

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

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
comet:simple-chat-example [2015/08/27 17:14]
levhav [Принцип организации чата]
comet:simple-chat-example [2019/12/18 01:58] (текущий)
Строка 1: Строка 1:
 +<​rst>​RU::​12-Примеры::​Пример Realtime чата</​rst>​
 +<​rst>​Header:​ Пример Realtime чата</​rst>​
 +
 ====== Пример Realtime чата ====== ====== Пример Realtime чата ======
  
 В этой статье будет рассмотрен пример простого чата между пользователями. Для реализации чата не потребуется использование серверной стороны,​ в этой статье всё только на JavaScript. Живой пример работы можно наблюдать в конце статьи. В этой статье будет рассмотрен пример простого чата между пользователями. Для реализации чата не потребуется использование серверной стороны,​ в этой статье всё только на JavaScript. Живой пример работы можно наблюдать в конце статьи.
  
 +<​note>​В данной статье рассматривается вопрос создания чата где все пользователи общаются в одной общей комнате. Если вам нужен чат для личного общения пользователей между собой (общение в диалогах один на один) то вам больше подойдёт [[comet:​star-comet-chat|чат плагин личной переписки между пользователями]]</​note>​
 ====== Принцип организации чата ====== ====== Принцип организации чата ======
  
Строка 79: Строка 83:
     });     });
  
-    ​//setTimeout( function(){ CometServer().get_pipe_log('​web_chat_pipe'​);​ }, 3000);// Просим отправить последние сообщения которые были отправлены в канал. Это позволит загрузить ​историю сообщений ​в чат.+   // Загружаем историю сообщений 
 +   ​CometServer().get_pipe_log("​web_chat_pipe"​);​
 }); });
  
Строка 96: Строка 101:
  
 <​html>​ <​html>​
-<iframe src="//comet-server.ru/doc/CometQL/MainPageChat/index.php" ​style="width100%;  displayblock; ​ height: 250px;"></​iframe>+ 
 +<p data-height="512" data-theme-id="​0"​ data-slug-hash="​yPgddg"​ data-default-tab="​result"​ data-user="​Levhav"​ data-embed-version="​2"​ data-pen-title="​CppComet chat example"​ class="​codepen">​See the Pen <a href="​https:​//codepen.io/Levhav/pen/yPgddg/">​CppComet chat example</​a>​ by Trapenok Victor (<a href="​https://​codepen.io/Levhav">​@Levhav</​a>​) on <a href="https://​codepen.io">​CodePen</​a>​.</​p>​ 
 +<script async src="​https://​production-assets.codepen.io/​assets/​embed/​ei.js"></​script> 
 </​html>​ </​html>​
 +
 +===== История сообщений для чата =====
 +
 +Можно до 99 последних сообщений чата загружать из истории комет сервера.
 +Для включения сохранения истории сообщений в канале чата надо выполнить CometQL запрос в online командной строке для CometQL на странице в разделе Real time monitor.
 +<code sql>
 +INSERT INTO pipes_settings ('​name',​ '​length'​) VALUES ('​web_chat_pipe',​ 10);
 +</​code>​
 +
 +==== Очищение истории сообщений чата ====
 +
 +Для очищения истории сообщений в чате надо выполнить CometQL запрос в online командной строке для CometQL на странице в разделе Real time monitor.
 +<code sql>
 +DELETE FROM pipes_messages WHERE name = '​web_chat_pipe';​
 +</​code>​
 +
 +<note important>​Обратите внимание на разницу в командной строке CometQL: на страницах с документацией демо доступ для dev_id = 15 а в разделе Real time monitor командная строка для управления вашим личным dev_id</​note> ​
 +
 +===== Примечания =====
 +
 +<note tip>​Если вы захотите указать другое имя канала для работы чата, то учтите,​ что из Javascript api можно отправлять сообщения только в каналы начинающиеся с web_ Более подробно об этом смотрите в  [[comet:​javascript_api#​зарезервированные_имена_каналов|JavaScript API - зарезервированные_имена_каналов]]</​note>​