forked from Outils-PeerTube/peertube-plugin-auto-import-ytb
Ajout peertubeRequester
This commit is contained in:
33
src/main.ts
33
src/main.ts
@ -1,12 +1,16 @@
|
||||
import { ListenerRssAggregator } from "listener-rss-agregator";
|
||||
import { ListenerRSSInfos } from "listener-rss";
|
||||
import { PeerTubeRequester } from "../lib/peertubeRequester";
|
||||
|
||||
type ListenerData = {
|
||||
ChannelId: number;
|
||||
type ListenerData = ListenerRSSInfos & {
|
||||
address: string;
|
||||
channelId: string;
|
||||
};
|
||||
|
||||
let myManager: ListenerRssAggregator;
|
||||
let listenersDataBinding = new Map<string, ListenerData>();
|
||||
let logger: any;
|
||||
let peertube: PeerTubeRequester;
|
||||
|
||||
import * as path from "path";
|
||||
import fs from "fs";
|
||||
@ -33,6 +37,12 @@ async function register({
|
||||
);
|
||||
myManager = new ListenerRssAggregator(configAggregator);
|
||||
|
||||
peertube = new PeerTubeRequester({
|
||||
domain_name: "localhost:9000",
|
||||
username: "root",
|
||||
password: "test",
|
||||
});
|
||||
|
||||
logger.warn("Aggregator created");
|
||||
|
||||
const inputs = await settingsManager.getSetting("ytb-urls");
|
||||
@ -48,7 +58,17 @@ async function register({
|
||||
const datas = listenersDataBinding.get(entries.addressListener);
|
||||
if (!datas) return;
|
||||
|
||||
logger.warn("Nouvelles entrées détéctées: " + JSON.stringify(entries));
|
||||
logger.warn(
|
||||
"Nouvelles entrées détéctées: " +
|
||||
JSON.stringify(entries) +
|
||||
" de " +
|
||||
datas.channelId
|
||||
);
|
||||
for (const item of entries.items)
|
||||
peertube.apiRequest({
|
||||
channelId: datas.channelId,
|
||||
targetUrl: item.link,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@ -68,11 +88,7 @@ async function addListeners(listenerInput: string) {
|
||||
);
|
||||
|
||||
for (const newItem of newListeners) {
|
||||
listenersDataBinding.set(newItem.address, {
|
||||
ChannelId: newItem.ChannelId,
|
||||
firstUpdate: true,
|
||||
address: newItem.address,
|
||||
});
|
||||
listenersDataBinding.set(newItem.address, newItem);
|
||||
}
|
||||
for (const removedUrl of removedUrls) {
|
||||
listenersDataBinding.delete(removedUrl);
|
||||
@ -80,7 +96,6 @@ async function addListeners(listenerInput: string) {
|
||||
|
||||
myManager.stopAll();
|
||||
await myManager.saveOverride(listeners);
|
||||
firstUpdate = true;
|
||||
|
||||
if (logger) logger.warn("Configuration modifiée: " + listenerInput);
|
||||
|
||||
|
Reference in New Issue
Block a user