1
0
forked from mirror/misskey
🌎 A completely free and open interplanetary microblogging platform 🚀
Go to file
2021-05-31 11:28:17 +09:00
src Improve type definition 2021-05-31 11:28:17 +09:00
test resolve #17 2021-05-23 13:34:36 +09:00
test-d resolve #17 2021-05-23 13:34:36 +09:00
.editorconfig tab 2021-05-16 18:22:19 +09:00
.gitignore Add ignore config 2021-05-15 01:53:41 +09:00
i-want-you.png i want you 2021-05-14 12:00:10 +09:00
jest.config.ts wip 2021-05-14 13:49:40 +09:00
LICENSE Initial commit 2021-05-11 14:14:30 +09:00
package-lock.json nannka 2021-05-16 23:42:06 +09:00
package.json 0.0.2 2021-05-27 15:23:52 +09:00
README.md Update README.md 2021-05-23 17:17:14 +09:00
tsconfig.json nannka 2021-05-16 23:42:06 +09:00

misskey.js

Strongly-typed official Misskey SDK for browsers/Node.js.

NPM

JavaScript(TypeScript)用の公式MisskeySDKです。ブラウザ/Node.js上で動作します。

以下が提供されています:

  • ユーザー認証
  • APIリクエスト
  • ストリーミング
  • ユーティリティ関数
  • Misskeyの各種モデル(ノート、ユーザー等)の型定義

Install

npm i misskey-js

Usage

Authenticate

todo

API request

import * as Misskey from 'misskey-js';

const cli = new Misskey.api.APIClient({
	origin: 'https://misskey.test',
	credential: 'TOKEN',
});

const meta = await cli.request('meta', { detail: true });

Streaming

import * as Misskey from 'misskey-js';

const stream = new Misskey.Stream('https://misskey.test', { token: 'TOKEN' });
const mainChannel = stream.useChannel('main');
mainChannel.on('notification', notification => {
	console.log('notification received', notification);
});

チャンネルへの接続

チャンネルへの接続はuseChannelメソッドを使用します。

パラメータなし

const stream = new Misskey.Stream('https://misskey.test', { token: 'TOKEN' });

const mainChannel = stream.useChannel('main');

パラメータあり

const stream = new Misskey.Stream('https://misskey.test', { token: 'TOKEN' });

const messagingChannel = stream.useChannel('messaging', {
	otherparty: 'xxxxxxxxxx',
});

チャンネルから切断

disposeメソッドを呼び出します。

const stream = new Misskey.Stream('https://misskey.test', { token: 'TOKEN' });

const mainChannel = stream.useChannel('main');

mainChannel.dispose();

メッセージの受信

チャンネル接続インスタンスはEventEmitterを継承しており、メッセージがサーバーから受信されると受け取ったイベント名でペイロードをemitします。

import * as Misskey from 'misskey-js';

const stream = new Misskey.Stream('https://misskey.test', { token: 'TOKEN' });
const mainChannel = stream.useChannel('main');
mainChannel.on('notification', notification => {
	console.log('notification received', notification);
});

メッセージの送信

チャンネル接続インスタンスのsendメソッドを使用してメッセージをサーバーに送信することができます。

import * as Misskey from 'misskey-js';

const stream = new Misskey.Stream('https://misskey.test', { token: 'TOKEN' });
const messagingChannel = stream.useChannel('messaging', {
	otherparty: 'xxxxxxxxxx',
});

messagingChannel.send('read', {
	id: 'xxxxxxxxxx'
});