Symphony LLC "botathon" bots

Description

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.

Contribution Inventory:

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

Value:
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.

Proposed roadmap:

  • Varies by project

Possible future innovations:

  • Varies by project

Current state:
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.

Risks:

  • 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.

Copyright holder:
Symphony Communication Services LLC. CCLA is on file.

License:
Apache License, version 2.0

Status

Assignee

Maurizio Pillitu

Reporter

Peter Monks

Due date

None

Priority

Medium
Configure