Compare commits
5 Commits
Author | SHA1 | Date |
---|---|---|
Uriel Fanelli | df43f758e9 | |
Uriel Fanelli | 0eb73d75a8 | |
Uriel Fanelli | 2ea8bf202b | |
Uriel Fanelli | 6978287809 | |
Uriel Fanelli | 1b2fa17294 |
37
README.md
37
README.md
|
@ -12,47 +12,18 @@ go build
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
in order to use it, you need app credentials for your specific pod, which you obtain when you register your app.
|
|
||||||
In case your pod makes it too complicate, you can just use the following go :
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
"fmt"
|
|
||||||
"log"
|
|
||||||
|
|
||||||
"github.com/mattn/go-mastodon"
|
|
||||||
)
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
app, err := mastodon.RegisterApp(context.Background(), &mastodon.AppConfig{
|
|
||||||
Server: "https://yourpodhere.put",
|
|
||||||
ClientName: "client-name",
|
|
||||||
Scopes: "read write follow",
|
|
||||||
Website: "whereyour application has a website",
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
fmt.Printf("client-id : %s\n", app.ClientID)
|
|
||||||
fmt.Printf("client-secret: %s\n", app.ClientSecret)
|
|
||||||
}
|
|
||||||
|
|
||||||
```
|
|
||||||
|
|
||||||
just change the values to match your pod, and it will print a new ClientID and ClientSecret.
|
just change the values to match your pod, and it will print a new ClientID and ClientSecret.
|
||||||
|
|
||||||
Once you have both, you can just feed the zorg configuration file, which is a JSON, and change his name as zorg.conf
|
Once you have both, you can just feed the zorg configuration file, which is a JSON, and change his name as zorg.conf
|
||||||
|
Just leave "default" on your ClientID and secret.
|
||||||
|
|
||||||
```
|
```
|
||||||
{
|
{
|
||||||
"ZorgServer":"https://example-pleroma.net",
|
"ZorgServer": "https://example-pleroma.net",
|
||||||
"ZorgClientID": "aqwfgqubvqerb348hü13vhnrqvqerg1ü3ohrgvqervq",
|
"ZorgClientID": "default",
|
||||||
"ZorgClientSecret": "qergerinqieorjhgqrijhg+3higqirgqirjgqerjgqq",
|
"ZorgClientSecret": "default",
|
||||||
"ZorgUname": "johndoe",
|
"ZorgUname": "johndoe",
|
||||||
"ZorgPass" : "lalalalalalalala",
|
"ZorgPass" : "lalalalalalalala",
|
||||||
"ZorgInterval": 7200
|
"ZorgInterval": 7200
|
||||||
|
|
14
feed.go
14
feed.go
|
@ -7,6 +7,8 @@ import (
|
||||||
"os"
|
"os"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"regexp"
|
||||||
|
|
||||||
"github.com/mmcdole/gofeed"
|
"github.com/mmcdole/gofeed"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -49,8 +51,8 @@ func forwardLastFeed(url string) {
|
||||||
|
|
||||||
if time.Since(postAge) < Zint {
|
if time.Since(postAge) < Zint {
|
||||||
|
|
||||||
TheTitle := fmt.Sprintf("[ %s ]", feed.Title)
|
TheTitle := fmt.Sprintf("[News from %s ]", html2text(feed.Title))
|
||||||
TheBody := fmt.Sprintf("%s \n\n%s \n\n%s", b.Author.Name, feed.Description, b.Link)
|
TheBody := fmt.Sprintf("%s\n\n %s\n\n %s\n\n%s\n ", html2text(b.Author.Name), html2text(b.Title), html2text(b.Description), b.Link)
|
||||||
|
|
||||||
postOnMastodon(TheBody, TheTitle)
|
postOnMastodon(TheBody, TheTitle)
|
||||||
log.Println("New content from: ", feed.Title, b.Title, feed.Description)
|
log.Println("New content from: ", feed.Title, b.Title, feed.Description)
|
||||||
|
@ -107,3 +109,11 @@ func fileByLines(filename string) (blurls []string) {
|
||||||
return
|
return
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func html2text(html string) string {
|
||||||
|
|
||||||
|
re := regexp.MustCompile(`<[^>]*>`)
|
||||||
|
|
||||||
|
return re.ReplaceAllString(html, "")
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
https://keinpfusch.net/feed.xml
|
|
||||||
https://git.keinpfusch.net/loweel/zangtumb.rss
|
|
||||||
https://git.keinpfusch.net/loweel/zoreide.rss
|
|
||||||
https://git.keinpfusch.net/loweel/zorg.rss
|
|
||||||
https://git.keinpfusch.net/loweel/zabov.rss
|
|
1
go.mod
1
go.mod
|
@ -3,6 +3,7 @@ module zorg
|
||||||
go 1.13
|
go 1.13
|
||||||
|
|
||||||
require (
|
require (
|
||||||
|
github.com/grokify/html-strip-tags-go v0.0.1
|
||||||
github.com/mattn/go-mastodon v0.0.4
|
github.com/mattn/go-mastodon v0.0.4
|
||||||
github.com/mmcdole/gofeed v1.0.0
|
github.com/mmcdole/gofeed v1.0.0
|
||||||
)
|
)
|
||||||
|
|
2
go.sum
2
go.sum
|
@ -8,6 +8,8 @@ github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs
|
||||||
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
|
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
|
||||||
github.com/gorilla/websocket v1.4.0 h1:WDFjx/TMzVgy9VdMMQi2K2Emtwi2QcUQsztZ/zLaH/Q=
|
github.com/gorilla/websocket v1.4.0 h1:WDFjx/TMzVgy9VdMMQi2K2Emtwi2QcUQsztZ/zLaH/Q=
|
||||||
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
|
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
|
||||||
|
github.com/grokify/html-strip-tags-go v0.0.1 h1:0fThFwLbW7P/kOiTBs03FsJSV9RM2M/Q/MOnCQxKMo0=
|
||||||
|
github.com/grokify/html-strip-tags-go v0.0.1/go.mod h1:2Su6romC5/1VXOQMaWL2yb618ARB8iVo6/DR99A6d78=
|
||||||
github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ=
|
github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ=
|
||||||
github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
||||||
github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s=
|
||||||
|
|
Loading…
Reference in New Issue