Compare commits
4 Commits
3787bb3073
...
afe50154ab
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
afe50154ab | ||
|
|
252bb86eb8 | ||
|
|
2b06abdbf4 | ||
|
|
083ae88386 |
@@ -52,12 +52,12 @@ sub create_from_hash {
|
||||
my $obj = $class->new(_brain => $brain);
|
||||
|
||||
unless (defined $hash) {
|
||||
cluck "Hash is undef";
|
||||
cluck 'Hash is undef';
|
||||
return $obj;
|
||||
}
|
||||
|
||||
unless (ref ($hash) eq 'HASH') {
|
||||
cluck "Not a hash " . Dumper ($hash);
|
||||
cluck 'Not a hash ' . Dumper ($hash);
|
||||
return $obj;
|
||||
}
|
||||
|
||||
|
||||
48
lib/Teapot/Bot/Object/Dice.pm
Normal file
48
lib/Teapot/Bot/Object/Dice.pm
Normal file
@@ -0,0 +1,48 @@
|
||||
package Teapot::Bot::Object::Dice;
|
||||
# ABSTRACT: The base class for Telegram message 'Dice' type.
|
||||
|
||||
use Mojo::Base 'Teapot::Bot::Object::Base';
|
||||
|
||||
$Teapot::Bot::Object::Dice::VERSION = '0.022';
|
||||
|
||||
has 'emoji';
|
||||
has 'value';
|
||||
|
||||
sub fields {
|
||||
return { scalar => [qw/emoji value/] };
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__END__
|
||||
|
||||
=pod
|
||||
|
||||
=encoding UTF-8
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Teapot::Bot::Object::Dice - The base class for Telegram message 'Dice' type
|
||||
|
||||
=head1 VERSION
|
||||
|
||||
version 0.022
|
||||
|
||||
=head1 DESCRIPTION
|
||||
The base class for Telegram message 'Dice' type.
|
||||
|
||||
See L<https://core.telegram.org/bots/api#dice> for details of the
|
||||
attributes available for L<Teapot::Bot::Object::dice> objects.
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Sergei Fedosov <eleksir@gmail.com>
|
||||
|
||||
=head1 LICENSE AND COPYRIGHT
|
||||
|
||||
This software is copyright (c) 2019 by Sergei Fedosov <eleksir@gmail.com>.
|
||||
|
||||
This is free software; you can redistribute it and/or modify it under
|
||||
the same terms as the Perl 5 programming language system itself.
|
||||
|
||||
=cut
|
||||
@@ -27,6 +27,8 @@ use Teapot::Bot::Object::Venue;
|
||||
use Teapot::Bot::Object::SuccessfulPayment;
|
||||
use Teapot::Bot::Object::PassportData;
|
||||
use Teapot::Bot::Object::InlineKeyboardMarkup;
|
||||
use Teapot::Bot::Object::ProximityAlertTriggered;
|
||||
use Teapot::Bot::Object::Dice;
|
||||
|
||||
use Data::Dumper;
|
||||
use Carp qw(cluck);
|
||||
@@ -36,16 +38,15 @@ $Teapot::Bot::Object::Message::VERSION = '0.022';
|
||||
# basic message stuff
|
||||
has 'message_id';
|
||||
has 'from'; # User
|
||||
has 'sender_chat'; # Chat
|
||||
has 'date';
|
||||
has 'chat'; # Chat
|
||||
|
||||
has 'forward_from'; # User
|
||||
has 'forward_from_chat'; # Chat
|
||||
has 'forward_from_message_id';
|
||||
has 'forward_signature';
|
||||
has 'forward_sender_name';
|
||||
has 'forward_date';
|
||||
|
||||
has 'reply_to_message'; # Message
|
||||
has 'via_bot'; # User
|
||||
has 'edit_date';
|
||||
@@ -53,23 +54,22 @@ has 'media_group_id';
|
||||
has 'author_signature';
|
||||
has 'text';
|
||||
has 'entities'; # Array of MessageEntity
|
||||
|
||||
has 'caption_entities'; # Array of MessageEntity
|
||||
|
||||
has 'animation'; # Animation
|
||||
has 'audio'; # Audio
|
||||
has 'document'; # Document
|
||||
has 'animation'; # Animation
|
||||
has 'game'; # Game
|
||||
has 'photo'; # Array of PhotoSize
|
||||
has 'sticker'; # Sticker
|
||||
has 'video'; # Video
|
||||
has 'voice'; # Voice
|
||||
has 'video_note'; # VideoNote
|
||||
has 'voice'; # Voice
|
||||
has 'caption';
|
||||
has 'caption_entities'; # Array of MessageEntity
|
||||
has 'contact'; # Contact
|
||||
has 'location'; # Location
|
||||
has 'venue'; # Venue
|
||||
has 'dice';
|
||||
has 'game';
|
||||
has 'poll'; # Poll
|
||||
has 'venue'; # Venue
|
||||
has 'location'; # Location
|
||||
has 'new_chat_members'; # Array of User
|
||||
has 'left_chat_member'; # User
|
||||
has 'new_chat_title';
|
||||
@@ -85,6 +85,7 @@ has 'invoice'; # Invoice
|
||||
has 'successful_payment'; # SuccessfulPayment
|
||||
has 'connected_website';
|
||||
has 'passport_data'; # PassportData
|
||||
has 'proximity_alert_triggered';
|
||||
has 'reply_markup'; # Array of InlineKeyboardMarkup
|
||||
|
||||
sub fields {
|
||||
@@ -99,7 +100,7 @@ sub fields {
|
||||
migrate_from_chat_id connected_website/],
|
||||
'Teapot::Bot::Object::User' => [qw/from forward_from via_bot new_chat_members left_chat_member /],
|
||||
|
||||
'Teapot::Bot::Object::Chat' => [qw/chat forward_from_chat/],
|
||||
'Teapot::Bot::Object::Chat' => [qw/sender_chat chat forward_from_chat/],
|
||||
'Teapot::Bot::Object::Message' => [qw/reply_to_message pinned_message/],
|
||||
'Teapot::Bot::Object::MessageEntity' => [qw/entities caption_entities /],
|
||||
|
||||
@@ -123,7 +124,8 @@ sub fields {
|
||||
'Teapot::Bot::Object::SuccessfulPayment' => [qw/successful_payment/],
|
||||
'Teapot::Bot::Object::PassportData' => [qw/passport_data/],
|
||||
'Teapot::Bot::Object::InlineKeyboardMarkup' => [qw/reply_markup/],
|
||||
|
||||
'Teapot::Bot::Object::ProximityAlertTriggered' => [qw/proximity_alert_triggered/],
|
||||
'Teapot::Bot::Object::Dice' => [qw/dice/],
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
52
lib/Teapot/Bot/Object/ProximityAlertTriggered.pm
Normal file
52
lib/Teapot/Bot/Object/ProximityAlertTriggered.pm
Normal file
@@ -0,0 +1,52 @@
|
||||
package Teapot::Bot::Object::ProximityAlertTriggered;
|
||||
# ABSTRACT: The base class for Telegram message 'ProximityAlertTriggered' type.
|
||||
|
||||
use Mojo::Base 'Teapot::Bot::Object::Base';
|
||||
|
||||
$Teapot::Bot::Object::ProximityAlertTriggered::VERSION = '0.022';
|
||||
|
||||
has 'traveler'; # User
|
||||
has 'watcher'; # User
|
||||
has 'distance';
|
||||
|
||||
sub fields {
|
||||
return {
|
||||
'Teapot::Bot::Object::User' => [qw/traveler watcher/],
|
||||
'scalar' => [qw/distance/],
|
||||
};
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__END__
|
||||
|
||||
=pod
|
||||
|
||||
=encoding UTF-8
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Teapot::Bot::Object::ProximityAlertTriggered - The base class for Telegram message 'ProximityAlertTriggered' type
|
||||
|
||||
=head1 VERSION
|
||||
|
||||
version 0.022
|
||||
|
||||
=head1 DESCRIPTION
|
||||
The base class for Telegram message 'ProximityAlertTriggered' type.
|
||||
|
||||
See L<https://core.telegram.org/bots/api#proximityalerttriggered> for details of the
|
||||
attributes available for L<Teapot::Bot::Object::ProximityAlertTriggered> objects.
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Sergei Fedosov <eleksir@gmail.com>
|
||||
|
||||
=head1 LICENSE AND COPYRIGHT
|
||||
|
||||
This software is copyright (c) 2020 Sergei Fedosov <eleksir@gmail.com>.
|
||||
|
||||
This is free software; you can redistribute it and/or modify it under
|
||||
the same terms as the Perl 5 programming language system itself.
|
||||
|
||||
=cut
|
||||
Reference in New Issue
Block a user