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.1.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.1-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rubigramclient-1.5.1.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.1.tar.gz
Algorithm Hash digest
SHA256 3742145c0a306e7a3021568839de6ee0884a340ef514d53cdbc8c9d2bb90b1b5
MD5 7853e374d6e8fa6262a93d0f44044a11
BLAKE2b-256 01883141d69fca0882567af9a1e05a52d3e24c80c406e1f396eb05652603d0f8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rubigramclient-1.5.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0961bd664a436405dc7f46660d14a098e6df4a0945d274ae7984f86866acf8a3
MD5 eaea07d78739f6e6b06f2d09ce1d7af7
BLAKE2b-256 167f5a64be54b9c04007feff35b1171bb17544ff8050ed93704554be6bbbaa80

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