All Projects → pystorage → pykeyboard

pystorage / pykeyboard

Licence: MIT License
Best Keyboard and Pagination for the Pyrogram Library.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to pykeyboard

Xtra-Plugins
A Repo Full Of Xtra Plugins For FridayUB [Pyrogram]
Stars: ✭ 25 (-40.48%)
Mutual labels:  telegram, userbot, pyrogram
Selectpage
A simple style and powerful selector, including ajax remote data, autocomplete, pagination, tags, i18n and keyboard navigation features
Stars: ✭ 679 (+1516.67%)
Mutual labels:  pagination, keyboard
Pyrogram
Telegram MTProto API Client Library and Framework in Pure Python for Users and Bots
Stars: ✭ 2,252 (+5261.9%)
Mutual labels:  telegram, pyrogram
USERGE-X
USERGE-X. What the X ?
Stars: ✭ 133 (+216.67%)
Mutual labels:  userbot, pyrogram
DevelopersUserbot
Telegram Userbot Made for Developers by Developers
Stars: ✭ 25 (-40.48%)
Mutual labels:  userbot, pyrogram
TG-FileStreamBot
Stream Telegram files to web
Stars: ✭ 193 (+359.52%)
Mutual labels:  telegram, pyrogram
Nana-Bot
Telegram Modular Userbot using python3.7
Stars: ✭ 38 (-9.52%)
Mutual labels:  userbot, pyrogram
FileStreamBot
Telegram File to Link Fastest Bot , Its Generate Direct Links Quickly
Stars: ✭ 99 (+135.71%)
Mutual labels:  telegram, pyrogram
SmudgeLord
SmudgeLord tgBot source code.
Stars: ✭ 19 (-54.76%)
Mutual labels:  telegram, pyrogram
HellBot
Telethon Based Userbot to manage your Telegram Account.
Stars: ✭ 293 (+597.62%)
Mutual labels:  telegram, userbot
Fire-X
Powerful Telegram Maintained UserBot in Telethon
Stars: ✭ 22 (-47.62%)
Mutual labels:  userbot, pyrogram
Komi-San
Telegram Group Management Bot based on Pyrogram
Stars: ✭ 27 (-35.71%)
Mutual labels:  telegram, pyrogram
keyboa
Keyboa is a project designed to simplify Telegram keyboards creation.
Stars: ✭ 24 (-42.86%)
Mutual labels:  keyboard, telegram
WilliamButcherBot
Telegram Group Manager Bot Written In Python Using Pyrogram.
Stars: ✭ 187 (+345.24%)
Mutual labels:  telegram, pyrogram
memes-reposter
bot for automatic broadcasting content into telegrams channels from reddit/imgur/rss
Stars: ✭ 35 (-16.67%)
Mutual labels:  telegram
QlikBotNet
Qlik Bot Net is an example chat bot which enables access to Qlik content via conversational analytics. It's built in .NET/C# and can be used with the Telegram messaging platform.
Stars: ✭ 20 (-52.38%)
Mutual labels:  telegram
dark
🌛 Dark themes / mode for Rambox, Franz or Ferdi messaging services
Stars: ✭ 93 (+121.43%)
Mutual labels:  telegram
munich-scripts
Some useful scripts simplifying bureaucracy
Stars: ✭ 105 (+150%)
Mutual labels:  telegram
tg
`telegram-cli` for Telegram IM
Stars: ✭ 306 (+628.57%)
Mutual labels:  telegram
electronim
Electron based multi IM (Instant Messaging) client
Stars: ✭ 50 (+19.05%)
Mutual labels:  telegram

pykeyboard

PyPI Downloads GitHub

🎉 Thank you for 100k downloads 🎉 I love you...🥰

Pykeyboard

What's new?

  • Overriding the KeyboardButton, ReplyKeyboardRemove, ForceReply, InlineKeyboardButton methods in ReplyButton, ReplyKeyboardRemove, ForceReply, InlineButton.
  • Added new method InlineKeyboard. To send language selection keyboard.
  • Minor changes due to update in Pyrogram.

Installation

pip install pykeyboard

Documentation

Inline Keyboard

from pykeyboard import InlineKeyboard
Parameters:
  • row_width (integer, default 3)

Inline Keyboard add buttons

Code

from pykeyboard import InlineKeyboard, InlineButton


keyboard = InlineKeyboard(row_width=3)
keyboard.add(
    InlineButton('1', 'inline_keyboard:1'),
    InlineButton('2', 'inline_keyboard:2'),
    InlineButton('3', 'inline_keyboard:3'),
    InlineButton('4', 'inline_keyboard:4'),
    InlineButton('5', 'inline_keyboard:5'),
    InlineButton('6', 'inline_keyboard:6'),
    InlineButton('7', 'inline_keyboard:7')
)

Result

add_inline_button

Inline Keyboard row buttons

Code

from pykeyboard import InlineKeyboard, InlineButton


keyboard = InlineKeyboard()
keyboard.row(InlineButton('1', 'inline_keyboard:1'))
keyboard.row(
    InlineButton('2', 'inline_keyboard:2'),
    InlineButton('3', 'inline_keyboard:3')
)
keyboard.row(InlineButton('4', 'inline_keyboard:4'))
keyboard.row(
    InlineButton('5', 'inline_keyboard:5'),
    InlineButton('6', 'inline_keyboard:6')
)

Result

row_inline_button

Pagination inline keyboard

from pykeyboard import InlineKeyboard

Parameters:

  • count_pages (integer)
  • current_page (integer)
  • callback_pattern (string) - use of the {number} pattern is required

Pagination 3 pages

Code

from pykeyboard import InlineKeyboard

keyboard = InlineKeyboard()
keyboard.paginate(3, 3, 'pagination_keyboard:{number}')

Result

pagination_keyboard_3

Pagination 5 pages

Code

from pykeyboard import InlineKeyboard

keyboard = InlineKeyboard()
keyboard.paginate(5, 3, 'pagination_keyboard:{number}')

Result

pagination_keyboard_5

Pagination 9 pages

Code

from pykeyboard import InlineKeyboard

keyboard = InlineKeyboard()
keyboard.paginate(9, 5, 'pagination_keyboard:{number}')

Result

pagination_keyboard_9

Pagination 100 pages

Code

from pykeyboard import InlineKeyboard

keyboard = InlineKeyboard()
keyboard.paginate(100, 100, 'pagination_keyboard:{number}')

Result

pagination_keyboard_100

Pagination 150 pages and buttons

Code

from pykeyboard import InlineKeyboard, InlineButton

keyboard = InlineKeyboard()
keyboard.paginate(150, 123, 'pagination_keyboard:{number}')
keyboard.row(
    InlineButton('Back', 'pagination_keyboard:back'),
    InlineButton('Close', 'pagination_keyboard:close')
)

Result

pagination_keyboard_150

Languages inline keyboard

from pykeyboard import InlineKeyboard

Parameters:

  • callback_pattern (string) - use of the {locale} pattern is required
  • locales (string | list) - list of language codes
    • be_BY - Belarusian
    • de_DE - German
    • zh_CN - Chinese
    • en_US - English
    • fr_FR - French
    • id_ID - Indonesian
    • it_IT - Italian
    • ko_KR - Korean
    • tr_TR - Turkish
    • ru_RU - Russian
    • es_ES - Spanish
    • uk_UA - Ukrainian
    • uz_UZ - Uzbek
  • row_width (integer, default 2)

P.S. To add new languages, write to me in @PyMaster telegram.

Code

from pykeyboard import InlineKeyboard


keyboard = InlineKeyboard(row_width=3)
keyboard.languages(
    'languages:{locale}', ['en_US', 'ru_RU', 'id_ID'], 2
)

Result

languages_keyboard

Reply Keyboard

from pykeyboard import ReplyKeyboard

Parameters:

  • resize_keyboard (bool, optional)
  • one_time_keyboard (bool, optional)
  • selective (bool, optional)
  • row_width (integer, default 3)

Reply Keyboard add buttons

Code

from pykeyboard import ReplyKeyboard, ReplyButton


keyboard = ReplyKeyboard(row_width=3)
keyboard.add(
    ReplyButton('Reply button 1'),
    ReplyButton('Reply button 2'),
    ReplyButton('Reply button 3'),
    ReplyButton('Reply button 4'),
    ReplyButton('Reply button 5')
)

Result

add_reply_button

Reply Keyboard row buttons

Code

from pykeyboard import ReplyKeyboard, ReplyButton


keyboard = ReplyKeyboard()
keyboard.row(ReplyButton('Reply button 1'))
keyboard.row(
    ReplyButton('Reply button 2'),
    ReplyButton('Reply button 3')
)
keyboard.row(ReplyButton('Reply button 4'))
keyboard.row(ReplyButton('Reply button 5'))

Result

row_reply_button

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].