Git Product home page Git Product logo

skynet's Introduction

Skynet

Build Status Coverage Status Maintainability

A simple chatbot for Skype.

Getting Started

Prerequisites

  • Node.js 8.9+

Installing locally

$ git clone https://github.com/ricardotulio/skynet
$ cd skynet
$ yarn install
$ yarn start

Using docker

$ docker run -d -p 80:80 -v $(pwd)/.env:/skynet/.env ricardotulio/skynet

Configuring

Edit .env file setting up your MicrosoftApp credentials.

Running the tests

To run tests, use yarn test.

Run linter

To run linter, use yarn lint.

Building

To build the project, use yarn build.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

skynet's People

Contributors

ricardotulio avatar

Watchers

 avatar

skynet's Issues

bot: can't work without storage state method

The bot throws the following message:

The Bot State API is deprecated. Please refer to https://aka.ms/I6swrh for details on how to replace with your own storage.

And can't respond messages.

  • I'm submitting a ...

    • bug report
    • feature request
    • support request => Please do not submit support request here, see note at the top of this template.
  • What is the current behavior?
    The bot don't answer with default message.

  • What is the expected behavior?
    The bot must answer with default message.

setup: create code climate configuration file

Note: for support questions, please use stackoverflow. This repository's issues are reserved for feature requests and bug reports.

  • Do you want to request a feature or report a bug?

  • What is the current behavior?
    The code climate are reporting issues found on build directory that contain transpiled files, so these files don't needs to follow eslint style.

  • What is the expected behavior?
    The code climate must ignore build directory.

  • What is the motivation / use case for changing the behavior?
    Generates a more real code quality analysis. At this moment, the code climate maintainability note is for this project because transplanted code have some duplicated snippets, for example: https://codeclimate.com/github/ricardotulio/skynet/issues.

infra: fix bot default port

Note: for support questions, please use stackoverflow. This repository's issues are reserved for feature requests and bug reports.

  • I'm submitting a ...

    • bug report
    • feature request
    • support request => Please do not submit support request here, see note at the top of this template.
  • What is the current behavior?
    If PORT environment variable wasn't defined on .env file, the application uses port 3987. The problem is nginx redirect requests to port 3000 and bot can't receive requests

  • If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via
    https://plnkr.co or similar (you can use this template as a starting point: http://plnkr.co/edit/tpl:AvJOMERrnz94ekVua0u5).
    Run docker-compose up and try to create requests on http://localhost:8000 with the following body:

{
  "type": "conversationUpdate",
  "membersAdded": [
    {
      "id": "default-user",
      "name": "User"
    }
  ],
  "id": "5f3j5hic28bk",
  "channelId": "emulator",
  "timestamp": "2018-03-04T19:15:40.043Z",
  "localTimestamp": "2018-03-04T19:15:40+00:00",
  "recipient": {
    "id": "fm6g4bgh31a",
    "name": "Bot"
  },
  "conversation": {
    "id": "ch0n8g26hka9"
  },
  "serviceUrl": "http://localhost:8000"
}
  • What is the expected behavior?
    Respond with 202.

chatbot: send premptive messages

Note: for support questions, please use stackoverflow. This repository's issues are reserved for feature requests and bug reports.

  • I'm submitting a ...

    • bug report
    • feature request
    • support request => Please do not submit support request here, see note at the top of this template.
  • What is the current behavior?
    The chatbot just answer messages and can't send messages preemptively.

  • What is the expected behavior?
    Receive a message from another service (exception handler, ci, etc) and send a message to an specific user or group.

  • What is the motivation / use case for changing the behavior?
    It allows create integrations with another services.

lincense: create LICENSE.md

Currently, this repo declare MIT license and create a link to file on README.md, but this file don't exists.

infra: add nodemon on development environment

  • I'm submitting a ...

    • bug report
    • feature request
    • support request => Please do not submit support request here, see note at the top of this template.
  • What is the current behavior?
    Every time that the code has changed, is necessary to reload node container. Sometimes anybody forgot to reload and can't understand why change has no effect.

  • What is the expected behavior?
    Every time that the code be changed, the application reload automatically.

  • What is the motivation / use case for changing the behavior?
    Make development more easier.

infra: create development enviroment using docker

Note: for support questions, please use stackoverflow. This repository's issues are reserved for feature requests and bug reports.

  • I'm submitting a ...

    • bug report
    • feature request
    • support request => Please do not submit support request here, see note at the top of this template.
  • What is the current behavior?
    Currently this project hasn't a development environment.

  • What is the expected behavior?
    I want to just exec docker-compose up -d and had a development enviroment so closer as possible to production enviroment.

  • What is the motivation / use case for changing the behavior?
    A development environment using docker can make easier to develop and test new features.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.