Messaging APIs for multi-platform
Clone or download
Latest commit e42f2e7 Nov 12, 2018

README.md

Messaging APIs

Build Status Build status coverage License: MIT

Messaging APIs is a mono repo which collects APIs needed for bot development.

It helps you build your bots using similar API for multiple platforms, e.g. Messenger, LINE. Learn once and make writing cross-platform bots easier.

If you are looking for a framework to build your bots, Bottender may suit for your needs. It is built on top of Messaging APIs and provides some powerful features for bot building.

Packages

Package Version Platform
messaging-api-messenger npm Messenger
messaging-api-line npm LINE
messaging-api-slack npm Slack
messaging-api-telegram npm Telegram
messaging-api-viber npm Viber
messaging-api-wechat npm WeChat

Usage

Messenger

Messenger

Install messaging-api-messenger package from the registry:

npm i --save messaging-api-messenger

or

yarn add messaging-api-messenger

Then, create a MessengerClient to call Messenger APIs:

const { MessengerClient } = require('messaging-api-messenger');

// get accessToken from facebook developers website
const client = MessengerClient.connect(accessToken);

client.sendText(userId, 'Hello World').then(() => {
  console.log('sent');
});

Check out full API documentation for more detail information.

LINE

LINE

Install messaging-api-line package from the registry:

npm i --save messaging-api-line

or

yarn add messaging-api-line

Then, create a LineClient to call LINE APIs:

const { LineClient } = require('messaging-api-line');

// get accessToken and channelSecret from LINE developers website
const client = LineClient.connect(
  accessToken,
  channelSecret
);

client.pushText(userId, 'Hello World').then(() => {
  console.log('pushed');
});

Check out full API documentation for more detail information.

Slack

Slack

Install messaging-api-slack package from the registry:

npm i --save messaging-api-slack

or

yarn add messaging-api-slack

Then, create a SlackOAuthClient or SlackWebhookClient to call Slack APIs:

const { SlackOAuthClient } = require('messaging-api-slack');

// get access token by setup OAuth & Permissions function to your app.
// https://api.slack.com/docs/oauth
const client = SlackOAuthClient.connect(
  'xoxb-000000000000-xxxxxxxxxxxxxxxxxxxxxxxx'
);

client.postMessage('#random', 'Hello World').then(() => {
  console.log('sent');
});
const { SlackWebhookClient } = require('messaging-api-slack');

// get webhook URL by adding a Incoming Webhook integration to your team.
// https://my.slack.com/services/new/incoming-webhook/
const client = SlackWebhookClient.connect(
  'https://hooks.slack.com/services/XXXXXXXX/YYYYYYYY/zzzzzZZZZZ'
);

client.sendText('Hello World').then(() => {
  console.log('sent');
});

Check out full API documentation for more detail information.

Telegram

Telegram

Install messaging-api-telegram package from the registry:

npm i --save messaging-api-telegram

or

yarn add messaging-api-telegram

Then, create a TelegramClient to call Telegram APIs:

const { TelegramClient } = require('messaging-api-telegram');

// get accessToken from telegram [@BotFather](https://telegram.me/BotFather)
const client = TelegramClient.connect('12345678:AaBbCcDdwhatever');

client.sendMessage(chatId, 'Hello World').then(() => {
  console.log('sent');
});

Check out full API documentation for more detail information.

Viber

Viber

Install messaging-api-viber package from the registry:

npm i --save messaging-api-viber

or

yarn add messaging-api-viber

Then, create a ViberClient to call Viber APIs:

const { ViberClient } = require('messaging-api-viber');

// get authToken from the "edit info" screen of your Public Account.
const client = ViberClient.connect(authToken);

client.sendText(userId, 'Hello World').then(() => {
  console.log('sent');
});

Check out full API documentation for more detail information.

WeChat

WeChat

Install messaging-api-wechat package from the registry:

npm i --save messaging-api-wechat

or

yarn add messaging-api-wechat

Then, create a WechatClient to call Wechat APIs:

const { WechatClient } = require('messaging-api-wechat');

// get appId, appSecret from「微信公众平台-开发-基本配置」page
const client = WechatClient.connect(
  appId,
  appSecret
);

client.sendText(userId, 'Hello World').then(() => {
  console.log('sent');
});

Check out full API documentation for more detail information.

Documentation

Change Log

Every release, along with the migration instructions, is documented on the CHANGELOG.md file.

License

MIT © Yoctol