Da biste slali RSS sadržaj na webhook, potreban vam je alat koji redovno proverava izvor, pronalazi nove objave i šalje svaku od njih na vašu URL adresu HTTP POST zahtevom. Feederovo pravilo „Objaviti na Webhook“ to radi za bilo koji broj izvora, uz ugrađene filtere po ključnim rečima i ponovne pokušaje slanja. Isto možete da uradite pomoću alata za automatizaciju kao što su Zapier, Make, IFTTT i n8n, ili kratkom skriptom na sopstvenom serveru.
Koje su opcije za slanje RSS sadržaja na webhook?
| Opcija | Pogodna je za | Dobro je znati |
|---|---|---|
| Feederovo pravilo „Objaviti na Webhook“ | Više izvora, filtere po ključnim rečima i jedinstven JSON format za sve izvore | Dostupno je u okviru Feeder Professional paketa. Detalji su u nastavku. |
| Zapier, Make, IFTTT ili n8n | Prosleđivanje svake objave u druge aplikacije bez pisanja koda | Polja povezujete ručno. Svaki alat ima sopstvene pakete i ograničenja. |
| Skripta | Programere kojima je potrebna potpuna kontrola | Vi je hostujete, zakazujete njeno pokretanje i pratite šta je već poslato. |
Kako radi Feederovo pravilo „Objaviti na Webhook“?
„Objaviti na Webhook“ je jedna od radnji u Feederovim pravilima. Napravite pravilo, izaberite Objaviti na Webhook u odeljku Šta treba da se desi?, nalepite URL krajnje tačke i izaberite izvore, fascikle ili Svi izvori koje želite da pratite. Dodajte ključne reči ako želite da prosleđujete samo određene objave. Nakon toga Feeder šalje svaku novu objavu koja ispunjava uslove na vaš URL.
U članku Napravite sopstvene integracije pomoću Webhookova pronaći ćete sve korake i snimke ekrana, a objava o pokretanju prikazuje pravilo u radu. Informacije na ovoj stranici preuzete su iz koda koji šalje webhookove.
Šta Feeder šalje na moj webhook?
Za svaku objavu šalje se jedan HTTP zahtev POST, sa JSON telom i sledećim zaglavljima:
POST /hooks/rss HTTP/1.1
Content-Type: application/json
User-Agent: Feeder-Webhooks/1.0
X-Feeder-Signature: sha256=<HMAC-SHA256 of the body, in hex>
Ovo je telo zahteva za objavu sa Feederovog bloga, sa skraćenim sadržajem u polju content. Feeder ga šalje u jednom redu, a ovde je prikazano u više redova radi lakšeg čitanja.
{
"version": "2023-06-26",
"message_id": "3f1c9a52-7e4b-4d0a-9b6e-2c8d51f0a7e4",
"post": {
"id": "aff2424a-abc9-11f1-afb3-1a21cf3a468a",
"title": "Feed your AI",
"url": "https://feeder.co/blog/1208-feed-your-ai",
"published": "2026-09-08T20:19:59Z",
"content": "\u003cp\u003eWith Feeder's MCP server, you can connect Feeder to your AI client of choice.\u003c/p\u003e",
"audio_url": null,
"image_url": "https://uploads.feedercdn.com/8XSXZN92WHeb2d17f3440d-feedyourai-1024x538.png"
},
"feed": {
"id": "21f058e947",
"source_url": "https://feeder.co/blog.rss",
"public_url": "https://feeder.co/blog",
"title": "Feeder.co",
"favicon": "https://icons.feedercdn.com/feeder.co"
}
}
| Polje | Sadržaj |
|---|---|
version | Verzija formata: 2023-06-26. |
message_id | Jedinstveni ID svake poruke. Pri ponovnom slanju iste poruke ID ostaje isti, pa možete da preskočite duplikate. |
post.id | Feederov ID objave. |
post.title | Naslov objave. |
post.url | Veza ka objavi na veb-sajtu. |
post.published | Vreme objavljivanja, u formatu vremenske oznake RFC 3339, ili null. |
post.content | Objava u HTML formatu, onako kako je izvor prikazuje, kao ceo članak ili sažetak. |
post.audio_url | MP3 datoteka priložena uz objavu, na primer epizoda podkasta, ili null. |
post.image_url | Slika priložena uz objavu, ili prva slika u njenom sadržaju, ili null. |
feed.id | Feederov kratki ID izvora. |
feed.source_url | Adresa RSS izvora. |
feed.public_url | Veb-sajt kom izvor pripada. |
feed.title | Naslov izvora. |
feed.favicon | Adresa ikone sajta. |
U polju content, znakovi <, > i & stižu kao \u003c, \u003e i \u0026. To je ispravan JSON, a svaki JSON parser ih pretvara nazad u HTML.
Kada se webhook aktivira?
- Samo za nove objave. Pravilo obrađuje objave koje Feeder pronađe nakon što ga sačuvate. Već postojeće objave se ne šalju.
- Jednom za svaku objavu. Svaka objava koja ispunjava uslove šalje se u zasebnom zahtevu. Feeder ne grupiše objave. Ako sajt kasnije izmeni objavu, a Feeder prepozna izmenu, šalje se i izmenjena verzija.
- Odmah nakon sledeće provere izvora. U paketu Professional Feeder podrazumevano proverava izvore na svakih 10 minuta, a možete da podesite da se izvor osvežava čak i svakog minuta. Pogledajte članak Koliko često Feeder proverava izvore.
- Samo za objave koje ispunjavaju uslove. Ako ste dodali ključne reči, šalju se samo objave koje ih sadrže. Ako ih niste dodali, šalje se svaka nova objava. Objave koje sakrije pravilo Filtriraj objave ili Filtriraj duplikate ne šalju se.
Šta ako moja krajnja tačka ne radi?
Feeder čeka odgovor najduže 60 sekundi. Status u rasponu 2xx znači da je zahtev uspešno isporučen. Ako krajnja tačka vrati grešku, na primer 404 ili 500, ili uopšte ne odgovori, Feeder pokušava ponovo, najviše još 8 puta:
| Pokušaj | Vreme do slanja nakon prethodnog pokušaja |
|---|---|
| 2 | 5 sekundi |
| 3 | 30 sekundi |
| 4 | 1 minut |
| 5 | 5 minuta |
| 6 | 10 minuta |
| 7 | 30 minuta |
| 8 | 30 minuta |
| 9 | 30 minuta |
Nakon devetog pokušaja, odnosno oko 1 sat i 47 minuta nakon prvog, Feeder odustaje od slanja te objave. Svaki neuspešan pokušaj prikazuje se u evidenciji grešaka za pravilo. Otvorite pravilo i izaberite Otvori evidenciju grešaka. Ako promenite URL pravila dok se čeka ponovno slanje, naredni pokušaji šalju se na novi URL. Opcija Pošalji test poruku šalje jednu testnu poruku, bez ponovnih pokušaja.
Šta treba da radi moja krajnja tačka?
- Brzo odgovorite. Najpre vratite status 2xx, a sporije zadatke obavite nakon toga, kako biste ostali znatno ispod ograničenja od 60 sekundi.
- Preskačite duplikate. Ako server obradi poruku, ali prekasno pošalje odgovor, ponovni pokušaj će je poslati još jednom. Sačuvajte vrednosti
message_idilipost.idkoje ste već obradili. - Koristite konačnu adresu. URL mora da sadrži putanju, na primer
https://example.com/hooks/rss, i mora da vodi do servera na javnom internetu. Feeder ne šalje zahteve na lokalne adrese ni adrese privatnih mreža. Izbegavajte i preusmeravanja. Nakon preusmeravanja 301, 302 ili 303, zahtev stiže kao GET, bez JSON tela. - Proverite potpis. Svako ko zna vaš URL može da šalje zahteve na njega, zato prihvatajte samo zahteve sa važećim potpisom
X-Feeder-Signature. U sledećem odeljku objašnjeno je kako da ga proverite.
Kako da proverim da li je zahtev poslao Feeder?
Feeder potpisuje svaki zahtev tajnom vrednošću za webhook u vašem pravilu. Da biste je pronašli, otvorite pravilo, uključite Napredno, kopirajte Tajna vrednost za webhook i sačuvajte pravilo. Zaglavlje X-Feeder-Signature sadrži sha256=, iza čega sledi HMAC-SHA256 tela zahteva zapisan heksadecimalno i izračunat pomoću te tajne vrednosti.
Da biste proverili potpis, izračunajte isti HMAC nad sirovim telom zahteva, pre nego što obradite JSON, pa uporedite vrednosti u konstantnom vremenu. Primer u Pythonu:
import hashlib, hmac
def from_feeder(body, header, secret):
expected = "sha256=" + hmac.new(secret.encode(), body, hashlib.sha256).hexdigest()
return hmac.compare_digest(expected, header or "")
Ovde je body telo zahteva u obliku bajtova. Odbacite zahtev ako funkcija from_feeder vrati False. Ponovni pokušaji potpisuju se trenutnom tajnom vrednošću pravila, pa se izmena tajne vrednosti primenjuje i na njih.
Može li Feeder da šalje zbirni pregled na webhook?
Ne. Pravilo „Objaviti na Webhook“ šalje jedan zahtev za svaku objavu čim je Feeder pronađe. Zbirni pregled možete da napravite na tri načina:
- Grupišite objave na svojoj strani. Čuvajte svaku objavu koju vaša krajnja tačka primi, pa po rasporedu šaljite sopstveni pregled.
- Koristite preglede poslate e-poštom. Feeder može da vam šalje dnevni, nedeljni ili mesečni pregled izabranih izvora, u paketima Plus i Professional. Pogledajte članak Primajte obaveštenja o novim objavama.
- Objavite izvor. U paketu Professional možete da objavite fasciklu ili kolekciju kao RSS ili JSON izvor i podesite sopstveni alat da ga čita po rasporedu. Pogledajte članak Kako da izvezete objave kao RSS i JSON izvore.
Kako da šaljem RSS sadržaj na webhook pomoću alata Zapier, Make, IFTTT ili n8n?
Svaki od ovih alata povezuje RSS okidač sa HTTP radnjom. Nazive smo proverili na zvaničnim sajtovima alata 28. septembra 2026:
| Alat | Okidač | Radnja | Dobro je znati |
|---|---|---|---|
| Zapier | RSS by Zapier: Nova stavka u izvoru ili Nove stavke u više izvora | Webhooks by Zapier: POST | Webhooks by Zapier je premium aplikacija dostupna samo u plaćenim paketima Zapiera. |
| Make | RSS: Praćenje stavki RSS izvora | HTTP: Pošalji zahtev | RSS modul čita RSS i Atom izvore. |
| IFTTT | RSS Feed: Nova stavka u izvoru | Webhooks: Pošalji veb-zahtev | IFTTT proverava izvore svakog sata u besplatnom paketu, a na svakih 5 minuta u paketima Pro i Pro+. |
| n8n | Čvor RSS Feed Trigger | Čvor HTTP Request sa metodom POST | U odeljku Učestalost provere birate koliko često se izvor proverava. |
Ovi alati su najbrži izbor ako neki od njih već koristite. Možete ih kombinovati i sa Feederom: podesite Feederovo pravilo „Objaviti na Webhook“ tako da šalje podatke na okidač Catch Hook u Zapieru ili čvor Webhook u n8n. Feeder će pratiti izvore i filtrirati objave, a zatim će vaš tok rada preuzeti obradu.
Kako da šaljem RSS sadržaj na webhook pomoću skripte?
Ova Python skripta šalje svaku novu stavku iz jednog izvora na vaš webhook. Pamti šta je već poslala u datoteci seen.txt, tako da se svaka stavka šalje samo jednom. Prilikom prvog pokretanja šalju se sve stavke koje se tada nalaze u izvoru.
import json, pathlib, urllib.request
import feedparser # pip install feedparser
FEED_URL = "https://example.com/feed.xml"
WEBHOOK_URL = "https://example.com/hooks/rss"
seen_file = pathlib.Path("seen.txt")
seen = set(seen_file.read_text().split()) if seen_file.exists() else set()
for entry in reversed(feedparser.parse(FEED_URL).entries):
key = entry.get("id") or entry.get("link")
if not key or key in seen:
continue
payload = {"title": entry.get("title"), "url": entry.get("link"), "published": entry.get("published")}
request = urllib.request.Request(WEBHOOK_URL, data=json.dumps(payload).encode(),
headers={"Content-Type": "application/json"})
urllib.request.urlopen(request, timeout=30)
seen.add(key)
seen_file.write_text("\n".join(seen))
Potrebni su Python 3 i paket feedparser (pip install feedparser). Pokrenite skriptu po rasporedu, na primer na svakih 15 minuta pomoću cron-a: */15 * * * * cd /path/to/folder && python3 rss_to_webhook.py. Ako krajnja tačka vrati grešku, skripta se zaustavlja, a pri sledećem pokretanju ponovo pokušava da pošalje istu stavku.
Česta pitanja
Mogu li pomoću pravila „Objaviti na Webhook“ da šaljem RSS sadržaj na Slack, Teams ili Discord webhook?
Ne direktno. Feeder šalje podatke u svom JSON formatu, a ne u formatu poruka koji te aplikacije očekuju. Umesto toga koristite Feederova pravila Objaviti na Slacku, Objavi na Microsoft Teams ili Objavi na Discordu, ili između njih postavite Zapier, Make ili n8n.
Koji Feeder paket uključuje webhookove?
Pravilo „Objaviti na Webhook“ dostupno je u paketu Professional. Pravila za filtriranje, isticanje zvezdicom ili prikupljanje objava dostupna su i u paketu Plus.
Da li webhook sadrži ceo članak?
Sadrži ono što je objavljeno u izvoru. Polje content sadrži ceo članak ako ga izvor prenosi, odnosno sažetak ako izvor sadrži samo sažetak.
Mogu li da testiram krajnju tačku pre nego što sačuvam pravilo?
Da. Opcija Pošalji test poruku šalje jednu stvarnu objavu iz vaših izvora na vaš URL. Na nalogu morate da imate najmanje jedan izvor sa objavama.
Isprobajte Feeder
Feeder je RSS čitač za veb, iOS i Android, sa dodacima za Chrome, Firefox i Edge. Besplatni paket podržava praćenje do 200 izvora bez oglasa, a izvori se osvežavaju najčešće na svakih 30 minuta. Paket Plus podržava 2.500 izvora, osvežavanje najčešće na svakih 5 minuta i preglede poslate e-poštom.
Počnite besplatno da koristite Feeder