## ¶ Device Provisioning Service

Environment Variables

- DATABASE__CONNECTIONSTRING - Your SQL Server connection string. Make sure you have an empty database called `Cofybox` setup on your server. Example: `Data Source={{myServerName}};Initial Catalog=Cofybox;Persist Security Info=True;User ID={{myUserName}};Password={{myPassword}}`
- SERVICEBUS__CONNECTIONSTRING - Your Azure Servicebus connection string. Example: `Endpoint={{myServiceBusBaseAddress}};SharedAccessKeyName={{myAccessKeyName}};SharedAccessKey={{myAccessKey}}`

appsettings.json

Make sure to add the following json code to your app settings file. These settings are used to generate the shared access signature for the devices, so make sure the policy has write access to the ServiceBus.

    "ServiceBus": {
        "PolicyName": "",
        "QueueName": "",
        "Url": ""
    }

## ¶ Hub Listener

Environment Variables

- DATABASE__CONNECTIONSTRING - Your SQL Server connection string. Make sure you have an empty database called `Cofybox` setup on your server. Example: `Data Source={{myServerName}};Initial Catalog=Cofybox;Persist Security Info=True;User ID={{myUserName}};Password={{myPassword}}`
- SERVICEBUS__CONNECTIONSTRING - Your Azure Servicebus connection string. Example: `Endpoint={{myServiceBusBaseAddress}};SharedAccessKeyName={{myAccessKeyName}};SharedAccessKey={{myAccessKey}}`
- COSMOSDB__AUTHKEY - The authentication key of your Azure CosmosDb

appsettings.json

Make sure to add the following json code to your app settings file. The CosmosDb url is the base address of the Azure CosmosDb. Note that it should end with a `/`. (e.g. https://my-cosmosdb.documents.azure.com:443/).
The SensorValueStore settings define where the sensor data will be stored. Make sure you create this database/collection in azure.

    "CosmosDB": {
        "Url": ""
    },
    "SensorValueStore": {
        "Database": "Cofybox",
        "Collection": "SensorValues"
    }

## ¶ Web API

Environment Variables

- DATABASE__CONNECTIONSTRING - Your SQL Server connection string. Make sure you have an empty database called `Cofybox` setup on your server. Example: `Data Source={{myServerName}};Initial Catalog=Cofybox;Persist Security Info=True;User ID={{myUserName}};Password={{myPassword}}`
- APIRESOURCE__SECRET - This key is used to check if client apps have access to the api. You may choose this key yourself, but make sure you configure the same key in the IdentityServer project.

appsettings.json

Make sure to add the following json code to your app settings file. You may choose the api resource name yourself, but make sure u configure the same name in the IdentityServer project.
The IdentityServer url is the base address of the identity server. Note that it may not end with a `/`. (e.g. https://localhost:5001)

    "ApiResource": {
        "Name": "web-api"
    },
    "IdentityServer": {
        "Url": ""
    }

## ¶ IdentityServer

Environment Variables

- `DATABASE\_\_CONNECTIONSTRING` - Your SQL Server connection string. Make sure you have an empty database called `Cofybox` setup on your server. Example:

    Data Source={{myServerName}};Initial Catalog=Cofybox;Persist Security Info=True;User ID={{myUserName}};Password={{myPassword}}

- `APIRESOURCE\_\_SECRET` - This key is used to check if client apps have access to the api. You may choose this key yourself, but make sure you configure the same key in the Web API project.

appsettings.json

Make sure to add the following json code to your app settings file. You may choose the api resource name yourself, but make sure u configure the same name in the Web API project.
The Api resource url is the base address of the api. Note that it may not end with a `/`. (e.g. https://localhost:3001)

    "ApiResource": {
        "Name": "web-api",
        "url": ""
    },