Синхронизация прочтения в группах и фикс синхронизации сообщений в группах
This commit is contained in:
@@ -391,15 +391,22 @@ export function useDialogFiber() {
|
||||
*/
|
||||
usePacket(0x07, async (packet: PacketRead) => {
|
||||
runTaskInQueue(async () => {
|
||||
if (!hasGroup(packet.getToPublicKey())) {
|
||||
const fromPublicKey = packet.getFromPublicKey();
|
||||
const toPublicKey = packet.getToPublicKey();
|
||||
if (!hasGroup(toPublicKey)) {
|
||||
/**
|
||||
* Если это не относится к группам, то игнорируем здесь,
|
||||
* для этого есть отдельный слушатель usePacket выше
|
||||
*/
|
||||
return;
|
||||
}
|
||||
const fromPublicKey = packet.getFromPublicKey();
|
||||
const toPublicKey = packet.getToPublicKey();
|
||||
if(fromPublicKey == publicKey){
|
||||
/**
|
||||
* Игнорируем если это наше прочтение
|
||||
* которое получается при синхронизации
|
||||
*/
|
||||
return;
|
||||
}
|
||||
await runQuery(`UPDATE messages SET read = 1 WHERE to_public_key = ? AND from_public_key = ? AND account = ?`, [toPublicKey, publicKey, publicKey]);
|
||||
await updateSyncTime(Date.now());
|
||||
updateDialog(toPublicKey);
|
||||
|
||||
Reference in New Issue
Block a user