A skypebot which automates access to the internal team facilities (like jira, build systems, etc.). Can be easily extended to support new feature since follows an extendable architecture.
Many development teams usually have lots of internal resources like build server, bugtracker, time management system and etc. These resource are very convinient themselves (otherwise they wouldn't have been used) but there is one big inconvinient thing about them: there is no single point of access (Some resources are managed via browser app, some have desktop tray app). The purpose of this project is to address such issue. The skypebot will provide 'command line' style access to each of the resources (for more see next section). You may ask: why skypebot and not one more app? My answer is: the skype is the usual communicator within teams, it is ported to many platforms (including mobile), it doesn't require any vpn, tunnel or other transport tweaks. So it's very popular and widespread.
-
Accessing to the build system (e.g. cruise control) and printing status of the buidls you: eva cc eva: firstProject: success secondProject: failure
-
Hinting in the chat about mentioned bug/task you: hey, what's about bug BG-1234 eva: BG-1234 'Eva incorrectly handles messages about Jira' status: opened, assignee: nick.l
-
Quick executing simple js code: you: js var x = 3; x * 2 + 3; x eva: 9
-
In case you've setup build system skypebot will notify you about build failures/fixes in the following manner: eva: the build 'MyAwesomeProject' has been broken. Breaker: Nick.L
-
Print random person from the current chat (E.g. you need to choose who will deploy build to production :)): you: eva randomguy eva: nick.l
-
Register a skype account for the bot and put its id to the 'src\Skypebot.Core.Test\app.config' and 'src\Skypebot.ConsoleInterface\app.config' into botskypeid entry.
-
Change database username and password to the appropriate ones in the 'src\Skypebot.ConsoleInterface\app.config'.
-
Create empty database with the name 'evadb'
-
Execute 'evadb.sql' over this db.
-
Fill the 'evadb_populatedata.sql' with the appropriate data (following the example given in this file) and execute over this db.
-
Refresh the dbcontext item via visual studio in the DataAccessLayer project.
-
Run the build.bat file from the build folder.
-
Open skype app under you test account registered in the step 1, run the 'Skypebot.ConsoleInterface.exe' from the ouput folder.
-
Skype may ask you to allow access for 3rd party components - of course allow :)
It's all, now skype bot should reply to your commands, good luck!
-
To add new command you need: create new class YouNewCommand inherit it from the AbstractCommand add YouNewCommand into the constructor of CommandManager
-
To add new notification you need: To be added
For now it's not very convinient to manage command, it should be after issue #1 is done.