Skip to main content

A simple and flexible Python library for building advanced Rubika bots with powerful message handling, inline buttons, and custom filters.

Project description

Rubigram

A lightweight Python library to build Rubika bots easily.

Installation

pip install RubigramClient

Send Message

from rubigram import Client, filters
from rubigram.types import Update

bot = Client("your_bot_token", "you_endpoint_url")

@bot.on_message(filters.command("start") & filters.private)
async def start_handler(client, message: Update):    
    await message.reply("Hi, WELCOME TO RUBIGRAM")

bot.run()

Send Message & Get receiveInlineMessage

from rubigram import Client, filters
from rubigram.types import Update, Button, Keypad, KeypadRow, InlineMessage


bot = Client(token="bot_token", endpoint="endpoint_url")


@bot.on_message(filters.command("start"))
async def start(_, message: Update):
    inline = Keypad(
        rows=[
            KeypadRow(
                buttons=[
                    Button("1", "Simple", "Button 1"),
                    Button("2", "Simple", "Button 2")
                ]
            )
        ]
    )
    await bot.send_message(message.chat_id, "Hi", inline_keypad=inline)
    

@bot.on_inline_message(filters.button(["1", "2"]))
async def button(_, message: InlineMessage):
    if message.aux_data.button_id == "1":
        await bot.send_message(message.chat_id, "You Click Button 1")
    elif message.aux_data.button_id == "2":
        await bot.send_message(message.chat_id, "You Click Button 2")
        
bot.run()

Contex Manager

from rubigram import Client
import asyncio

bot = Client("bot_token")

async def main():
    async with bot:
        data = await bot.get_me()
        print(data.bot_id)

asyncio.run(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rubigramclient-1.5.0.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rubigramclient-1.5.0-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file rubigramclient-1.5.0.tar.gz.

File metadata

  • Download URL: rubigramclient-1.5.0.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for rubigramclient-1.5.0.tar.gz
Algorithm Hash digest
SHA256 0bca6727afaf3e511a0d3058ec374e3482c1e2e11033d5477b333a23c9d53cfc
MD5 d3550b0277a9ffba7ba3d093d59f6779
BLAKE2b-256 a1105751d72b5ed0501fa3cbbb3e04c3e547a25c24c19a479958550035b45fa2

See more details on using hashes here.

File details

Details for the file rubigramclient-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: rubigramclient-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for rubigramclient-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54444fbd2464f34f77d474c99c3f173cb61b46acdf84133f96c2172b753dfc45
MD5 1187dc94f1da183111f5b8c40d6abc74
BLAKE2b-256 d1665880f53638627e1b52e99a5bfeb14b6d1f6f50f4b424202b5bafb8df8054

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page