[RAKBOT LUA] Отправка сообщений в Telegram

Dolmatik

Участник
Автор темы
40
4
Версия MoonLoader
Другое
Доброго времени суток, возможно ли сделать, чтобы допустим в телеграмм отправлялось сообщение с PayDay. Спрашиваю для ARZ. То есть чтобы полностью сообщение переслалось, вместе с зарплатой, счетом в банке и т.д. И как сделать, чтобы в телеграмм отправлялась полная строчка, например, с баном?
 
Решение
Код:
[23:00:02] __________Банковский чек__________
[23:00:02] Депозит в банке: $0
[23:00:02] Сумма к выплате: $5000
[23:00:02] Текущая сумма в банке: $67000
[23:00:02] Текущая сумма на депозите: $0
[23:00:02] В данный момент у вас 21-й уровень и 67/88 респектов
[23:00:02] __________________________________
надеюсь разберешься как настроить
Lua:
local settings = {
    token = '', -- токен бота
    chat_id = 1 -- твой телеграм id
}

local message = ''
local parse = false

local ansi_decode = {
    [128]='\208\130',[129]='\208\131',[130]='\226\128\154',[131]='\209\147',[132]='\226\128\158',[133]='\226\128\166',
    [134]='\226\128\160',[135]='\226\128\161',[136]='\226\130\172',[137]='\226\128\176',[138]='\208\137',[139]='\226\128\185'...

Liquit

Активный
277
91
Есть для вк, для телеграмма нужно переписывать
 

Dolmatik

Участник
Автор темы
40
4
Есть для вк, для телеграмма нужно переписывать
На сколько я понял это не подойдет для RakBot'a. Не будет работать там
 

Dolmatik

Участник
Автор темы
40
4
Lua:
function sampev.onServerMessage(color,text)
    if vknotf.ispayday.v then
        if text:find('Банковский чек') and color == 1941201407 then
            vknotf.ispaydaystate = true
            vknotf.ispaydaytext = ''
        end
        if vknotf.ispaydaystate then
            if text:find('Депозит в банке') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('Сумма к выплате') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('Текущая сумма в банке') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('Текущая сумма на депозите') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('В данный момент у вас') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
                sendvknotf(vknotf.ispaydaytext)
                vknotf.ispaydaystate = false
                vknotf.ispaydaytext = ''
            end
        end
    end
end

Для обычного lua с отправкой в VK это выглядит как я понял так, но вопрос в том, как это переделать под rakbot?
 

Fluffy1560

Активный
280
34
Lua:
function sampev.onServerMessage(color,text)
    if vknotf.ispayday.v then
        if text:find('Банковский чек') and color == 1941201407 then
            vknotf.ispaydaystate = true
            vknotf.ispaydaytext = ''
        end
        if vknotf.ispaydaystate then
            if text:find('Депозит в банке') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('Сумма к выплате') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('Текущая сумма в банке') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('Текущая сумма на депозите') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
            elseif text:find('В данный момент у вас') then
                vknotf.ispaydaytext = vknotf.ispaydaytext..'\n'..text
                sendvknotf(vknotf.ispaydaytext)
                vknotf.ispaydaystate = false
                vknotf.ispaydaytext = ''
            end
        end
    end
end

Для обычного lua с отправкой в VK это выглядит как я понял так, но вопрос в том, как это переделать под rakbot?
Посмотри как работает телеграм уведы ракбота и поймешь принцип
 

Neil_

Активный
200
29
 

Dolmatik

Участник
Автор темы
40
4
есть все строки из чатлога?
Код:
[23:00:02] __________Банковский чек__________
[23:00:02] Депозит в банке: $0
[23:00:02] Сумма к выплате: $5000
[23:00:02] Текущая сумма в банке: $67000
[23:00:02] Текущая сумма на депозите: $0
[23:00:02] В данный момент у вас 21-й уровень и 67/88 респектов
[23:00:02] __________________________________
 

манку хлебал

Потрачен
305
121
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Код:
[23:00:02] __________Банковский чек__________
[23:00:02] Депозит в банке: $0
[23:00:02] Сумма к выплате: $5000
[23:00:02] Текущая сумма в банке: $67000
[23:00:02] Текущая сумма на депозите: $0
[23:00:02] В данный момент у вас 21-й уровень и 67/88 респектов
[23:00:02] __________________________________
надеюсь разберешься как настроить
Lua:
local settings = {
    token = '', -- токен бота
    chat_id = 1 -- твой телеграм id
}

local message = ''
local parse = false

local ansi_decode = {
    [128]='\208\130',[129]='\208\131',[130]='\226\128\154',[131]='\209\147',[132]='\226\128\158',[133]='\226\128\166',
    [134]='\226\128\160',[135]='\226\128\161',[136]='\226\130\172',[137]='\226\128\176',[138]='\208\137',[139]='\226\128\185',
    [140]='\208\138',[141]='\208\140',[142]='\208\139',[143]='\208\143',[144]='\209\146',[145]='\226\128\152',
    [146]='\226\128\153',[147]='\226\128\156',[148]='\226\128\157',[149]='\226\128\162',[150]='\226\128\147',[151]='\226\128\148',
    [152]='\194\152',[153]='\226\132\162',[154]='\209\153',[155]='\226\128\186',[156]='\209\154',[157]='\209\156',
    [158]='\209\155',[159]='\209\159',[160]='\194\160',[161]='\209\142',[162]='\209\158',[163]='\208\136',
    [164]='\194\164',[165]='\210\144',[166]='\194\166',[167]='\194\167',[168]='\208\129',[169]='\194\169',
    [170]='\208\132',[171]='\194\171',[172]='\194\172',[173]='\194\173',[174]='\194\174',[175]='\208\135',
    [176]='\194\176',[177]='\194\177',[178]='\208\134',[179]='\209\150',[180]='\210\145',[181]='\194\181',
    [182]='\194\182',[183]='\194\183',[184]='\209\145',[185]='\226\132\150',[186]='\209\148',[187]='\194\187',
    [188]='\209\152',[189]='\208\133',[190]='\209\149',[191]='\209\151'
}

function AnsiToUtf8(s)
    local r, b = ''
    for i = 1, s and s:len() or 0 do
        b = s:byte(i)
        if b < 128 then
            r = r..string.char(b)
        else
            if b > 239 then
                r = r..'\209'..string.char(b - 112)
            elseif b > 191 then
                r = r..'\208'..string.char(b - 48)
            elseif ansi_decode[b] then
                r = r..ansi_decode[b]
            else
                r = r..'_'
            end
        end
    end
    return r
end

function sendTelegramMessage(text)
    openUrl(('https://api.telegram.org/bot%s/sendMessage?chat_id=%d&text=%s'):format(settings.token, settings.chat_id, AnsiToUtf8(text)))
end

function onServerMessage(text)
    if text == '__________Банковский чек__________' then
        parse = true
        message = text
    elseif text == '__________________________________' then
        parse = false
        sendTelegramMessage(message)
        message = ''
    elseif parse then           
        message = ('%s\n%s'):format(message, text)
    end
end
 
Последнее редактирование: