fix: only send non-direct messages over websockets
This commit is contained in:
parent
97b05d787f
commit
507b7349ba
2 changed files with 16 additions and 7 deletions
|
@ -63,7 +63,11 @@ const (
|
||||||
|
|
||||||
func (s TokenScope) IsValid() bool {
|
func (s TokenScope) IsValid() bool {
|
||||||
switch s {
|
switch s {
|
||||||
case TokenScopeAccountsRead, TokenScopeAccountsMe, TokenScopeAccountsWrite:
|
case TokenScopeAccountsRead, TokenScopeAccountsMe,
|
||||||
|
TokenScopeAccountsWrite, TokenScopeBlogsRead,
|
||||||
|
TokenScopeBlogsWrite, TokenScopePostsRead,
|
||||||
|
TokenScopePostsWrite, TokenScopeTimeline,
|
||||||
|
TokenScopeStreaming:
|
||||||
return true
|
return true
|
||||||
default:
|
default:
|
||||||
return false
|
return false
|
||||||
|
|
|
@ -71,6 +71,8 @@ func (p *Processor) handlePostLocal(
|
||||||
apiPost := api.DBPostToPost(post, blog, acct)
|
apiPost := api.DBPostToPost(post, blog, acct)
|
||||||
p.SocketHolder.Send(acct.ID, streaming.EventTypePost, apiPost)
|
p.SocketHolder.Send(acct.ID, streaming.EventTypePost, apiPost)
|
||||||
|
|
||||||
|
// send to followers
|
||||||
|
if post.Visibility != database.DirectVisibility {
|
||||||
for _, follower := range followers {
|
for _, follower := range followers {
|
||||||
if !follower.IsLocal {
|
if !follower.IsLocal {
|
||||||
continue
|
continue
|
||||||
|
@ -78,4 +80,7 @@ func (p *Processor) handlePostLocal(
|
||||||
|
|
||||||
p.SocketHolder.Send(follower.AccountID, streaming.EventTypePost, apiPost)
|
p.SocketHolder.Send(follower.AccountID, streaming.EventTypePost, apiPost)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: send to mentions
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue