rogress :)
=head1 VERSION
version 0.03
=head1 KEY FEATURES
=over 6
=item 1. State machine in JSON file
Allows to create a simple bots for house even for housewife
=item 2. Support of dymanic sc
em 3. Independent and prev msg dependent screens
Screens can be shown just according sequence in JSON or can depends on previous user reply (callback_msg property)
=item 4. Data validation
Bot can
RSION = '0.03';
# ABSTRACT: Easy creation of keyboards for Telegram bots
use common::sense;
use JSON::MaybeXS;
use Encode qw(decode);
use Exporter qw(import);
our @EXPORT_OK = qw(create_one_time_ke
keyboard => \@keyboard,
one_time_keyboard => JSON::MaybeXS::JSON->true
);
my $json = JSON::MaybeXS->new(utf8 => 1);
return decode('UTF-8', $json->encode(\%rpl_markup));
}
sub create_inline_k
}
}
my %rpl_markup = (
inline_keyboard => \@keyboard
);
my $json = JSON::MaybeXS->new(utf8 => 1);
return decode('UTF-8', $json->encode(\%rpl_markup));
}
sub available_keys {
my $arr = shif
een for this callback
$msg = { chat_id => $chat_id, text => 'No screen found! Check your config.json'};
return $msg;
}
}
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
Telegram::BotKit::Wizar
reens;
$Telegram::BotKit::Screens::VERSION = '0.03';
# ABSTRACT: Implements navigation by screens JSON file. Used by Telegram::BotKit::Wizard
use common::sense;
use Data::Dumper;
sub new {
my $
# two or more child screens with same parent and without callback_msg specific
die "wrong json file";
}
}
} else {
return undef;
}
}
sub get_prev_screen_by_name {
my ($self, $scree
=pod
=encoding UTF-8
=head1 NAME
Telegram::BotKit::Screens - Implements navigation by screens JSON file. Used by Telegram::BotKit::Wizard
=head1 VERSION
version 0.03
=head1 SYNOPSIS
# $screen