From 1a6b88fc5abba647fa25f36d970d1850b7646dfc Mon Sep 17 00:00:00 2001 From: RoyceDa Date: Sat, 31 Jan 2026 02:59:35 +0200 Subject: [PATCH] update system messages --- .../SystemAccountsProvider.tsx | 45 +++++++----------- .../SystemAccountsProvider/avatars/safe.png | Bin 0 -> 93152 bytes .../useSendSystemMessage.ts | 21 ++++++++ .../useSystemAccounts.ts | 9 ++++ .../SystemProvider/useSystemInformation.ts | 30 ++++++++++++ app/views/Main/Main.tsx | 19 ++++++++ 6 files changed, 97 insertions(+), 27 deletions(-) create mode 100644 app/providers/SystemAccountsProvider/avatars/safe.png create mode 100644 app/providers/SystemAccountsProvider/useSendSystemMessage.ts create mode 100644 app/providers/SystemProvider/useSystemInformation.ts diff --git a/app/providers/SystemAccountsProvider/SystemAccountsProvider.tsx b/app/providers/SystemAccountsProvider/SystemAccountsProvider.tsx index 9166882..9e14da3 100644 --- a/app/providers/SystemAccountsProvider/SystemAccountsProvider.tsx +++ b/app/providers/SystemAccountsProvider/SystemAccountsProvider.tsx @@ -1,9 +1,8 @@ import { useDatabase } from "@/app/providers/DatabaseProvider/useDatabase"; -import { createContext, useEffect } from "react"; +import { createContext } from "react"; import { useSystemAccount } from "./useSystemAccount"; import { usePublicKey } from "../AccountProvider/usePublicKey"; import { usePrivatePlain } from "../AccountProvider/usePrivatePlain"; -import { APP_VERSION, RELEASE_NOTICE } from "@/app/version"; import { chacha20Encrypt, encodeWithPassword, encrypt } from "@/app/crypto/crypto"; import { generateRandomKey } from "@/app/utils/utils"; import { DeliveredMessageState } from "../DialogProvider/DialogProvider"; @@ -11,7 +10,11 @@ import { UserInformation } from "../InformationProvider/InformationProvider"; import { useNotification } from "@/app/hooks/useNotification"; import { useDialogsList } from "../DialogListProvider/useDialogsList"; -export const SystemAccountContext = createContext(null); +export interface SystemAccountContextValue { + sendMessageFromSystemAccount: (accountUsername: string, message: string) => Promise; +} + +export const SystemAccountContext = createContext(null); export interface SystemUserInformation extends UserInformation { avatar: string; @@ -23,49 +26,37 @@ interface SystemAccountProviderProps { export function SystemAccountProvider(props : SystemAccountProviderProps) { const {runQuery} = useDatabase(); - const lastNoticeVersion = localStorage.getItem("lastNoticeVersion") || "0.0.0"; - const updateAccount = useSystemAccount("updates"); const publicKey = usePublicKey(); const privatePlain = usePrivatePlain(); const {updateDialog} = useDialogsList(); const notify = useNotification(); - useEffect(() => { - if(publicKey == ""){ - return; + const sendMessageFromSystemAccount = async (accountUsername: string, message: string) => { + const account = useSystemAccount(accountUsername); + if(!account){ + throw new Error("System account not found"); } - if(lastNoticeVersion !== APP_VERSION){ - sendReleaseNoticeFromUpdatesAccount(); - localStorage.setItem("lastNoticeVersion", APP_VERSION); - } - }, [lastNoticeVersion, publicKey]); - - const sendReleaseNoticeFromUpdatesAccount = async () => { - const message = RELEASE_NOTICE; - if(message.trim() == ""){ - return; - } - const cahchaEncrypted = await chacha20Encrypt(message.trim()); + const chachaEncrypted : any = await chacha20Encrypt(message.trim()); const key = Buffer.concat([ - Buffer.from(cahchaEncrypted.key, "hex"), - Buffer.from(cahchaEncrypted.nonce, "hex")]); + Buffer.from(chachaEncrypted.key, "hex"), + Buffer.from(chachaEncrypted.nonce, "hex")]); const encryptedKey = await encrypt(key.toString('binary'), publicKey); const messageId = generateRandomKey(16); const plainMessage = await encodeWithPassword(privatePlain, message.trim()); - - await runQuery(` INSERT INTO messages (from_public_key, to_public_key, content, timestamp, read, chacha_key, from_me, plain_message, account, message_id, delivered, attachments) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `, [updateAccount!.publicKey, publicKey, cahchaEncrypted.ciphertext, Date.now(), 0, encryptedKey, 0, plainMessage, publicKey, messageId, DeliveredMessageState.DELIVERED, JSON.stringify([])]); - updateDialog(updateAccount!.publicKey); + `, [account.publicKey, publicKey, chachaEncrypted.ciphertext, Date.now(), 0, encryptedKey, 0, plainMessage, publicKey, messageId, DeliveredMessageState.DELIVERED, JSON.stringify([])]); + updateDialog(account.publicKey); notify("New message", "You have a new message"); } return ( - + {props.children} ) diff --git a/app/providers/SystemAccountsProvider/avatars/safe.png b/app/providers/SystemAccountsProvider/avatars/safe.png new file mode 100644 index 0000000000000000000000000000000000000000..a6a13b7be75235b5190d7df0259ee90a69deab1f GIT binary patch literal 93152 zcmV)8K*qm`P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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∈K=@?{{W^pWm5&l%YrDVh+5pE;p3$TLh2 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̠&_soN5E*v|y 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 z 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 T(fy4-N&r$~@}j?l4FdlIRx-Qi literal 0 HcmV?d00001 diff --git a/app/providers/SystemAccountsProvider/useSendSystemMessage.ts b/app/providers/SystemAccountsProvider/useSendSystemMessage.ts new file mode 100644 index 0000000..2da1dec --- /dev/null +++ b/app/providers/SystemAccountsProvider/useSendSystemMessage.ts @@ -0,0 +1,21 @@ +import { useContext } from "react"; +import { SystemAccountContext } from "./SystemAccountsProvider"; + +/** + * Возвращает функцию для отправки системного сообщения от имени указанного системного аккаунта + * + * ВАЖНО! Данный хук отправляет сообщение в текущий залогиненный аккаунт. + * @param accountUsername имя системного аккаунта от которого необходимо отправить сообщение + * @returns + */ +export function useSendSystemMessage(accountUsername : string) { + const context = useContext(SystemAccountContext); + if(!context){ + throw new Error("useSystemSend must be used within a SystemAccountProvider"); + } + const send = (message: string) => { + return context.sendMessageFromSystemAccount(accountUsername, message); + } + + return send; +} \ No newline at end of file diff --git a/app/providers/SystemAccountsProvider/useSystemAccounts.ts b/app/providers/SystemAccountsProvider/useSystemAccounts.ts index 80baa1d..a3aaa3e 100644 --- a/app/providers/SystemAccountsProvider/useSystemAccounts.ts +++ b/app/providers/SystemAccountsProvider/useSystemAccounts.ts @@ -1,6 +1,7 @@ import { OnlineState } from "@/app/providers/ProtocolProvider/protocol/packets/packet.onlinestate"; import { SystemUserInformation } from "./SystemAccountsProvider"; import updates from './avatars/updates.png'; +import safe from './avatars/safe.png'; export function useSystemAccounts() : SystemUserInformation[] { const accounts : SystemUserInformation[] = [ @@ -11,6 +12,14 @@ export function useSystemAccounts() : SystemUserInformation[] { username: "updates", online: OnlineState.OFFLINE, avatar: updates + }, + { + publicKey: "0x000000000000000000000000000000000000000002", + verified: 1, + title: "Safe", + username: "safe", + online: OnlineState.OFFLINE, + avatar: safe } ]; diff --git a/app/providers/SystemProvider/useSystemInformation.ts b/app/providers/SystemProvider/useSystemInformation.ts new file mode 100644 index 0000000..a1f32c7 --- /dev/null +++ b/app/providers/SystemProvider/useSystemInformation.ts @@ -0,0 +1,30 @@ +import { useContext } from "react"; +import { SystemProviderContext } from "./SystemProvider"; + +/** + * Информация о системе и устройстве + */ +export interface SystemInformation { + /** + * Уникальный обезличенный идентификатор устройства + */ + id: string; + /** + * Имя устройства + */ + name: string; + /** + * Операционная система устройства + */ + os: string; +} + +export function useSystemInformation() : SystemInformation { + const context = useContext(SystemProviderContext); + + if(!context) { + throw new Error("useSystemInformation must be used within a SystemProvider"); + } + + return context as SystemInformation; +} \ No newline at end of file diff --git a/app/views/Main/Main.tsx b/app/views/Main/Main.tsx index beea69d..cf9a7e6 100644 --- a/app/views/Main/Main.tsx +++ b/app/views/Main/Main.tsx @@ -27,13 +27,32 @@ import { useDatabase } from "@/app/providers/DatabaseProvider/useDatabase"; import { useMemoryClean } from "@/app/providers/MemoryProvider/useMemoryClean"; import { useAccountProvider } from "@/app/providers/AccountProvider/useAccountProvider"; import { useLogout } from "@/app/providers/AccountProvider/useLogout"; +import { useUpdateMessage } from "@/app/hooks/useUpdateMessage"; +import { useDeviceMessage } from "@/app/hooks/useDeviceMessage"; export function Main() { const { mainColor, borderColor } = useRosettaColors(); const { lg } = useRosettaBreakpoints(); const location = useLocation(); const [viewState, setViewState] = useViewPanelsState(); + + /** + * Слушаем диалоги в пассивном режиме + */ useDialogFiber(); + + /** + * Отправляем сообщение об обновлении, + * если версия приложения изменилась + */ + useUpdateMessage(); + + /** + * Слушаем все сообщения на присоединение новых устройств + * к нашему аккаунту + */ + useDeviceMessage(); + const { setSize, setResizeble } = useWindow(); /**