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 Logo

Rubigram

A lightweight Python library to build Rubika bots easily.

Installation

pip install RubigramClient

Quick Example

from rubigram import Client

bot = Client(token="YOUR_TOKEN")

@bot.on_message()
async def echo(client, message):
    await message.reply("Hello Rubigram!")

bot.run()

Reply and Edit message

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

bot = Client(token="YOUR_TOKEN_BOT")

@bot.on_message(filters.private)
async def welcome_message(client, message: Update):
    send = await message.reply("Hi, WELCOME TO RUBIGRAM")
    await send.edit_text("message was edited")

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", "Button 1"),
                    Button("2", "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("YOUR_BOT_TOKEN")

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

asyncio.run(main())

Implementation of multiple programs

from rubigram import Client
import asyncio

tokens = [
    "TOKEN_1",
    "TOKEN_2"
]

async def main():
    for token in tokens:
        async with Client(token) as bot:
            get_me = await bot.get_me()
            print(get_me.asjson())

asyncio.run(main())

Rubino

from rubigram.rubino import Rubino
import asyncio

async def main():
    auth = "YOUR_AUTH_ACCOUNT"
    async with Rubino(auth) as app:
        info = await app.get_my_profile_info()
        print(info)
        
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.7.0.tar.gz (14.7 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.7.0-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for rubigramclient-1.7.0.tar.gz
Algorithm Hash digest
SHA256 a725ddb9eee3decdf92a8621c2048875f7703754f762711f191bcd9acc8cbb3f
MD5 7b755587875fb56fa35e84e89bdf4df3
BLAKE2b-256 7ffe9843259f6cc8279de376e151eed4681341934f67f98e1f604746fd15e7a8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rubigramclient-1.7.0-py3-none-any.whl
  • Upload date:
  • Size: 17.8 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.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e6d4735196be92c451ad1fe950100a6c2e858fbb74959b93e8342e5b52630ac6
MD5 b215051f60d56f1f748569e75049da99
BLAKE2b-256 c7574df611304f29e29833a562a9a5b99af468de15bcfc801c74a05aa640476d

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