Модуль для работы с Live Widget для обновления виджета сообщества Вконтакте.
Подключение
const LiveWidget = require("vk-live-widget");
const updateWidget = new LiveWidget("Токен приложения");
updateWidget({
title: "Заголовок виджета",
title_url: "vk.com/xop_enotov",
title_counter: 1,
head: [
{
text: "Заголовок 1",
},
{
text: "Заголовок 2",
align: "right",
},
],
body: [
{
icon_id: `vk.com/xop_enotov`,
text: `1 поле`,
url: `vk.com/xop_enotov`,
},
{
text: `2 поле`,
},
],
more: "Играть",
more_url: "vk.com/xop_enotov",
});
В этом случае мы получим таблицу с 1 строкой и 2 столбцами
Пример использования для публикации топа пользователей грппы.
// Так будет выглядеть наш виджет: https://drive.google.com/file/d/13drrJOnG5txGR5L_4PWPDb1uwm80kwyL/view?usp=sharing
const LiveWidget = require("vk-live-widget");
const updateWidget = new LiveWidget("Токен приложения");
let users = Users.find({});
users.sort(function (a, b) {
if (b.win > a.win) return 1;
if (b.win < a.win) return -1;
return 0;
});
var script = {
title: "Топ игроков",
title_url: "vk.com/football.coin",
title_counter: 1,
head: [
{
text: "Игрок:",
},
{
text: "Выиграл:",
align: "right",
},
],
body: [],
more: "Играть",
more_url: "vk.me/football.coin",
};
const widget = () => {
for (let g = 0; g < 10; g++) {
script.body = [];
script.body.push([
{
icon_id: `id${users[g].id}`,
text: `${users[g].tag}`,
url: `vk.com/id${tops[g].idvk}`,
},
{
text: `${tops[g].win.toFixed(0)}`,
},
]);
}
};
setInterval(() => {
widget();
updateWidget.update(script);
}, 180000);
В результате получаем профит и стонкс