Cloud chat bot for lazy people

These days with chat applications everywhere people tend to ask other people about things there although a direct answer would not be far on a website or it would be the first Google search result. It is understandable because mankind is lazy, so I am. Therefore, I want to let bots answer the easy questions for me. In my situation as a DevOps person these questions can be about the health of a service I am responsible for. I will show you how you can run a Python bot with [Azure bot service]( https://azure.microsoft.com/en-us/services/bot-service/), reachable by [Slack]( https://slack.com/) which gives you a service health status based on information from a [Prometheus](https://prometheus.io/) monitoring system.

Tags: DevOps, Infrastructure

Scheduled on thursday 17:10 in room media

Speaker

Björn Meier (@da_bjoerni)

Bjoern is a software engineer at Blue Yonder GmbH since 2016 after graduating in Computer Science. More correctly you could say he is a DevOps engineer at Blue Yonder where he is developing and operating - among other things - the services for the external data interfaces, preprocessing and data storage to enable the data scientists to run their prediction models. He loves the versatility and ecosystem of python to write e.g. production web apps, data analysis tools or operational scripts. If there was more free time he would like to spent it to dive deeper into functional programming languages like elixir to have a different view on things.

Description

At work we established Slack years ago as our chat application and by now quite a percentage of communication goes through it. As a result it got much easier to contact one person or a group simultaneously. And this is good as we can share our knowledge save each other time. But it also introduced a category of questions in the chat which only require simple tedious tasks to get the answer and then post it as a response. One possibility is to educate and point others to the place where they can find the answer or what tasks they have to do. The other one is use a chat bot for this. Both ways have advantages and for the bot it is that you can import a specific type of response more easily into a conversation without first gathering the information and copy and paste it. I am a developer and service operator and one category of questions which fits this is the category of service health questions, like "Does service X has a problem right now?". Hence, I will use a bot to answer them. First I will show you how you can create a python bot for the Azure bot service. With it the questioner then can either directly use the bot to answer his question or you can just create the response for him without going to the service health monitoring. In this case the service health information has to be obtained from a Prometheus monitoring service and then transformed into a chat message.