Skills Dev 3

Skills Dev Assignment

This assignment will ask you to explore the concepts introduced in class and set up a simple slack bot

Brief: Build a simple slackbot for this course

Due Date: Tuesday Nov 8, 12pm ET

Submission: Add completed code to ‘skills3’ folder in Student section of the course’s GitHub Repo.

Learning Objectives

As part of the exercise, students will:

  • build familiarity with Slacks APIs and the potential for creating interactive bots for their platform;
  • gain experience with interacting with APIs;

Requirements

For this project, use the basic-slack-bot template available in the github repo’s code samples folder.. Using this as a starting point, you’re going to add a basic bot.

For this project you have three options:

__Beginner __

If you feel like you would like a guided ste-by-step project, follow this version of the assignment.

As part of this project, you’ll build a basic submisisons bot for a course.

Intermediate

If you’re feeling more confident, the project is open ended and you should feel free to create a bot that you think is interesting.

Brief: Create a Slackbot for this course.

Requirement:

  • Must use at least one slash command

Possible approaches:

  • A grading bot, that will give you information on your assignment completion
  • A tutorial bot, that might let you to do simple coding exercises to build your skills on demand
  • An anonymous bot, that would let you post anonymously to the help channel
  • A gem search bot, that would let you search rubygems from the command line

Advanced

Brief: Create a Slackbot that uses slash commands for this course and the bot either

Requirement:

  • Must use at least two slash commands
  • Must include one of the following:
    • data storage in a database
    • a scheduled task / scheduled actions
    • delivery of information in a medium that is not slack (e.g. by SMS, email, on the web)

Possible approaches:

As above but also…

  • An informational bot, that would schedule delivery of information about the course e.g. initial links and setup at the start, reminders about upcoming assignments, etc.
    • A slash command for an admin add/edit/modify view upcoming information
    • A scheduled task to deliver that information on the deadline
  • A summary bot, that would summarise the activity on a channel for you and send it by SMS or email;
  • A archive bot, that would create a simple list of links shared on slack available on a webpage.