Send to Telegram

Send from web to telegram using script

Aby zainstalować ten skrypt, wymagana jest instalacje jednego z następujących rozszerzeń: Tampermonkey, Greasemonkey lub Violentmonkey.

Aby zainstalować ten skrypt, wymagana jest instalacje jednego z następujących rozszerzeń: Tampermonkey, Violentmonkey.

Aby zainstalować ten skrypt, wymagana jest instalacje jednego z następujących rozszerzeń: Tampermonkey, Violentmonkey.

Aby zainstalować ten skrypt, wymagana będzie instalacja rozszerzenia Tampermonkey lub Userscripts.

You will need to install an extension such as Tampermonkey to install this script.

Aby zainstalować ten skrypt, musisz zainstalować rozszerzenie menedżera skryptów użytkownika.

(Mam już menedżera skryptów użytkownika, pozwól mi to zainstalować!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

Będziesz musiał zainstalować rozszerzenie menedżera stylów użytkownika, aby zainstalować ten styl.

Będziesz musiał zainstalować rozszerzenie menedżera stylów użytkownika, aby zainstalować ten styl.

Musisz zainstalować rozszerzenie menedżera stylów użytkownika, aby zainstalować ten styl.

(Mam już menedżera stylów użytkownika, pozwól mi to zainstalować!)

// ==UserScript==
// @name         Send to Telegram
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Send from web to telegram using script
// @match        *
// @grant        GM_xmlhttpRequest
// @grant        unsafeWindow
// @connect      api.telegram.org
// @sandbox      JavaScript
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

    const BOT_TOKEN = "enter_bot_token_here";
    const CHAT_ID = "enter_chat_id_here"; //https://gist.github.com/nafiesl/4ad622f344cd1dc3bb1ecbe468ff9f8a

    window.addEventListener("message", function(event) {
        if (event.data?.type === "<DEFINE-YOUR-TYPE-HERE>") {
            const a = event.data.payload;
            const content = a?.data?.msgs?.[0]?.content || "[No content]";
            const sender = a?.data?.msgs?.[0]?.dName || "Unknown";

            const text = `💬 Message from ${sender}:\n${content}`;

            GM_xmlhttpRequest({
                method: "POST",
                url: `https://api.telegram.org/bot${BOT_TOKEN}/sendMessage`,
                headers: {
                    "Content-Type": "application/x-www-form-urlencoded"
                },
                data: `chat_id=${CHAT_ID}&text=${encodeURIComponent(text)}`,
                onload: function(response) {
                    console.log("Send Telegram:", response.responseText);
                },
                onerror: function(err) {
                    console.error("Error :", err);
                }
            });

        }
    });
})();

/*
How to use: 
From another instance, you can use:
window.postMessage({
    type: "ZALO_DATA",
    payload: parsed
}, "*");
to send data to this handler
*/