XMPP: Post to PubSub
- Dominant language
- Go
- Stars
- 2
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Greetings!
In XMPP, using PubSub(1) (XEP-0060), it is possible to store posts as Atom Syndication(2) entries into XMPP(3).
There are several XMPP extensions that apply it, namely XEP-0227 (4) and XEP-0472 (5) which make node `urn:xmpp:microblog:0` as a common choice to manage news for client accounts (e.g. `blog@koekr.site`), yet a component account (e.g. `pubsub.koekr.site`) may use all of its nodes for this purpose.
```
pubsub.koekr.site/
|
|-- updates/
|-- Sombre
`-- Varied
|-- releases/
`-- events/
pubsub service/
|
|-- node/
|-- item
`-- item
|-- node/
`-- node/
```
A go library that can be utilized would be go-xmpp.
I have made a script that realizes viewing PubSub node items as Atom XML feeds over HTTP.
[XEP-0060: Publish-Subscribe](https://xmpp.org/extensions/xep-0060.html)
[RFC 4287: The Atom Syndication Format](https://www.rfc-editor.org/rfc/rfc4287)
[Atom Over XMPP](https://datatracker.ietf.org/meeting/66/materials/slides-66-atompub-1.pdf)
[XEP-0277: Microblogging over XMPP](https://xmpp.org/extensions/xep-0277.html)
[XEP-0472: Pubsub Social Feed](https://xmpp.org/extensions/xep-0472.html)
[go-xmpp](https://github.com/xmppo/go-xmpp)
[PubSub Over HTTP](https://codeberg.org/poezio/slixmpp/issues/3526)
Contributor guide
No contributing guide indexed for this repository
Research direction
No repository files, tests, or implementation entry points are identified. Start by reviewing the project structure and the referenced go-xmpp and PubSub specifications, then determine the intended integration and HTTP/Atom feed boundary. Done would require a defined scope and an agreed implementation path for posting or exposing XMPP PubSub content.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100