Categories:
Aura KPIs dimensions
Processing of Aura KPIs dimensions generated in aura-kpis-uploader
All of them will be generated in Avro format.
Introduction
aura-kpis-uploader-cli component generates the following types of KPIs dimensions:
. Channel type dimensions
. Recognizers type dimensions
. Skill type dimensions
. Components type dimensions
. Presets type dimensions
. Applications type dimensions
All of them are stored into the correspondent container in Aura Common Azure Storage (environment variable: AURA_KPIS_STORE_COMMON_CONTAINER).
Once the files are copied, the local copy is moved to a folder inside the container (environment variables: AURA_KPIS_STORE_COMMON_CONTAINER/ AURA_KPI_UPLOADER_PROCESSED_FOLDER) and kept there during a time, for recovering issues.
Types of KPIDimensionType:
export enum KPIDimensionTypes {
KPIS_DIMENSIONS_CHANNEL = 'CHANNEL',
KPIS_DIMENSIONS_RECOGNIZER = 'RECOGNIZER',
KPIS_DIMENSIONS_SKILL = 'SKILL',
KPIS_DIMENSIONS_APP = 'APP',
KPIS_DIMENSIONS_PRESETS = 'PRESETS',
KPIS_DIMENSIONS_COMPONENT = 'COMPONENT'
}
The path and filename should follow these patterns:
- Path:
AURA_KPIS_ENTITIES_CONTAINER/avro/dimensional/<avro_schema: name>/<avro_schema: x-fp-version> - Filename:
<OB>_DIM_<DIM_NAME>_YYYYMMDDTHH0000Z.<AURA_KPI_FILES_EXTENSION>
The filename of the file is obtained as follows:
export function getDimensionFileName(KPIDimensionType: string) {
return \`${getCountry().toUpperCase()}_\` +
'DIM_' + \`${KPIDimensionType}_\` +
\`${moment()
.toISOString()
.substring(0, 13)
.replace(/-/g, '')
.replace(/:/g, '') + '0000Z'}\` +
\`${ConfigurationManager.instance.environmentConfiguration.AURA_KPI_FILES_EXTENSION}\`;
}
Channel type dimensions
aura-kpis-uploader-cli gets the list of channels configured in the environment through the aura-configuration-api channels endpoint.
It generates a file with the following schema:
The Adapter format:
{
"name": "D_Aura_Channel",
"schema": "dimensional",
"avroSchema": "aura-channel-asvc.json",
"versionSchema": "6.0.0",
"source": {
"data": "object",
"id": "CHANNEL"
},
"targetType": "avro",
"fields": {
"AURA_CHANNEL_ID": {
"sourceName": "id",
"targetType": "string"
},
"AURA_CHANNEL_NAME": {
"sourceName": "name",
"targetType": "string"
},
"AURA_CHANNEL_SHORT_NAME": {
"sourceName": "prefix",
"targetType": "string"
},
"AURA_SKILL_ID": {
"sourceName": "skillId",
"targetType": "string",
"defaultValue": "NO_SKILL"
},
"AURA_NLP_STAGES_ARRAY": {
"sourceName": "nlp.stages",
"targetType": "array",
"nullable": "true"
},
"EXTRACTION_TM": {
"sourceName": "EXTRACTION_TM",
"targetType": "string",
"preCalculated": "DATE_ISO_8691"
},
"GBL_CONTACT_CHANNEL_ID": {
"sourceName": "contact",
"targetType": "string"
},
"BRAND_ID": {
"sourceName": "brand",
"targetType": "string"
}
}
}
Recognizers type dimensions
aura-kpis-uploader-cli gets the recognizers configuration through the file configured in the project: aura-kpis-uploader/src/dimensions/resource/recognizers.json
It generates a file with the following schema:
The Adapter format:
{
"version": "1.0.0",
"name": "D_Aura_Recognizer",
"schema": "dimensional",
"avroSchema": "aura-recognizer-asvc.json",
"versionSchema": "6.0.0",
"source": {
"data": "object",
"id": "RECOGNIZER"
},
"targetType": "avro",
"fields": {
"AURA_RECOGNIZER_ID": {
"sourceName": "id",
"targetType": "string"
},
"AURA_RECOGNIZER_NAME": {
"sourceName": "name",
"targetType": "string"
},
"EXTRACTION_TM": {
"sourceName": "EXTRACTION_TM",
"targetType": "string",
"preCalculated": "DATE_ISO_8691"
}
}
}
Skill type dimensions
aura-kpis-uploader-cli gets the skill configuration through the aura-configuration-api Skills endpoint.
It generates a file with the following schema:
The Adapter format:
{
"version": "1.0.0",
"name": "D_Aura_Skill",
"schema": "dimensional",
"avroSchema": "aura-skill-asvc.json",
"versionSchema": "6.0.0",
"source": {
"data": "object",
"id": "SKILL"
},
"targetType": "avro",
"fields": {
"AURA_SKILL_ID": {
"sourceName": "id",
"targetType": "string"
},
"AURA_SKILL_NAME": {
"sourceName": "name",
"targetType": "string"
},
"EXTERNAL_SKILL_IND": {
"sourceName": "external",
"targetType": "boolean"
},
"EXTRACTION_TM": {
"sourceName": "EXTRACTION_TM",
"targetType": "string",
"preCalculated": "DATE_ISO_8691"
}
}
}
Components type dimensions
aura-kpis-uploader-cli gets the components configuration through the aura-configuration-api Components endpoint.
It generates a file with the following schema:
The Adapter format:
{
"version": "1.0.0",
"name": "D_Aura_Component",
"schema": "dimensional",
"avroSchema": "aura-component-asvc.json",
"versionSchema": "6.0.0",
"source": {
"data": "object",
"id": "COMPONENT"
},
"targetType": "avro",
"fields": {
"AURA_COMPONENT_ID": {
"sourceName": "id",
"targetType": "string"
},
"AURA_COMPONENT_NAME": {
"sourceName": "name",
"targetType": "string"
},
"EXTRACTION_TM": {
"sourceName": "EXTRACTION_TM",
"targetType": "string",
"preCalculated": "DATE_ISO_8691"
}
}
}
Presets type dimensions
aura-kpis-uploader-cli gets the presets configuration through the atria-model-gateway presets endpoint.
It generates a file with the following schema:
The Adapter format:
{
"version": "1.0.0",
"name": "D_Aura_Preset",
"schema": "dimensional",
"avroSchema": "aura-preset-asvc.json",
"versionSchema": "6.0.0",
"source": {
"data": "object",
"id": "PRESETS"
},
"targetType": "avro",
"fields": {
"AURA_PRESET_ID": {
"sourceName": "preset.id",
"targetType": "string"
},
"AURA_PRESET_NAME": {
"sourceName": "preset.name",
"targetType": "string"
},
"AURA_MODEL_ID": {
"sourceName": "model.id",
"targetType": "string"
},
"AURA_PRESET_GROUP_NAME_CD": {
"sourceName": "preset.group",
"targetType": "enum",
"symbols": [
"enriched_ai",
"simple_ai"
]
},
"EXTRACTION_TM": {
"sourceName": "EXTRACTION_TM",
"targetType": "string",
"preCalculated": "DATE_ISO_8691"
}
}
}
Applications type dimensions
aura-kpis-uploader-cli gets the applications configuration through the aura-configuration-api Applications endpoint.
It generates a file with the following schema:
The Adapter format:
{
"version": "1.0.0",
"name": "D_Aura_App",
"schema": "dimensional",
"avroSchema": "aura-app-asvc.json",
"versionSchema": "6.0.0",
"source": {
"data": "object",
"id": "APP"
},
"targetType": "avro",
"fields": {
"AURA_APP_ID": {
"sourceName": "id",
"targetType": "string"
},
"AURA_APP_NAME": {
"sourceName": "name",
"targetType": "string"
},
"AURA_NLP_CHANNEL_ID": {
"sourceName": "nlp.channeId",
"targetType": "string",
"nullable": "true"
},
"AURA_PRESET_NAMES_ARRAY": {
"sourceName": "models.presets",
"targetType": "array",
"nullable": "true"
},
"EXTRACTION_TM": {
"sourceName": "EXTRACTION_TM",
"targetType": "string",
"preCalculated": "DATE_ISO_8691"
},
"BRAND_ID": {
"sourceName": "brand",
"targetType": "string"
}
}
}