3.2.0 • Published 1 month ago

vklive-message-client v3.2.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 month ago

VKplay live chat API client

Это пре-альфа версия, здесь не реализован механизм обновления токена, и не протестировано на продолжительном подключении к вебсокету. Возможны вылеты и ошибки. Баги присылать сюда https://github.com/thearturca/vkplay-live-message-client/issues

Описание

Эта библиотека поможет вам подключиться к чату канала стримера на стриминговой площадке live.vkplay.ru, и получать/отправлять сообщения с парсингом смайлов, создавать чат-ботов или клиенты для чатов. Чаты работают даже когда стримера нет в сети.

Авторизация

Для отправки сообщений нужно указать токен live.vkplay.ru, либо авторизационные данные для входа (логин и пароль). Так как ещё нет легального удобного способа получить токен, его нужно взять из localStorage вашего браузера, если вы уже залогинены. Находиться в поле auth. Лучше всего создать новый аккаунт для бота. Если вы знаете, как достать токен, сообщите мне в discord.

Discord для вопросов: thearturca

Поддержи проект на бусти!

Установка

npm i vklive-message-client

Пример использования

Токен

const authToken: string = process.env.VKPL_OAUTH ?? "";

const client = new VKPLMessageClient({ auth: { token: authToken }, channels: [target], debugLog: true });
await client.connect();
await client.sendMessage("Connected to chat!", target);

client.on("message", async (context) => {
      if (context.message.text.startsWith("!command"))
            await context.sendMessage("Hello World");
});

Логин и Пароль

const login: string = process.env.VKPL_LOGIN ?? "";
const password: string = process.env.VKPL_PASSWORD ?? "";

const client = new VKPLMessageClient({ auth: { login, password }, channels: [target], debugLog: true });
await client.connect();
await client.sendMessage("Connected to chat!", target);

client.on("message", async (context) => {
      if (context.message.text.startsWith("!command"))
            await context.sendMessage("Hello World");
});

Фичи

Readonly режим

В режиме readonly нельзя отправлять сообщения, но можно получать их. Для активации этого режима нужно в поле auth написать "readonly" или не передавать параметр auth вообще.

const client = new VKPLMessageClient({ auth: "readonly", channels: [target], debugLog: true });
await client.connect(); // После подключения все сообщения будут выводится в консоль

Вставка ссылок

В боте есть возможность вставки ссылок в текст сообщения. Доступно 2 формата ссылок:

  • Прямая ссылка. Пример: https://github.com/thearturca/vkplay-live-message-client
  • Ссылка в стиле markdown. Пример: [Ссылка](https://github.com/thearturca/vkplay-live-message-client)

Ссылка в стиле markdown будет выглядеть следующим образом:

Ссылка

Пример вставки ссылки

const client = new VKPLMessageClient({ auth: { token: authToken }, channels: [target], debugLog: true });
await client.connect();

// отправки прямой ссылки
await client.sendMessage("Ссылка на мой гитхаб: https://github.com/thearturca/vkplay-live-message-client", target);

// отправки ссылки в стиле markdown
await client.sendMessage("[Ссылка на мой гитхаб](https://github.com/thearturca/vkplay-live-message-client)", target);
3.2.0

1 month ago

3.1.2

1 month ago

3.1.1

2 months ago

3.1.0

4 months ago

1.1.1

7 months ago

1.1.0

7 months ago

3.0.1

6 months ago

3.0.0

6 months ago

2.0.1

7 months ago

2.0.0

7 months ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago