Вход | Регистрация
    1  2  3  4  5  6
Информационные технологии :: Администрирование

План написания убийцы TeamViewer и прочих Ammyy...

↓ [Волшебник, 10.07.15 - 17:41]
План написания убийцы TeamViewer и прочих Ammyy...
Я
   Garykom
 
24.06.15 - 05:39
2. Хочу демо/тест49% (17)
1. Нафейхуа34% (12)
3. КГ/АМ17% (6)
Всего мнений: 35

Собственно они слегка достали, ТВ своей "борьбой с халявщиками" а аммии тормознутостью (вытекает что вместо написания своего переделали сорцы VNC) и что его банит Chrome.

Хочу свой с посекундной тарификацией за время работы и прочими.

Для кроссплатформы решил freepascal|lazarus и чтобы ничего допом типа jre или .net не нужно было ставить.

Вообщем нужен план и фичи первоочередные.
Пока набросок

1. Сервер-репитер с белым ip пашет как пересылатель туды/сюды и еще для учета и прочего

2. Прога включает в себе сервер:
2.1 соединяется с репитером, отправляет ему свой id
2.2 ждет коннекта, после
2.3 начинает слать скриншоты сжатые чем то // чем лучше?
2.4 получает команды мыши/клавы и выполняет

3. И клиент:
3.1 соединяется с репитером, отправляет ему свой id
3.2 делает запрос на подключение к серверу по id
3.3 получает сжатые скриншоты, распаковывает и показывает
3.4 отправляет команды мыши/клавы

ЗЫ собственно что я упустил?

ЗЗЫ получение скриншотов уже сделал )) раз в 10 миллисекунд вроде сильно слегка устаревший комп не грузит, причем еще и отображение пашет

ЗЗЗЫ http://saveimg.ru/show-image.php?id=f00f2cef9a7e71599dadbc28ad7f5034
   stix2010
 
501 - 29.06.15 - 14:38
(498) хех, написал стих "Мой дядя самых честных правил...", оказалось это уже Пушкин до меня сочинил
   Jump
 
502 - 29.06.15 - 14:40
(501)Да Пушкин вообще подлец, написал все стихи которые можно было написать, а теперь современная молодежь мучается, ибо чтобы ни придумали - у Пушкина уже есть.
   Garykom
 
503 - 29.06.15 - 14:42
(499) идея интересная но реализовать проблемно, хотя можно через отслеживание координат окон

вот если видео на экране кажется и в нем квадратик двигается то уже никак по простому
   Jump
 
504 - 29.06.15 - 14:46
(503)Если говорить о винде, то не очень проблемно.
Кординаты всех ярлыков, окон и прочего можно узнать у эксполрера, или  через винапи.
   Garykom
 
505 - 29.06.15 - 14:46
(503)+ хотя... если хранить (как и передавать) изображения сразу с хешем то можно ))

т.е. свернули окно, показываем рабочий стол весь, назад восстановили - опс а картинка то уже есть
   Garykom
 
506 - 29.06.15 - 14:47
(504) угу только как бы сразу "для разных ОС" хочу, т.е. варианты "только для винды" рассматриваю в последнюю очередь
   Jump
 
507 - 29.06.15 - 14:49
(506)Дык в линуксе тоже есть методы чтобы получить координаты объектов на рабочем столе.
Просто они другие.

Т.е в разных ОС будет просто разные механизмы получения и работы с ними, а объекты одинаковые.

Поэтому в любом случае для вин и лин клиенты должны быть разными.
А протокол обмена между разными клиентами должен быть один.
   Garikk
 
508 - 29.06.15 - 14:51
(507) в линухе можно из иксов напрямую тянуть примитивы которыми он рисует окно
   Garikk
 
509 - 29.06.15 - 14:52
в винде затрудняюсь сказать насколько это доступно
   Jump
 
510 - 29.06.15 - 14:52
(509)В винде то же самое, только реализация различается.
   Garykom
 
511 - 29.06.15 - 16:06
(510) даже тимвьювер для линукс не стали переписывать а вайн заюзали... вы хотите чтобы я написал круче чем они?
   Провинциальный 1сник
 
512 - 29.06.15 - 16:15
(497) Причем в первую очередь и с лучшим качеством передавать те участки, где ближе мышка или где находится текстовый курсор. Во вторую - где были больше изменений. Ну и в третью всё остальное.
   Garykom
 
513 - 29.06.15 - 16:22
(512) больше изменений это как?

пока простой алгоритм есть два кадра (текущий и предыдущий), бежим по пикселям слева-направо и сверху-вниз, если цвет точки на кадрах отличается то кидаем в кадр изменений (этот кадр изменений по сути целый экран с прозрачным фоном)

если много изменений (больше 50%) причем это обнаружилось еще в процессе пока не дошли до конца, то прерываем сравнение и шлем целый кадр
   Garykom
 
514 - 29.06.15 - 17:07
(513) вот кстати этот метод пробег по всем пикселям и сравнение на больших разрешениях экрана вызывает слегка тормоза

т.е. придется по некой сетке делать или еще как типа http://www.delphimaster.ru/cgi-bin/forum.pl?id=1284964400&n=7
задачка то древняя любителей лисапедов много
   Garikk
 
515 - 29.06.15 - 17:18
я плохо соображаю в математике, но сдаётся мне что картинки можно сравнивать как две матрицы...и относительно этого высчитывать различия
   Garikk
 
516 - 29.06.15 - 17:19
плюс такие вычисления видеокарта умеет делать довольно шустро
   Jump
 
517 - 29.06.15 - 18:10
(514)Понятно что будут тормоза, как при подсчете, так и при передаче.
Не надо бегать по пикселам, работай с областями.
   Jump
 
518 - 29.06.15 - 18:47
Вообще чтобы не городить велосипед из костылей, думаю за основу стоит взять принципы работы RFB.
http://www.realvnc.com/docs/rfbproto.pdf
   Злопчинский
 
519 - 29.06.15 - 18:49
жду велосипеда на тестдрайв. надеюсь, что в альфа версии тормозные колодки не прилипнут к ободам

2. Хочу демо/тест
   Garykom
 
520 - 29.06.15 - 19:04
(519) лисапед пока тока прямо едет (без репитера) и медленно, это совсем неинтересно
   Garykom
 
521 - 29.06.15 - 19:08
Гм интересная задачка, а как можно определить что 2 компа находятся в одной локальной/виртуальной сети?

Хотя понятно делаем пробный коннект к ожидаемому ид и если нет коннекта или ид не тот то нуна через репитер
   Jump
 
522 - 29.06.15 - 19:20
(521)Не понял зачем это нужно? А вообще через широковещательную рассылку можно.
   Garykom
 
523 - 29.06.15 - 19:31
(522) чтобы через репитер поток не гнать если можно напрямую, когда компы в одной локалке или белые ip

хм еще нужно предусмотреть вариант обратного подключения когда у админа белый ip а целевая машина за натом, чтобы целевая обратный прямой коннект сделала

т.е. компы 1 и 2 соединены с репитером 3, если комп 1 хочет управлять компом 2 то:

делаем попытки соединения 1->2 и 2->1, если обе не прошли то через репитер 1->3->2
   Jump
 
524 - 29.06.15 - 19:42
(523)Лучше не мудрить, а сделать переключатель.
По дефолту считаем что работаем в интернете, для подключения по локальной сети ставим галку.
Или банально указываем айпишник.
   Garykom
 
525 - 29.06.15 - 20:44
(524) неа, предпочитаю следовать принципу kiss

т.е. для пользователя все должно быть как можно проще и понятнее, все сложное в доп.настройках или отдельный режим работы(эксперт)/версия
   forforumandspam
 
526 - 01.07.15 - 08:18
(394) +100500
   forforumandspam
 
527 - 01.07.15 - 08:52
(0) Хочется больше настроек качества изображения, а именно, выбирать кадры/с, кратность размера картинки и уровень качества jpeg (0..100). Кратность - это вместо 1200х1600 на клиенте увидеть 600х800. Иногда важно хоть что-то, хоть как-то увидеть, чем ничего.
   Garykom
 
528 - 10.07.15 - 17:04
(527) для этого нужно как то скорость канала оценить

все методы что я знаю дают дикий разброс на коротком интервале тестирования (меньше несколько минут)
   H A D G E H O G s
 
529 - 10.07.15 - 17:10
Прошло 2 недели с начала темы.
Што написано афтором?
   Garykom
 
530 - 10.07.15 - 17:16
(529) автор дальше пока ничего не делал, пытаюсь траблы на основной работе решить и машину обновить... при этом все это перемежается отвлечением на флуд на форумах

ЗЫ пора что то бросать...
 
 Рекламное место пустует
   H A D G E H O G s
 
531 - 10.07.15 - 17:21
(530) Давай я тебе расскажу, что будет дальше:

1. Ничего.
   Garikk
 
532 - 10.07.15 - 17:35
А как всё хорошо начиналось :))
   Garykom
 
533 - 10.07.15 - 17:40
(531) не спорю, возможно и так
   DDwe
 
534 - 10.07.15 - 18:54
Хотели как лучше, а получилось...
   mistеr
 
535 - 12.07.15 - 20:55
Пока автор флудил на форуме, уже RDP клиент на JavaScript написали.
   Salimbek
 
536 - 14.07.15 - 14:53
(535) Не верю, VNC - написали, RDP - нет.
   Garykom
 
537 - 14.07.15 - 16:50
(535) молодцы терь пусть сервер напишут...и заставят на любой оси (любом броузере) это работать
   mistеr
 
538 - 16.07.15 - 14:45
(536) https://github.com/citronneur/mstsc.js - попробуй.

Правда, кроме браузера, требуется Node.js. Пока.
  1  2  3  4  5  6

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.