Builder
Builder to initialize the singleton ChatClient instance and configure its parameters.
Parameters
The API key of your Stream Chat app obtained from the Stream Dashboard.
The application Context.
Functions
Sets the base URL to be used by the client.
Create a ChatClient instance based on the current configuration of the Builder.
Sets a ChatClientDebugger instance that will be invoked accordingly through various flows within SDK.
Overrides a default, based on shared preferences implementation for UserCredentialStorage.
Debug requests using ApiRequestsAnalyser. Use this to debug your requests. This shouldn't be enabled in release builds as it uses a memory cache.
Allows simultaneous network calls of the same request, avoiding combining them into one. By default distinctApiCalls is enabled.
By default, ChatClient performs a dummy HTTP call to the Stream API when a user is set to initialize the HTTP connection and make subsequent requests reusing this connection execute faster.
Sets a custom FileTransformer implementation that will be used by the client to transform files before uploading them.
Sets a custom file uploader implementation that will be used by the client to upload files and images.
Force to use insecure connection (HTTP) instead of secure connection (HTTPS). This is useful for testing purposes. By default, the client uses HTTPS. Production apps should always use HTTPS.
Sets a ChatLoggerHandler instance that will receive log events from the SDK.
Sets the log level to be used by the client.
Sets a custom NotificationHandler that the SDK will use to handle everything around push notifications. Create your own subclass and override methods to customize notification appearance and behavior.
Sets a custom OkHttpClient that will be used by the client to perform API calls to Stream.
Sets a custom RetryPolicy used to determine whether a particular call should be retried. By default, no calls are retried.
An enumeration of various network types used as a constraint inside upload attachments worker.
Adds plugins factory to be used by the client.
Inject a RepositoryFactory.Provider to use your own DB Persistence mechanism.