idk i have Thoughts about reply distribution
This commit is contained in:
parent
acb208dd30
commit
b10ab5b93d
|
@ -48,4 +48,85 @@ object: https://alice.social/rooms/1
|
||||||
to: https://alice.social/rooms/1/audience
|
to: https://alice.social/rooms/1/audience
|
||||||
content: "hello room"
|
content: "hello room"
|
||||||
context: https://alice.social/rooms/1/context
|
context: https://alice.social/rooms/1/context
|
||||||
|
```
|
||||||
|
|
||||||
|
## distribution model
|
||||||
|
|
||||||
|
[tldr i should choose if i want my reply to go to my followers, or their followers, or just them, or all of the above, or whatever]
|
||||||
|
|
||||||
|
direct addressing should be better supported
|
||||||
|
|
||||||
|
alice makes a post and sends it to her followers or whatever. optionally it can be made available to the public?
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
id: alice.example/54078934249073290847321094/activity/1
|
||||||
|
actor: alice.example
|
||||||
|
type: Create
|
||||||
|
object:
|
||||||
|
id: alice.example/54078934249073290847321094
|
||||||
|
type: Note
|
||||||
|
content: "hello world"
|
||||||
|
audience: Public # could be alice.example/followers instead
|
||||||
|
cc: [alice.example/followers, Public]
|
||||||
|
```
|
||||||
|
|
||||||
|
bob replies to alice, they send that to alice only, and *maybe* optionally to their followers. **this should be up to the user (bob).**
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
id: bob.example/94378256423895476238954/activity/1
|
||||||
|
actor: bob.example
|
||||||
|
type: Create
|
||||||
|
object:
|
||||||
|
id: bob.example/94378256423895476238954
|
||||||
|
type: Note
|
||||||
|
inReplyTo: alice.example/54078934249073290847321094
|
||||||
|
content: "hi i'm bob"
|
||||||
|
audience: Public
|
||||||
|
to: [alice.example]
|
||||||
|
cc: [alice.example/followers, bob.example/followers] # alice's followers will be inbox-forwarded if alice allows it
|
||||||
|
```
|
||||||
|
|
||||||
|
alice can then choose to redistribute that reply. **this should be up to the recipient (alice)** and also **this should be made clear to the replier (bob)**
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
id: alice.example/7659804769058743906/activity/1
|
||||||
|
actor: alice.example
|
||||||
|
type: Announce
|
||||||
|
object: bob.example/94378256423895476238954
|
||||||
|
cc: [alice.example/followers, bob.example]
|
||||||
|
```
|
||||||
|
|
||||||
|
note that alice might allow bob's replies to be automatically redistributed, if alice trusts bob.
|
||||||
|
|
||||||
|
bob may not want his reply to be redistributed though
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
id: bob.example/15789436589346/activity/1
|
||||||
|
actor: bob.example
|
||||||
|
type: Create
|
||||||
|
object:
|
||||||
|
id: bob.example/15789436589346 # may be excluded but could be better to explicitly specify as null. if provided, will return 401 Not Authorized if you do HTTP GET
|
||||||
|
type: Note
|
||||||
|
inReplyTo: alice.example/54078934249073290847321094
|
||||||
|
content: "i'm gay. don't tell anyone"
|
||||||
|
audience: alice.example
|
||||||
|
to: [alice.example]
|
||||||
|
```
|
||||||
|
|
||||||
|
alice can reply to bob's private reply, but no one else can see that reply
|
||||||
|
|
||||||
|
bob might also make his reply explicitly anonymous and transient by using id: null or not providing id
|
||||||
|
|
||||||
|
alice's reply SHOULD NOT target her followers, although she is capable of doing so. **this should be an explicit decision.**
|
||||||
|
|
||||||
|
### maybe objects shouldn't be inlined tho
|
||||||
|
|
||||||
|
spritely magenc golem ocappub etc etc etc
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
id: alice.example/54078934249073290847321094/activity/1
|
||||||
|
actor: alice.example
|
||||||
|
type: Create
|
||||||
|
object: alice.example/54078934249073290847321094 # how to fetch this?
|
||||||
|
cc: [alice.example/followers, Public]
|
||||||
```
|
```
|
Loading…
Reference in a new issue