1
0
Fork 0
mirror of https://github.com/binwiederhier/ntfy.git synced 2025-07-03 09:36:21 +02:00

Poll on subscribe; test message

This commit is contained in:
Philipp Heckel 2022-02-22 23:22:30 -05:00
parent c57fac283e
commit 415ab57749
5 changed files with 89 additions and 9 deletions
web/src/app

24
web/src/app/Api.js Normal file
View file

@ -0,0 +1,24 @@
import {topicUrlJsonPoll, fetchLinesIterator, topicUrl} from "./utils";
class Api {
static async poll(baseUrl, topic) {
const url = topicUrlJsonPoll(baseUrl, topic);
const messages = [];
console.log(`[Api] Polling ${url}`);
for await (let line of fetchLinesIterator(url)) {
messages.push(JSON.parse(line));
}
return messages.sort((a, b) => { return a.time < b.time ? 1 : -1; }); // Newest first
}
static async publish(baseUrl, topic, message) {
const url = topicUrl(baseUrl, topic);
console.log(`[Api] Publishing message to ${url}`);
await fetch(url, {
method: 'PUT',
body: message
});
}
}
export default Api;