AiFunctionProviderImpl

class AiFunctionProviderImpl(serviceRepository: ServiceRepository, nodeRepository: NodeRepository, radioConfigRepository: RadioConfigRepository, packetRepository: PacketRepository, sendMessageUseCase: SendMessageUseCase, fuzzyNameResolver: FuzzyNameResolver, rateLimiter: RateLimiter, clock: Clock) : AiFunctionProvider(source)

Implementation of AiFunctionProvider that bridges AI function invocations to existing Meshtastic repositories and use cases.

Constructors

Link copied to clipboard
constructor(serviceRepository: ServiceRepository, nodeRepository: NodeRepository, radioConfigRepository: RadioConfigRepository, packetRepository: PacketRepository, sendMessageUseCase: SendMessageUseCase, fuzzyNameResolver: FuzzyNameResolver, rateLimiter: RateLimiter, clock: Clock)

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
open suspend override fun getChannelInfo(): GetChannelInfoResult

List all available mesh channels and their configurations.

Link copied to clipboard
open suspend override fun getDeviceStatus(): GetDeviceStatusResult

Get status and metrics of the local mesh radio device.

Link copied to clipboard
open suspend override fun getMeshMetrics(): GetMeshMetricsResult

Get aggregate network metrics and statistics for the entire mesh.

Link copied to clipboard
open suspend override fun getMeshStatus(): MeshStatusResult

Get the current mesh network status summary.

Link copied to clipboard
open suspend override fun getNodeDetails(nodeId: String): GetNodeDetailsResult

Get detailed telemetry and status for a specific mesh node.

Link copied to clipboard
open suspend override fun getNodeList(): GetNodeListResult

List all nodes currently visible on the mesh network.

Link copied to clipboard
open suspend override fun getRecentMessages(contactName: String? = null, limit: Int = DEFAULT_MESSAGE_LIMIT): GetRecentMessagesResult

Get recent messages from the mesh network.

Link copied to clipboard
open suspend override fun getUnreadSummary(): GetUnreadSummaryResult

Get a summary of unread messages grouped by contact.

Link copied to clipboard
open suspend override fun sendMessage(text: String, recipientName: String? = null, channelName: String? = null): SendMessageResult

Send a text message over the mesh network.