Preparations

To use call in application, firstly the SDK should be integrated in project and configured for runtime using

  1. Integration of an SDK It's mostly up to project's architecture, wich layer should intergate it. For the simplicity, we will omit nested layes and will intergate strictly to UI level

  2. SDK sources should be downloaded. Currently it's integrated into ready-to-use project, but modules need could be imported from it via Android Studio "import module" menu item. SDK-related modules structure:

+--- im-analytics (analytics util for Firebase, etc.)
+--- im-api ( Java bindings for backend`s API )
+--- im-common (a set of core utilities/helpers used across the project)
+--- im-common-android-context	(a set of Android platform-specific utilities/helpers used across the project)
+--- im-common-android-graphics	(a set of graphic/animation utilities/helpers used across the project)
+--- im-common-android-lifecycle (a set of utilities to handle app lifecycle used across the project)
+--- im-common-android-ui (a set of ui classes used across the project)
+--- im-db (local database access implementation files)
+--- im-emoji (project-specific implementation of emoji library)
+--- im-log (debug logging implementation)
+--- im-model (project domain layer)
+--- im-pictures (imlementation of pictures handling used across the project modules)
+--- im-sdk (provides interfaces to core classes of data layer)
+--- im-sdk-auth (authorization implementation classes of data layer)
+--- im-sdk-call (calls engine implementation classes)
+--- im-sdk-call-audioconference (audioconference engine implementation classes (deprecated))
+--- im-sdk-call-broadcasting	(broadcasting engine implementation classes (deprecated))
+--- im-sdk-call-common	(common call-related implementation classes)
+--- im-sdk-call-meeting (meetings core implementation classes)
+--- im-sdk-call-scheduled (scheduled calls core implementation classes)
+--- im-sdk-call-videoconference (videoconference core implementation classes)
+--- im-sdk-common (common code for calls and conferences)
+--- im-sdk-connection (session connection status classes)
+--- im-sdk-draft (conversation messages drafts implementation)
+--- im-sdk-extendedprofile (extended (business) profiles core implementation)
+--- im-sdk-file (uploading/downloading files implementation)
+--- im-sdk-typing (typing status provider implementation)
+--- im-sdk-users (users interaction classes)
+--- im-telecom	implementation (platform telecom service interaction classes)
+--- im-webrtc-model (webrtc library/wrappers module) 

The core module of the SDK is im-sdk, it should be imported first, then other dependent modules will be imported by Studio's request

Last updated