SDK C# com suporte a .NET Core 15 de julho de 2024 15:41 Atualizado Índice: Migrando do antigo SDK Mapeamento de tipos Mapeamento de métodos Executando Lançamos na semana passa uma nova versão no SDK C# do BLiP, que permite a construção de aplicações C# multiplataforma (Windows, Linux e Mac) que podem ser facilmente hospedados na nuvem, inclusive em containers Docker. Isso é possível graças a portabilidade do .NET Core no qual o mesmo é baseado. Consulte a documentação do BLiP para saber como começar a utilizá-lo. Migrando do antigo SDK Para realizar a migração de um chatbot que utiliza a versão antiga do SDK (baseada no pacote Blip.MessagingHub.Client) é necessário realizar os seguintes passos: Criar um projeto utilizando o template do BLiP, utilizando o comando dotnet new blip-console (como descrito no menu lateral direito na seção SDK C# na documentação do BLiP). Copiar as classes e o arquivo application.json para o novo projeto e instalar as demais dependências (exceto do SDK do BLiP, já instalada no template). Substituir o nome das interfaces e classes antigas para o SDK novo (mapeado abaixo). Ajustar as chamadas dos métodos com assinaturas alteradas (mapeado abaixo). Não é possível reutilizar os projetos antigos, pois os mesmos se baseiam na versão antiga do .csproj do .NET, que é incompatível com projetos .NET Standard / .NET Core utilizados no novo SDK do BLiP. Mapeamento de tipos Antigo: Takenet.MessagingHub.Client.Sender.IMessagingHubSender Novo: Blip.Client.ISender Antigo: Takenet.MessagingHub.Client.Listener.IMessageReceiver Novo: Blip.Client.IMessageReceiver Antigo: Takenet.MessagingHub.Client.Listener.INotificationReceiver Novo: Blip.Client.INotificationReceiver Antigo: Takenet.MessagingHub.Client.Listener.ICommandReceiver Novo: Blip.Client.ICommandReceiver Antigo: Takenet.MessagingHub.Client.IMessagingHubClient Novo: Blip.Client.IBlipClient Antigo: Takenet.MessagingHub.Client.MessagingHubClientBuilder Novo: Blip.Client.BlipClientBuilder Antigo: Takenet.MessagingHub.Client.Host.* Novo: Blip.Client.Activation.* Antigo: Takenet.MessagingHub.Client.Extensions.* Novo: Blip.Client.Extensions.* Antigo: Takenet.MessagingHub.Client.Listener.* Novo: Blip.Client.Receivers.* Mapeamento de métodos Antigo: IMessagingHubSender.SendCommandAsync(Command) Novo: Blip.Client.ISender.ProcessCommandAsync(Command, CancellationToken) Observação: Na maior parte dos métodos da nova versão, é obrigatório informar um cancellationToken para garantir o cancelamento correto das operações assíncronas e evitar o congelamento do processo. Neste caso, passe sempre o cancellationToken recebido nos receivers. Executando Observação: Na maior parte dos métodos da nova versão, é obrigatório informar um cancellationToken para garantir o cancelamento correto das operações assíncronas e evitar o congelamento do processo. Neste caso, passe sempre o cancellationToken recebido nos receivers. Mas caso deseje que seu chatbot seja ainda um Class library por qualquer motivo, utilize o template blip-console ao criar o projeto e o altere para Class library. Para executar o chatbot neste caso, será necessário outro projeto como host. Para mais informações, acesse a discussão sobre o assunto em nossa comunidade ou os vídeos no nosso canal. 😃 Artigos relacionados Como enviar notificações WhatsApp via API do Blip Como construir bots através de SDKs ou API HTTP [SDK C#] Criando uma lista de distribuição de conteúdo Como criar blocos no Builder Como enviar SMS via API