mirror of
https://github.com/kirirururu/telebotxx.git
synced 2026-06-14 18:30:43 +00:00
397 lines
7.2 KiB
C++
397 lines
7.2 KiB
C++
#include <telebotxx/Message.hpp>
|
|
|
|
using namespace telebotxx;
|
|
|
|
MessageEntity::MessageEntity()
|
|
: type_(Type::Mention),
|
|
offset_(-1),
|
|
length_(0)
|
|
{
|
|
}
|
|
|
|
MessageEntity::MessageEntity(const MessageEntity&) = default;
|
|
MessageEntity::MessageEntity(MessageEntity&&) = default;
|
|
MessageEntity::~MessageEntity() = default;
|
|
|
|
MessageEntity::Type MessageEntity::getType() const
|
|
{
|
|
return type_;
|
|
}
|
|
|
|
void MessageEntity::setType(MessageEntity::Type type)
|
|
{
|
|
type_ = type;
|
|
}
|
|
|
|
int MessageEntity::getOffset() const
|
|
{
|
|
return offset_;
|
|
}
|
|
|
|
void MessageEntity::setOffset(int offset)
|
|
{
|
|
offset_ = offset;
|
|
}
|
|
|
|
size_t MessageEntity::getLength() const
|
|
{
|
|
return length_;
|
|
}
|
|
|
|
void MessageEntity::setLength(size_t length)
|
|
{
|
|
length_ = length;
|
|
}
|
|
|
|
const std::string& MessageEntity::getUrl() const
|
|
{
|
|
return url_;
|
|
}
|
|
|
|
void MessageEntity::setUrl(const std::string& url)
|
|
{
|
|
url_ = url;
|
|
}
|
|
|
|
const User& MessageEntity::getUser() const
|
|
{
|
|
return user_;
|
|
}
|
|
|
|
void MessageEntity::setUser(const User& user)
|
|
{
|
|
user_ = user;
|
|
}
|
|
|
|
void MessageEntity::swap(MessageEntity& other) noexcept
|
|
{
|
|
using std::swap;
|
|
swap(type_, other.type_);
|
|
swap(offset_, other.offset_);
|
|
swap(length_, other.length_);
|
|
swap(url_, other.url_);
|
|
swap(user_, other.user_);
|
|
}
|
|
|
|
const MessageEntity& MessageEntity::operator=(MessageEntity other)
|
|
{
|
|
swap(other);
|
|
return *this;
|
|
}
|
|
|
|
MessageEntity::Type telebotxx::messageEntityTypeFromString(const std::string& str)
|
|
{
|
|
if (str == "mention")
|
|
return MessageEntity::Type::Mention;
|
|
else if (str == "hashtag")
|
|
return MessageEntity::Type::Hashtag;
|
|
else if (str == "bot_command")
|
|
return MessageEntity::Type::BotCommand;
|
|
else if (str == "url")
|
|
return MessageEntity::Type::Url;
|
|
else if (str == "email")
|
|
return MessageEntity::Type::Email;
|
|
else if (str == "bold")
|
|
return MessageEntity::Type::Bold;
|
|
else if (str == "italic")
|
|
return MessageEntity::Type::Italic;
|
|
else if (str == "code")
|
|
return MessageEntity::Type::Code;
|
|
else if (str == "pre")
|
|
return MessageEntity::Type::Pre;
|
|
else if (str == "text_link")
|
|
return MessageEntity::Type::TextLink;
|
|
else if (str == "text_mention")
|
|
return MessageEntity::Type::TextMention;
|
|
else
|
|
throw std::invalid_argument("Unknown message entity type");
|
|
}
|
|
|
|
Message::Message()
|
|
: id_(-1)
|
|
{
|
|
}
|
|
|
|
Message::Message(const Message&) = default;
|
|
Message::Message(Message&&) = default;
|
|
Message::~Message() = default;
|
|
|
|
int Message::getId() const
|
|
{
|
|
return id_;
|
|
}
|
|
|
|
void Message::setId(int id)
|
|
{
|
|
id_ = id;
|
|
}
|
|
|
|
const UserPtr Message::getFrom() const
|
|
{
|
|
return from_;
|
|
}
|
|
|
|
void Message::setFrom(UserPtr from)
|
|
{
|
|
from_ = from;
|
|
}
|
|
|
|
time_t Message::getDate() const
|
|
{
|
|
return date_;
|
|
}
|
|
|
|
void Message::setDate(time_t date)
|
|
{
|
|
date_ = date;
|
|
}
|
|
|
|
const Chat& Message::getChat() const
|
|
{
|
|
return chat_;
|
|
}
|
|
|
|
void Message::setChat(const Chat& chat)
|
|
{
|
|
chat_ = chat;
|
|
}
|
|
|
|
const UserPtr Message::getForwardFrom() const
|
|
{
|
|
return forwardFrom_;
|
|
}
|
|
|
|
void Message::setForwardFrom(UserPtr forwardFrom)
|
|
{
|
|
forwardFrom_ = forwardFrom;
|
|
}
|
|
|
|
const ChatPtr Message::getForwardFromChat() const
|
|
{
|
|
return forwardFromChat_;
|
|
}
|
|
|
|
void Message::setForwardFromChat(ChatPtr forwardFromChat)
|
|
{
|
|
forwardFromChat_ = forwardFromChat;
|
|
}
|
|
|
|
time_t Message::getForwardDate() const
|
|
{
|
|
return forwardDate_;
|
|
}
|
|
|
|
void Message::setForwardDate(time_t forwardDate)
|
|
{
|
|
forwardDate_ = forwardDate;
|
|
}
|
|
|
|
const MessagePtr Message::getReplyToMessage() const
|
|
{
|
|
return replyToMessage_;
|
|
}
|
|
|
|
void Message::setReplyToMessage(MessagePtr replyToMessage)
|
|
{
|
|
replyToMessage_ = replyToMessage;
|
|
}
|
|
|
|
time_t Message::getEditDate() const
|
|
{
|
|
return editDate_;
|
|
}
|
|
|
|
void Message::setEditDate(time_t editDate)
|
|
{
|
|
editDate_ = editDate;
|
|
}
|
|
|
|
const std::string& Message::getText() const
|
|
{
|
|
return text_;
|
|
}
|
|
|
|
void Message::setText(const std::string& text)
|
|
{
|
|
text_ = text;
|
|
}
|
|
|
|
const MessageEntities& Message::getEntities() const
|
|
{
|
|
return entities_;
|
|
}
|
|
|
|
void Message::setEntities(MessageEntities&& entities)
|
|
{
|
|
entities_ = entities;
|
|
}
|
|
|
|
const AttachmentPtr Message::getAttachment() const
|
|
{
|
|
return attachment_;
|
|
}
|
|
|
|
void Message::setAttachment(AttachmentPtr attachment)
|
|
{
|
|
attachment_ = attachment;
|
|
}
|
|
|
|
const std::string& Message::getCaption() const
|
|
{
|
|
return caption_;
|
|
}
|
|
|
|
void Message::setCaption(const std::string& caption)
|
|
{
|
|
caption_ = caption;
|
|
}
|
|
|
|
const UserPtr Message::getNewChatMember() const
|
|
{
|
|
return newChatMember_;
|
|
}
|
|
|
|
void Message::setNewChatMember(UserPtr newChatMember)
|
|
{
|
|
newChatMember_ = newChatMember;
|
|
}
|
|
|
|
const UserPtr Message::getLeftChatMember() const
|
|
{
|
|
return leftChatMember_;
|
|
}
|
|
|
|
void Message::setLeftChatMember(UserPtr leftChatMember)
|
|
{
|
|
leftChatMember_ = leftChatMember;
|
|
}
|
|
|
|
const std::string& Message::getNewChatTitle() const
|
|
{
|
|
return newChatTitle_;
|
|
}
|
|
|
|
void Message::setNewChatTitle(const std::string& newChatTitle)
|
|
{
|
|
newChatTitle_ = newChatTitle;
|
|
}
|
|
|
|
const PhotoSizeArrayPtr Message::getNewChatPhoto() const
|
|
{
|
|
return newChatPhoto_;
|
|
}
|
|
|
|
void Message::setNewChatPhoto(PhotoSizeArrayPtr newChatPhoto)
|
|
{
|
|
newChatPhoto_ = newChatPhoto;
|
|
}
|
|
|
|
bool Message::isDeleteChatPhoto() const
|
|
{
|
|
return deleteChatPhoto_;
|
|
}
|
|
|
|
void Message::setDeleteChatPhoto(bool deleteChatPhoto)
|
|
{
|
|
deleteChatPhoto_ = deleteChatPhoto;
|
|
}
|
|
|
|
bool Message::isGroupChatCreated() const
|
|
{
|
|
return groupChatCreated_;
|
|
}
|
|
|
|
void Message::setGroupChatCreated(bool groupChatCreated)
|
|
{
|
|
groupChatCreated_ = groupChatCreated;
|
|
}
|
|
|
|
bool Message::isSuperGroupChatCreated() const
|
|
{
|
|
return superGroupChatCreated_;
|
|
}
|
|
|
|
void Message::setSuperGroupChatCreated(bool superGroupChatCreated)
|
|
{
|
|
superGroupChatCreated_ = superGroupChatCreated;
|
|
}
|
|
|
|
bool Message::isChannelChatCreated() const
|
|
{
|
|
return channelChatCreated_;
|
|
}
|
|
|
|
void Message::setChannelChatCreated(bool channelChatCreated)
|
|
{
|
|
channelChatCreated_ = channelChatCreated;
|
|
}
|
|
|
|
std::int64_t Message::getMigrateToChatId() const
|
|
{
|
|
return migrateToChatId_;
|
|
}
|
|
|
|
void Message::setMigrateToChatId(std::int64_t migrateToChatId)
|
|
{
|
|
migrateToChatId_ = migrateToChatId;
|
|
}
|
|
|
|
std::int64_t Message::getMigrateFromChatId() const
|
|
{
|
|
return migrateFromChatId_;
|
|
}
|
|
|
|
void Message::setMigrateFromChatId(std::int64_t migrateFromChatId)
|
|
{
|
|
migrateFromChatId_ = migrateFromChatId;
|
|
}
|
|
|
|
const MessagePtr Message::getPinnedMessage() const
|
|
{
|
|
return pinnedMessage_;
|
|
}
|
|
|
|
void Message::setPinnedMessage(MessagePtr pinnedMessage)
|
|
{
|
|
pinnedMessage_ = pinnedMessage;
|
|
}
|
|
|
|
void Message::swap(Message& other) noexcept
|
|
{
|
|
using std::swap;
|
|
swap(id_, other.id_);
|
|
swap(from_, other.from_);
|
|
swap(date_, other.date_);
|
|
swap(chat_, other.chat_);
|
|
swap(forwardFrom_, other.forwardFrom_);
|
|
swap(forwardFromChat_, other.forwardFromChat_);
|
|
swap(forwardDate_, other.forwardDate_);
|
|
swap(replyToMessage_, other.replyToMessage_);
|
|
swap(editDate_, other.editDate_);
|
|
swap(text_, other.text_);
|
|
swap(entities_, other.entities_);
|
|
swap(attachment_, other.attachment_);
|
|
swap(caption_, other.caption_);
|
|
swap(newChatMember_, other.newChatMember_);
|
|
swap(leftChatMember_, other.leftChatMember_);
|
|
swap(newChatTitle_, other.newChatTitle_);
|
|
swap(newChatPhoto_, other.newChatPhoto_);
|
|
swap(deleteChatPhoto_, other.deleteChatPhoto_);
|
|
swap(groupChatCreated_, other.groupChatCreated_);
|
|
swap(superGroupChatCreated_, other.superGroupChatCreated_);
|
|
swap(channelChatCreated_, other.channelChatCreated_);
|
|
swap(migrateToChatId_, other.migrateToChatId_);
|
|
swap(migrateFromChatId_, other.migrateFromChatId_);
|
|
swap(pinnedMessage_, other.pinnedMessage_);
|
|
}
|
|
|
|
const Message& Message::operator=(Message other) noexcept
|
|
{
|
|
swap(other);
|
|
return *this;
|
|
}
|
|
|
|
void telebotxx::swap(Message& lhs, Message& rhs)
|
|
{
|
|
lhs.swap(rhs);
|
|
}
|