Configurations vs Secrets vs Configuration Sets

Configurations are ‘modes’ to tweak the behavior of CartePlus. These configurations are set as key value pairs in app-settings of Azure App Services and Azure Function Apps.

Secrets are sensitive information like API keys, connection strings, API urls etc. These secrets are set as key value pairs in Azure Key Vault.

Configuration Sets are collections of configurations and secrets. E.g. Shastha, Nbd, Ups, etc.

At runtime, all apps & microservices will have read-only access to these configurations & secrets (via CARTEPLUS_* environment variables).

Configurations

CartePlusEnableCosmosDbLogging

Value can be either true or false (default).

If set to true, the CartePlus API and function app will log all CosmosDB operations to app insights (and console when running locally) .

CartePlusEnablePTLs

Value can be either true or false (default).

If set to true, PTLs will be physically enabled for order fulfillment.

Note: This should be set to true only when the PTLs are physically installed and configured: either in production environments (e.g. Shastha) or when testing with a digital/physical twin.

CartePlusFulfillmentMode

Value can be either batched or discrete (default).

In discrete mode, CartePlus will process each order individually. E.g. During Shastha operations.

In batched mode, CartePlus will coalesce orders, and issue picks based on SKU frequency. E.g. During GAP operations.

CartePlusLowInventoryTimerIntervalCron

The cron expression for the timer function that checks for low inventory.

Default value is 0 */15 * * * * (every 15 minutes).

CartePlusDisplayTimeZone

The Time zone to use when displaying dates in the WebDebug tool.

Default value is Asia/Kolkata.

CartePlusNumBots

The number of bots to be used for CartePlus operations.

Default value is 1.

CartePlusOperationTATThresholdInSeconds

@TODO

CartePlusOrderTATThresholdInSeconds

@TODO

CartePlusPlcSimDisableBinPurgeAck

This configuration is only used in the PLC Device Simulator.

Value can be either true (default) or false.

A value of true will disable the PLC Device Simulator from auto-acknowledging bin purges.

CartePlusPlcSimDisableDecommissionBinAck

This configuration is only used in the PLC Device Simulator.

Value can be either true or false (default).

A value of true will disable the PLC Device Simulator from auto-acknowledging decommission bin requests.

CartePlusPlcSimDisablePickAck

This configuration is only used in the PLC Device Simulator.

Value can be either true or false (default).

A value of true will disable the PLC Device Simulator from auto-acknowledging picks. The operator UI will have to be used instead for pick acknowledgements.

CartePlusPlcSimMaxDelayInSeconds

This configuration is only used in the PLC Device Simulator.

Value can be any positive integer (default is 5).

This configuration is used to set the maximum delay (in seconds) for the PLC Device Simulator to wait before sending an acknowledgement to the PLC.

CartePlusPlcSimMinDelayInSeconds

This configuration is only used in the PLC Device Simulator.

Value can be any positive integer (default is 5).

This configuration is used to set the minimum delay (in seconds) for the PLC Device Simulator to wait before sending an acknowledgement to the PLC.

CartePlusPlcSimPickTaskDurationInSeconds

This configuration is only used in the PLC Device Simulator.

Value can be any positive integer (default is 5).

This configuration is used to simulate the duration (in seconds) of the pick tasks.

CartePlusPlcSimFaultMode

This configuration is only used in the PLC Device Simulator.

Value can be either true or false (default).

A value of true generates faults to simulate PLC level failures. This is useful for testing the fault tolerance of the system - it generates PLC messages with ACK type ‘Abort’. The % of faults can be configured using CartePlusPlcSimFaultModePercentFailures.

CartePlusPlcSimFaultModePercentFailures

This configuration is only used in the PLC Device Simulator.

Value can be any positive integer (default is 10).

This configuration is used to set the % of faults generated by the PLC Device Simulator when CartePlusPlcSimFaultMode is set to true.

CartePlusPlcSimDisableInwardCompletion

This configuration is only used in the PLC Device Simulator.

Value can be either true(default) or false .

A value of true will disable the PLC Device Simulator from auto-completing inward and replenishment tasks.

CartePlusPrinterMode

Value can be either DisablePrinting (default) or EnablePrinting.

Absence of this configuration is equivalent to DisablePrinting.

This configuration is used to enable/disable printing of barcode labels, order pick-lists, etc.

CartePlusPtlTestMode

By default, this configuration is NOT set anywhere. During testing, you have to explicitly set this configuration in the PTL API.

If this configuration is set, the PTL API suppresses the routing of pick/inward/top-up tasks to the PTL devices, and instead just simulates response from the PTL devices.

Value can be one of:

  • AutoAck: Simulates PTL buttons being pressed (ACK).
  • AutoNack: Simulates PTL button not being pressed (NACK).
  • RandomizedAckNack: Simulates PTL buttons being pressed (ACK) or not pressed (NACK) randomly.

CartePlusSkuFilePathFormat

The format of the SKU file path. The default value is Data/SKUsToImport.{0}.csv.

Secrets

CartePlusApiUrl

The url/endpoint for the core CartePlus API.

CartePlusCosmosDbConnectionString

The connection string for the CartePlus API’s CosmosDB.

When running locally, you can use the connection string from the CosmosDb Emulator.

CartePlusCosmosDbName

The name of the CartePlus API’s CosmosDB.

CartePlusEventHubEndpoint

The connection string (event hub compatible endpoint) for the CartePlus event hub (extracted from IoT Hub).

CartePlusEventHubName

The name (event hub compatible name) of the CartePlus event hub (extracted from IoT Hub).

CartePlusFunctionAppStorageAccountConnectionString

The connection string for the CartePlus function app’s storage account.

CartePlusFunctionAppUrl

The url/endpoint for the CartePlus function app.

CartePlusIotHubConnectionString

The connection string for the CartePlus IoT Hub (extracted from the service shared access policy).

CartePlusIotHubDeviceConnectionString

The connection string of device tethered to CartePlus IoT Hub.

CartePlusIotHubTargetDeviceName

The name of the CartePlus IoT Hub’s target device.

CartePlusPrinterApiUrl

The url/endpoint for the printer APIs.

CartePlusPtlApiKey

The API key used for authZ/authN at the PTL devices’ voodoorobotics.com API endpoint.

CartePlusPtlApiUrl

The url/endpoint for the PTL APIs.

CartePlusServiceBusConnectionString

The connection string for the CartePlus service bus.

CartePlusTesterApiCosmosDbConnectionString

The connection string for the tester API’s CosmosDB.

CartePlusTesterApiStorageAccountConnectionString

The connection string for the tester API’s storage account.

CartePlusTesterApiUrl

The url/endpoint for the tester APIs.

CartePlusWaveGenApiUrl

The url/endpoint for the wave-gen APIs.

CartePlusWebPubSubConnectionString

The connection string for the Web PubSub service.

CartePlusWebPubSubHubName

The name of the Web PubSub hub (where all messages are routed).

Well Known Configurations Sets

Please keep the list of configurations, secrets, and configuration sets alphabetically sorted.