如何使用JAVA / Node.js在TELEGRAM中向没有机器人的组发送消息

时间:2018-05-11 04:43:58

标签: java node.js telegram telegram-webhook

我被要求研究如何在没有使用JAVA的机器人的情况下向电报频道发送消息。我对这个Telegram API完全不熟悉,我发现的所有例子都使用了BOT。任何人都可以请帮助我开始使用NO Bots的示例代码。

非常感谢您对此的看法。

2 个答案:

答案 0 :(得分:1)

我没有用Java工作

但一般情况下,您可以使用以下方式向电报发送消息:

  • Bot发送(您可以在您的系统或服务器上运行)
  • Telegram Cli发送(您可以在您的系统或服务器上运行)
  • Telegram desktop client发送。(您可以在您的系统或服务器上运行)
  • 可以与Core API Telegram交互的客户端发送,例如,Telethon表示Python语言,MadelineProto表示PHP语言,TLSharp表示C#语言,Kotlogram表示Java语言等等...... (您可以在您的系统或服务器上运行它)

答案 1 :(得分:1)

您可以尝试tdlib/td,这是一个跨平台库,用于构建由Telegram在C ++中创建的Telegram客户端。您可以通过JNI(Java Native Interface)在Java中使用它。他们提供Java client example来帮助您入门并建立自己的客户。

他们的示例提供了发送消息的代码:

private static void sendMessage(long chatId, String message) {
    // initialize reply markup just for testing
    TdApi.InlineKeyboardButton[] row = {new TdApi.InlineKeyboardButton("https://telegram.org?1", new TdApi.InlineKeyboardButtonTypeUrl()), new TdApi.InlineKeyboardButton("https://telegram.org?2", new TdApi.InlineKeyboardButtonTypeUrl()), new TdApi.InlineKeyboardButton("https://telegram.org?3", new TdApi.InlineKeyboardButtonTypeUrl())};
    TdApi.ReplyMarkup replyMarkup = new TdApi.ReplyMarkupInlineKeyboard(new TdApi.InlineKeyboardButton[][]{row, row, row});

    TdApi.InputMessageContent content = new TdApi.InputMessageText(new TdApi.FormattedText(message, null), false, true);
    client.send(new TdApi.SendMessage(chatId, 0, false, false, replyMarkup, content), defaultHandler);
}

相关资源: