Endpoint profile is a virtual identity or "passport" of the endpoint. By filtering against the data in the profiles, endpoints may be aggregated into independently managed groups. Please review the Kaa profiling design reference for more background.
This guide will familiarize you with the basic concepts of designing endpoint profiles and programming the Kaa profiling subsystem. It is assumed that you have either set up a Kaa Sandbox, or a full-blown Kaa cluster already and that you have created a tenant and an application in Kaa.
The following diagram illustrates basic entities and data flows in scope of the endpoint profile management:
- Endpoint profiles are generated based on the profile schema created by the developer for the application and profile data entered either by the developer or by the application user
- Endpoints send their profiles to the Kaa server during the registration
- The Kaa tenant developer specifies profile filters for endpoint groups using either Admin UI or REST API
- Kaa Operations Server classifies endpoints into groups based on their profiles and the group profile filters
The default profile schema installed for Kaa applications is empty. In order to make use of the Kaa profiling / identity management capabilities, you should load a profile schema that reflects the application you are designing. Think about the profile schema as of a virtual identity of your client application that will later be available to you in Kaa server.
Profile updates are reported to the endpoint SDK using a profile container. The profile related API varies depending on the target SDK platform, however the general approach is the same.