Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Levels

Use cases

Illustration

App Version : (NUKE)

VERSION_COMMAND

Command Control“ can be enabled @ targeted app version.

a) FORCE UPGRADE all the users of particular app version using online(playstore) or offline(blob download) mechanism.

b) Send a local notification to users of particular app version.


c) A/B Test based on the version of the app



d) Enable Debuggability by selectively enabling log levels, Telemetry levels on a particular version

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "VERSION_COMMAND",
  "targetVersion": ["2.10","3.0","3.1"],
  "targetDeviceIds": null,
  "tagFilters": null,
  "tagFilterUpto": null,
  "controlFunction": "APP_UPDATE"
}
Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "VERSION_COMMAND",
  "targetVersion": ["2.10","3.0","3.1"],
  "targetDeviceIds": null,
  "controlFunction": "LOCAL_NOTIF",
  "tagFilters": null,
  "tagFilterUpto": null,
  "controlFunctionPayload": {Notification Payload} 
}
Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "VERSION_COMMAND",
  "targetVersion": ["2.10","3.0","3.1"],
  "targetDeviceIds": null,
  "tagFilters": null,
  "tagFilterUpto": null,
  "controlFunction": "EXPERIMENT_TRACK",
  "controlFunctionPayload": {payload which has trackId} 
}
Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "VERSION_COMMAND",
  "targetVersion": ["2.10","3.0","3.1"],
  "targetDeviceIds": null,
  "tagFilters": null,
  "tagFilterUpto": null,
  "controlFunction": "DEBUGGABILITY",
  "controlFunctionPayload": {log or telemetry level payload} 
}

Command Control“ once enabled targeted versions will execute the “Control Function”

Command Control“ can be enabled @ segmented devices/ Group of devices by deviceId.

Enabling scenarios a) to e) in above table by hand-coded deviceIds in response.

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "DEVICE_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": ["deviceId1"],
  "tagFilters": null,
  "tagFilterUpto": null,
  "controlFunction": "DEBUGGABILITY",
  "controlFunctionPayload": {log or telemetry level payload} 
}

Segmentation of Users :

SEGMENT_COMMAND

Command Control” can be enabled @ framework category level.

Enabling scenarios a) to e) in above table by creating multiple tags. Tags can effectively be handled as “AND“ function (or) “OR“ FUNCTION.
Ex:
a) for “AND“ function all tags should be ''possessed by the user.
b) for “OR“ function any tag can be possessed by the user.

a) “Board“ : #CBSE

All CBSE users

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#FRUA_CBSE"],
  "tagCriteria": "AND",
  "tagFilterUpto": null,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

b) “Board + Medium“ : #CBSE #ENGLISH

All CBSE English Medium Users

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#FR#UA_CBSE","FRCUA_ENGLISH"],
  "tagCriteria": "AND",
  "tagFilterUpto": null,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

c) “Board + Medium + Grade“: #CBSE #ENGLISH #CLASS7

All CBSE English Medium Class 8 Users

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#FR#UA_CBSE","#FRC#UA_ENGLISH","#FRC#UA_CLASS8"],
  "tagCriteria": "AND",
  "tagFilterUpto": null,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

d) “Board + Medium + Grade + Role“: #CBSE #ENGLISH #CLASS7 #TEACHER

All CBSE English Medium Class 8 Teachers

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#FR#UA_CBSE","#FRC#UA_ENGLISH","#FRC#UA_CLASS8","#ROL#UA_TEACHER"],
  "tagCriteria": "AND",
  "tagFilterUpto": null,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

e) “Board + Medium + Grade + Role + Location“: #CBSE #ENGLISH #CLASS7 #TEACHER #KARNATAKA
#MYSURU

All CBSE English Medium Class 8 Teachers of Karnataka State and Mysuru District

Board Karnataka
Medium Kannada
||
Location Karnataka

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#FR#UA_STATEKARNATAKA","#FRC#UA_KANNADA"],
  "tagCriteria": "AND",
  "exclusionFilters": ["#LOC#UA_KARNATAKA"],
  "tagFilterUpto": 5,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

f) Consumers with failed QR code attempts

All Failed QR Code Attempts

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#QRF#QR_EAXPT2"],
  "tagCriteria": "OR",
  "exclusionFilters": ["#LOC#UA_KARNATAKA"],
  "tagFilterUpto": 5,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

g) Consumers of Course

Do_ID to be part of filters

Code Block
languagejson
{
  "commandId": "timeStampInLong",
  "expiresAfter": "timeStampInLong",
  "commandType": "SEGMENT_COMMAND",
  "targetVersion": null,
  "targetDeviceIds": null,
  "tagFilters": ["#do#CA_do_3130299686648299521293"],
  "tagCriteria": "OR",
  "exclusionFilters": ["#LOC#UA_KARNATAKA"],
  "tagFilterUpto": 5,
  "controlFunction": "LOCAL_NOTIF",
  "controlFunctionPayload": {log or telemetry level payload} 
}

Command Control“ once enabled targeted users/ Group of devices will execute the “Control Function”

...