yaylib
v2.1.0
Published
Yay! API client SDK
Readme
yaylib
好きでつながるバーチャルワールド - Yay! の API ライブラリ
あらゆる操作の自動化や、ボットの開発が可能です。
Discord に参加
Yay! の API を TypeScript / JavaScript から扱うための非公式 SDK です。
インストール
npm install yaylibNode.js 22 以上。
クイックスタート
import { Client, NoreplyMode, chatRoomChannel } from "yaylib";
const client = new Client();
// ログイン(セッションは透過的にキャッシュされます)
await client.loginWithEmail({ email: "...", password: "..." });
// タイムラインを取得
const timeline = await client.getTimeline({
noreplyMode: NoreplyMode.False,
number: 20,
});
for (const post of timeline.posts) {
console.log(post.id, post.text);
}
// 投稿する
await client.createPost({
xJwt: client.generateXJwt(),
postType: "text",
text: "hello from yaylib",
});すべてのオペレーションは client.<operation> として直接呼び出せます。
イベントストリーム
const stream = client.openEventStream();
const sub = stream.subscribe(chatRoomChannel());
// 新着メッセージを受信
sub.onNewMessage((event) => {
console.log("new message:", event);
});
await sub.closed;サンプル
実行できるサンプルを examples/ に用意しています(全言語共通)。
- 認証 + タイムライン取得
- テキスト投稿
- イベントストリームの簡単なボット
- セッション永続化とエラー処理
YAY_EMAIL=... YAY_PASSWORD=... npx tsx examples/typescript/timeline.ts