Git Product home page Git Product logo

mattermost-client-node's Introduction

Mattermost-client

Build Status

Mattermost client which uses the Web API and websockets, forked from loafoe's mattermost client, extended and refactored.

Install

yarn add mattermost-client-node

or

npm i mattermost-client-node

Usage

Import via require:

const mmClient = require('mattermost-client-node');

or via import:

import mmClient from 'mattermost-client-node';

and initialize:

const mattermost = new mmClient([hostWithOptionalPort], [teamName], [options]);

Example:

import mmClient from 'mattermost-client-node';

const mattermost = new mmClient(
  'localhost:8065',
  'myteam',
  {
    wssPort: 443,
    httpPort: 80 
  }
);

Features

The client was primarily written for use by the Matteruser Hubot adapter. The initial implementation thus contains only the minimal set of API calls to support this. Pull requests to expand API support are very welcome!

Highlights

  • Logs into Mattermost team server with username and password ..OR..
  • Uses a personal access token for authentication
  • Connects via websocket for real-time interaction
  • Can post messages to joined channels
  • Can be invited to channels / DMs since its just a regular user
  • Initiate DMs to users
  • Splits large messages in 4K chunks

Environment variables

The following environment variables may be defined to alter behavior:

Variable Required Description
MATTERMOST_TLS_VERIFY No (default: true) set to 'false' to allow connections when certs can not be verified (ex: self-signed, internal CA, ... - MITM risks)
MATTERMOST_LOG_LEVEL No (default: info) set log level (also: debug, ...)
MATTERMOST_USE_TLS No (default: true) set to 'false' to use http/ws instead of https/wss

Mattermost 5.x.x

This client always tries to track the latest version of Mattermost. As of version 5.0.0 of Mattermost might introduce backwards incompatible API changes make sure you are using the latest version of this library.

Older versions of Mattermost

For interaction with Mattermost versions please use version of the library matching the Mattermost version

TODO

  • Write more tests
  • Implement more API calls

License

The code is licensed under MIT

mattermost-client-node's People

Contributors

3ch01c avatar ahmetcetin avatar alexiri avatar contolini avatar danielruf avatar dependabot-preview[bot] avatar dependabot[bot] avatar elephanter avatar hagenmorano avatar hesstobi avatar hp41 avatar judokus avatar jwernicke avatar kongr45gpen avatar learnin avatar lizulana avatar loafoe avatar mikalai-sokarau avatar mlmnetcologne avatar mxiamxia avatar snyk-bot avatar stonyz avatar tomer953 avatar trentm avatar vhex avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

mattermost-client-node's Issues

_apiCall => apiCall

It seems _apiCall was changed to apiCall. Is this planned and is this not internal anymore?
I think we should decide if and which methods should be declared as internal and use the underscore notation for this.

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.