diff --git a/app/soapbox/actions/streaming.ts b/app/soapbox/actions/streaming.ts index b6b8ac0bc5..9e99b0d2f0 100644 --- a/app/soapbox/actions/streaming.ts +++ b/app/soapbox/actions/streaming.ts @@ -109,8 +109,17 @@ const connectTimelineStream = ( break; case 'pleroma:chat_update': case 'chat_message': // TruthSocial - updateChat(JSON.parse(data.payload)); - play(soundCache.chat); + dispatch((dispatch: AppDispatch, getState: () => RootState) => { + const chat = JSON.parse(data.payload); + const me = getState().me; + const messageOwned = chat.last_message?.account_id === me; + + // Don't update own messages from streaming + if (!messageOwned) { + updateChat(chat); + play(soundCache.chat); + } + }); break; case 'pleroma:follow_relationships_update': dispatch(updateFollowRelationships(JSON.parse(data.payload)));