October 25, 2018
How to Get Started with Bots
Innovation is at your fingertips with bots, if you can find the right process to improve.
Due to the popularity of collaboration platforms such as Facebook, Microsoft Teams, Slack and so on, the usage of bots has become increasingly common. Running bots on these platforms can increase productivity, inspire innovation and provide the opportunity for employees to learn new skills.
Interested in creating your own bots but unsure how to get started? I’m going to provide some tips and links to help with the process. For simplicity’s sake, this blog will only discuss two vendors in the collaboration space: Cisco and Microsoft. For example, bots can reside within Cisco Webex Teams or Jabber, and Microsoft Skype for Business or MS Teams.
Find a Process to Optimize
Organizations typically have numerous processes that are manual and repetitive. Some processes and tasks require users to access multiple back-end resources to answer questions or resolve issues. In most cases, the process will require multiple interfaces. With a Webex Teams/Jabber or MS Teams/Skype for Business bot, you can automate, optimize and enhance connectivity to multiple back ends, creating chat bots that are accessible from anywhere, anytime.
Think of a simple, repetitive process that one of your business units performs on a regular basis. For example, a common process is unlocking Active Directory passwords by the IT support staff. The current process may include the user making a phone call to the help desk, the rep unlocking the password, and the rep opening and closing a customer relationship management ticket.
What processes in this flow can be improved? What if a bot could handle the password unlock as well as opening and closing the CRM ticket for tracking purposes? Automating this simple workflow process could potentially save valuable time spent by the IT support staff, thereby allowing them to work on other higher-priority items.
Should You Build a Custom Bot?
Bot development can be very customized, using common programming languages such as Python or Node.js; alternatively, it can utilize cloud platforms such as built.io or IFTTT in certain use cases. Selecting the best option will depend on your needs and development capabilities.
For those going the custom route, deciding where to host a bot can seem like a daunting task. Luckily, there are services such as the Microsoft Azure Bot Service to help with the process. Hosting a bot on Windows or Linux servers can also be simplified using Docker — you’ll find that most bot packages such as BotKit provide a Dockerfile.
Learn How to Use Bots
With any new technology, training and practice is key. There are many online resources to help get you started. Here are a few within the Cisco and Microsoft spaces:
- Learning Labs: Cisco learning labs are a great way to step through the process of building bots. This link provides access to basic programming labs as well as bot labs.
- App Hub: The Cisco App Hub has prebuilt bots you can download, which can help you get an understanding of how bots work.
- Webex Teams API: GitHub contains many source code samples. This link is a Python library for working with Webex Teams.
- Botkit with Jabber: Botkit is a Node.js library for easily building bots on many of the popular platforms. If you are using Jabber, this is a great place to start.
- Bots 101 from Channel 9: Microsoft’s video series contains many tutorials on bot building.
- Bot Directory: Microsoft’s prebuilt bots are listed here.
- Bot Framework with Skype: This link provides information on getting started with Skype for Business bots.
- BotBuilder: BotBuilder is Microsoft’s bot building package. This link provides code samples on GitHub. Also check out BotKit as it also has a plug-in for MS Teams and the Bot Framework.
Steps for Developing Your Bot
Once a decision has been made on where to host the bot, the implementation framework has been laid out, and some preliminary research has been completed, it’s time to start thinking of bot ideas and building them. Here are some suggestions to help with that process:
- As mentioned previously, define your business processes — look for areas that can be improved.
- Discuss areas of concern in relation to processes within your business units.
- Brainstorm to find a simple bot use case that will automate a business process.
- Find staff who can build the bot — have them take on training if necessary.
- Create a minimum viable product.
- Run a pilot and get feedback.
- Tweak as necessary or add additional features such as an FAQ.
- Distribute to production.
- Repeat the process for other use cases.
Innovating Through Bots
Bots are becoming easier to implement and there are many resources to help get you started. Due to the ease of implementation, bots will become increasingly widespread within organizations as a means of driving productivity; therefore, now is a good time to start putting bots to work within your environment.
Building bots may seem difficult at first, but after taking small steps to learn the process, it will soon become apparent that it can be done relatively easily with minimal resources.
Think of a simple use case to get started, build it, then expand it and repeat until you have a fully functional bot or bots with many useful features.
Implementing a bot and discovering how it can impact your business is a very rewarding process — though, planning carefully and finding an impactful use case are key. Bots can empower employees to innovate, increase customer satisfaction and reimagine how work gets done.
Turn to the CDW ChatOps Team for Guidance
If you have a lack of development resources or are unsure if you can create bots on your own, CDW’s ChatOps Roadmap and Advisory Service is a good option. CDW provide a two-to-five-day workshop to discuss bot use cases and offers an option to build a minimum viable product for one of the identified use cases. We can help you decide which collaboration platform is best for your needs, as well as where to host your bot. Contact your CDW account manager to learn more.