Gerenciar recursos do bot

aplica-se a: SDK v4

Em geral, os bots consomem serviços diferentes, como LUIS.ai ou QnaMaker.ai. Quando estiver desenvolvendo um bot, você precisará ser capaz de rastrear todos eles. Você pode usar vários métodos, como appsettings.json, web.config ou .env.

Importante

Antes do lançamento do Bot Framework SDK 4.3, oferecíamos o arquivo .bot como um mecanismo para gerenciar recursos. No entanto, daqui em diante, é recomendável que você use o arquivo appsettings.json ou .env para gerenciar esses recursos. Os bots que usam o arquivo .bot continuarão funcionando por enquanto, mesmo que o arquivo .bot tenha sido preterido . Se você estava usando um arquivo .bot para gerenciar recursos, siga as etapas que se aplicam para migrar as configurações.

Migrar as configurações do arquivo .bot

As seções a seguir abordam como migrar as configurações do arquivo .bot. Siga o cenário que se aplica a você.

Cenário #1: Bot local com um arquivo .bot

Nesse cenário, você tem um bot local que usa um arquivo .bot, mas o bot não foi migrado para o portal do Azure. Siga as etapas abaixo para migrar as configurações do arquivo .bot para o arquivo appsettings.json ou .env.

  • Se o arquivo .bot estiver criptografado, você precisará descriptografá-lo usando o seguinte comando:
msbot secret --bot <name-of-bot-file> --secret "<bot-file-secret>" --clear
  • Abra o arquivo .bot descriptografado, copie os valores e adicione-os ao arquivo appsettings.json ou .env.
  • Atualize o código para que ele leia as configurações do arquivo appsettings.json ou .env.

No método ConfigureServices, use o objeto de configuração fornecido pelo ASP.NET Core, por exemplo:

Startup.cs

var appId = Configuration.GetSection("MicrosoftAppId").Value;
var appPassword = Configuration.GetSection("MicrosoftAppPassword").Value;
options.CredentialProvider = new SimpleCredentialProvider(appId, appPassword);

Se necessário, provisione recursos e conecte-os ao seu bot usando o arquivo appsettings.json ou .env.

Cenário 2: bot implantado no Azure com um arquivo .bot

Nesse cenário, você já implantou um bot no portal do Azure usando o arquivo .bot e agora deseja migrar as configurações do arquivo .bot para o arquivo appsettings.json ou .env.

  • Baixe o código do bot no portal do Azure. Ao baixar o código, você será solicitado a incluir o arquivo appsettings.json ou .env que terá seu MicrosoftAppId e MicrosoftAppPassword e outras configurações nele.
  • Abra o arquivo baixado appsettings.json ou .env e copie as configurações dele para seu arquivo appsettings.json ou .env local. Não se esqueça de remover as entradas botSecret e botFilePath do arquivo appsettings.json ou .env local.
  • Atualize o código para que ele leia as configurações do arquivo appsettings.json ou .env.

No método ConfigureServices, use o objeto de configuração fornecido pelo ASP.NET Core, por exemplo:

Startup.cs

var appId = Configuration.GetSection("MicrosoftAppId").Value;
var appPassword = Configuration.GetSection("MicrosoftAppPassword").Value;
options.CredentialProvider = new SimpleCredentialProvider(appId, appPassword);

Você também precisará remover o e da botFilePath botFileSecret seção Configurações do Aplicativo no portal do Azure.

Se necessário, provisione recursos e conecte-os ao seu bot usando o arquivo appsettings.json ou .env.

Cenário 3: para bots que usam o arquivo appsettings.json ou .env

Esse cenário aborda o caso em que você está começando a desenvolver bots usando o SDK 4.3 do zero e não tem arquivos .bot existentes para migrar. Todas as configurações que você deseja usar em seu bot estão no arquivo appsettings.json ou .env, conforme mostrado abaixo:

{
  "MicrosoftAppId": "<your-AppId>",
  "MicrosoftAppPassword": "<your-AppPwd>"
}

Para ler as configurações acima em seu código C#, você usará o objeto de configuração fornecido pelo ASP.NET Core, por exemplo: Startup.cs

var appId = Configuration.GetSection("MicrosoftAppId").Value;
var appPassword = Configuration.GetSection("MicrosoftAppPassword").Value;
options.CredentialProvider = new SimpleCredentialProvider(appId, appPassword);

Se necessário, provisione recursos e conecte-os ao seu bot usando o arquivo appsettings.json ou .env.

Recursos adicionais

  • Para saber como implantar o bot, confira o tópico Implantação.
  • Saiba como usar o Azure Key Vault para proteger e gerenciar as chaves e segredos criptográficos usados por aplicativos e serviços de nuvem.