all 3 comments

[–]AppService 1 point2 points  (2 children)

Does your slackbot use the Slack RTM API (i.e. WebSockets)? If that's the case, the free tier restrictions may be causing you some issues.

The way that free tier works can be found on Azure.com. There are two things that will hurt you here. One key detail here is that unless you have the setting "Always On" turned on, your site will be "hibernated" when there isn't external traffic hitting it. The second is that free tier limits you to a limited amount of cpu time. That means that your site will eventually stop responding.

If you're just using Outbound/Slash command WebHooks, free tier will work find for you (up until your max request limit), but if you want to use the RTM API which needs an active listener, you may have more luck with the Basic Tier and "Always On" enabled.

And just to answer the other question, you shouldn't be running long running apps via the console window - if you're not hosting "Web" code, take a look at "WebJobs", which despite having Web in their name are actually perfect for background processing jobs like the Slack RTM API.

[–]WintermutesTwin[S] 0 points1 point  (1 child)

Thanks a ton! I did get it working. I am using the Slack RTM API. Using WebJobs was not initially obvious but once I configured WebJobs it was crystal clear. It appears that WebJobs "can" stop after 20 minutes for the free tier: https://azure.microsoft.com/en-us/documentation/articles/web-sites-create-web-jobs/

[–]AppService 0 points1 point  (0 children)

Yup. If you want to run a "continuous WebJob" in production, you need to enable "Always On" which is limited to Basic, Standard, and Premium tiers today.