Reference

Web SDK reference (floo-web)

Managers and methods of the floo-web SDK: base client, userManage, rosterManage, groupManage and sysManage.

The web SDK is organised as a single im instance exposing feature managers. The same surface is available in the uni-app and WeChat Mini Program builds.

base

js
im.login({ name, mobile, password })   // name or mobile
im.tokenLogin(user_id, token)
im.qrlogin({ password, user_id })
im.on(eventName, handler)
im.off(eventName, handler)

userManage

asyncRegister({ username, password })
PurposeRegister a new user
getToken()
PurposeToken of the signed-in user
getUid()
PurposeUser id of the signed-in user
getAppid()
PurposeApp ID in use
getConversationList()
PurposeRecent conversation list
asyncUserSendSms({ mobile })
PurposeSend an SMS verification code
asyncCaptchaSms({ captcha, image_id, mobile })
PurposeSend an SMS code behind an image captcha
asyncUserNameCheck(username)
PurposeCheck username availability

rosterManage

getRosterMessageByRid(uid)
PurposeMessage history with a contact
readRosterMessage(uid)
PurposeMark a conversation as read
unreadMessage(user_id, message_id)
PurposeMark a message unread
getUnreadCount(user_id)
PurposeUnread count for a contact
recallMessage(user_id, message_id)
PurposeRecall a message (within 5 minutes)
deleteMessage(user_id, message_id)
PurposeDelete a message locally
getRosterInfo(user_id)
PurposeContact profile
getAllRosterDetail()
PurposeAll cached contacts
asyncApply({ user_id, alias })
PurposeSend a friend request
asyncAccept({ user_id }) / asyncDecline({ user_id })
PurposeHandle a friend request
asyncGetApplyList({ cursor })
PurposePending friend requests
asyncDeleteRoster({ user_id })
PurposeRemove a contact
asyncGetBlockedlist() / asyncBlockeAdd / asyncBlockeRemove
PurposeBlock list management
asyncSearchRosterByName({ username })
PurposeSearch users by name
asyncSearchRosterById({ user_id })
PurposeSearch users by id

groupManage

asyncCreate({ name, type, avatar, description, user_list })
PurposeCreate a group
asyncDestroy({ group_id })
PurposeDissolve a group
asyncGetJoinedGroups()
PurposeGroups the user belongs to
openGroup(group_id)
PurposePrepare group chat state
asyncGetGroupInfo(group_id, fromServer)
PurposeGroup profile
asyncGetGroupMembers(group_id, fromServer)
PurposeMember list (async)
getGroupMembers(group_id)
PurposeMember list (cached)
readGroupMessage(group_id) / getUnreadCount(group_id)
PurposeRead state
recallMessage(group_id, message_id)
PurposeRecall a group message
asyncAdminAdd / asyncAdminRemove / asyncGetAdminList
PurposeAdministrators
asyncAnnouncementEdit / asyncGetAnnouncementList / asyncAnouncementDelete
PurposeAnnouncements
asyncInvite / asyncInviteHandle / asyncGetInvitationList
PurposeInvitations
asyncApply / asyncApplyHandle / asncGetApplicationList
PurposeJoin requests
asyncGroupBab / asyncGroupUnban / asyncGroupBannedList
PurposeMute members
asyncGroupBlock / asyncGroupUnblock / asyncGroupBockedlist
PurposeGroup block list
asyncKick({ group_id, user_list }) / asyncLeave({ group_id })
PurposeMembership
asyncOwnerTransfer({ group_id, new_owner })
PurposeTransfer ownership
asyncUpdateName / asyncUpdateAvatar / asyncUpdateDescription
PurposeGroup profile updates
asyncUpdateDisplayName({ group_id, value })
PurposeMember nickname in group
asyncGroupMsgMutemode({ group_id, msg_mute_mode })
PurposeDo-not-disturb
asyncUpdateAllowMemberInvitation / asyncUpdateAllowMemberModify
PurposeMember permissions
asyncUpdateEnableReadack / asyncUpdateHistoryVisible / asyncUpdateRequireadminapproval
PurposeGroup policy
asyncGetFileList({ group_id }) / asyncFileDelete({ file_list, group_id })
PurposeShared files

sysManage

js
im.sysManage.sendRosterMessage({ type, uid, content, attachment });
im.sysManage.sendGroupMessage({ type, gid, content, attachment });
im.sysManage.sendMentionMessage({ gid, txt, mentionAll, mentionList });
Message types cover text, image, voice, video, file and location; media messages carry an attachment object instead of plain content.