Помогите написать бота чтобы он отправлял сообщение в тг при получении трейда /trade

Кот в пиджаке

Участник
Автор темы
69
17
Такой код мне сделал ГБТ, помогите, не робит. Кароче скрипт должен слать сообщение в тг когда прилетает диалог 8252 (трейд), не робит. Выручайте, помогайте

Код:
require 'sampfuncs'
require 'samp.events'
local http = require 'socket.http'

local botToken = "YOUR_TELEGRAM_BOT_TOKEN" -- Укажите токен вашего Telegram-бота
local chatId = "YOUR_CHAT_ID" -- Укажите ID чата или пользователя

function sendToTelegram(message)
    local url = string.format(
        "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s",
        botToken,
        chatId,
        message
    )
    local response, status = http.request(url)
    if status == 200 then
        sampAddChatMessage("Сообщение успешно отправлено в Telegram.", 0x00FF00)
    else
        sampAddChatMessage("Ошибка отправки сообщения в Telegram. Статус: " .. status, 0xFF0000)
    end
end

function main()
    while not isSampAvailable() do wait(0) end

    sampAddChatMessage("Скрипт активирован. Ждем диалог с ID 8252.", 0x00FF00)

    sampRegisterChatCommand("tgtest", function()
        sampAddChatMessage("Проверка подключения к Telegram...", 0xFFFF00)
        sendToTelegram("Привет")
    end)

    while true do
        wait(0)
    end
end

function SE.onShowDialog(dialogId, style, title, button1, button2, text)
    if dialogId == 8252 then
        sampAddChatMessage("Диалог с ID 8252 обнаружен! Отправляю сообщение в Telegram.", 0x00FF00)
        sendToTelegram("Обнаружен диалог с ID 8252: " .. title)
    end
end
 

Неадекватная сова

Известный
Проверенный
247
212
 

Кот в пиджаке

Участник
Автор темы
69
17
Ну так а зачем мне, я не умею программировать
 

inct

Режим чтения
38
13
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Вот держи, я у гпт попросил тоже:

хуйня:
require 'lib.moonloader'

require 'lib.requests' -- для работы с HTTP запросами


-- Настройки Telegram

local BOT_TOKEN = "ВАШ_ТОКЕН_БОТА"

local CHAT_ID = "ВАШ_ЧАТ_ID"


function main()

    while true do

        wait(0)

        

        -- Проверяем активный диалог

        if sampIsDialogActive() then

            local dialogId = sampGetCurrentDialogId()

            

            -- Если это диалог трейда (8252)

            if dialogId == 8252 then

                -- Отправляем сообщение в Telegram

                sendTelegramMessage("Открыт диалог трейда!")

                

                -- Ждем немного, чтобы не спамить сообщениями

                wait(1000)

            end

        end

    end

end


function sendTelegramMessage(message)

    local url = string.format("https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s",

        BOT_TOKEN,

        CHAT_ID,

        url_encode(message)

    )

    

    asyncHttpRequest('GET', url, nil,

        function(response)

            -- Успешная отправка

            sampAddChatMessage("Сообщение отправлено в Telegram", -1)

        end,

        function(error)

            -- Ошибка отправки

            sampAddChatMessage("Ошибка отправки сообщения: " .. error, 0xFF0000)

        end

    )

end


-- Функция для кодирования URL

function url_encode(str)

    if str then

        str = string.gsub(str, "\n", "\r\n")

        str = string.gsub(str, "([^%w ])",

            function(c)

                return string.format("%%%02X", string.byte(c))

            end

        )

        str = string.gsub(str, " ", "+")

    end

    return str

end
 
  • Нравится
Реакции: Кот в пиджаке

Кот в пиджаке

Участник
Автор темы
69
17
Вот держи, я у гпт попросил тоже:

хуйня:
require 'lib.moonloader'

require 'lib.requests' -- для работы с HTTP запросами


-- Настройки Telegram

local BOT_TOKEN = "ВАШ_ТОКЕН_БОТА"

local CHAT_ID = "ВАШ_ЧАТ_ID"


function main()

    while true do

        wait(0)

       

        -- Проверяем активный диалог

        if sampIsDialogActive() then

            local dialogId = sampGetCurrentDialogId()

           

            -- Если это диалог трейда (8252)

            if dialogId == 8252 then

                -- Отправляем сообщение в Telegram

                sendTelegramMessage("Открыт диалог трейда!")

               

                -- Ждем немного, чтобы не спамить сообщениями

                wait(1000)

            end

        end

    end

end


function sendTelegramMessage(message)

    local url = string.format("https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s",

        BOT_TOKEN,

        CHAT_ID,

        url_encode(message)

    )

   

    asyncHttpRequest('GET', url, nil,

        function(response)

            -- Успешная отправка

            sampAddChatMessage("Сообщение отправлено в Telegram", -1)

        end,

        function(error)

            -- Ошибка отправки

            sampAddChatMessage("Ошибка отправки сообщения: " .. error, 0xFF0000)

        end

    )

end


-- Функция для кодирования URL

function url_encode(str)

    if str then

        str = string.gsub(str, "\n", "\r\n")

        str = string.gsub(str, "([^%w ])",

            function(c)

                return string.format("%%%02X", string.byte(c))

            end

        )

        str = string.gsub(str, " ", "+")

    end

    return str

end
Проверю, отпишу