PHP code example of reymon / easy-keyboard

1. Go to this page and download the library: Download reymon/easy-keyboard library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

reymon / easy-keyboard example snippets


$this->sendMessage(
    peer   : 12345,
    message: 'Keyboard Example',
    replyMarkup:  KeyboardMarkup::new()
        ->singleUse()
        ->addButton(KeyboardButton::Text('Cancel'))
        ->addButton(KeyboardButton::Text('OK'))
);

KeyboardMarkup::new()
    ->placeholder('Placeholder');

KeyboardButton::Phone('Send my Contact');

InlineButton::Url('hello','https://example.com');

KeyboardMarkup::new()
    ->row(
        KeyboardButton::Text('Cancel'),
        KeyboardButton::Text('OK')
    );

KeyboardInline::new()
    ->row(
        InlineButton::Callback('1','page-1'),
        InlineButton::Callback('2','page-2'),
        InlineButton::Callback('3','page-3')
    )
    ->row(
        InlineButton::Callback('prev','page-prev'),
        InlineButton::Callback('next','page-next')
    );

KeyboardInline::new()
    ->addCallbacks([
        '1' => 'page-1',
        '2' => 'page-2',
        '3' => 'page-3',
    ],[
        'prev' => 'page-prev',
        'next' => 'page-next'
    ]);

KeyboardMarkup::new()
    ->addTexts([
       'Cancel',
       'Ok'
    ]);

KeyboardMarkup::new()
    ->addButton(KeyboardButton::Text('First Button'))
    ->addButton(KeyboardButton::Text('Second Button'));

KeyboardInline::new()
    ->addButton(
        InlineButton::Callback('A','answer-a'),
        InlineButton::Callback('B','answer-b')
    )
    ->row()
    ->addButton(
        InlineButton::Callback('C','answer-c'),
        InlineButton::Callback('D','answer-d')
    );

KeyboardInline::new()
    ->addButton(InlineButton::Callback('A','answer-a'))
    ->addButton(InlineButton::Callback('B','answer-b'))
    ->row()
    ->addButton(InlineButton::Callback('C','answer-c'))
    ->addButton(InlineButton::Callback('D','answer-d'))
    ->remove();

$keyboard = KeyboardInline::new()
    ->addButton(InlineButton::Callback('Numbers','Numbers'))
    ->addButton(InlineButton::Callback('Status','Status'))
    ->row()
    ->addButton(InlineButton::Callback('Add','Add'))
    ->addButton(InlineButton::Callback('Remove','Remove'));

$keyboard->addToCoordinates(0,1,InlineButton::Callback('Middle','Middle'));

$keyboard->replaceIntoCoordinates(1,0,InlineButton::Callback('Replaced Add','Add'));

$keyboard->removeFromCoordinates(1,0);

KeyboardInline::new()
    ->Stack(
        InlineButton::Login('Login','https://example.com/login'),
        InlineButton::Url('Visit Homepage','https://example.com')
    );

#[FilterAnd(new FilterPrivate)]
public function handleExit(Message $message) {
    $message->reply('Thank you',
        replyMarkup : KeyboardHide::new()
    );
}


$data['reply_markup'] = KeyboardForceReply::new()
    ->addButton(KeyboardButton::Text('Hello please reply'))
    ->placeholder('must reply');

KeyboardMarkup::new()
    ->addButton(KeyboardButton::PeerUsers('Request for user', 0, bot: false));

KeyboardMarkup::new()
    ->addButton(KeyboardButton::PeerGroup('Request for chat', 1));

KeyboardMarkup::new()
    ->addButton(KeyboardButton::PeerChannel('Request for channel', 2));

KeyboardMarkup::new()
    ->requestUsers('Request for user', 0);

KeyboardMarkup::new()
    ->RequestGroup('Request for chat', 1);

KeyboardMarkup::new()
    ->requestChannel('Request for broadcast', 2);

$easyKeyboard = Keyboard::tryFrom($replyMarkup);

$easyKeyboard->addButton(InlineButton::Callback('End','End'));

#[FilterAnd(new FilterPrivate, new FilterIncoming)]
public function modify(Message $message) {
    $message->reply('That is new keyboard',
        replyMarkup : $easyKeyboard
    );
}