Crear y publicar un bot con Azure PowerShellCreate and publish a bot with Azure PowerShell

se aplica a: SDK V4APPLIES TO: SDK v4

En este artículo se muestra cómo usar Azure PowerShell para crear un bot y registrarlo en Azure mediante un registro de aplicación existente de Azure Active Directory (Azure AD).This article shows you how to use Azure PowerShell to create a bot and register it with Azure using an existing Azure Active Directory (Azure AD) application registration.

Existen dos métodos para hospedar el bot:You have two approaches to hosting your bot:

  1. Bot de aplicación web.Web App Bot. Cree un bot y regístrelo con Azure mediante un registro de aplicación existente, tal y como se muestra en este artículo.Create a bot and register it with Azure using an existing application registration as shown in this article. Use este enfoque para desarrollar y hospedar un bot en Azure.Use this approach to develop and host a bot in Azure.
  2. Registro de canales de bot.Bot Channels Registration. Use este enfoque para crear y desarrollar su bot localmente y hospedarlo en una plataforma diferente de Azure.Use this approach to create and develop your bot locally and host it on a platform different from Azure. Para ello, siga los pasos descritos en el artículo registro de los canales de bot .To do so, follow the steps described in the Bot channels registration article. Al registrar el bot, se proporciona la dirección web en la que se hospeda el bot.When you register your bot, you provide the web address where your bot is hosted. Todavía puede hospedarlo en Azure.You can still host it in Azure.

Puede ejecutar estos comandos de forma local, mediante Azure PowerShell, o de forma remota a través de la Azure Portal, mediante CloudShell de Azure.You can run these commands locally, using Azure PowerShell, or remotely through the Azure portal, using Azure CloudShell. Para obtener más información sobre CloudShell de Azure, consulte la información general de Azure Cloud Shell.For more information about Azure CloudShell, see the Overview of Azure Cloud Shell.

Importante

Mientras el módulo de PowerShell AZ. BotService se encuentra en versión preliminar, debe instalarlo por separado mediante el Install-Module cmdlet.While the Az.BotService PowerShell module is in preview, you must install it separately using the Install-Module cmdlet.

La creación de un bot con Azure Bot Service y la creación local de un bot son maneras paralelas e independientes de crear un bot.Creating a bot with Azure Bot Service and creating a bot locally are independent, parallel ways to create a bot.

Requisitos previosPrerequisites

  • Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.If you don't have an Azure subscription, create a free account before you begin.

  • Un registro de aplicación de Azure AD existente que se puede usar desde cualquier inquilino de Azure AD.An existing Azure AD application registration that can be used from any Azure AD tenant.

    • Para completar esta guía de inicio rápido, necesitará el identificador y el secreto de la aplicación para el registro de la aplicación.To complete this quickstart, you will need the app ID and secret for the application registration.
  • Instale el módulo de PowerShell.Install the Az PowerShell module. Esto es necesario porque el Módulo AZ. BotService está en versión preliminar.This is required because the Az.BotService module is in preview.

    Install-Module -Name Az.BotService -AllowClobber
    
  • Si opta por usar Azure PowerShell en un entorno local:If you choose to use Azure PowerShell locally:

Elija una suscripciónChoose your subscription

Si tiene varias suscripciones a Azure, elija la suscripción adecuada en la que se debe facturar el recurso.If you have multiple Azure subscriptions, choose the appropriate subscription in which the resources should be billed.

  1. Para enumerar las suscripciones a las que puede acceder, use el cmdlet Get-AzSubscription .To list the subscriptions you can access, use the Get-AzSubscription cmdlet.

    Get-AzSubscription
    
  2. Establezca la suscripción específica mediante el cmdlet set-AzContext .Set the specific subscription using the Set-AzContext cmdlet.

    Debe usar la misma suscripción para el bot que para el registro de la aplicación.You should use the same subscription for your bot as for the application registration.

    Set-AzContext -SubscriptionId "<your-subscription-name-or-id>"
    

Crear un grupo de recursosCreate a resource group

Si aún no tiene un grupo de recursos de Azure que quiera usar para el bot, cree uno nuevo con el cmdlet New-AzResourceGroup .If you do not already have an Azure resource group you want to use for your bot, create a new one using the New-AzResourceGroup cmdlet.

  • Un grupo de recursos es un contenedor lógico en el que se implementan y se administran recursos de Azure como un grupo.A resource group is a logical container in which Azure resources are deployed and managed as a group.

En el ejemplo siguiente se crea un grupo de recursos con el nombre especificado y en la ubicación especificada.The following example creates a resource group with the specified name and in the specified location.

New-AzResourceGroup -Name <your-resource-group-name> -Location <your-resource-group-location>

Creación de un nuevo servicio de botsCreate a new bot service

Para crear un nuevo servicio de bot para el bot, use el cmdlet New-AzBotService .To create a new bot service for your bot, you use the New-AzBotService cmdlet. En el ejemplo siguiente se crea un nuevo servicio de bot con los valores especificados.The following example creates a new bot service with the specified values.

New-AzBotService -ResourceGroupName <your-resource-group-name> -Name <your-bot-handle> -ApplicationId <your-app-registration-id> -Location <your-bot-service-location> -Sku S1 -Description "<your-bot-description>" -Webapp

Para recuperar el estado de un servicio de bot, use el cmdlet Get-AzBotService .To retrieve the status of a bot service, you use the Get-AzBotService cmdlet. En el ejemplo siguiente se obtiene una lista de todos los recursos del grupo de recursos especificado.The following example gets a list of all the resources in the specified resource group.

Get-AzBotService -ResourceGroupName <your-resource-group-name>

Inicializar carpeta de proyectoInitialize project folder

Para inicializar la carpeta del archivo de proyecto, use el cmdlet Initialize-AzBotServicePrepareDeploy .To initialize the project file folder, you use the Initialize-AzBotServicePrepareDeploy cmdlet. En el ejemplo siguiente se inicializa el archivo especificado en la carpeta especificada.The following example initializes the specified file in the specified folder.

Initialize-AzBotServicePrepareDeploy -CodeDir C:\tmp\MyEchoBot -ProjFileName MyEchoBot.csproj

Publicar el servicio bot en AzurePublish bot service to Azure

Para publicar el servicio bot en Azure, use el cmdlet Publish-AzBotServiceApp .To publish your bot service to Azure, you use the Publish-AzBotServiceApp cmdlet. En el ejemplo siguiente se publica el servicio de bot especificado en Azure.The following example publishes the specified bot service to Azure.

Publish-AzBotServiceApp -ResourceGroupName myResourceGroup -CodeDir D:\tmp\MyEchoBot -Name MyEchoBot

Descarga de códigoDownload code

Para descargar el código de forma local, use el cmdlet Export-AzBotServiceApp .To download the code to work on it locally, you use the Export-AzBotServiceApp cmdlet. En el ejemplo siguiente se descarga el código para la aplicación de servicio de bot especificada en el grupo de recursos especificado.The following example downloads the code for the specified bot service app in the specified resource group.

Export-AzBotServiceApp -ResourceGroupName myResourceGroup -Name MyEchoBot

Limpieza de recursosClean up resources

Si no se necesitan los recursos que se han creado en este artículo, puede eliminarlos con el siguiente comando.If the resources created in this article aren't needed, you can delete them by running the following examples.

Eliminar el servicio botDelete the Bot Service

Para eliminar el servicio bot del grupo de recursos, use el cmdlet Remove-AzBotService .To delete the Bot Service from the resource group, you use the Remove-AzBotService cmdlet. En el ejemplo siguiente se elimina el servicio bot del grupo de recursos especificado.The following example deletes the bot service from the specified resource group.

Remove-AzBotService -Name MyEchoBot -ResourceGroupName myResourceGroup

Eliminar el grupo de recursosDelete the resource group

Precaución

En el ejemplo siguiente se elimina el grupo de recursos especificado y todos los recursos que contiene.The following example deletes the specified resource group and all resources contained within it. Si los recursos que están fuera del ámbito de este artículo existen en el grupo de recursos especificado, también se eliminarán.If resources outside the scope of this article exist in the specified resource group, they will also be deleted.

Remove-AzResourceGroup -Name myResourceGroup

Pasos siguientesNext steps

Después de descargar el código, puede continuar desarrollando el bot localmente en el equipo.After you download the code, you can continue to develop the bot locally on your machine. Una vez que pruebe el bot y esté listo para cargar el código de bot en el Azure Portal, siga las instrucciones que aparecen en el tema configuración de la implementación continua para actualizar el código automáticamente después de realizar los cambios.Once you test your bot and are ready to upload the bot code to the Azure portal, follow the instructions listed under set up continuous deployment topic to automatically update code after you make changes.