- The custom field
cloudCustomData can be set during message creation to meet diverse business needs.
- When createGroup or addGroupMember is called, if a single user exceeds the maximum number of groups a single user can join, use
overLimitUserIDList to notify the access side.
- The createMergerMessage API for creating combined messages.
- The createForwardMessage API for creating forward messages.
- When an account logs in on multiple instances or clients, once conversation read is reported on one instance or client, the unread count of the conversation will be synchronously cleared on the web client.
The MTA statistics feature was deprecated.
- Web: when an account logged in on multiple instances, the profile photo and nickname of the other party in a one-to-one conversation were incorrect.
- When you called back and called the RESTful API to recall messages frequently after sending messages, some of them were not recalled correctly.
If a user hasn't joined a group (not an audio-video group), calling quitGroup will return error code 2623, indicating that the user is not in the group.
avatar (profile photo) or
nick (nickname) was inconsistent in the one-to-one conversation message list.
- Support for sending and receiving one-to-one messages with
avatar (profile photo) and
nick (nickname) displayed.
- Support for the Tencent Cloud IM upload plugin tim-upload-plugin. This plugin enables more secure file upload, supports web, WeChat, QQ, Baidu, Toutiao, and Alipay Mini Program platforms, and is merely 26 KB. For more information, see registerPlugin.
- When a user joined an audio-video group anonymously after logging out, the error code 70402 was returned in the response packet during a long polling.
- The browser environment was misjudged during Taro 3.0+ integration.
- When the image type and size verification failed, there were errors in the returned data structure.
A compilation error occurred when tim-wx-sdk.js was imported into the basic library 2.14.1 of WeChat Developer Tools.
- The createTextAtMessage API allows users to specify @ a specific member or @ all members during a group chat.
- Message added the
namecard attribute to display group members’ group name cards (i.e., their nicknames in a group).
The logout API can be called when the SDK is not ready.
- Errors occurred in SDK operations when read receipts and read notifications existed at the same time.
- Attempts to anonymously re-join an audio-video group after logout failed.
- The group list was cleared abnormally.
- The WeChat, QQ, Baidu, Toutiao, and Alipay Mini Program platforms are supported (currently on the Baidu, Toutiao, and Alipay Mini Program platforms, image, video, or file messages, or other messages that need to be uploaded to COS, cannot be sent).
- The third-party frameworks of MPX and uni-app are supported.
Images in BMP format can be sent.
lastMessage of the conversation object are not updated when the sender sends an online message and the recipient receives the online message.
The SDK could not enter the ready state due to problems synchronizing the list of recent contacts.
- getGroupOnlineMemberCount was added to query the number of online users in an audio-video group.
- Image compression was integrated in the sending of image messages. The access side can choose to display the original image or thumbnail image based on business requirements. For more information, see ImagePayload.
Compatibility issues when Taro 3.x integrates WebIM
Reduced the SDK size. The size of tim-js-sdk was reduced by 8.5%, and that of tim-wx-sdk was reduced by 15%.
The TIM.create API added the
oversea parameter. When this parameter is set to
true, the SDK uses a domain name outside the Chinese mainland to avoid interference.
- The return value for calling relevant APIs was
undefined when the SDK was in the
not ready state.
- Issues related to statistics
The TIM.EVENT.SDK_RELOAD event was added.
- Audio-video groups occasionally failed to pull messages in cases where the network was reconnected after a long disconnection or the Mini Program switched to the foreground after running in the background for a long time.
- The type and value of
imageFormat of an image message were inconsistent with those of the actual image.
- The nicknames displayed in work groups and public groups were incorrect.
Messages occasionally failed to be pulled if an audio-video group (AVChatRoom) was used for a long time.
After the RESTful API for creating a work group was called to create a work group successfully and the group members were specified, messages from group members would fail to be sent.
- Occasionally, when joinGroup was called, the SDK prompted "Already in the group" but in fact the user was not in the group. Consequently, the user could not send or receive messages.
- The count of messages sent in a temporary meeting group was incorrect.
Provided support for one-to-one message read receipts (indicating whether the peer has read your messages). For more information, see the event TIM.EVENT.MESSAGE_READ_BY_PEER. In a message that has already been read by the peer, the value of
- After a user joined a chat room (ChatRoom), the newly created conversation did not display the last message.
- After login, a user who had not joined an audio-video group (AVChatRoom) could still send a message to the audio-video group (AVChatRoom).
- In audio-video groups (AVChatRoom), messages were occasionally repeatedly displayed on the screen.
- An error was reported when getMessageList received an empty message.
- If login was called again after logout, error 70001 occasionally occurred when joinGroup was called.
The sendMessage API added the sending option to support the sending of online messages (no offline or roaming messages; cannot be used for AVChatRoom or BChatRoom) and the configuration of offline push.
- Message content was lost because the input
payload.data payload.extension type of createCustomMessage is incorrect.
- Multiple messages contained in a response to a single request were disordered.
- The unread count could not be cleared occasionally after the read count is reported because the number of unread one-to-one conversions overflows.
event.data.undefined were undefined occasionally.
The unread count could not be cleared when the latest group message was a group prompt.
Files could not be uploaded occasionally when the uploaded COS signature was invalid and not updated in a timely manner.
- The web client can create and send video messages createVideoMessage of up to 100 MB in size.
avatar attributes are added in Message to display the nickname and profile photo address of the message sender in an audio-video group (AVChatRoom). The nickname and profile photo address need to be set in advance by calling updateMyProfile.
- Web: when an account logs in on multiple instances, the one-to-one message recall notification can be synchronized across these instances.
- After updateGroupProfile is called to successfully modify custom group fields, group members can receive group prompts and obtain related content Message.payload.newGroupProfile.groupCustomField.
TIM.EVENT.GROUP_SYSTEM_NOTICE_RECEIVED is deprecated and replaced by MESSAGE_RECEIVED.
Errors occurred occasionally when the getGroupList API was called.
When searchGroupByID fails, the log level is degraded to warning and the prompt text is modified.
- Anonymous users or visitors failed to join TIM.TYPES.GRP_AVCHATROOM groups and had statistical problems.
- Other known issues
When login is successful, the key-value pair
repeatLogin: true is added for the
imResponse.data callback object to identify repeated login of a login account.
The priority of messages received at the receiver side of an audio-video group is different from that set on the sender side.
- The network status change event TIM.EVENT.NET_STATE_CHANGE is added, and the access side can make related prompts and guidance based on this event.
- Running in WeChat Mini Program plug-in environments is supported.
Error codes are reduced and optimized.
- After an audio-video group was created in the console and a group owner was specified, messages sent by other group members will be repeated on the group owner side after the group owner joins the group.
- When groups were created and terminated in the console or using a RESTful API frequently, the SDK did not deliver the TIM.EVENT.GROUP_SYSTEM_NOTICE_RECEIVED event.
- getMessageList failed to get the group message list occasionally.
Message priorities, enumerated values, and use cases can be set for group messages.
- Some online messages could not be pulled occasionally.
- After a system notification from an audio-video group was received, the TIM.EVENT.MESSAGE_RECEIVED event was not delivered.
- In some scenarios, the group message recall result was inaccurate.
- Other known issues
- The maximum size of files uploaded through createFileMessage is increased from 20 MB to 100 MB.
shutupTime of group prompts will be deprecated. Use
- Listening events could not be canceled by calling the off API.
- The value and type of the
isRead attribute in Message were incorrect.
- The error code and error message were incorrect when the video file in a sent video message exceeded the maximum size.
- The content of updated custom fields was incorrect occasionally.
- The JOIN_STATUS_ALREADY_IN_GROUP event occurred occasionally when a user logged in and joined an audio-video group.
- core-js caused potential performance issues.
getUserProfile and updateMyProfile support custom profile fields.
Messages were lost in combined messages obtained using getMessageList.
- When messages fail to be sent, the SDK returns the actual error codes and error messages.
- When logout is called, only the message channel of the current instance logs out.
- When a callback function passed in by the access side is encapsulated for security purposes and the logic of the callback function is incorrect, errors can be captured and located quickly.
- The SDK provides Chinese error information when IM server-side error codes are received.
- Messages were lost occasionally when the WeChat Mini Program went to foreground after staying in the background for a long time.
- TIM.EVENT.CONVERSATION_LIST_UPDATED was triggered several times when a message was sent.
- The SDK reported errors when files, such as images were uploaded if registerPlugin was not called or incorrect parameters were entered.
- Long polling did not stop after a TIM.TYPES.GRP_AVCHATROOM group was disbanded.
- When "multi-instance" or "multi-client" login was enabled, other instances or clients failed to receive messages after a web instance was logged out.
- The SDK reported errors occasionally due to the structure of session lists that were pulled.
The logic for getting group roaming messages is optimized.
- The SDK reported the 2901 error code after the group owner of an audio-video group modified the group profile.
- After the group admin processed apps for joining a group, processed apps can be received after refresh.
- Mini Programs support creating and sending video messages createVideoMessage. Video messages can be synced across platforms. Update to the latest versions of the TUIKit and SDK.
- The getGroupMemberProfile API is added.
- Compatible with audio and file messages sent by Native IM v3.x.
- Location messages GeoPayload can be received.
Up to 100 groups can be written to local storage. The SDK does not write the full group list when there are more than 100 groups.
- Long polling of TIM.TYPES.GRP_AVCHATROOM groups continues after logout.
- The group contact cards in message instances of TIM.TYPES.GRP_AVCHATROOM groups did not have values.
- Errors were reported when Internet Explorer 10 was used.
- Users could not join groups anonymously.
- When the
Promise status returned by an SDK API is
rejected, the SDK no longer delivers a TIM.EVENT.ERROR event.
- Updates to a user's profile are immediately written to the local cache.
- Code running failed after SDK integration when Angular zone.js modified prototype chains.
- After a group owner created and joined a TIM.TYPES.GRP_AVCHATROOM group, the group owner could not receive messages.
- Initialization failed when the group list was excessively large.
Combined messages (multiple message elements in one message) sent by RESTful APIs or the legacy IM are compatible. For more information, see Compatibility Guide.
- The unread count was inaccurate.
- Messages were disordered because read messages were not reported.
- Empty image messages were sent successfully but could not be rendered. The SDK did not support sending empty image messages.
- Empty file messages were sent with incorrect message status. The SDK did not support sending empty file messages.
- SDK code errors were reported occasionally when getGroupMemberList was called.
getGroupList supports pulling group profile information, including the group owner ID and group member count.
- SDK code errors were reported when a RESTful API is used to send custom group notifications in an audio-video chat room.
- The SDK did not send a request to pull historical messages when a user re-joined a left group and called the
- SDK code errors were reported when upload failed.
Mini Programs support sending audio messages. Audio messages can be synced across platforms. Update to the latest versions of the TUIKit and SDK.
getMessageList could still pull historical messages in a quit group after rejoining.
- getMessageList could not pull messages in deleted group chats.
- Group system notifications did not contain group names.
- When a conversation was created after receiving a new message, the conversion did not have the profile of the message sender.
Image messages failed to be sent under the React framework.
The actual width and height of an image are detected before the image message is sent.
- Screen splash occurred when mini programs sent image messages.
- JPG or other images failed to be sent.