QiscusSDK class

Constructors

QiscusSDK()

Properties

appId String?
no setter
currentUser → QAccount?
no setter
debug → Debug
no setter
hashCode int
The hash code for this object.
no setterinherited
isLogin bool
no setter
mqtt → MqttClient
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
storage → Storage
no setter
token String?
no setter

Methods

addHttpInterceptors(RequestOptions onRequest(RequestOptions, RequestInterceptorHandler)) → void
addParticipants({required int roomId, required List<String> userIds}) Future<List<QParticipant>>
blockUser({required String userId}) Future<QUser>
chatUser({required String userId, Json? extras}) Future<QChatRoom>
clearMessagesByChatRoomId({required List<String> roomUniqueIds}) Future<void>
clearUser() Future<void>
closeRealtimeConnection() Future<bool>
Manually close realtime connection to server. Returning bool wheter the operation is successful or not.
createChannel({required String uniqueId, String? name, String? avatarUrl, Json? extras}) Future<QChatRoom>
createGroupChat({required String name, required List<String> userIds, String? avatarUrl, Json? extras}) Future<QChatRoom>
deleteMessages({required List<String> messageUniqueIds}) Future<List<QMessage>>
enableDebugMode({required bool enable, QLogLevel level = QLogLevel.log}) → void
generateCustomMessage({required int chatRoomId, required String text, required String type, Json? extras, required Json payload}) QMessage
generateFileAttachmentMessage({required int chatRoomId, required String caption, required String url, String? filename, String text = 'File attachment', int? size, Json? extras}) QMessage
generateMessage({required int chatRoomId, required String text, Json? extras}) QMessage
generateReplyMessage({required int chatRoomId, required String text, required QMessage repliedMessage, Json? extras}) QMessage
getAllChatRooms({bool? showParticipant, bool? showRemoved, bool? showEmpty, int? limit, int? page}) Future<List<QChatRoom>>
getBlockedUsers({int? page, int? limit}) Future<List<QUser>>
getBlurryThumbnailURL(String url) String
getChannel({required String uniqueId, String? name}) Future<QChatRoom>
getChatRooms({List<int>? roomIds, List<String>? uniqueIds, int? page, bool? showRemoved, bool? showParticipants}) Future<List<QChatRoom>>
getChatRoomWithMessages({required int roomId}) Future<QChatRoomWithMessages>
getFileList({List<int>? roomIds, String? fileType, List<String>? includeExtensions, List<String>? excludeExtensions, String? userId, int? page, int? limit}) Future<List<QMessage>>
getJWTNonce() Future<String>
getNextMessagesById({required int roomId, required int messageId, int? limit}) Future<List<QMessage>>
getParticipants({required String roomUniqueId, int? page, int? limit, String? sorting}) Future<List<QParticipant>>
getPreviousMessagesById({required int roomId, required int messageId, int? limit}) Future<List<QMessage>>
getThumbnailURL(String url) String
getTotalUnreadCount() Future<int>
getUserData() Future<QAccount>
getUsers({String? searchUsername, int? page, int? limit}) Future<List<QUser>>
hasSetupUser() bool
intercept({required QInterceptor interceptor, required Future<QMessage> callback(QMessage)}) → void Function()
markAsDelivered({required int roomId, required int messageId}) Future<void>
markAsRead({required int roomId, required int messageId}) Future<void>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onChatRoomCleared() Stream<int>
onConnected() Stream<void>
onDisconnected() Stream<void>
onMessageDeleted() Stream<QMessage>
onMessageDelivered() Stream<QMessage>
onMessageRead() Stream<QMessage>
onMessageReceived() Stream<QMessage>
onMessageUpdated() Stream<QMessage>
onReconnecting() Stream<void>
onUserOnlinePresence() Stream<QUserPresence>
onUserTyping() Stream<QUserTyping>
openRealtimeConnection() Future<bool>
Manually open realtime connection to server. Returning bool wheter the operation is successful or not.
publishCustomEvent({required int roomId, required Json payload}) Future<void>
publishOnlinePresence({required bool isOnline}) Future<void>
publishTyping({required int roomId, bool? isTyping = true}) Future<void>
registerDeviceToken({required String token, bool? isDevelopment}) Future<bool>
removeDeviceToken({required String token, bool? isDevelopment}) Future<bool>
removeParticipants({required int roomId, required List<String> userIds}) Future<List<String>>
sendFileMessage({required QMessage message, required File file}) Stream<QUploadProgress<QMessage>>
sendMessage({required QMessage message}) Future<QMessage>
setCustomHeader(Map<String, String> headers) → void
setSyncInterval(double period) → void
Set period (in milliseconds) in which sync and sync_event run
setup(String appId) Future<void>
setupWithCustomServer(String appId, {String baseUrl = defaultBaseUrl, String brokerUrl = defaultBrokerUrl, String brokerLbUrl = defaultBrokerLbUrl, int syncInterval = defaultSyncInterval, int syncIntervalWhenConnected = defaultSyncIntervalWhenConnected}) Future<void>
setUser({required String userId, required String userKey, String? username, String? avatarUrl, Json? extras}) Future<QAccount>
setUserWithIdentityToken({required String token}) Future<QAccount>
subscribeChatRoom(QChatRoom room) → void
subscribeCustomEvent({required int roomId}) Stream<Json>
subscribeUserOnlinePresence(String userId) → void
synchronize({String? lastMessageId}) → void
synchronizeEvent({String? lastEventId}) → void
toString() String
A string representation of this object.
inherited
unblockUser({required String userId}) Future<QUser>
unsubscribeChatRoom(QChatRoom room) → void
unsubscribeCustomEvent({required int roomId}) → void
unsubscribeUserOnlinePresence(String userId) → void
updateChatRoom({required int roomId, String? name, String? avatarUrl, Json? extras}) Future<QChatRoom>
updateMessage({required QMessage message}) Future<QMessage>
updateUser({String? name, String? avatarUrl, Json? extras}) Future<QAccount>
upload(File file, {CancelToken? cancelToken}) Stream<QUploadProgress<String>>

Operators

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

Static Properties

instance QiscusSDK
final

Static Methods

withAppId(String appId) Future<QiscusSDK>
withCustomServer(String appId, {String baseUrl = defaultBaseUrl, String brokerUrl = defaultBrokerUrl, String brokerLbUrl = defaultBrokerLbUrl, int syncInterval = defaultSyncInterval, int syncIntervalWhenConnected = defaultSyncIntervalWhenConnected}) Future<QiscusSDK>