myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 

> Чат Комнаты, API2 | Возможно создать несколько чат комнат

Теги
Нет тегов для показа
Setuper
сообщение 17.10.2008, 12:38
Сообщение #1


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Название: Чат комнаты
Версия: 1.0
Версия API: 2
Код: открытый
Автор: Setuper
Описание: возможно создать несколько чат комнат. Чат комнаты могут быть "закрытыми", то есть для получения сообщений нужно войти, а могут быть открытыми, то есть сообщения отсылаются всем доступным профилям (как в ОпЧате, вы не входите постоянно в ОпЧат, если вы Оператор, то он вам доступен). При запуске скрипта создаётся файл ChatRoom.dbs, в котором по умолчанию создаются 3 комнаты: комната для операторов, комната для випов и общая закрытая комната. В файле ChatRoom.dbs множество настроек. Опишу их на общей комнате:
Код
["-MembersRoom-"] = { -- название комнаты
    ["sMsgExit"] = "*** Вы покинули комнату.",  -- сообщение, отправляемое пользователю после выхода из комнаты
    ["tAllow"] = { -- профили, которым доступна комната
        [0] = 1,
        [2] = 1,
        [3] = 1,
        [1] = 1,
        [-1] = 0,
    },
    ["sDescription"] = "[БОТ] Чат комната для пользователей", -- описание бота
    ["sAway"] = false, -- режим бота: true - away, false - не away
    ["sEmail"] = "setuper@gmail.com", -- email бота
    ["sClientName"] = "DCBOT", -- название клиента бота
    ["bKey"] = true, -- имеет ли ключик бот: true - имеет, false - не имеет
    ["sTagOption"] = "M:A,H:0/0/1,S:0", -- тэг бота (не трогать, если не знаешь что это)
    ["sMsgEnter"] = "*** Добро пожаловать в чат комнату!", -- сообщение пользователю при входе в чат комнату
    ["bMembers"] = true, -- надо ли входить(выходить) в чат комнату: true - надо, false - не надо
    ["iShareSize"] = 0, -- шара бота чат комнаты
    ["tMembers"] = { -- таблица членов чат комнаты (не изменять)
    },
    ["tVisible"] = { -- профили, которым видна чат комната в списке пользователей
        [0] = 1,
        [2] = 1,
        [3] = 1,
        [1] = 1,
        [-1] = 1,
    },
    ["bReturn"] = true, -- возвращаемое значение чат комнатой
},
добавлю, что если скрипт чат комнаты в списке скриптов стоит до скрипта антирекламы и параметр bReturn=true, то сообщения чат комнаты не будут отслеживаться антирекламой, в противном случае будут.
После первого запуска скрипта в файле настроек по умолчанию создаётся 3 комнаты. Вы можете менять количество комнат по смоему усмотрению.

Конечно возможности программирования на lua не ограничены. Данный код я вырвал из SBot'a и немного преобразовал, но большая часть возможностей чат комнат осталась в SBot'е (чат комната непосредственно в чате, а не в личке, чёрные и белые списки для любого пользователя, установка паролей на чат комнаты, антифлуд, антимат, антикапс, антиреклама в чат комнатах и тд. и тп.). Нету времени.

Для самостоятельного перевода скрипта под версию API 1 следует воспользоваться инструкцией: ИНСТРУКЦИЯ

Юзаем! big_smile.gif
Прикрепленные файлы
Прикрепленный файл  chatrooms.lua ( 10.17 килобайт ) Кол-во скачиваний: 511
 


Спасибо сказали:
Go to the top of the page
+Quote Post
3 страниц V   1 2 3 >  
Начать новую тему
Ответов
M.a.r.s.e.l
сообщение 10.11.2008, 14:23
Сообщение #2


Начинающий
*

Группа: Пользователи
Сообщений: 28
Регистрация: 6.6.2008
Пользователь №: 14
Спасибо сказали: 0 раз




Выложите под API 1 если opl_api.lu скажите то я еще не научился пользоваться и тупит скрипт )
Go to the top of the page
+Quote Post
Setuper
сообщение 10.11.2008, 20:24
Сообщение #3


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Не понимаю, что не понятного? Всё очень подробно разобрано. Объясняю всё конкретно для этого скрипта:

1). Копируем в папку scripts файл old_api.lu

2). Открываем скрипт chatrooms.lua и в самом начале скрипта (можно перед комментарием, можно после) дописываем строчку:
Код
dofile(frmHub:GetPtokaXLocation().."scripts/old_api.lu")

3). Вместо OnStartup() пишем Core.OnStartup()
Вместо UserConnected(tUser) пишем Core.UserConnected(tUser)
Вместо RegConnected=UserConnected пишем Core.RegConnected=Core.UserConnected
Вместо OpConnected=UserConnected пишем Core.OpConnected=Core.UserConnected
Вместо ChatArrival(tUser,sData) пишем Core.ChatArrival(tUser,sData)
Вместо ToArrival(tUser,sData) пишем Core.ToArrival(tUser,sData)

Всё! Скрипт переведён! Не понимаю чего тут трудного?
Всё по инструкции big_smile.gif


Спасибо сказали:
Go to the top of the page
+Quote Post
M.a.r.s.e.l
сообщение 10.11.2008, 21:14
Сообщение #4


Начинающий
*

Группа: Пользователи
Сообщений: 28
Регистрация: 6.6.2008
Пользователь №: 14
Спасибо сказали: 0 раз




о_О наконецто написал спасибо!
Go to the top of the page
+Quote Post
Jaska
сообщение 26.1.2009, 15:50
Сообщение #5


Освоившийся участник
*****

Группа: Администраторы
Сообщений: 344
Регистрация: 2.6.2008
Из: RB,Ufa
Пользователь №: 8
Спасибо сказали: 106 раз




Илья сделай еще модераторов к чатрум. Я когда-то делал-делал так и не доделал) вроде даже тут валялось.
Go to the top of the page
+Quote Post
Setuper
сообщение 4.2.2009, 22:03
Сообщение #6


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




v 2.0

Fixed: Исправлена ошибка. При выходе из комнаты сообщения продолжали приходить.
Go to the top of the page
+Quote Post
mariner
сообщение 4.2.2009, 23:55
Сообщение #7


Местная ТехПоддержка
**********

Группа: Администраторы
Сообщений: 1 875
Регистрация: 18.7.2008
Из: Моск. Обл, г. королев, район Болшево
Пользователь №: 221
Спасибо сказали: 220 раз




так, еще - если 2жды войти в комнату - то она пропускает команду в чат. Лучше стобы оно комнату открывало!

PS а еще можно пароль на вход в комнату (типо чтоб можно было создат приваткомнату ;) )
Go to the top of the page
+Quote Post
D'aspid
сообщение 5.2.2009, 0:01
Сообщение #8


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 280
Регистрация: 4.6.2008
Из: Россия
Пользователь №: 10
Спасибо сказали: 42 раза




Да пароль обязательно нужно big_smile.gif
Go to the top of the page
+Quote Post
Setuper
сообщение 5.2.2009, 0:02
Сообщение #9


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




конечно пропустит, но не в чат, а в комнату, потому как это будет считаться за сообщение уже)))

Насчет паролей, то можно многое что сделать)))
Честно говоря не оптимизированные фичи делать не очень хочется, а без бд оптимизации можно не ждать(
Go to the top of the page
+Quote Post
mariner
сообщение 5.2.2009, 0:17
Сообщение #10


Местная ТехПоддержка
**********

Группа: Администраторы
Сообщений: 1 875
Регистрация: 18.7.2008
Из: Моск. Обл, г. королев, район Болшево
Пользователь №: 221
Спасибо сказали: 220 раз




ну хоть закров пропуск в чат повторного входа (PS у нас же линукс, делай с бд!)
Go to the top of the page
+Quote Post
dimetrius
сообщение 5.2.2009, 1:32
Сообщение #11


Освоившийся участник
*****

Группа: Модераторы
Сообщений: 281
Регистрация: 24.6.2008
Из: Луганск
Пользователь №: 70
Спасибо сказали: 47 раз




Не хватает функции посмотреть кто подключен к комнате
Go to the top of the page
+Quote Post
BeSeR
сообщение 7.3.2009, 15:47
Сообщение #12


Участник
**

Группа: Пользователи
Сообщений: 30
Регистрация: 11.12.2008
Пользователь №: 1 392
Спасибо сказали: 0 раз




Название: Чат комнаты
Версия: 1.0
Версия API: 2
Код: открытый
Автор: Setuper
Переведен : BeSeR Из API 2 под API 1
Файл : Прикрепленный файл  чатрумы.lua ( 10.42 килобайт ) Кол-во скачиваний: 53
Go to the top of the page
+Quote Post
Setuper
сообщение 7.3.2009, 15:52
Сообщение #13


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Это лишнее. Перевести каждый может без проблем.
Go to the top of the page
+Quote Post
Tarantul13
сообщение 18.4.2009, 9:49
Сообщение #14


Участник
**

Группа: Пользователи
Сообщений: 33
Регистрация: 3.3.2009
Пользователь №: 2 451
Спасибо сказали: 0 раз




[10:34] Синтаксис chatrooms.v4c.lua:35: bad argument #1 to 'pairs' (table expected, got nil) beat_brick.gif
Go to the top of the page
+Quote Post
Setuper
сообщение 18.4.2009, 11:37
Сообщение #15


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




В 35 строке нет функции pairs. Либо ты что-то менял, либо у тебя не этот скрипт!
Go to the top of the page
+Quote Post
ozonek
сообщение 27.7.2009, 20:53
Сообщение #16


Начинающий
*

Группа: Пользователи
Сообщений: 18
Регистрация: 30.6.2009
Из: Екатеринбург
Пользователь №: 3 742
Спасибо сказали: 0 раз




А как сделать что бы нажимаешь в меню чат комната и войти и всё а не писать название название писать или просто в чат +войти и входит (Мне нужна только одна комната )??????
Go to the top of the page
+Quote Post
Setuper
сообщение 4.8.2009, 16:54
Сообщение #17


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Для этого надо использовать меню юзера, а не хаба))
Go to the top of the page
+Quote Post
Uncle_Dif
сообщение 13.9.2009, 17:16
Сообщение #18


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 335
Регистрация: 18.5.2009
Из: Уфа, штат Солнечная Башкирия
Пользователь №: 3 353
Спасибо сказали: 7 раз




Я озадачен, скачал и установил этот скрипт и теперь у меня два оп-чата :пацталом:.
Пытался стереть оп-чат в птоке (0411), не удаётся. Зачем не два оп-чата... Что посоветуете?
Go to the top of the page
+Quote Post
X-Sky
сообщение 20.9.2009, 23:23
Сообщение #19


Освоившийся участник
*****

Группа: Модераторы
Сообщений: 352
Регистрация: 25.7.2009
Пользователь №: 3 960
Спасибо сказали: 73 раза




Цитата(Uncle_Dif @ 13.9.2009, 22:16) *
Я озадачен, скачал и установил этот скрипт и теперь у меня два оп-чата :пацталом:.
Пытался стереть оп-чат в птоке (0411), не удаётся. Зачем не два оп-чата... Что посоветуете?

Лови, убрал ОПчат.

Прикрепленный файл  chatrooms.lua ( 9.32 килобайт ) Кол-во скачиваний: 24


Спасибо сказали:
Go to the top of the page
+Quote Post
X-Sky
сообщение 22.9.2009, 20:12
Сообщение #20


Освоившийся участник
*****

Группа: Модераторы
Сообщений: 352
Регистрация: 25.7.2009
Пользователь №: 3 960
Спасибо сказали: 73 раза




Неплохо бы было, если б можно было выкидывать юзеров из комнаты, либо запрещать к примеру определённому юзеру вход в комнату.
Go to the top of the page
+Quote Post

3 страниц V   1 2 3 >
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No new Topic has attachmentsКомнаты (чатрумы) Rooms
API1, API2 | Создание чат-комнат для Verlihub и PtokaX
61 Phazeus 82 978 3.4.2014, 2:07 Посл. сообщение: Inkvizitor_ks
No New Posts Расширенные комнаты
1 ShadoWx 6 778 7.2.2012, 13:13 Посл. сообщение: Артём
Closed Topic has attachmentsНужно сделать дроп юзеров с комнаты!
Помогайте
1 X-Sky 6 648 26.9.2009, 16:45 Посл. сообщение: Wariner
No New Posts Чат комнаты для стран
скрипт для Ptokax 4.1.1
12 apelsin 16 358 5.8.2009, 18:31 Посл. сообщение: apelsin
No New Posts От: Комнаты (чатрумы) Rooms
От темы с ID: 1443
2 Tarantul13 7 377 19.6.2009, 21:45 Посл. сообщение: Tarantul13
No New Posts От: Комнаты (чатрумы) Rooms
От темы с ID: 1443
0 Артём 5 209 27.5.2009, 20:40 Посл. сообщение: Артём
No New Posts От: Чат Комнаты
От темы с ID: 438
1 Tarantul13 6 401 18.4.2009, 16:16 Посл. сообщение: Setuper
No New Posts От: Чат Комнаты
От темы с ID: 438
1 Артём 4 539 26.1.2009, 15:18 Посл. сообщение: D'aspid
No New Posts От: Кроссплатформенный Скрипт Комнаты (чатрумы) Rooms
От темы с ID: 1443
-1 -- 5 661 -- Посл. сообщение: --

 



RSS Сейчас: 27.11.2024, 1:55