--- title: danog/madelineproto description: PHP implementation of telegram's MTProto protocol. --- # `danog/madelineproto` PHP implementation of telegram's MTProto protocol. ## Interfaces * [\danog\MadelineProto\Stream\MTProtoBufferInterface: MTProto buffer interface, for reading transport MTProto header info.](danog/MadelineProto/Stream/MTProtoBufferInterface.md) ## Abstract classes * [\danog\MadelineProto\EventHandler: Event handler.](danog/MadelineProto/EventHandler.md) * [\danog\MadelineProto\FileCallbackInterface: File callback interface.](danog/MadelineProto/FileCallbackInterface.md) * [\danog\MadelineProto\Serialization: Manages serialization of the MadelineProto instance.](danog/MadelineProto/Serialization.md) * [\danog\MadelineProto\StrTools: Some tools.](danog/MadelineProto/StrTools.md) * [\danog\MadelineProto\Tools: Some tools.](danog/MadelineProto/Tools.md) * [\danog\MadelineProto\Db\DbArray: DB array interface.](danog/MadelineProto/Db/DbArray.md) * [\danog\MadelineProto\Db\DbPropertiesFactory: This factory class initializes the correct database backend for MadelineProto.](danog/MadelineProto/Db/DbPropertiesFactory.md) * [\danog\MadelineProto\Db\DriverArray: Array caching trait.](danog/MadelineProto/Db/DriverArray.md) * [\danog\MadelineProto\Db\SqlArray: Generic SQL database backend.](danog/MadelineProto/Db/SqlArray.md) * [\danog\MadelineProto\Ipc\ClientAbstract: IPC client.](danog/MadelineProto/Ipc/ClientAbstract.md) * [\danog\MadelineProto\MTProto\AuthKey: MTProto auth key.](danog/MadelineProto/MTProto/AuthKey.md) * [\danog\MadelineProto\MTProtoSession\MsgIdHandler: Manages message ids.](danog/MadelineProto/MTProtoSession/MsgIdHandler.md) * [\danog\MadelineProto\Settings\DatabaseAbstract: Base class for storage backends.](danog/MadelineProto/Settings/DatabaseAbstract.md) * [\danog\MadelineProto\Settings\Database\DatabaseAbstract: Base class for database backends.](danog/MadelineProto/Settings/Database/DatabaseAbstract.md) * [\danog\MadelineProto\Settings\Database\SqlAbstract: Generic db backend settings.](danog/MadelineProto/Settings/Database/SqlAbstract.md) * [\danog\MadelineProto\Stream\BufferInterface: Buffer interface.](danog/MadelineProto/Stream/BufferInterface.md) * [\danog\MadelineProto\Stream\BufferedProxyStreamInterface: Buffered proxy stream interface.](danog/MadelineProto/Stream/BufferedProxyStreamInterface.md) * [\danog\MadelineProto\Stream\BufferedStreamInterface: Buffered stream interface.](danog/MadelineProto/Stream/BufferedStreamInterface.md) * [\danog\MadelineProto\Stream\ProxyStreamInterface: Stream proxy interface.](danog/MadelineProto/Stream/ProxyStreamInterface.md) * [\danog\MadelineProto\Stream\RawProxyStreamInterface: Raw stream proxy interface.](danog/MadelineProto/Stream/RawProxyStreamInterface.md) * [\danog\MadelineProto\Stream\RawStreamInterface: Raw stream interface.](danog/MadelineProto/Stream/RawStreamInterface.md) * [\danog\MadelineProto\Stream\ReadBufferInterface: Read buffer interface.](danog/MadelineProto/Stream/ReadBufferInterface.md) * [\danog\MadelineProto\Stream\StreamInterface: Generic stream interface.](danog/MadelineProto/Stream/StreamInterface.md) * [\danog\MadelineProto\Stream\WriteBufferInterface: Write buffer interface.](danog/MadelineProto/Stream/WriteBufferInterface.md) * [\danog\MadelineProto\TL\TLCallback: Interface for managing TL serialization callbacks.](danog/MadelineProto/TL/TLCallback.md) * [\danog\MadelineProto\TL\Conversion\Extension: Manages generation of extensions for files.](danog/MadelineProto/TL/Conversion/Extension.md) ## Classes * [\danog\MadelineProto\API: Main API wrapper for MadelineProto.](danog/MadelineProto/API.md) * [\danog\MadelineProto\Connection: Connection class.](danog/MadelineProto/Connection.md) * [\danog\MadelineProto\Coroutine: Creates a promise from a generator function yielding promises.](danog/MadelineProto/Coroutine.md) * [\danog\MadelineProto\DataCenter: Manages datacenters.](danog/MadelineProto/DataCenter.md) * [\danog\MadelineProto\DataCenterConnection: Datacenter connection.](danog/MadelineProto/DataCenterConnection.md) * [\danog\MadelineProto\Exception: Basic exception.](danog/MadelineProto/Exception.md) * [\danog\MadelineProto\API: Main API wrapper for MadelineProto.](danog/MadelineProto/API.md) * [\danog\MadelineProto\FileCallback: File callback interface.](danog/MadelineProto/FileCallback.md) * [\danog\MadelineProto\Logger: Logger class.](danog/MadelineProto/Logger.md) * [\danog\MadelineProto\Lua: Lua interface.](danog/MadelineProto/Lua.md) * [\danog\MadelineProto\MyTelegramOrgWrapper: Wrapper for my.telegram.org.](danog/MadelineProto/MyTelegramOrgWrapper.md) * [\danog\MadelineProto\PTSException: Internal error indicating a problem with Telegram's servers.](danog/MadelineProto/PTSException.md) * [\danog\MadelineProto\PsrLogger: PSR-3 wrapper for MadelineProto's Logger.](danog/MadelineProto/PsrLogger.md) * [\danog\MadelineProto\RPCErrorException: Indicates an error returned by Telegram's API.](danog/MadelineProto/RPCErrorException.md) * [\danog\MadelineProto\RSA: RSA class.](danog/MadelineProto/RSA.md) * [\danog\MadelineProto\ResponseException: Indicates an error thrown when an unexpected response is received from telegram's servers.](danog/MadelineProto/ResponseException.md) * [\danog\MadelineProto\SecurityException: Indicates a security error.](danog/MadelineProto/SecurityException.md) * [\danog\MadelineProto\SessionPaths: Session path information.](danog/MadelineProto/SessionPaths.md) * [\danog\MadelineProto\Settings: Settings class used for configuring MadelineProto.](danog/MadelineProto/Settings.md) * [\danog\MadelineProto\Shutdown: Class that controls script shutdown.](danog/MadelineProto/Shutdown.md) * [\danog\MadelineProto\Snitch: Snitch.](danog/MadelineProto/Snitch.md) * [\danog\MadelineProto\VoIPServerConfig: Manages storage of VoIP server config.](danog/MadelineProto/VoIPServerConfig.md) * [\danog\MadelineProto\Async\AsyncConstruct: Async constructor class.](danog/MadelineProto/Async/AsyncConstruct.md) * [\danog\MadelineProto\Db\MemoryArray: Memory database backend.](danog/MadelineProto/Db/MemoryArray.md) * [\danog\MadelineProto\Db\MysqlArray: MySQL database backend.](danog/MadelineProto/Db/MysqlArray.md) * [\danog\MadelineProto\Db\PostgresArray: Postgres database backend.](danog/MadelineProto/Db/PostgresArray.md) * [\danog\MadelineProto\Db\RedisArray: Redis database backend.](danog/MadelineProto/Db/RedisArray.md) * [\danog\MadelineProto\Files\Server: MadelineProto fileserver.](danog/MadelineProto/Files/Server.md) * [\danog\MadelineProto\Ipc\Client: IPC client.](danog/MadelineProto/Ipc/Client.md) * [\danog\MadelineProto\Ipc\IpcState: IPC state class.](danog/MadelineProto/Ipc/IpcState.md) * [\danog\MadelineProto\Ipc\Server: IPC server.](danog/MadelineProto/Ipc/Server.md) * [\danog\MadelineProto\Ipc\ServerCallback: IPC callback server.](danog/MadelineProto/Ipc/ServerCallback.md) * [\danog\MadelineProto\Ipc\Wrapper: Callback payload wrapper.](danog/MadelineProto/Ipc/Wrapper.md) * [\danog\MadelineProto\Ipc\Wrapper\Obj: Generic callback wrapper object.](danog/MadelineProto/Ipc/Wrapper/Obj.md) * [\danog\MadelineProto\Loop\Connection\CheckLoop: RPC call status check loop.](danog/MadelineProto/Loop/Connection/CheckLoop.md) * [\danog\MadelineProto\Loop\Connection\HttpWaitLoop: HttpWait loop.](danog/MadelineProto/Loop/Connection/HttpWaitLoop.md) * [\danog\MadelineProto\Loop\Connection\PingLoop: Ping loop.](danog/MadelineProto/Loop/Connection/PingLoop.md) * [\danog\MadelineProto\Loop\Connection\ReadLoop: Socket read loop.](danog/MadelineProto/Loop/Connection/ReadLoop.md) * [\danog\MadelineProto\Loop\Connection\WriteLoop: Socket write loop.](danog/MadelineProto/Loop/Connection/WriteLoop.md) * [\danog\MadelineProto\Loop\Update\FeedLoop: Update feed loop.](danog/MadelineProto/Loop/Update/FeedLoop.md) * [\danog\MadelineProto\Loop\Update\SeqLoop: update feed loop.](danog/MadelineProto/Loop/Update/SeqLoop.md) * [\danog\MadelineProto\Loop\Update\UpdateLoop: Update loop.](danog/MadelineProto/Loop/Update/UpdateLoop.md) * [\danog\MadelineProto\MTProto\PermAuthKey: MTProto permanent auth key.](danog/MadelineProto/MTProto/PermAuthKey.md) * [\danog\MadelineProto\MTProto\TempAuthKey: MTProto temporary auth key.](danog/MadelineProto/MTProto/TempAuthKey.md) * [\danog\MadelineProto\MTProtoSession\MsgIdHandler\MsgIdHandler32: Manages message ids.](danog/MadelineProto/MTProtoSession/MsgIdHandler/MsgIdHandler32.md) * [\danog\MadelineProto\MTProtoSession\MsgIdHandler\MsgIdHandler64: Manages message ids.](danog/MadelineProto/MTProtoSession/MsgIdHandler/MsgIdHandler64.md) * [\danog\MadelineProto\MTProtoTools\MinDatabase: Manages min peers.](danog/MadelineProto/MTProtoTools/MinDatabase.md) * [\danog\MadelineProto\MTProtoTools\PasswordCalculator: Manages SRP password calculation.](danog/MadelineProto/MTProtoTools/PasswordCalculator.md) * [\danog\MadelineProto\MTProtoTools\ReferenceDatabase: Manages upload and download of files.](danog/MadelineProto/MTProtoTools/ReferenceDatabase.md) * [\danog\MadelineProto\MTProtoTools\ResponseInfo: Obtain response information for file to server.](danog/MadelineProto/MTProtoTools/ResponseInfo.md) * [\danog\MadelineProto\MTProtoTools\UpdatesState: Stores the state of updates.](danog/MadelineProto/MTProtoTools/UpdatesState.md) * [\danog\MadelineProto\Settings\AppInfo: App information.](danog/MadelineProto/Settings/AppInfo.md) * [\danog\MadelineProto\Settings\Auth: Cryptography settings.](danog/MadelineProto/Settings/Auth.md) * [\danog\MadelineProto\Settings\Connection: Connection settings.](danog/MadelineProto/Settings/Connection.md) * [\danog\MadelineProto\Settings\Files: File management settings.](danog/MadelineProto/Settings/Files.md) * [\danog\MadelineProto\Settings\Ipc: IPC server settings.](danog/MadelineProto/Settings/Ipc.md) * [\danog\MadelineProto\Settings\Logger: Logger settings.](danog/MadelineProto/Settings/Logger.md) * [\danog\MadelineProto\Settings\Peer: Peer database settings.](danog/MadelineProto/Settings/Peer.md) * [\danog\MadelineProto\Settings\Pwr: PWRTelegram settings.](danog/MadelineProto/Settings/Pwr.md) * [\danog\MadelineProto\Settings\RPC: RPC settings.](danog/MadelineProto/Settings/RPC.md) * [\danog\MadelineProto\Settings\SecretChats: Secret chat settings.](danog/MadelineProto/Settings/SecretChats.md) * [\danog\MadelineProto\Settings\Serialization: Serialization settings.](danog/MadelineProto/Settings/Serialization.md) * [\danog\MadelineProto\Settings\TLSchema: TL schema settings.](danog/MadelineProto/Settings/TLSchema.md) * [\danog\MadelineProto\Settings\Templates: Web and CLI template settings for login.](danog/MadelineProto/Settings/Templates.md) * [\danog\MadelineProto\Settings\Database\Memory: Memory backend settings.](danog/MadelineProto/Settings/Database/Memory.md) * [\danog\MadelineProto\Settings\Database\Mysql: MySQL backend settings.](danog/MadelineProto/Settings/Database/Mysql.md) * [\danog\MadelineProto\Settings\Database\Postgres: Postgres backend settings.](danog/MadelineProto/Settings/Database/Postgres.md) * [\danog\MadelineProto\Settings\Database\Redis: Redis backend settings.](danog/MadelineProto/Settings/Database/Redis.md) * [\danog\MadelineProto\Stream\ConnectionContext: Connection context class.](danog/MadelineProto/Stream/ConnectionContext.md) * [\danog\MadelineProto\Stream\ADNLTransport\ADNLStream: ADNL stream wrapper.](danog/MadelineProto/Stream/ADNLTransport/ADNLStream.md) * [\danog\MadelineProto\Stream\Common\BufferedRawStream: Buffered raw stream.](danog/MadelineProto/Stream/Common/BufferedRawStream.md) * [\danog\MadelineProto\Stream\Common\CtrStream: AES CTR stream wrapper.](danog/MadelineProto/Stream/Common/CtrStream.md) * [\danog\MadelineProto\Stream\Common\HashedBufferedStream: Hash stream wrapper.](danog/MadelineProto/Stream/Common/HashedBufferedStream.md) * [\danog\MadelineProto\Stream\Common\SimpleBufferedRawStream: Buffered raw stream.](danog/MadelineProto/Stream/Common/SimpleBufferedRawStream.md) * [\danog\MadelineProto\Stream\Common\UdpBufferedStream: UDP stream wrapper.](danog/MadelineProto/Stream/Common/UdpBufferedStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\AbridgedStream: Abridged stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/AbridgedStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\FullStream: TCP full stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/FullStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\HttpStream: HTTP stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/HttpStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\HttpsStream: HTTPS stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/HttpsStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\IntermediatePaddedStream: TCP Intermediate stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/IntermediatePaddedStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\IntermediateStream: TCP Intermediate stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/IntermediateStream.md) * [\danog\MadelineProto\Stream\MTProtoTransport\ObfuscatedStream: Obfuscated2 stream wrapper.](danog/MadelineProto/Stream/MTProtoTransport/ObfuscatedStream.md) * [\danog\MadelineProto\Stream\Proxy\HttpProxy: HTTP proxy stream wrapper.](danog/MadelineProto/Stream/Proxy/HttpProxy.md) * [\danog\MadelineProto\Stream\Proxy\SocksProxy: Socks5 stream wrapper.](danog/MadelineProto/Stream/Proxy/SocksProxy.md) * [\danog\MadelineProto\Stream\Transport\DefaultStream: Default stream wrapper.](danog/MadelineProto/Stream/Transport/DefaultStream.md) * [\danog\MadelineProto\Stream\Transport\PremadeStream: Premade stream wrapper.](danog/MadelineProto/Stream/Transport/PremadeStream.md) * [\danog\MadelineProto\Stream\Transport\WsStream: Websocket stream wrapper.](danog/MadelineProto/Stream/Transport/WsStream.md) * [\danog\MadelineProto\Stream\Transport\WssStream: Websocket TLS stream wrapper.](danog/MadelineProto/Stream/Transport/WssStream.md) * [\danog\MadelineProto\TL\Exception: TL deserialization exception.](danog/MadelineProto/TL/Exception.md) * [\danog\MadelineProto\TL\TL: TL serialization.](danog/MadelineProto/TL/TL.md) * [\danog\MadelineProto\TL\Conversion\Exception: TL conversion exception.](danog/MadelineProto/TL/Conversion/Exception.md) * [\danog\MadelineProto\TL\Types\Button: Clickable button.](danog/MadelineProto/TL/Types/Button.md) * [\danog\MadelineProto\TL\Types\Bytes: Bytes wrapper.](danog/MadelineProto/TL/Types/Bytes.md) * [\danog\MadelineProto\TON\API: TON API.](danog/MadelineProto/TON/API.md) * [\danog\MadelineProto\TON\Lite: TON API.](danog/MadelineProto/TON/Lite.md) ## Traits * [\danog\MadelineProto\ApiWrappers\Start: Manages simple logging in and out.](danog/MadelineProto/ApiWrappers/Start.md) * [\danog\MadelineProto\Db\ArrayCacheTrait: Array caching trait.](danog/MadelineProto/Db/ArrayCacheTrait.md) * [\danog\MadelineProto\Db\DbPropertiesTrait: Include this trait and call DbPropertiesTrait::initDb to use MadelineProto's database backend for properties.](danog/MadelineProto/Db/DbPropertiesTrait.md) * [\danog\MadelineProto\Loop\APILoop: API loop trait.](danog/MadelineProto/Loop/APILoop.md) * [\danog\MadelineProto\Loop\Connection\Common: RPC call status check loop.](danog/MadelineProto/Loop/Connection/Common.md) * [\danog\MadelineProto\MTProtoSession\AckHandler: Manages acknowledgement of messages.](danog/MadelineProto/MTProtoSession/AckHandler.md) * [\danog\MadelineProto\MTProtoSession\CallHandler: Manages method and object calls.](danog/MadelineProto/MTProtoSession/CallHandler.md) * [\danog\MadelineProto\MTProtoSession\Reliable: Manages responses.](danog/MadelineProto/MTProtoSession/Reliable.md) * [\danog\MadelineProto\MTProtoSession\ResponseHandler: Manages responses.](danog/MadelineProto/MTProtoSession/ResponseHandler.md) * [\danog\MadelineProto\MTProtoSession\SeqNoHandler: Manages sequence number.](danog/MadelineProto/MTProtoSession/SeqNoHandler.md) * [\danog\MadelineProto\MTProtoSession\Session: Manages MTProto session-specific data.](danog/MadelineProto/MTProtoSession/Session.md) * [\danog\MadelineProto\MTProtoTools\AuthKeyHandler: Manages the creation of the authorization key.](danog/MadelineProto/MTProtoTools/AuthKeyHandler.md) * [\danog\MadelineProto\MTProtoTools\CallHandler: Manages method and object calls.](danog/MadelineProto/MTProtoTools/CallHandler.md) * [\danog\MadelineProto\MTProtoTools\Files: Manages upload and download of files.](danog/MadelineProto/MTProtoTools/Files.md) * [\danog\MadelineProto\MTProtoTools\PeerHandler: Manages peers.](danog/MadelineProto/MTProtoTools/PeerHandler.md) * [\danog\MadelineProto\MTProtoTools\UpdateHandler: Manages updates.](danog/MadelineProto/MTProtoTools/UpdateHandler.md) * [\danog\MadelineProto\SecretChats\AuthKeyHandler: Manages secret chats.](danog/MadelineProto/SecretChats/AuthKeyHandler.md) * [\danog\MadelineProto\SecretChats\MessageHandler: Manages packing and unpacking of messages, and the list of sent and received messages.](danog/MadelineProto/SecretChats/MessageHandler.md) * [\danog\MadelineProto\SecretChats\ResponseHandler: Manages responses.](danog/MadelineProto/SecretChats/ResponseHandler.md) * [\danog\MadelineProto\SecretChats\SeqNoHandler: Manages sequence numbers.](danog/MadelineProto/SecretChats/SeqNoHandler.md) * [\danog\MadelineProto\Stream\Async\Buffer: Buffer helper trait.](danog/MadelineProto/Stream/Async/Buffer.md) * [\danog\MadelineProto\Stream\Async\BufferedStream: Buffered stream helper trait.](danog/MadelineProto/Stream/Async/BufferedStream.md) * [\danog\MadelineProto\Stream\Async\RawStream: Raw stream helper trait.](danog/MadelineProto/Stream/Async/RawStream.md) * [\danog\MadelineProto\TL\PrettyException: Handle async stack traces.](danog/MadelineProto/TL/PrettyException.md) * [\danog\MadelineProto\VoIP\AuthKeyHandler: Manages the creation of the authorization key.](danog/MadelineProto/VoIP/AuthKeyHandler.md) * [\danog\MadelineProto\Wrappers\Callback: Manages logging in and out.](danog/MadelineProto/Wrappers/Callback.md) * [\danog\MadelineProto\Wrappers\DialogHandler: Dialog handler.](danog/MadelineProto/Wrappers/DialogHandler.md) * [\danog\MadelineProto\Wrappers\Events: Event handler.](danog/MadelineProto/Wrappers/Events.md) * [\danog\MadelineProto\Wrappers\Login: Manages logging in and out.](danog/MadelineProto/Wrappers/Login.md) * [\danog\MadelineProto\Wrappers\Loop: Manages logging in and out.](danog/MadelineProto/Wrappers/Loop.md) * [\danog\MadelineProto\Wrappers\Start: Manages simple logging in and out.](danog/MadelineProto/Wrappers/Start.md) * [\danog\MadelineProto\Wrappers\TOS: Manages terms of service.](danog/MadelineProto/Wrappers/TOS.md) * [\danog\MadelineProto\Wrappers\Webhook: Manages logging in and out.](danog/MadelineProto/Wrappers/Webhook.md) --- Generated by [danog/phpdoc](https://phpdoc.daniil.it).