SDK Architecture

Last Updated on : 2024-06-05 06:44:25download

IPC SDK encapsulates IP camera (IPC) functionalities on top of Cube App SDK.

Architecture

The IPC SDK consists of four layers on its architecture: SDK utilities, communication layer, core layer, and vertical business layer.

  • SDK utilities: provides common utility methods to implement features, such as JSON serialization and string encoding and decoding.

  • Communication layer: encapsulates the implementation of network channels through HTTPS, MQTT, socket, and peer-to-peer (P2P) connections.

  • Core layer: supports basic features respecting user management, home management, device management, IPC management, and more.

  • Vertical business layer: implements business features, such as device features, alert messages, and cloud-stored video management.

    SDK Architecture

Modules

The IPC SDK depends on certain modules provided by the Cube App SDK, for example, user management, home management, device management, device pairing, and basic communication. When you integrate the IPC SDK into your project with CocoaPods, these modules are automatically imported.

Module Description
ThingSmartCameraKit IPC features, cloud storage management, alerts, and more
ThingSmartCameraBase API methods for basic IPC features
ThingSmartCameraM Implement IPC features
ThingCameraSDK API methods for basic IPC features
ThingSmartDeviceKit Home and device management
ThingSmartActivatorKit Device pairing
ThingSmartBaseKit API methods for user management and generic cloud features
ThingSmartP2pChannelKit P2P connections
ThingSmartSocketChannelKit Implement socket connections
ThingSmartMQTTChannelKit Implement MQTT connections
ThingSmartUtil Implement basic utility methods
ThingEncryptImage Display encrypted images