Add type Reaction
This commit is contained in:
@@ -33,6 +33,7 @@ use Teapot::Bot::Object::User ();
|
||||
use Teapot::Bot::Object::Chat ();
|
||||
use Teapot::Bot::Object::ChatMember ();
|
||||
use Teapot::Bot::Object::ChatInviteLink ();
|
||||
use Teapot::Bot::Object::MessageReaction ();
|
||||
|
||||
$Teapot::Bot::Brain::VERSION = '0.026';
|
||||
|
||||
@@ -938,7 +939,7 @@ sub _process_message {
|
||||
$update = Teapot::Bot::Object::PollAnswer->create_from_hash($item->{poll_answer}, $self) if $item->{poll_answer};
|
||||
$update = Teapot::Bot::Object::ChatMemberUpdated->create_from_hash($item->{my_chat_member}, $self) if $item->{my_chat_member};
|
||||
$update = Teapot::Bot::Object::ChatMemberUpdated->create_from_hash($item->{chat_member}, $self) if $item->{chat_member};
|
||||
|
||||
$update = Teapot::Bot::Object::MessageReaction->create_from_hash($item->{message_reaction}, self) if $item->{message_reaction};
|
||||
# if we got to this point without creating a response, it must be a type we
|
||||
# don't handle yet
|
||||
if (! $update) {
|
||||
|
||||
61
lib/Teapot/Bot/Object/MessageReaction.pm
Normal file
61
lib/Teapot/Bot/Object/MessageReaction.pm
Normal file
@@ -0,0 +1,61 @@
|
||||
package Teapot::Bot::Object::MessageReaction;
|
||||
# ABSTRACT: The base class for Telegram message 'Reaction' type.
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use 5.018; ## no critic (ProhibitImplicitImport)
|
||||
use utf8;
|
||||
|
||||
use Mojo::Base 'Teapot::Bot::Object::Base';
|
||||
|
||||
$Teapot::Bot::Object::MessageReaction::VERSION = '0.026';
|
||||
|
||||
has 'type'; # Type of the reaction, always “emoji”
|
||||
has 'emoji'; # Reaction emoji. Currently, it can be one of "👍", "👎", "❤", "🔥", "🥰", "👏", "😁", "🤔",
|
||||
# "🤯", "😱", "🤬", "😢", "🎉", "🤩", "🤮", "💩", "🙏", "👌", "🕊", "🤡", "🥱", "🥴", "😍", "🐳", "❤🔥", "🌚", "🌭",
|
||||
# "💯", "🤣", "⚡", "🍌", "🏆", "💔", "🤨", "😐", "🍓", "🍾", "💋", "🖕", "😈", "😴", "😭", "🤓", "👻", "👨💻", "👀",
|
||||
# "🎃", "🙈", "😇", "😨", "🤝", "✍", "🤗", "🫡", "🎅", "🎄", "☃", "💅", "🤪", "🗿", "🆒", "💘", "🙉", "🦄", "😘",
|
||||
# "💊", "🙊", "😎", "👾", "🤷♂", "🤷", "🤷♀", "😡"
|
||||
has 'custom_emoji_id'; # Only for ReactionTypeCustomEmoji. Custom emoji identifier.
|
||||
has 'total_count'; # Only for ReactionCount. Number of times the reaction was added.
|
||||
|
||||
sub fields {
|
||||
return {
|
||||
'scalar' => [qw/type emoji custom_emoji_id total_count/],
|
||||
};
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__END__
|
||||
|
||||
=pod
|
||||
|
||||
=encoding utf8
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Teapot::Bot::Object::MessageReaction - The base class for Telegram message 'Reaction' type
|
||||
|
||||
=head1 VERSION
|
||||
|
||||
version 0.026
|
||||
|
||||
=head1 DESCRIPTION
|
||||
The base class for Telegram message 'Reaction' type.
|
||||
|
||||
See L<https://core.telegram.org/bots/api#reactiontype> for details of the
|
||||
attributes available for C<Teapot::Bot::Object::MessageReaction> objects.
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Sergei Fedosov <eleksir@gmail.com>
|
||||
|
||||
=head1 LICENSE AND COPYRIGHT
|
||||
|
||||
This software is copyright (c) 2025 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