Project

Profile

Help

HostedRedmine.com has moved to the Planio platform. All logins and passwords remained the same. All users will be able to login and use Redmine just as before. Read more...

Task #924764

open

Добавлен механизм отправки клипов устройствам "Андроид" по команде "Отправить клип в канал"

Added by Сергей Старых over 3 years ago. Updated over 3 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Sprint/Milestone:
Start date:
Due date:
% Done:

0%

Estimated time:

Description


- Клиент для андроида - приложение Clipoid
- Все экземпляры ClipAngel и клиентов Android всех пользователей используют единую облачную БД Firebase с одним именем и паролем, прошитыми в коде
- Имя (идентификатор) канала рассылки клипов генерируется приложением ClipAngel от параметров: 
   - SID пользователя Windows 
   - MAC адреса ethernet контроллера
   - SenderName  - имя компьютера отправителя
- Канал клипов - ветка в БД с именем канала
   - Recipients - список идентификаторов получателей
   - SenderName  - имя компьютера отправителя
   - Data - данные клипа - Base64 строка зашифрованная открытым ключом канала
   - DataDate - дата отправки данных клипа
   - DataTimestamp - отметка времени UNIX момента отправки клипа
- Функция CreateSendChannel генерирует новый ключ шифрования и сохраняет его в файловой системе с NTFS шифрованием
- Команда "Подключить получателя клипов" 
   - Если в файловой системе уже существуют настройки другого (старого) имени канала, то запрашивает "Удалить старый канал?". Если ответ - да, то удаляем из БД старый канал.
   - Если в файловой системе уже существуют настройки текущего имени канала, то запрашивает "Сгенерировать новые ключи шифрования?". Если ответ - да или для текущего имени канала нет настроек в файловой системе, то вызывается UpdateCryptoKeys()
   - Помещает в канал
       - Имя компьютера в свойство SenderName канала
   - Открывает окно с QR кодом для сканирования устройством android. В QR коде будет лежать 
       - имя канала
       - ключ шифрования
   - После сканирования клиент android добавляет свой идентификатор PUSH-клиента в свойство Recipients канала и считывает из калана имя компьютера отправителя из свойства SenderName
- Команда клипа "Отправить получателям клипов" 
   - Отправляет клип не более 10КБ
   - Шифрует структуру (простой текст клипа) и помещает в свойство Data канала
   - Текущую дату помещает в свойство ClipSendDate в настройки приложения и в канал в свойство DataDate
   - Отправляет всем получателям канала (подветка Recipients канала) push сигнал "Данные канала обновлены" 
- При установленной дате ClipSendDate - раз в час ClipAngel пытается очистить данные (ключ Data) в канале
- Клиент андроид, получив push сигнал "Данные канала обновлены", берет из канала свойство Data и пытается расшифровать его ключом шифрования. 
   - Если расшифровка неуспешна, то показывает уведомление "Канал клипов сменил шифрование. Требуется перепривязка к приложению ClipAngel". 
   - Если расшифровка успешна, то показывает уведомление "От <Компьютер> получен клип созданный 1ч30мин назад (Y получателей):
[Текст клипа]". 
- Сделать в исходниках приложений отдельный класс SecretData со свойствами Login и Password. Не класть в git этот исходник.
- Замусоривание облачного хранилища. Если ClipAngel запустили на временно используемом компьютере без автозапуска и подключили к его каналу получателей и отправили большой клип и закрыли программу ранее чем наступит событие очистки клипа (через 60 минут), то данные клипа останутся навсегда.


Files

clipboard-202104122332-04xhg.png (21.6 KB) clipboard-202104122332-04xhg.png Сергей Старых, 2021-04-12 10:32 PM

Related issues

Related to ClipAngel - Task #919327: Added a mechanism for sending clips to Android devices by the command "Send clip to channel"Closed

Actions
Actions #1

Updated by Сергей Старых over 3 years ago

  • Copied from Task #919327: Added a mechanism for sending clips to Android devices by the command "Send clip to channel" added
Actions #2

Updated by Сергей Старых over 3 years ago

  • Subject changed from Added a mechanism for sending clips to Android devices by the command "Send clip to channel" to Добавлен механизм отправки клипов устройствам "Андроид" по команде "Отправить клип в канал"
Actions #3

Updated by Сергей Старых over 3 years ago

  • Copied from deleted (Task #919327: Added a mechanism for sending clips to Android devices by the command "Send clip to channel")
Actions #4

Updated by Сергей Старых over 3 years ago

  • Related to Task #919327: Added a mechanism for sending clips to Android devices by the command "Send clip to channel" added
Actions #6

Updated by Сергей Старых over 3 years ago

  • File deleted (clipboard-202104031956-5bvr9.png)

Also available in: Atom PDF