messages

package
v0.0.0-...-7028a79 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 2, 2021 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CommonMessage

type CommonMessage interface {
	GetMsg() []byte
	GetMsgID() int
	GetSeqNo() int
}

CommonMessage это сообщение (зашифрованое либо открытое) которыми общаются между собой клиент и сервер

type EncryptedMessage

type EncryptedMessage struct {
	Msg         []byte
	MsgID       int64
	AuthKeyHash []byte

	Salt      int64
	SessionID int64
	SeqNo     int32
	MsgKey    []byte
}

func DeserializeEncryptedMessage

func DeserializeEncryptedMessage(data, authKey []byte) (*EncryptedMessage, error)

func (*EncryptedMessage) GetMsg

func (msg *EncryptedMessage) GetMsg() []byte

func (*EncryptedMessage) GetMsgID

func (msg *EncryptedMessage) GetMsgID() int

func (*EncryptedMessage) GetSeqNo

func (msg *EncryptedMessage) GetSeqNo() int

func (*EncryptedMessage) Serialize

func (msg *EncryptedMessage) Serialize(client MessageInformator, requireToAck bool) ([]byte, error)

type MessageInformator

type MessageInformator interface {
	GetSessionID() int64
	GetLastSeqNo() int32
	GetServerSalt() int64
	GetAuthKey() []byte
}

MessageInformator нужен что бы отдавать информацию о текущей сессии для сериализации сообщения по факту это *MTProto структура

type UnencryptedMessage

type UnencryptedMessage struct {
	Msg   []byte
	MsgID int64
}

func DeserializeUnencryptedMessage

func DeserializeUnencryptedMessage(data []byte) (*UnencryptedMessage, error)

func (*UnencryptedMessage) GetMsg

func (msg *UnencryptedMessage) GetMsg() []byte

func (*UnencryptedMessage) GetMsgID

func (msg *UnencryptedMessage) GetMsgID() int

func (*UnencryptedMessage) GetSeqNo

func (msg *UnencryptedMessage) GetSeqNo() int

func (*UnencryptedMessage) Serialize

func (msg *UnencryptedMessage) Serialize(client MessageInformator) ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL