thisismzm/tdlib-php-ffi

通过FFI扩展实现的Telegram的TDLib的PHP版本

v1.0.0 2022-06-05 12:27 UTC

This package is auto-updated.

Last update: 2024-09-05 21:15:15 UTC


README

通过FFI扩展实现的Telegram的TDLib的PHP版本

文档

创建实例

/**
* @param string|null $tdlibFilePath A file path/name to `libtdjson.so` library
*/
public function __construct(string $tdlibFilePath)

创建客户端ID

返回一个新TDLib实例的不可见标识符。TDLib实例将在发送第一个请求之前不会发送更新。

/**
 * @return int an opaque identifier of a new TDLib instance
 */
public function createClientId(): int

发送请求

向TDLib客户端发送请求。可以从任何线程中调用。

/**
 * @param int $clientId TDLib client id
 * @param string $request $request JSON-serialized request to TDLib.
 * 
 * @return void
 */
public function send(int $clientId, string $request): void

接收响应和更新

接收传入的更新和请求响应。不得从两个不同的线程同时调用。

/**
 * @param int $timeout The maximum number of seconds allowed for this function to wait for new data
 * 
 * @return string|null incoming update or request response or may be null if the timeout expires.
 */
public function receive(int $timeout): ?string

同步执行请求

同步执行TDLib请求。只有当请求被标记为“可以同步调用”时,请求才能同步执行。

/**
* @param string $request JSON-serialized request to TDLib.
* 
* @return string|null JSON-serialized null-terminated request response.
*/
public function execute(string $request): ?string