sendMessage
abstract suspend fun sendMessage(conversationId: String, body: SanitizedText, accountId: String? = null): SendResult
Sends body to conversationId and returns the delivery outcome.
accountId disambiguates which connected account should send when a protocol supports multiple simultaneous accounts. When null, implementations may derive it from conversationId (most conversation IDs are namespaced as "${accountId}_$remoteId").