Symphony Communications Services LLC recently ran an internal "botathon" - a hackathon focused on the development of custom bots for the Symphony platform. The event successfully concluded on 2016-08-09, and resulted in the creation of 16 new bots, all of which are being offered to the Foundation.
Note that although this is a single contribution, each bot will be managed as an independent project within the Foundation, given that each has a distinct project team and given some of the constraints of the Foundation's infrastructure.
|Bot Name||Developer's Name||Partner's Name||Bot Description||Bot Platform|
|Symfuny Chat Bot||Glenn Anderson (PLAT)||Matt Arnold||A bot that dose it all via webhooks. (This bot will not be able to be opened source till after spring 41 due to Glenn using some work arounds to pull information out of the symphony)||node.js|
|TwilioBot||Matthew Joyce||A bot that interfaces with twilio so that people can handle setting up twilio calls or SMS messages via a symphony chat.||Python|
|FactBot||Kinkoi Lo||Erin Lish||A Bot the spits out random and uncensored facts per userer request||Java|
|faqbot||Paul Pollack||Designed to capture questions and answers from the community. The primary goal is to improve productivity by reducing time spent asking and answering the same questions over and over again.||Java and uses ElasticSearch running in docker|
|GreenHouse Bot||Ryan D'souza||Christiane Martin||There was an issue with several developers missing their interviews, which causes interviewees to have a bad interview experience and be less likely to refer Symphony to their friends. This bot aims to fix that issue by reminding interviewers that they have an interview 30 minutes before their interview begins. Because the bot interacts with the Greenhouse API and not Google Calendar, this bot will always have the latest and most relevant information, and is therefore more than just a Google Calendar Pop Up Reminder.||Java, using IntelliJ as an IDE and Maven to manage dependencies|
|sidekick||Christian Tschudin||A command line assistant bot that handles regular mass ancouncments.||Python. (It would make sense to fuse the different fragments into a real library).|
|JenkinsBot||Jignesh Katrodiya (PLAT)||A bot that integrates with Jenkins to that will keep you informed on the status of a Jenkins job.||Java|
|HomeSecurity Talking Bot||Laurentiu Florin Moisa||Ariel Himmelstern||The Bot interfaces with a raspberrypi and its attached motion sensors and speakers to provide instance notification when the sensor is tripped. It also allows the user to type out a response that it will play through the speakers to the intruder.||GO - compiled for ARM7 and bash and the rest are standard C or Python apps already existent in Unix systems it's based on the botexample we have with minor modifications|
|RoomManagerBot||Susan Haimet||Ryan D'Souza||In the future, this bot can be expanded to continuously remind Symphonians that they have an upcoming interview until they respond with some form of acknowledgement||Java, using IntelliJ as an IDE and Maven to manage dependencies|
|Butler Bot||Vinay Mistry||A bot based on the symphony Hubot Implementation. The Bot is connected to the following information providers Zendesk, Jira, Google Stock, Yahoo, Finance charts, Markit data API, Google Maps.||coffee.script (java script like) based on Hubot (GitHub bot)|
|botbot||Danny Chan||A Bot the performs simple langue translations with Microsoft translate.||Java|
|SymBrowser Bot||Ryan D'souza||This bot allows you to browse the Internet and certain "Contexts", while making it look like you're doing work. Right now, only the Reddit context is allowed, but one can get the text from any website in a format that looks like it is a long message from another Symphony user. Other contexts can be implemented fairly easily through the bot's modular design.||Java, using IntelliJ as an IDE and Maven to manage dependencies|
|LunchBox||Shwetha Gopalan||A bot that page scrapes the daily lunch off of Cater2me and then provides a breakdown and rating system for each item so that people can give quick and easy feedback about lunch. Then bot compiles this into an excel file.||Java|
|V for Symphony||Christian Tschudin||A voice assistant||Java and the Android SDK.|
|Jira-Bot||Paul Pollack||Ryan D'souza||This bot was created to optimize the workflow between Jira and Symphony. It's set to poll Jira every X minutes to get the most recently updated issues. It then assigns a priority to each issue so that only the most important updates are messaged (i.e. issues that are re-opened have high priority and are communicated, while updates like comments are low priority and not communicated)||Java, using IntelliJ as an IDE and Maven to manage dependencies|
|C-3PO||Abhinav Raj||I am a fun translation bot. I support three fun translations : Yoda, Minion, Pirate||Java|
These bots represent a variety of functional and technical innovations that, at a minimum, provide a large number of "worked examples" for other bot developers to crib from. Some of them also provide generally applicable extensions to the core Symphony platform that many users of Symphony will find useful.
- Varies by project
Possible future innovations:
- Varies by project
All of the contributed bots build and run, however given the (deliberately) time-limited nature of the botathon event, most are not yet at a "production grade" of code quality. As with all contributions, they will be accepted into the Foundation in "incubating" state, then nurtured towards release.
- Some of these bots were developed by interns, who will (unless otherwise specified) become the project owners of each of their respective projects. When these individuals conclude their internships with Symphony Communications Services LLC, they may no longer have an incentive to actively maintain and invest in these projects.
Symphony Communication Services LLC. CCLA is on file.
Apache License, version 2.0