DefaultOneBotClient

class DefaultOneBotClient(transport: OneBotTransport, json: Json = OneBotJson.default) : OneBotClient

Default OneBotClient implementation backed by a OneBotTransport.

Constructors

Link copied to clipboard
constructor(transport: OneBotTransport, json: Json = OneBotJson.default)

Properties

Link copied to clipboard
open override val events: Flow<OneBotEvent>

Stream of typed OneBot events decoded from transport incoming payloads.

Link copied to clipboard
open override val isStarted: Boolean

Whether underlying transport lifecycle has started.

Functions

Link copied to clipboard
open suspend override fun <T> call(action: String, params: JsonObject, serializer: KSerializer<T>): ApiResponse<T>

Calls a OneBot action and decodes the data field with serializer.

Link copied to clipboard
open suspend override fun close()

Releases transport resources.

Link copied to clipboard
open suspend override fun deleteMessage(messageId: String): ApiResponse<JsonObject>

Calls delete_message.

Link copied to clipboard
open suspend override fun getSelfInfo(): ApiResponse<SelfInfo>

Calls get_self_info.

Link copied to clipboard
fun OneBotClient.listenEventsAnnotated(listener: Any, scope: CoroutineScope, onHandlerError: (Throwable, OneBotEvent) -> Unit = { error, _ -> throw error }): Job

Subscribes to OneBotClient.events and dispatches each event to methods annotated with Event.

Link copied to clipboard
open suspend override fun sendMessage(request: SendMessageRequest): ApiResponse<SendMessageResult>

Calls send_message.

Link copied to clipboard
open suspend override fun start()

Starts lifecycle-managed transport resources.

Link copied to clipboard
open suspend override fun stop()

Stops lifecycle-managed transport resources.

Link copied to clipboard

Creates a full OneBotV12Api wrapper from an existing OneBotClient.