Skip to content

A Hubot script for managing Object Storage containers messages with IBM Object Storage

License

Notifications You must be signed in to change notification settings

ibm-cloud-solutions/hubot-ibmcloud-objectstorage

Repository files navigation

Build Status Coverage Status Dependency Status npm

hubot-ibmcloud-objectstorage

A Hubot script for managing Object Storage containers messages with IBM Object Storage.

Getting Started

Usage

Steps for adding this to your existing hubot:

  1. cd into your hubot directory
  2. Install the Swift Object Storage functionality with npm install hubot-ibmcloud-objectstorage --save
  3. Add hubot-ibmcloud-objectstorage to your external-scripts.json
  4. Add the necessary environment variables for Object Storage
export HUBOT_OBJECT_STORAGE_AUTH_URL=<URL>
export HUBOT_OBJECT_STORAGE_USER_ID=<USER_ID>
export HUBOT_OBJECT_STORAGE_PASSWORD=<PASSWORD>
export HUBOT_OBJECT_STORAGE_PROJECT_ID=<PROJECT_ID>
export HUBOT_OBJECT_STORAGE_BLUEMIX_REGION=dallas
  1. If you would like to enable NLC search, you will need to configure the following NLC variables:
export HUBOT_WATSON_NLC_URL=<NLC_URL>
export HUBOT_WATSON_NLC_USERNAME=<NLC_USERNAME>
export HUBOT_WATSON_NLC_PASSWORD=<NLC_PASSWORD>
  1. The search feature also has a few additional variables that can be set. Each has a default value if unset.
    • HUBOT_OBJECT_STORAGE_SEARCH_CLASSIFIER_NAME - determines what classifier name is used.
    • HUBOT_OBJECT_STORAGE_SEARCH_DIFF_CONFIDENCE_MAX - determines the maximum difference in confidence level for a Watson classify call. The number should be a float less than 1 and greater than 0. Default value is 0.5. Classify results that are less than this threshold will be filtered out of the results.
export HUBOT_OBJECT_STORAGE_SEARCH_CLASSIFIER_NAME=<classiferName>
export HUBOT_OBJECT_STORAGE_SEARCH_DIFF_CONFIDENCE_MAX=<diffConfidenceLevel>
  1. Start up your bot & off to the races!

Commands

  • hubot objectstorage help - Show available commands in the ibmcloud objectstorage category.
  • hubot objectstorage container list - Show all Object Storage containers
  • hubot objectstorage container details <container> - Lists the objects inside of object storage container. is optional. If omitted, you can select a container from a list.
  • hubot objectstorage retrieve <container> <object> - Retrieves object found in the container . Both and are optional. If omitted, you will be prompted to select them.
  • hubot objectstorage search <searchPhrase> - Search Object Storage for . Objects matching the will be returned to the adapter.
  • Hubot Adapter Setup

    Hubot supports a variety of adapters to connect to popular chat clients. For more feature rich experiences you can setup the following adapters:

    Cognitive Setup

    This project supports natural language interactions using Watson and other Bluemix services. For more information on enabling these features, refer to Cognitive Setup.

    Development

    Please refer to the CONTRIBUTING.md before starting any work. Steps for running this script for development purposes:

    Configuration Setup

    1. Create config folder in root of this project.
    2. Create env in the config folder, with the following contents:
    export HUBOT_OBJECT_STORAGE_AUTH_URL=<URL>
    export HUBOT_OBJECT_STORAGE_USER_ID=<USER_ID>
    export HUBOT_OBJECT_STORAGE_PASSWORD=<PASSWORD>
    export HUBOT_OBJECT_STORAGE_PROJECT_ID=<PROJECT_ID>
    export HUBOT_OBJECT_STORAGE_BLUEMIX_REGION=dallas
    
    1. In order to view content in chat clients you will need to add hubot-ibmcloud-formatter to your external-scripts.json file. Additionally, if you want to use hubot-help to make sure your command documentation is correct. Create external-scripts.json in the root of this project, with the following contents:
    [
        "hubot-help",
        "hubot-ibmcloud-formatter"
    ]
    
    1. Lastly, run npm install to obtain all the dependent node modules.

    Running Hubot with adapters

    Hubot supports a variety of adapters to connect to popular chat clients.

    If you just want to use:

    License

    See LICENSE.txt for license information.

    Contribute

    Please check out our Contribution Guidelines for detailed information on how you can lend a hand.

About

A Hubot script for managing Object Storage containers messages with IBM Object Storage

Resources

License

Stars

Watchers

Forks

Packages

No packages published