RCKChatProvider class

Inheritance

Constructors

RCKChatProvider({required RCKEngineProvider engineProvider, bool readReceiptEnabled = true, RCKNeedReadReceiptResolver? needReadReceiptResolver})

Properties

connectionStatus RCIMIWConnectionStatus?
no setter
conversation RCIMIWConversation
no setter
conversationDraft String?
no setter
engineProvider RCKEngineProvider
final
hashCode int
The hash code for this object.
no setterinherited
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
isLongPressing bool
no setter
messageEditDeletedNotifier ValueNotifier<bool>
最近一次编辑请求是否因提交前确认原消息已删除而失败。
final
messageEditErrorNotifier ValueNotifier<int?>
保留 Wrapper 原始编辑错误码,由页面决定展示文案。
final
messageEditRecalledNotifier ValueNotifier<bool>
最近一次编辑请求是否因原消息已撤回而失败。
final
messageEditRetryFailedNotifier ValueNotifier<bool>
最近一次编辑请求是否为“重试后再次失败”。
final
messageEditSessionActive bool
当前会话和 Engine 仍可使用消息编辑能力。
no setter
messageListKey GlobalKey<RCKMessageListState>
no setter
messages List<RCIMIWMessage>
no setter
multiSelectMode bool
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
selectedMessages List<RCIMIWMessage>
final
speechToTextMessageIdsHasShown List<int>
no setter
speechToTextMessageIdsVisible Set<int>
no setter
unreadMentionedMessages List<RCIMIWMessage>?
no setter

Methods

addFileMessage(String localPath) Future<void>
addGifMessage(String localPath) Future<void>
addImageMessage(String localPath) Future<void>
addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
addLocationMessage(double longitude, double latitude, String poiName, String thumbnailPath) Future<void>
addSightMessage(String localPath, int duration, {BuildContext? context}) Future<void>
addSpeechToTextMessageIdHasShown(int messageId) → void
addSpeechToTextMessageIdVisible(int messageId) → void
addTextOrRefrenceMessage(String text, [RCIMIWMessage? referenceMessage, List<String>? mentionList]) Future<void>
addVoiceMessage(String localPath, int duration) Future<void>
beginModifyMessage(RCIMIWMessage original, String content, {List<String>? mentionUserIds, bool canStart()?}) Future<bool>
创建修改消息并进入更新中状态,成功返回时表示请求已建立。
cancelDownloadMediaMessage(RCIMIWMediaMessage message, {dynamic downloadCancel(RCIMIWMediaMessage? message)?}) Future<void>
canEditMessage(RCIMIWMessage message) bool
判断消息是否满足 Android Kit 的编辑入口条件。
clearDraft() Future<void>
clearEditedMessageDraft() Future<void>
clearUnread() → void
deleteMessage(List<RCIMIWMessage> deleteMessage, BuildContext context) Future<void>
dispose() → void
Discards any resources used by the object.
override
downloadMediaMessage(RCIMIWMediaMessage message, {dynamic downloaded(int? code, RCIMIWMediaMessage? message)?, dynamic downloading(RCIMIWMediaMessage? message, int? progress)?, dynamic downloadCancel(RCIMIWMediaMessage? message)?}) Future<void>
downloadVoiceMessage(RCIMIWMediaMessage message, bool autoPlay, BuildContext? context) Future<void>
fetchUnreadMentiondMessage() → void
getDraft() → void
getEditedMessageDraft() Future<RCIMIWEditedMessageDraft?>
initMessages(RCIMIWConversation con, {dynamic onSuccess()?}) → void
jumpToScrollOffset() → void
loadOlderMessages() Future<void>
messageByUId(String messageUId) RCIMIWMessage?
messageListScrollToBottom() → void
modifyMessage(RCIMIWMessage original, String content, {List<String>? mentionUserIds, bool isRetry = false}) Future<bool>
提交一次消息修改,并处理立即返回码与异步回调两个完成通道。
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
override
recallMessage(RCIMIWMessage recallMessage, BuildContext context) Future<void>
referenceMessageState(String? messageUId) RCIMIWReferenceMessageStatus
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
removeSpeechToTextMessageIdVisible(int messageId) → void
removeUnreadMentiondMessage(RCIMIWMessage removeMessage) → void
resolveEditedDraftMessage(String messageUId) Future<({RCIMIWMessage? message, bool shouldClearDraft})>
恢复编辑草稿时静默查询未加载到首屏的原消息。
resolveMessageForEditing(RCIMIWMessage original) Future<RCIMIWMessage?>
提交前按 UID 获取最新本地消息,避免删除、撤回或过期消息退出编辑态。
retryModifiedMessage(RCIMIWMessage message) Future<bool>
saveDraft(String draft) Future<void>
saveEditedMessageDraft(String messageUId, String content, {RCIMIWMessage? message, List<String>? mentionUserIds, List<RCKMessageEditMention>? mentions}) Future<void>
saveScrollOffset() → void
sendMessage(RCIMIWMessage sendMessage, {bool isResend = false, bool isForward = false, BuildContext? context}) Future<void>
setIsLongPressing(bool isLongPressing) → void
setMultiSelectMode(bool isMultiSelectMode) → void
stopPlayVoiceAndReference(List<RCIMIWMessage> messages, BuildContext context) → void
toggleMessageSelection(RCIMIWMessage message, BuildContext context) → void
toString() String
A string representation of this object.
inherited
updateReadReceiptConfiguration({required bool enabled, RCKNeedReadReceiptResolver? resolver}) → void
voiceMessageToText(RCIMIWVoiceMessage message) Future<void>
waitForMessageEditSettings() Future<bool>

Operators

operator ==(Object other) bool
The equality operator.
inherited

Constants

messageEditRetryFailedErrorCode → const int
兼容旧版本调用方保留的常量。错误通知不会使用该伪造错误码。