RSS към webhook: изпращане на нови публикации към URL адрес

Актуализирано 13 октомври 2026 8 мин четене

За да изпращате RSS към webhook, ви трябва нещо, което проверява емисията по график, открива новите публикации и изпраща всяка от тях към вашия URL адрес с HTTP POST заявка. Правилото „Публикувай в Webhook“ на Feeder прави това с неограничен брой емисии, с вградени филтри по ключови думи и повторни опити. Можете да използвате и инструменти за автоматизация като Zapier, Make, IFTTT и n8n, както и кратък скрипт на собствен сървър.

Какви са възможностите за изпращане на RSS към webhook?

ВъзможностПодходяща заКакво трябва да знаете
Правилото „Публикувай в Webhook“ на FeederМного емисии, филтри по ключови думи и един формат JSON за всички емисииЧаст е от Feeder Professional. Подробностите са по-долу.
Zapier, Make, IFTTT или n8nПрехвърляне на всяка публикация към други приложения без кодТрябва сами да свържете полетата. Всеки инструмент има собствени планове и ограничения.
СкриптРазработчици, които искат пълен контролВие го хоствате, планирате изпълнението му и следите какво вече е изпратил.

Как работи правилото „Публикувай в Webhook“ на Feeder?

„Публикувай в Webhook“ е едно от действията в „Правила“ на Feeder. Създайте правило, изберете Публикувай в Webhook под Какво трябва да се случи?, поставете URL адреса на крайната точка и изберете емисиите, папките или Всички емисии, които да се следят. Добавете ключови думи, ако искате да получавате само определени публикации. От този момент нататък Feeder изпраща към вашия URL адрес всяка нова публикация, която отговаря на условията.

В статията Създайте собствени интеграции с Webhooks ще намерите всички стъпки със снимки на екрана, а публикацията за представянето показва правилото в действие. Информацията на тази страница е взета от кода, който изпраща webhook заявките.

Какво изпраща Feeder към моя webhook?

Една HTTP заявка POST за всяка публикация, с JSON тяло и следните заглавки:

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>

Това е тялото на заявка за публикация от блога на Feeder, като content е съкратено. Feeder го изпраща на един ред, тук е разделено на няколко реда за по-лесно четене.

{
  "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"
  }
}
ПолеСъдържание
versionВерсията на формата: 2023-06-26.
message_idУникален идентификатор за всяко съобщение. При повторно изпращане на същото съобщение идентификаторът не се променя, така че можете да пропускате дубликатите.
post.idИдентификаторът на публикацията в Feeder.
post.titleЗаглавието на публикацията.
post.urlВръзката към публикацията в сайта.
post.publishedДата и час на публикуване във формат RFC 3339 или null.
post.contentПубликацията като HTML, както е предоставена от емисията: цялата статия или резюме.
post.audio_urlMP3 файлът, прикачен към публикацията, например епизод на подкаст, или null.
post.image_urlИзображението, прикачено към публикацията, или първото изображение в съдържанието ѝ, или null.
feed.idКраткият идентификатор на емисията в Feeder.
feed.source_urlАдресът на емисията.
feed.public_urlСайтът, към който принадлежи емисията.
feed.titleЗаглавието на емисията.
feed.faviconАдресът на иконата на сайта.

В content знаците <, > и & се предават като \u003c, \u003e и \u0026. Това е валиден JSON, а всеки JSON парсер ги преобразува обратно в HTML.

Кога се изпраща webhook заявката?

  • Само за нови публикации. Правилото действа върху публикациите, които Feeder открие, след като го запазите. Публикациите, които вече имате, няма да бъдат изпратени.
  • Веднъж за всяка публикация. Всяка публикация, която отговаря на условията, се изпраща с отделна заявка. Feeder не групира публикациите. Ако сайтът промени публикация по-късно и Feeder засече промяната, ще бъде изпратена и редактираната версия.
  • Веднага след следващата проверка на емисията. В плана Professional Feeder проверява емисиите по подразбиране на всеки 10 минути, а можете да настроите дадена емисия да се обновява дори всяка минута. Вижте Колко често Feeder проверява емисиите ви.
  • Само за публикации, които отговарят на условията. Ако зададете ключови думи, се изпращат само публикации, които ги съдържат. Без ключови думи се изпраща всяка нова публикация. Публикация, скрита от правило Филтрирай публикации или Филтър за дубликати, няма да бъде изпратена.

Какво става, ако крайната ми точка не работи?

Feeder изчаква отговор до 60 секунди. Статус от диапазона 2xx се счита за успешно доставяне. Ако крайната ви точка отговори с грешка, например 404 или 500, или изобщо не отговори, Feeder опитва отново до още 8 пъти:

ОпитИзпращане след предходния опит
25 секунди
330 секунди
41 минута
55 минути
610 минути
730 минути
830 минути
930 минути

След деветия опит, около 1 час и 47 минути след първия, Feeder прекратява опитите за тази публикация. Всеки неуспешен опит се показва в дневника за грешки на правилото: отворете правилото и изберете Отвори дневника за грешки. Ако промените URL адреса на правилото, докато има чакащи повторни опити, следващите опити ще бъдат изпратени към новия адрес. Изпрати тестово съобщение изпраща един тест без повторни опити.

Какво трябва да прави крайната ми точка?

  • Отговаряйте бързо. Първо върнете статус от диапазона 2xx, а бавната обработка извършете след това, за да не надвишите ограничението от 60 секунди.
  • Пропускайте дубликатите. Ако сървърът ви обработи съобщение, но отговори твърде късно, то ще пристигне отново при повторния опит. Запазвайте стойностите на message_id или post.id, които вече сте получили.
  • Използвайте крайния адрес. URL адресът трябва да включва път, например https://example.com/hooks/rss, и да сочи към сървър в публичния интернет. Feeder не изпраща заявки към локални или частни мрежови адреси. Избягвайте и пренасочвания: след пренасочване 301, 302 или 303 заявката пристига като GET, без JSON тялото.
  • Проверявайте подписа. Всеки, който знае URL адреса ви, може да изпрати заявка към него, затова приемайте само заявки с валиден X-Feeder-Signature. Следващият раздел показва как.

Как да проверя дали заявката е изпратена от Feeder?

Feeder подписва всяка заявка с тайната на webhook правилото ви. За да я намерите, отворете правилото, включете Разширени, копирайте Тайна на Webhook и запазете правилото. Заглавката X-Feeder-Signature съдържа sha256=, следвано от HMAC-SHA256 на тялото на заявката в шестнадесетичен формат, изчислен с тази тайна.

За да проверите подписа, изчислете същия HMAC върху суровото тяло, преди да анализирате JSON, и сравнете стойностите във време, което не зависи от съдържанието. На Python:

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 "")

Тук body е тялото на заявката в байтов формат. Отхвърлете заявката, ако from_feeder връща False. Повторните опити се подписват с текущата тайна на правилото, така че промяната на тайната важи и за тях.

Може ли Feeder да изпраща обобщение към webhook?

Не. „Публикувай в Webhook“ изпраща по една заявка за всяка публикация веднага щом Feeder я открие. За обобщение имате три възможности:

  • Групирайте публикациите при вас. Съхранявайте всяка публикация, получена от крайната ви точка, и изпращайте собствено обобщение по график.
  • Използвайте обобщения по имейл. Feeder може да ви изпраща ежедневно, седмично или месечно обобщение на избраните от вас емисии в плановете Plus и Professional. Вижте Получавайте известия за нови публикации.
  • Публикувайте емисия. В плана Professional можете да публикувате папка или колекция като RSS или JSON емисия и да настроите инструмента си да я чете по собствен график. Вижте Как да експортирате публикациите си като RSS и JSON емисии.

Как да изпращам RSS към webhook със Zapier, Make, IFTTT или n8n?

Всеки инструмент свързва RSS задействане с HTTP действие. Проверихме тези имена на собствените сайтове на инструментите на 28 септември 2026 г.:

ИнструментЗадействанеДействиеПолезно е да знаете
ZapierRSS by Zapier: Нова публикация в емисия или Нови публикации в няколко емисииWebhooks by Zapier: POSTWebhooks by Zapier е премиум приложение, включено от Zapier само в платените планове.
MakeRSS: Следене на публикации в RSS емисияHTTP: Изпращане на заявкаRSS модулът чете RSS и Atom емисии.
IFTTTRSS Feed: Нова публикация в емисиятаWebhooks: Изпращане на уеб заявкаВ безплатния план IFTTT проверява емисиите на всеки час, а в плановете Pro и Pro+ на всеки 5 минути.
n8nВъзел RSS Feed TriggerВъзел HTTP Request с метод POSTИзбирате честотата на проверките в Интервали на проверка.

Тези инструменти са най-бързият вариант, ако вече използвате някой от тях. Можете да ги комбинирате и с Feeder: насочете правило „Публикувай в Webhook“ към задействане Catch Hook в Zapier или възел Webhook в n8n. Така Feeder следи емисиите и филтрира публикациите, а след това работният ви процес поема задачата.

Как да изпращам RSS към webhook със скрипт?

Този скрипт на Python изпраща всяка нова публикация от една емисия към вашия webhook. Запомня какво е изпратил във файла seen.txt, така че всяка публикация се изпраща веднъж. При първото изпълнение се изпращат всички публикации, които към този момент са в емисията.

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))

Необходими са Python 3 и пакетът feedparser (pip install feedparser). Настройте изпълнението по график, например на всеки 15 минути с cron: */15 * * * * cd /path/to/folder && python3 rss_to_webhook.py. Ако крайната ви точка отговори с грешка, скриптът спира и при следващото изпълнение опитва отново да изпрати същата публикация.

Често задавани въпроси

Мога ли с „Публикувай в Webhook“ да изпращам RSS към webhook на Slack, Teams или Discord?

Не директно. Feeder изпраща собствен формат JSON, а не формата на съобщенията, който очакват тези приложения. Използвайте вместо това правилата на Feeder Публикувай в Slack, Публикувайте в Microsoft Teams или Публикувай в Discord, или свържете ги с Zapier, Make или n8n.

Кой план на Feeder включва webhook?

„Публикувай в Webhook“ е част от Professional. Правилата за филтриране, отбелязване със звезда или събиране на публикации работят и в Plus.

Съдържа ли webhook цялата статия?

Съдържа онова, което публикува емисията. Полето content включва цялата статия, ако емисията я предоставя, и резюме, ако съдържа само резюме.

Мога ли да тествам крайната си точка, преди да запазя правилото?

Да. Изпрати тестово съобщение изпраща една реална публикация от емисиите ви към URL адреса. В профила ви трябва да има поне една емисия с публикации.

Опитайте Feeder

Feeder е RSS четец за уеб, iOS и Android, с разширения за Chrome, Firefox и Edge. Безплатният план следи до 200 емисии без реклами, а емисиите се обновяват най-често на всеки 30 минути. Plus следи 2500 емисии, обновява ги най-често на всеки 5 минути и включва обобщения по имейл.

Започнете да използвате Feeder безплатно

Прочетете още

Все още имате нужда от помощ?

Екипът ни за поддръжка чете всяко съобщение. Кажи ни какво се случва и ще ти помогнем.

Свържете се с поддръжката