myDC.ru

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

 
 
Ответить в данную темуНачать новую тему

> AvtoMsg

Теги
Нет тегов для показа
denis
сообщение 15.2.2010, 19:06
Сообщение #1


Активный участник
***

Группа: Пользователи
Сообщений: 50
Регистрация: 23.11.2008
Пользователь №: 1 182
Спасибо сказали: 2 раза




Код
bot="xxx"

timer = 1 -- в минутах

messarray={
[[ текст сообщение]],

}

function OnStartup()
    tmr = TmrMan.AddTimer (timer*60*1000)
end

function OnTimer(tmr)
    Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
end


помогите реализовать вывод этого сообщения ещё с помощью команды (которая настраивалась бы) например !msg

тоесть по таймеру и по команде.

Большое спасибо
Go to the top of the page
+Quote Post
Saymon21
сообщение 15.2.2010, 20:26
Сообщение #2


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Держи
Код
bot="xxx"

timer = 1 -- в минутах

messarray={
[[ тест тест тест]],

}

function OnStartup()
    tmr = TmrMan.AddTimer (timer*60*1000)
end

function OnTimer(tmr)
    Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
end

function ChatArrival(tUser, sData)
  local cmd = sData:match"%b<>%s+(%S+).*|"
  if cmd == "!тест" then
    Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
return true
  end    
end


у меня работает big_smile.gif

если надо сделать чтобы по команде отправлялось не всем, а только тому кто дал команду то
Код
Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])

меняем на
Код
Core.SendToUser(tUser, "<"..bot.."> "..messarray[math.random(1,#messarray)])

Для того что бы сделать, это надо было только прочитать тут. big_smile.gif
Не надо лениться


Спасибо сказали:
Go to the top of the page
+Quote Post
denis
сообщение 15.2.2010, 22:05
Сообщение #3


Активный участник
***

Группа: Пользователи
Сообщений: 50
Регистрация: 23.11.2008
Пользователь №: 1 182
Спасибо сказали: 2 раза




а можно ещё кодик чтоб в личку кидал?) still_dreaming.gif
Go to the top of the page
+Quote Post
Saymon21
сообщение 15.2.2010, 22:13
Сообщение #4


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Core.SendPmToUser
Прочитай не ленись http://mydc.ru/topic118.html
Go to the top of the page
+Quote Post
denis
сообщение 15.2.2010, 23:24
Сообщение #5


Активный участник
***

Группа: Пользователи
Сообщений: 50
Регистрация: 23.11.2008
Пользователь №: 1 182
Спасибо сказали: 2 раза




просто нету времени..у меня сегодня сарики и разобраться хочу

выбило ошибку 82: bad argument count to 'SendPmToUser' (3 expected, got 2)
Go to the top of the page
+Quote Post
DrakonSP
сообщение 15.2.2010, 23:37
Сообщение #6


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Цитата(denis @ 15.2.2010, 23:24) *
просто нету времени..у меня сегодня сарики и разобраться хочу

выбило ошибку 82: bad argument count to 'SendPmToUser' (3 expected, got 2)

Код
Core.SendPmToUser(tUser, bot, messarray[math.random(1,#messarray)])
Go to the top of the page
+Quote Post
denis
сообщение 15.2.2010, 23:40
Сообщение #7


Активный участник
***

Группа: Пользователи
Сообщений: 50
Регистрация: 23.11.2008
Пользователь №: 1 182
Спасибо сказали: 2 раза




Цитата(DrakonSP @ 15.2.2010, 23:37) *
Код
Core.SendPmToUser(tUser, bot, messarray[math.random(1,#messarray)])

та же ошибка
Go to the top of the page
+Quote Post
DrakonSP
сообщение 16.2.2010, 0:03
Сообщение #8


Продвинутый участник
****

Группа: Пользователи
Сообщений: 107
Регистрация: 23.11.2008
Из: Сергиев Посад
Пользователь №: 1 178
Спасибо сказали: 9 раз




Раскрывающийся текст
Цитата
bot="xxx"

timer = 1 -- в минутах

messarray={
[[ тест тест тест]],

}

function OnStartup()
tmr = TmrMan.AddTimer (timer*60*1000)
end

function OnTimer(tmr)
Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
end

function ChatArrival(tUser, sData)
local cmd = sData:match"%b<>%s+(%S+).*|"
if cmd == "!тест" then
Core.SendPmToUser(tUser, bot, messarray[math.random(1,#messarray)])
return true
end
end

У меня вот так работает
Проверь переменную bot

Кстате неплохая идея...
в переменной messarray сделать ещё одну переменную которая будет генериться из новостей www.rbc.ru
Код
messarray={
    "[Sports]",
    "[Olympics]",
    "[Politics]",
    "[World]",
}

Так же можно и погоду
Да всё что угодно! На www.rbc.ru есть всё!


Спасибо сказали:
Go to the top of the page
+Quote Post

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

 



RSS Сейчас: 27.4.2024, 0:25