The chat setting class that defines parameters and options of the SDK, including whether to encrypt the messages before sending them and whether to automatically accept the friend invitations.

Constructors

  • Parameters

    • params: {
          acceptInvitationAlways?: boolean;
          appKey: string;
          areaCode?: ChatAreaCode;
          autoAcceptGroupInvitation?: boolean;
          autoLogin?: boolean;
          customDeviceName?: string;
          customOSType?: number;
          debugModel?: boolean;
          deleteMessagesAsExitChatRoom?: boolean;
          deleteMessagesAsExitGroup?: boolean;
          dnsUrl?: string;
          enableDNSConfig?: boolean;
          enableEmptyConversation?: boolean;
          enableTLS?: boolean;
          imPort?: number;
          imServer?: string;
          isAutoDownload?: boolean;
          isChatRoomOwnerLeaveAllowed?: boolean;
          logTag?: string;
          logTimestamp?: boolean;
          messagesReceiveCallbackIncludeSend?: boolean;
          pushConfig?: ChatPushConfig;
          regardImportMessagesAsRead?: boolean;
          requireAck?: boolean;
          requireDeliveryAck?: boolean;
          restServer?: string;
          serverTransfer?: boolean;
          sortMessageByServerTime?: boolean;
          useReplacedMessageContents?: boolean;
          usingHttpsOnly?: boolean;
      }
      • OptionalacceptInvitationAlways?: boolean
      • appKey: string
      • OptionalareaCode?: ChatAreaCode
      • OptionalautoAcceptGroupInvitation?: boolean
      • OptionalautoLogin?: boolean
      • OptionalcustomDeviceName?: string
      • OptionalcustomOSType?: number
      • OptionaldebugModel?: boolean
      • OptionaldeleteMessagesAsExitChatRoom?: boolean
      • OptionaldeleteMessagesAsExitGroup?: boolean
      • OptionaldnsUrl?: string
      • OptionalenableDNSConfig?: boolean
      • OptionalenableEmptyConversation?: boolean
      • OptionalenableTLS?: boolean
      • OptionalimPort?: number
      • OptionalimServer?: string
      • OptionalisAutoDownload?: boolean
      • OptionalisChatRoomOwnerLeaveAllowed?: boolean
      • OptionallogTag?: string
      • OptionallogTimestamp?: boolean
      • OptionalmessagesReceiveCallbackIncludeSend?: boolean
      • OptionalpushConfig?: ChatPushConfig
      • OptionalregardImportMessagesAsRead?: boolean
      • OptionalrequireAck?: boolean
      • OptionalrequireDeliveryAck?: boolean
      • OptionalrestServer?: string
      • OptionalserverTransfer?: boolean
      • OptionalsortMessageByServerTime?: boolean
      • OptionaluseReplacedMessageContents?: boolean
      • OptionalusingHttpsOnly?: boolean

    Returns ChatOptions

Properties

acceptInvitationAlways: boolean

Whether to accept friend invitations from other users automatically.

  • true: Yes.
  • (Default) false: No.
appKey: string

The App Key you get from the console when creating a chat app. It is the unique identifier of your app.

areaCode: ChatAreaCode

The area code. This attribute is used to restrict the scope of accessible edge nodes. The default value is GLOB. See ChatAreaCode. This attribute can be set only when you call ChatClient.init. The attribute setting cannot be changed during the app runtime.

autoAcceptGroupInvitation: boolean

Whether to accept group invitations automatically.

  • true: Yes.
  • (Default) false: No.
autoLogin: boolean

Whether to enable automatic login.

  • (Default) true: Enables automatic login.
  • false: Disables automatic login.
customDeviceName?: string

Custom device name.

This attribute does not take effect when customOSType is set to -1.

An application scenario is as follows: User A wants to log in to a mobile phone and a tablet with the same user account. Then the user sets customOSType to 1 and customDeviceName to foo.

customOSType?: number

Custom system type.

debugModel: boolean

Whether to output the debug information.

  • true: Yes.
  • (Default) false: No.
deleteMessagesAsExitChatRoom: boolean

Whether to delete the historical messages of the chat room in the memory and local database when leaving the chat room (either voluntarily or passively).

  • (Default) true: Yes.
  • false: No.
deleteMessagesAsExitGroup: boolean

Whether to delete the historical messages of the group stored in the memory and local database when leaving a group (either voluntarily or passively).

  • (Default) true: Yes.
  • false: No.
dnsUrl: string

The URL of the DNS server.

enableDNSConfig: boolean

Whether to disable DNS.

  • (Default) true: Yes.
  • false: No. DNS needs to be disabled for private deployment.
enableEmptyConversation: boolean

Whether to include empty conversations when the SDK loads conversations from the local database:

  • true: Yes. Empty conversations are included.
  • (Default) false: No. Empty conversations are excluded.
enableTLS: boolean

Whether to enable TLS connection, which takes effect during initialization and is false by default.

imPort: number

The custom port of the IM server.

The custom port is used when you implement data isolation and data security during private deployment.

If you need the port, contact our business manager.

imServer: string

The custom address of the IM message server.

This address is used when you implement data isolation and data security during private deployment.

If you need the address, contact our business manager.

isAutoDownload: boolean

Whether to automatically download the thumbnail.

  • (Default) true: Yes.
  • false: No.
isChatRoomOwnerLeaveAllowed: boolean

Whether to allow the chat room owner to leave the chat room.

  • (Default) true: Yes. Even if the chat room owner leaves the chat room, the owner still has all privileges, except for receiving messages in the chat room.
  • false: No.
logTag?: string

Global flag for printing logs.

logTimestamp?: boolean

Whether to activate the timestamp of the log.

messagesReceiveCallbackIncludeSend: boolean

Whether the sent message is included in ChatMessageEventListener.onMessagesReceived.

  • true: Yes. Besides the received message, the sent message is also included in ChatMessageEventListener.onMessagesReceived.
  • (Default)false: No. Only the received message is included in ChatMessageEventListener.onMessagesReceived.
pushConfig?: ChatPushConfig

The push configuration.

regardImportMessagesAsRead: boolean

Whether to set messages from the server side as read.

  • true: Yes.
  • (Default) false: No.
requireAck: boolean

Whether to require the message read receipt from the recipient.

  • (Default) true: Yes.
  • false: No.

This property does not take effect for ChatManager.sendConversationReadAck.

requireDeliveryAck: boolean

Whether to require the delivery receipt.

Note

Only valid for single chat messages. ChatMessageChatType.PeerChat

  • true: Yes.
  • (Default) false: No.
restServer: string

The custom address of the REST server.

This address is used when you implement data isolation and data security during private deployment.

If you need the address, contact our business manager.

serverTransfer: boolean

Whether to upload the message attachments automatically to the chat server.

  • (Default) true: Yes.
  • false: No. A custom path is used.
sortMessageByServerTime: boolean

Whether to sort the messages in the reverse chronological order of the time when they are received by the server.

  • (Default) true: Yes;
  • false: No. Messages are sorted in the reverse chronological order of the time when they are created.
useReplacedMessageContents: boolean

Whether the server returns the sender the text message with the content replaced during text moderation:

  • true: Yes.
  • (Default) false: No. The server returns the original message to the sender.
usingHttpsOnly: boolean

Whether only HTTPS is used for REST operations.

  • (Default) true: Only HTTPS is supported.
  • false: Both HTTP and HTTPS are allowed.