Neutral types API

Platform-neutral types exposed by peyk.

class peyk.types.CallbackQuery(id: str | None = None, from_user_id: Identifier | None = None, chat_id: Identifier | None = None, message_id: Identifier | None = None, inline_message_id: str | None = None, data: str | None = None, raw: object = None, from_user: User | None = None, message: Message | None = None, bot: 'Bot' | None = None)[source]

Bases: IncomingCallbackQuery, _BoundActions

Normalized callback event with message actions when a message exists.

async answer(text: str | None = None, show_alert: bool = False) bool[source]

Answer this callback, degrading cosmetic toast/alert differences by policy.

bot: 'Bot' | None = None
from_user: User | None = None
message: Message | None = None
class peyk.types.Chat(id: int | str, type: ChatType, title: str | None = None, username: str | None = None, language_code: str | None = None, raw: object = None)[source]

Bases: object

Platform-neutral chat identity and display metadata.

language_code: str | None = None
raw: object = None
title: str | None = None
username: str | None = None
id: int | str
type: ChatType
class peyk.types.ChatMember(status: str, user: User | None = None, raw: object = None)[source]

Bases: object

Platform-neutral chat membership status.

raw: object = None
user: User | None = None
status: str
class peyk.types.ChatType(*values)[source]

Bases: str, Enum

ChatType defines a public API type for peyk.

PRIVATE = 'private'
GROUP = 'group'
CHANNEL = 'channel'
UNKNOWN = 'unknown'
class peyk.types.ContentType(*values)[source]

Bases: str, Enum

ContentType defines a public API type for peyk.

TEXT = 'text'
PHOTO = 'photo'
VIDEO = 'video'
AUDIO = 'audio'
VOICE = 'voice'
DOCUMENT = 'document'
STICKER = 'sticker'
ANIMATION = 'animation'
CONTACT = 'contact'
LOCATION = 'location'
POLL = 'poll'
VENUE = 'venue'
NEW_CHAT_MEMBERS = 'new_chat_members'
LEFT_CHAT_MEMBER = 'left_chat_member'
SUCCESSFUL_PAYMENT = 'successful_payment'
UNKNOWN = 'unknown'
class peyk.types.File(id: str, path: str | None = None, name: str | None = None, size: int | None = None, raw: object = None)[source]

Bases: object

Platform-neutral file descriptor returned by Bot.get_file.

name: str | None = None
path: str | None = None
raw: object = None
size: int | None = None
id: str
class peyk.types.Message(message_id: Identifier | None = None, chat_id: Identifier | None = None, chat_type: str | None = None, sender_id: Identifier | None = None, text: str | None = None, date: int | None = None, is_edited: bool = False, update_kind: str = 'message', reply_to_message_id: Identifier | None = None, media: object = None, new_chat_members: list[Identifier] | None = None, left_chat_member: Identifier | None = None, successful_payment: object = None, raw: object = None, from_user: User | None = None, chat: Chat | None = None, content_type: ContentType = ContentType.UNKNOWN, bot: 'Bot' | None = None)[source]

Bases: IncomingMessage, _BoundActions

Normalized message with a bound peyk.Bot action surface.

async answer(text: TextContent, **kwargs: object) Message[source]

Send a text message to this message’s chat.

async answer_audio(audio: object, *, caption: TextContent | None = None, **kwargs: object) Message[source]

Send audio in this message’s chat.

async answer_chat_action(action: str) bool[source]

Send a chat action to this message’s chat.

async answer_document(document: object, *, caption: TextContent | None = None, **kwargs: object) Message[source]

Send a document in this message’s chat.

async answer_photo(photo: object, *, caption: TextContent | None = None, **kwargs: object) Message[source]

Send a photo in this message’s chat.

async answer_video(video: object, *, caption: TextContent | None = None, **kwargs: object) Message[source]

Send a video in this message’s chat.

async answer_voice(voice: object, *, caption: TextContent | None = None, **kwargs: object) Message[source]

Send a voice message in this message’s chat.

bot: 'Bot' | None = None
chat: Chat | None = None
content_type: ContentType = 'unknown'
async delete() bool[source]

Delete this message.

async edit_text(text: TextContent, **kwargs: object) Message[source]

Edit this message’s text.

async forward(chat_id: int | str) Message[source]

Forward this message to chat_id.

from_user: User | None = None
async reply(text: TextContent, **kwargs: object) Message[source]

Alias for answer().

class peyk.types.User(id: int | str, is_bot: bool, first_name: str, last_name: str | None = None, username: str | None = None, language_code: str | None = None, raw: object = None)[source]

Bases: object

Platform-neutral user identity.

language_code: str | None = None
last_name: str | None = None
raw: object = None
username: str | None = None
id: int | str
is_bot: bool
first_name: str