All Projects → tdlight-team → tdlight-java

tdlight-team / tdlight-java

Licence: LGPL-3.0 license
Complete Bot and Userbot Telegram library based on TDLib

Programming Languages

java
68154 projects - #9 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to tdlight-java

tdlight-telegram-bot-api
The TDLight Telegram Bot API is an actively enhanced fork of the original Bot API, featuring experimental user support, proxies, unlimited files size, and more.
Stars: ✭ 71 (-44.53%)
Mutual labels:  telegram-api, mtproto, telegram-bots, telegram-bot-api, telegrambot, tdlib
telegram client
library for help you make userbot or bot telegram and support tdlib telegram database and only support nodejs dart and google-apps-script
Stars: ✭ 38 (-70.31%)
Mutual labels:  telegram-api, telegram-bot-api, telegram-userbot, tdlib
gotgbot
Autogenerated Go wrapper for the telegram API. Inspired by the python-telegram-bot library.
Stars: ✭ 178 (+39.06%)
Mutual labels:  telegram-api, telegram-bots, telegram-bot-api
node-tdlib
TDLib Binding with Telegram Bot API Reimplemention for Node.js
Stars: ✭ 35 (-72.66%)
Mutual labels:  telegram-api, telegram-bot-api, tdlib
telegram-bot-sdk
🤖 Telegram Bot API PHP SDK. Create Telegram Bots with PHP Easily! [WIP - DO NOT USE IN PRODUCTION YET]
Stars: ✭ 64 (-50%)
Mutual labels:  telegram-bots, telegram-bot-api, telegram-bot-framework
tinjecttelegram delphi
LMCODE
Stars: ✭ 37 (-71.09%)
Mutual labels:  telegram-bots, telegram-bot-api, telegrambot
telresender
A Telegram bot, which resend your message to another account
Stars: ✭ 22 (-82.81%)
Mutual labels:  telegram-api, telegram-bots, telegram-bot-api
pmChatBot
A simple feed-back bot written in PHP. Like Livegram. Heroku Support
Stars: ✭ 31 (-75.78%)
Mutual labels:  telegram-api, telegram-bots, telegrambot
aiotdlib
Python asyncio Telegram client based on TDLib https://github.com/tdlib/td
Stars: ✭ 63 (-50.78%)
Mutual labels:  telegram-api, mtproto, tdlib
grouphelperbot
A Telegram Bot made to help group admins, with Italian/English support.
Stars: ✭ 26 (-79.69%)
Mutual labels:  telegram-api, telegram-bots, telegram-bot-api
telegram
📚 Golang bindings for Telegram API
Stars: ✭ 15 (-88.28%)
Mutual labels:  telegram-api, telegram-bots, telegram-bot-api
opentele
A Python Telegram API Library for converting between tdata and telethon sessions, with built-in official Telegram APIs.
Stars: ✭ 90 (-29.69%)
Mutual labels:  telegram-api, telegrambot, telegram-userbot
echotron
An elegant and concurrent library for Telegram bots in Go.
Stars: ✭ 95 (-25.78%)
Mutual labels:  telegram-api, telegram-bots, telegram-bot-api
WTelegramClient
Telegram client API library written 100% in C# and .NET Standard
Stars: ✭ 192 (+50%)
Mutual labels:  telegram-api, mtproto, telegram-userbot
Pyrogram
Telegram MTProto API Client Library and Framework in Pure Python for Users and Bots
Stars: ✭ 2,252 (+1659.38%)
Mutual labels:  telegram-api, mtproto, tdlib
Nutgram
The Telegram bot framework that doesn't drive you nuts.
Stars: ✭ 206 (+60.94%)
Mutual labels:  telegram-bots, telegram-bot-api
Python Telegram
Python client for the Telegram's tdlib
Stars: ✭ 246 (+92.19%)
Mutual labels:  telegram-api, telegram-bot-api
tdlib-binaries
prebuilt TDLib binaries
Stars: ✭ 26 (-79.69%)
Mutual labels:  telegram-api, tdlib
theimagebot
Blog.TheOstrich.Eu.Org
Stars: ✭ 15 (-88.28%)
Mutual labels:  telegram-bots, telegram-bot-api
Mtproto Core
Telegram API JS (MTProto) client library for browser and nodejs
Stars: ✭ 242 (+89.06%)
Mutual labels:  telegram-api, mtproto
TDLight logo

TDLight Java

Complete Bot and Userbot Telegram library written in Java, based on TDLib

Java CI Release JProfiler

💻 Supported platforms

Java versions: from Java 8 to Java 17

Operating systems: Linux, Windows, MacOS

CPU architectures:

  • i386/x86 (Linux, Windows)
  • amd64/x86_64 (Linux, Windows, OSX)
  • armhf/armv7 (Linux)
  • aarch64/armv8/arm64 (Linux)
  • s390x (Linux)
  • ppc64el/ppc64le (Linux)

📚 Required libraries

Install OpenSSL on macOS

You must install openssl@3 using the brew package manager , then link openssl to /usr/local/opt/openssl

If you don't know how to do this, type the following commands in your terminal:

brew install openssl@3
ln -sf /usr/local/Cellar/openssl@3/3.0.0 /usr/local/opt/openssl

📚 How to use the library

Setting up the library using Maven

If you are using Maven, edit your pom.xml file as below:

<project>
	<repositories>

		<!-- Add the following repository -->
		<repository>
			<id>mchv</id>
			<name>MCHV Apache Maven Packages</name>
			<url>https://mvn.mchv.eu/repository/mchv/</url>
		</repository>

	</repositories>

	<dependencyManagement>
		<dependencies>
			
			<!-- Add the following dependency -->
			<dependency>
				<groupId>it.tdlight</groupId>
				<artifactId>tdlight-java-bom</artifactId>
				<version>VERSION</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<dependencies>

		<!-- Add the following dependencies -->
		<dependency>
			<groupId>it.tdlight</groupId>
			<artifactId>tdlight-java</artifactId>
			<!-- don't specify the version here -->
		</dependency>
		<dependency>
			<groupId>it.tdlight</groupId>
			<artifactId>tdlight-natives-linux-amd64</artifactId>
			<!-- don't specify the version here -->
		</dependency>
		<!-- Include other native versions that you want, for example for windows, osx, ... -->

	</dependencies>
</project>

Replace VERSION with the latest release version, you can find it here.

Setting up the library using Gradle

If you are using Gradle, add the following lines into your build.gradle file

repositories {
	maven { url "https://mvn.mchv.eu/repository/mchv/" }
}
dependencies {
	// import the BOM
	implementation platform('it.tdlight:tdlight-java-bom:VERSION')

	// do not specify the versions on the dependencies below!
	implementation 'it.tdlight:tdlight-java'
	implementation 'it.tdlight:tdlight-natives-linux-amd64'
	// Include other native versions that you want, for example for windows, osx, ...
}

Replace VERSION with the latest release version, you can find it here.

Native dependencies

To use TDLight Java you need to include one or more native dependencies:

  • tdlight-natives-linux-amd64
  • tdlight-natives-linux-aarch64
  • tdlight-natives-linux-x86
  • tdlight-natives-linux-armhf
  • tdlight-natives-linux-ppc64le
  • tdlight-natives-linux-s390x
  • tdlight-natives-windows-amd64
  • tdlight-natives-osx-amd64

Usage

An example on how to use TDLight Java can be found here: Example.java

Advanced usage

If you want to disable the automatic runtime shutdown hook, you should set the property it.tdlight.enableShutdownHooks to false

TDLight methods documentation

TdApi JavaDoc

TDLight extended features

TDLight has some extended features compared to TDLib, that you can see on the TDLight official repository.

About

License

TDLight is licensed by Andrea Cavalli [email protected] under the terms of the GNU Lesser General Public License 3

Libraries licenses

JTDLib is licensed by Ernesto Castellotti [email protected] under the terms of the GNU Lesser General Public License 3

TDLib is licensed by Aliaksei Levin [email protected] and Arseny Smirnov [email protected] under the terms of the Boost Software License

OpenSSL is licensed under the terms of Apache License v2

Zlib is licensed under the terms of Zlib license

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].