myDC.ru

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

 

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

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


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 >  
Начать новую тему
Ответов
ozonek
сообщение 4.10.2009, 11:33
Сообщение #22


Начинающий
*

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




Помогите пожалуйста я себе сделал 1 комнату для юзеров !!! в меню я убрал всё лишнее , вопрос как сделать что бы когда выбераешь Игровая > Войти и входит и не нужно писпть название %[line: Введите имя комнаты] как это убрать ???
Go to the top of the page
+Quote Post
Setuper
сообщение 4.10.2009, 11:48
Сообщение #23


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

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




Для этого нужно вызывать меню юзера, а не меню хаба.
Go to the top of the page
+Quote Post
ozonek
сообщение 4.10.2009, 16:30
Сообщение #24


Начинающий
*

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




Эм....а как это ???
Go to the top of the page
+Quote Post
Setuper
сообщение 4.10.2009, 22:00
Сообщение #25


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

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




Правый клик по комнате, а не по вкладке хаба.
Go to the top of the page
+Quote Post
X-Sky
сообщение 4.10.2009, 23:23
Сообщение #26


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

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




0oZoNeK, как я понял у тебя всего одна комната.
Если так - ложи скрипт, переделаю тебе его поудобнее.
Go to the top of the page
+Quote Post
ozonek
сообщение 5.10.2009, 14:29
Сообщение #27


Начинающий
*

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




Я в этом скрипте кое что удалил ))) если что качни оригинал и переделай (Зарание благодарю + гарантирую) still_dreaming.gif
P.S Из этой комнаты я хочу сделать Игровую !!!
Прикрепленные файлы
Прикрепленный файл  chatrooms.lua ( 8.85 килобайт ) Кол-во скачиваний: 10
 
Go to the top of the page
+Quote Post
X-Sky
сообщение 7.10.2009, 9:19
Сообщение #28


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

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




Получите, распишитесь big_smile.gif
Все 2 файла кидаем в папку "Scripts"
Прикрепленный файл  ChatRooms.rar ( 3.1 килобайт ) Кол-во скачиваний: 50


P.S. На всякий случай, есть такая кнопочка "Спасибо" victory.gif


Спасибо сказали:
Go to the top of the page
+Quote Post
ozonek
сообщение 13.10.2009, 15:58
Сообщение #29


Начинающий
*

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




Спасибо всё работает на отлично still_dreaming.gif

PS. Кнопка "Cпасибо" была учтена !!! )))
Go to the top of the page
+Quote Post
crake
сообщение 22.10.2009, 22:31
Сообщение #30


Начинающий
*

Группа: Пользователи
Сообщений: 16
Регистрация: 10.7.2009
Из: Тула
Пользователь №: 3 842
Спасибо сказали: 0 раз




Сделайте пожалуйста только одну чат-комнату для випов и без меню, чтобы вип по умолчанию в неё мог войти ( чтобы входить и выходить можно было командами). У меня чет ниче не получается(((
Go to the top of the page
+Quote Post
X-Sky
сообщение 23.10.2009, 8:52
Сообщение #31


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

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




Лови, имя комнаты [VIP]Комната, видна в списке и доступна только VIР'ам
Не забывай про кнопку спасибоbig_smile.gif
Прикрепленный файл  ChatRooms.rar ( 3.02 килобайт ) Кол-во скачиваний: 25


Спасибо сказали:
Go to the top of the page
+Quote Post
Wariner
сообщение 23.10.2009, 10:49
Сообщение #32


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




я не понимаю неужели нельзя покопаться и правильно настроить скрипт из первого поста ?! зачем просить выкладывать его по новой, но с другой настройкой?!

PS: впредь такие сообщения будут удаляться без предупреждения!
Go to the top of the page
+Quote Post
X-Sky
сообщение 3.2.2010, 20:07
Сообщение #33


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

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




Не ругайся, Илюх, все мы были такими)

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

не думаешь доделывать?))
Go to the top of the page
+Quote Post
foXDEvil
сообщение 16.3.2010, 11:54
Сообщение #34


Участник
**

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




Хочу сделать так чтобы в комнату каждое время писалось одно и тоже сообщение, но не выходит(((

На пример:
Код
function OnStartup()
tmr = TmrMan.AddTimer(600000)
end

function OnTimer(tmr)
Core.SendToAll("#Games","Сообщение")
end
Go to the top of the page
+Quote Post
Nickolya
сообщение 16.3.2010, 13:47
Сообщение #35


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Код
TmrMan.AddTimer(600000, "SendOnTimer")
добавить после
Код
function OnStartup()
и добавить функцию в самый конец скрипта:
Код
function SendOnTimer()
    tSys:SendToMembers("#Games","#Games","Сообщение","#Games")
end

Хотя я на 100% не уверен...
Go to the top of the page
+Quote Post
foXDEvil
сообщение 16.3.2010, 14:48
Сообщение #36


Участник
**

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




Код
function OnStartup()
    tmr = TmrMan.AddTimer(600000)
end
function OnTimer(tmr)
    tSys:SendToMembers("#Games","#Games","Сообщение","#Games")
end
Спасибо big_smile1.gif
вот этот вариант работает =)

Ещё кое что =) выложите плиз сюда ту часть в которой задаётся функция команды Members и где происходит чтение списка пользователей в комнате из файла ChatRoom.dbs. Сам пробовал сделать но результат 0

Я хочу сделать так чтобы другой скрипт читал файл ChatRoom.dbs, который так и будет изменятся скриптом chatrooms, и отсылал сообщение пользователям в комнате
Go to the top of the page
+Quote Post
VNoName
сообщение 11.9.2010, 6:20
Сообщение #37


Участник
**

Группа: Пользователи
Сообщений: 43
Регистрация: 15.3.2009
Пользователь №: 2 605
Спасибо сказали: 11 раз




Цитата(X-Sky @ 7.10.2009, 10:19) *
Получите, распишитесь big_smile.gif
Все 2 файла кидаем в папку "Scripts"
Прикрепленный файл  ChatRooms.rar ( 3.1 килобайт ) Кол-во скачиваний: 50


P.S. На всякий случай, есть такая кнопочка "Спасибо" victory.gif

помогите в этой версии сделать чтоб по команде выводило кол-во и ники юзеров в комнате
ну или скажите как пощитать кол-во строк в таблице ["tMembers"] и вывести их
моего незнания хватило лиш на это:
Код
elseif self:String2Lower(sCmd)==self:String2Lower(self.sCmdUsers) then
            sRoom=self:CheckRoom(sA,sNick,sRoom)
            if not sRoom then
                return true
            end
            if tRooms[sRoom]["tMembers"][sNick] then
                tSys:SendToUser(sNick,"Кол-во юзеров......",sRoom,sRoom)
                return true
            end
Go to the top of the page
+Quote Post
Nickolya
сообщение 12.9.2010, 20:07
Сообщение #38


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Попробуй вот так:
Код
        elseif self:String2Lower(sCmd)==self:String2Lower(self.sCmdUsers) then
            sRoom=self:CheckRoom(sA,sNick,sRoom)
            if not sRoom then
                return true
            end
            if tRooms[sRoom]["tMembers"][sNick] then
                local i, sMembers = 0, {}
                for sNick in pairs(tRooms[sRoom]["tMembers"]) do
                    i = i + 1
                    table.insert(sMembers, sNick)
                end
                sMembers = table.concat(sMembers, ', ')
                tSys:SendToUser(sNick,"В комнате "..i.." пользователей: "..sMembers,sRoom,sRoom)
                return true
            end


Спасибо сказали:
Go to the top of the page
+Quote Post
VNoName
сообщение 14.9.2010, 12:20
Сообщение #39


Участник
**

Группа: Пользователи
Сообщений: 43
Регистрация: 15.3.2009
Пользователь №: 2 605
Спасибо сказали: 11 раз




спасиб работает, а вот еще вопрос когда юзер уже добавлен в комнату то если он снова нажмет войти в комнату то команда отображается в гл чате и когда вызываю команду сколько юзеров она отсылается(сама команда) всем кто в комнате, как можно откл их отправку всем?
Go to the top of the page
+Quote Post
Nickolya
сообщение 14.9.2010, 12:34
Сообщение #40


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Код
                -- return true    -- было вот здесь
            end
            return true    -- стало здесь, и так надо сделать по всей функции tSys:DoCmd(sNick,sArg,sRoom)
        elseif self:String2Lower(sCmd)==self:String2Lower(self.sCmdExit) then


Спасибо сказали:
Go to the top of the page
+Quote Post
VNoName
сообщение 14.9.2010, 13:15
Сообщение #41


Участник
**

Группа: Пользователи
Сообщений: 43
Регистрация: 15.3.2009
Пользователь №: 2 605
Спасибо сказали: 11 раз




примного благодарен все работает, а как сделать поле ["sMsgEnter"] много строчным?
Go to the top of the page
+Quote Post

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

Collapse

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

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

 



RSS Сейчас: 29.3.2024, 18:41