Skip to content

Commit 66a5a51

Browse files
committed
signalmeow: read receipt and typing settings from account record
1 parent 1f5fb41 commit 66a5a51

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

pkg/signalmeow/sending.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -747,6 +747,16 @@ func (cli *Client) SendMessage(ctx context.Context, recipientID libsignalgo.Serv
747747
cli.sendSyncCopy(ctx, content, messageTimestamp, &res)
748748
}
749749
return SendMessageResult{WasSuccessful: true, SuccessfulSendResult: res}
750+
} else if content.TypingMessage != nil && !cli.Store.DeviceData.AccountRecord.GetTypingIndicators() {
751+
zerolog.Ctx(ctx).Debug().Msg("Not sending typing message as typing indicators are disabled")
752+
res := SuccessfulSendResult{Recipient: recipientID}
753+
return SendMessageResult{WasSuccessful: true, SuccessfulSendResult: res}
754+
} else if content.GetReceiptMessage().GetType() == signalpb.ReceiptMessage_READ && !cli.Store.DeviceData.AccountRecord.GetReadReceipts() {
755+
zerolog.Ctx(ctx).Debug().Msg("Not sending receipt message as read receipts are disabled")
756+
res := SuccessfulSendResult{Recipient: recipientID}
757+
// Still send sync messages for read receipts
758+
cli.sendSyncCopy(ctx, content, messageTimestamp, &res)
759+
return SendMessageResult{WasSuccessful: true, SuccessfulSendResult: res}
750760
}
751761

752762
isDeliveryReceipt := content.ReceiptMessage != nil && content.GetReceiptMessage().GetType() == signalpb.ReceiptMessage_DELIVERY

0 commit comments

Comments
 (0)