Git Product home page Git Product logo

newspopper's Introduction

Newspopper

Subscribe to any feed or web, deliver anywhere!

Overview

image

V2 Roadmap

Subscriber

  • rss
  • web/scrap
  • webhook
  • youtube channel

Persistence

  • redis
  • firebase
  • dynamo

Broadcaster

  • telegram channel
  • stdout (for debugging)
  • discord
  • slack
  • webhook

Other

  • proxy

Prerequisite

To run this program, you will need

List System & App Dependencies

- Golang 1.10+
- Go Mod Enabled
- Redis

How to Run

  • Copy environment file from sites.yaml.example to be sites.yaml, add your favourite site there
  • Verify and download dependencies make dep
  • Run the app make run

How to Run with Docker and docker-compose

Easy to Build, Run, Stop and Logging

Using this way you have persistent redis data in: docker/volume/data-redis

Just place your sites.yaml file with a valid configuration and get your bot up and running!

  • Copy environment file from sites.yaml.example.docker to be sites.yaml, add your favourite site there
  • Buid the app image make docker-build
  • Run the continers app make docker-compose-up
  • Stop the continers app make docker-compose-down
  • Inspect the continers app logs make docker-logs-follow
❯ docker images
REPOSITORY          TAG                IMAGE ID       CREATED             SIZE
rzkmak/newspopper   0.0.3              0af78e9bd103   About an hour ago   22.5MB

How to Simulate

  • Setup dev environment properly
  • Update sites.yaml to be desired value, put stdout value in your target.

For example:

listener:
- type: "rss"
  url: "http://your-site.com/feed"
  interval: 1m
  target: "stdout"

newspopper's People

Contributors

rzkmak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

newspopper's Issues

output didn't found for alias:

Hi, I get this message:

output didn't found for alias:

my initial sites.yaml file content is:

port: 8080 #if not set, it will randomly generated with range (30000-39999)
backend:
  redis:
    uri: "localhost:6379"
    persist_duration: "336h" # 2 weeks, if not set will be default (1 week)

credential:
- type: "telegram"
  token: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  alias: "telegram_credential_001"

output:
- type: "telegram-channel"
  credential: "telegram_credential_001"
  channel: "@somename"
  alias: "your_channel.out"
# - type: "webhook"
#   url: "https://your-webhook.com/webhook-endpoint"
#   alias: "your_webhook"

listener:
# - type: "scrapper"
#   url: "https://your-website.com"
#   interval: 1m
#   selector:
#     main: ".main"
#     title: ".title"
#     link: ".link"
#   optional_http_code: 500
#   target: "your_channel.out"
- type: "rss"
  url: "https://lorem-rss.herokuapp.com/feed?unit=second&interval=30"
  interval: 1m
  target: ""
  format: "json"
# - type: "webhook"
#   url: "/update-event"
#   target: "your_channel.out"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.