Bouw je eigen Bot in Microsoft Teams & Skype (stap voor stap)

Eind vorig jaar schreef ik een blog met daarin een voorspelling over Bots in Microsoft Teams. Hierin benoemde ik de mogelijk om zelf aan de slag te gaan met het maken van een eigen Bot. In het (verre) verleden (2004) heb ik ooit een bot gemaakt die je SharePoint kon laten doorzoeken met behulp van Live Communication Server (LCS), de verre voorloper van Skype voor Bedrijven.

bitspraakbot4

Met de mogelijkheid om Bots te bouwen in Microsoft Teams, is het een stuk eenvoudiger geworden om hiermee aan de slag te gaan. In een uurtje tijd lukte het me om een eigen bot te maken, deze in Azure uit te rollen, en deze vervolgens in Microsoft Teams, Skype en Skype voor bedrijven te gebruiken! Een korte samenvatting:

Bouwen van je Bot
Een goed startpunt is de Bot Builder SDK for .Net te gebruiken. Hier heb je de mogelijkheid om drie zip bestanden te downloaden die een Bot template beschikbaar maken in Visual Studio 2017.bitspraakbot5Tevens wordt er een link gelegd naar de Bot emulator, waarmee je je eigen Bot offline kan testen. Als je alles binnen hebt, kan je een nieuw project starten. Ik kan in dit artikel niet te veel in op de logica van een Bot, maar je kan heel eenvoudig je eerste logica toevoegen. bitspraakbot6

Testen van je Bot
Je kan de Bot testen door de emulator te gebruiken. Debug je project en voer het Bot ‘endpoint’ in, in de emulator. Het endpoint is van belang; via dit kanaal communiceert je Bot straks met Teams of Skype. Het endpoint bevindt zich op: https://[url]/api/messages

Registratie van je Bot
Bij het verbinden met je Bot, werk je met een application ID en een wachtwoord. Deze kan je zelf genereren en aanpassen in de web.config van het project, maar omdat je Bot straks ook online geregistreerd wordt, is het handig deze registratie eerst uit te voeren. Ga hiervoor naar https://dev.botframework.com/bots, en maak een nieuwe Bot aan. Je geeft tijdens deze registratie aan wat je Bot is en doet, de afbeeldingen van je Bot, en je endpoint. Tevens genereer je een ID en wachtwoord. Deze heb je op verschillende plekken nodig.

Uitrollen van je Bot
Nadat je registratie van je Bot klaar is, je het ID en wachtwoord in de web.config hebt geregistreerd hebt, en je de Bot werkend gezien hebt in de emulator, kan je de Bot uitrollen naar bijvoorbeeld Azure. Dit gaat eenvoudig via de publicatie optie in Visual Studio. Let er wel op dat je Bot communiceert over een beveiligde verbinding (https). Uiteraard is dit standaard binnen een Azure Web app.

Kanalen configureren
Je bot is gepubliceerd in Azure, en je kan nu beginnen met het configureren van de kanalen waar je Bot over mag communiceren. In mijn geval stel ik de Bot beschikbaar in Microsoft Teams, Skype en Skype voor Bedrijven. Het is een kwestie van aanzetten in je Bot configuratie online.

bitspraakbot7

Je Bot gebruiken in Microsoft Teams
Het is mogelijk om je Bot nu te gebruiken in Teams. Hiervoor is het handig om de Teams App Studio te downloaden. Met deze tool maak je eenvoudig een package (.zip) zodat je deze kan toevoegen in Teams.

bitspraakbot8.png

Ook hier gebruik je weer de ID en gegevens van je Bot. Uiteindelijk package je de Bot en wordt een .zip bestand gegenereerd welke gebruikers kunnen gebruiken om je Bot toe te voegen. Omdat het een test betreft, is dit de makkelijkste manier om je Bot te gebruiken. Uiteraard kan je de Bot, indien deze voldoet aan bepaalde eisen, ook publiceren in de Store van Microsoft.

Gebruikers kunnen nu de .zip gebruiken om de Bot toe te voegen. Selecteer hiervoor in de Store de optie ‘Een aangepaste app uploaden’ (linksonder in het menu).

bitspraakbot9

Je Bot is vervolgens beschikbaar in je Chat scherm, of in het Team waaraan je de Bot toevoegt.

bitspraakbot

Je Bot gebruiken in Skype
Het is eenvoudig je Bot te gebruiken in Skype (voor consumenten). Bij het activeren van het kanaal online, krijg je een URL. Door deze URL aan te klikken wordt de Bot toegevoegd aan je contacten in Skype. Je kan de Bot daarna direct gebruiken

bitspraakbot3

Je Bot gebruiken in Skype voor Bedrijven
Je Bot beschikbaar stellen in Skype voor Bedrijven binnen je organisatie kan je centraal regelen. Dit kan vooralsnog alleen via PowerShell. De handleiding hiervoor staat hier beschreven: https://skypeappregistration.azurewebsites.net/bot/93640d52-ac94-47c9-8609-2c985b8fd1b2. In feite registreer je de Bot in Skype onder een eigen account (bijvoorbeeld: bot@bitspraak.nl).  Het kan tot 8 uur duren voordat de Bot bij alle gebruikers beschikbaar is.

bitspraakbot2

Conclusie
Het maken van een Bot is relatief eenvoudig, als je tenminste de logica van je Bot buiten beschouwing laat. Hoewel je een bewerkelijk aantal stappen moet zetten om je Bot werkend te krijgen, zijn de stappen niet heel lastig. De uitdaging ligt vooral bij het ‘intelligent’ maken van je Bot.

De toepassingen van een Bot zijn natuurlijk legio: informatie opvragen, simpele taken uitvoeren, etc. Doordat je Bot in Teams of Skype aanwezig is, kan je makkelijk ook onderweg via je telefoon je Bot benaderen.

Op dit moment bevat mijn Bot nog niet veel handigheidjes. De komende tijd zal ik daarom af en toe een update geven van de vorderingen van de Bitspraak Bot. Mocht je intussen vragen hebben, laat het mij dan weten!