Deploying to Azure Functions
Install integrations packages:
To get the Slackbot HttpTrigger at /api/slack/event in your Azure Functions host:
$ dotnet add package Slackbot.Net.Azure.FunctionsTo bridge Azure Functions & ASP.NET Core:
$ dotnet add package Slackbot.Net.Azure.FunctionsWire it up
Secret function integration sauce found in ConfigureFunctionsWebApplication:
Program.cs
var host = new HostBuilder()
.ConfigureServices(s =>
{
s.AddAuthentication()
.AddSlackbotEvents(c =>
c.SigningSecret = Environment.GetEnvironmentVariable("CLIENT_SIGNING_SECRET")
);
s.AddSlackBotEvents();
})
.ConfigureFunctionsWebApplication(a => a.UseSlackbot())
.Build();
await host.RunAsync();Azure specifics
⚠️
The integration package only supports the Azure Function dotnet-isolated runtime!
Important Azure Site config to run as dotnet-isolated:
Not specific to Slackbot.NET, but necessary settings to run dotnet-isolated functions:
AzureWebJobsFeatureFlag: EnableHttpProxying- requirement as of preview2 of the ASP.NET Core integration packageFUNCTIONS_WORKER_RUNTIME: dotnet-isolated– to set the isolated modelinuxFxVersion: DOTNET|6.0– Just beause I'm deploying to Linux

Deployment to Azure:
$ func azure functionapp publish $FUNCTION_APP_NAMEA sample function app can also be found in the /Samples folder in GitHub. See Samples.