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.models 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.models 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.3.tar.gz (9.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.3-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rubigramclient-1.5.3.tar.gz
  • Upload date:
  • Size: 9.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.3.tar.gz
Algorithm Hash digest
SHA256 4153a968d322390e8b55b63f62d5dfa7900166a046a4b60b6de06f746a077bf7
MD5 8dfe65d3dda4df7349c249581f8b6d87
BLAKE2b-256 80537ccb44e3bfeeccb7d1de98ddd289c3ef0ab66f3c7a549547a688a1116e91

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rubigramclient-1.5.3-py3-none-any.whl
  • Upload date:
  • Size: 11.6 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ef54a63a637732f3cad6935bc4da44e360231cba6119daa11da656a517d795e6
MD5 8d91a4e4b844f8badd15d164c4bb1646
BLAKE2b-256 d655caf7ab80eec0c2be4242be539fa7fdf5834c69d982aad9a0104f273d4464

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