@tgsnake/skema
    Preparing search index...

    Class SecretChatMessageService

    Represents a decrypted service command message within a secret chat.

    Used for background negotiation signals such as typing notifications, read receipt confirmations, self-destruct changes, or encryption key exchanges.

    const serviceMessage = new SecretChatMessageService({
    randomId: 1234567890123456789n,
    chatId: 42,
    date: 1680000000,
    message: decryptedMessageService8Instance
    });

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _slots: string[]

    The internal slot list storing serialization field property names.

    chatId: number

    The unique secret chat identifier.

    className: string

    The canonical string name of this class representation.

    classType: string

    The underlying classification type (e.g. request, constructor, function).

    cls: any = ...

    A dynamic reference to the current subclass constructor. Enables late static binding for instance methods to access static helper operations.

    constructorId: number

    The unique 32-bit integer identifier (CRC32 checksum) of this TL constructor.

    date: number

    The Unix timestamp indicating when the message was sent.

    The decrypted inner service message payload.

    randomId: bigint

    A unique 64-bit identifier chosen by the client to prevent replay attacks.

    subclassOfId: number

    The unique 32-bit integer identifier of the parent/abstract type this TL subclass represents.

    Methods

    • Deserializes a binary stream into this specific TLObject instance.

      Parameters

      • data: BytesIO

        The BytesIO buffer stream containing the serialized TLObject.

      • ...args: any[]

        Additional arguments passed down to the read parser.

      Returns Promise<any>

      A promise resolving to the parsed instance.

    • Serializes the TLObject instance to a clean JSON-compatible representation.

      Returns { [key: string]: any }

      A plain object containing class attributes and values.

      Correctly stringifies extremely large fields (e.g. bigints) that are normally not serializable in standard JSON.stringify calls.

    • Formats the TLObject into a structured string.

      Returns string

      A string starting with the constructor name followed by a pretty JSON payload.

    • Serializes the current class instance into a raw binary buffer.

      Parameters

      • ...args: any[]

        Arguments passed down to the writer.

      Returns Buffer

      A Buffer containing the serialized representation of this object.

    • Reads and deserializes a generic TLObject from a binary stream.

      Parameters

      • data: BytesIO

        The BytesIO buffer stream containing the serialized TLObject.

      • ...args: any[]

        Additional arguments passed down to the resolved subclass's static read implementation.

      Returns Promise<any>

      A promise resolving to the parsed class instance.

      This method first reads the leading 32-bit little-endian integer from the stream, which is treated as the unique constructorId (or Class ID). It resolves the constructor class dynamically from the global TL object map (AllTLObject) and delegates parsing to the subclass's static read method.

    • Serializes constructor arguments into a raw binary buffer.

      Parameters

      • ..._args: any[]

        Arguments to be serialized.

      Returns Buffer

      An empty Buffer of size 0.

      This base implementation acts as an abstract stub returning an empty Buffer. Subclasses override this static method to handle specific binary serialization layouts.