Кафеин или један лажни миш за будан рачунар

Приказ табеле садржаја

За привилеговане, рад од куће је донео многе промене. Једна од чуднијих је бесмислена борба за "зелени статус" на платформама за размену порука. Не знам за вас али ја интернет претрагу и краће тестове за посао обављам на приватном рачунару. Тамо увек имам више ресурса, слободнији приступ интернету а од скоро и podman па могу да се пребацим у изоловано окружење за час посла. Иовако сви послови се своде на тестове а не на манипулацију подацима и базама стога ми је често лакше да тестирам скрипте и логику на приватном рачунару.

Због "зеленог статуса" врло често морате да водите рачуна да ли сте померали показивач довољно често и да ли сте имали довољно активности у минути, вредности које полисе на пословном рачунару а ви не можете да их промените. Не желим да се разумемо погрешно: ако сте "зелени" у програмима за размену порука али не одговарате на поруке дуже од 120 секунди, знамо да фолирате и да је ваш "зелени" статус лажан. Међутим, шта је са људима који имају цео дан да обаве неке задатке а контрола се своди на дневни преглед обављених задатака? Можда радник одговара у року од 15 секунди на сваку поруку али на пословном рачунару просто нема ресурсе да брзо тестира и обавља неке задатке. Шта када треба да погледате три часа видео материјала а МС Теамз после 5 минута вас обележава као да нисте ту иако то није тачно? Сви смо били у тој ситуацији на овај или онај начин.

Тестирао сам 2 различита приступа решавању овог проблема:

  • софтверско решење, у виду апликативног софтвера на Windows платформи
  • хардверско решење у виду посебног уређаја који се повезује са рачунаром, које не зависи од оперативног система

Апликативни софтвер

Иако постоји поприличан број програма за разне симулације померања курсора на екрану (енгл. mouse mover), врло мало њих вреди као Caffeine. Програм је писан за Windows платформу и већина пословних рачунара за раднике има тај систем. Caffeine шаље F15 тастер сваких 59 секунди а сам програм не захтева инсталацију (енгл. portable). Употреба тастера F15 је контролисана самим програмом а тај физички тастер нећете видети на стандардним тастатурама. Саму пречицу вероватно никада нећете употребити у животу стога можемо да сигурно кажемо да је избор карактера добар за просечног корисника.

Приликом вишемесечног тестирања сам дошао до закључка да тастер F15 није добар за мене зато што оставља карактере 8~ у PuTTY конзоли (документовано је већ, погледајте KB00087). Срећом, Caffeine нуди поприличан број опција па и да промените тастер који се шаље са -key:123. Неки од мени омиљених тастера су:

145 - "Scroll Lock", 0x91 hex=145
178 - "Stop" media key, 0xB2 hex=178
181 - "Select" Media key, hex=181

Тастери 178 и 181 су незгодни ако гледате видео садржаје на рачунару зато што ће утицати на сам преглед. Тастер 145 ми је је омиљени зато што се више не користи али оперативни системи реагују на њега. Такође, тастер 181 није по стандардима али свакако можете сами да нађете тастер по мени прегледом Virtual-Key Codes стране. Творци програма препоручују и -useshift за слање SHIFT тастера међутим та опција ми се не допада.

Неке од опција које сам користио у овом програму су:

  • -replace - затвара постојећи програм и не покреће нови процес већ мења постојећи. Простије: ако кликнете на иконицу програма пет пута, програм ће бити покренут само једном
  • -noicon - као вишегодишњи ГНОМ корисник, не видим поенту додавања нових иконица на екран нити додатних индикатора. Овај параметар спречава приказ иконице овог програма "поред сата" (не знам ни сам како бих превео реч "icon tray" а да има неког смисла). Имајте у виду да овај параметар значи да морате да гасите програм из менаџера задатака или са TASKKILL /F /IM "caffeine64.exe" у cmd.exe шкољци (или Windows Terminal програму)
  • -stes - алтернатива која не шаље тастер већ користи SetThreadExecutionState. Технички је супериорнија опција од -key:123 међутим чини ми се да није била потпуно поуздана стога је овде као резерва
  • -key:145 - слање посебног тастера који не утиче на PuTTY конзолу.

У виду пречице, коју сами правите, мењате "Target" поље у овако нешто:

"C:\Users\Korisnik\Desktop\caffeine64.exe" -replace -noicon -stes -key:145

или још једноставније:

"C:\Users\Korisnik\Desktop\caffeine64.exe" -replace -noicon -key:181

Једина мана је што -noicon значи да морате отварати менаџер задатака да угасите програм.

Хардверска решења

Иако је апликативни софтвер најприступачније решење, постоји много пословних окружења који не дозвољавају ништа од програма који нису на листи одобрених. Уколико немате Caffeine или слични програм на рачунару, постоји алтернативно решење: куповина USB уређаја који се повезује на рачунар и који сам помера курсор на екрану. Уз све то, уређај шаље информације оперативном систему да је у питању миш!

Иако је нешто скупље решење, на AliExpress сајту имате избор разних уређаја чије се цене крећу од 500 динара. Купио сам један и након 2 недеље је стигао. Прескочићу део у ком вас упозоравам да све сумњиве уређаје прво тестирате на неким трошним рачунарима да будете сигурни да није у питању неки "USB Killer" и сл. Све смо то покрили на страни "одрицање одговорности"!

Уређај који сам добио ради врло просто: помера показивач на екрану лево и десно. Мало сам посматрао шаблон кретања и мој уређај помера показивач тј. курсор више пута заредом у десно па онда у лево. Померај је пар пиксела али ми се чини да није само 1 пиксел већ нешто већа вредност.

Приликом повезивања на Федора систем, dmesg излаз је био следећи:

[40221.223490] usb 1-3: USB disconnect, device number 3
[40224.268025] usb 1-3: new full-speed USB device number 4 using xhci_hcd
[40224.557783] usb 1-3: New USB device found, idVendor=1997, idProduct=2435, bcdDevice= 1.07
[40224.557789] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[40224.557791] usb 1-3: Product: Mouse
[40224.557792] usb 1-3: Manufacturer:
[40224.572733] input:   Mouse as /devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:1997:2435.0006/input/input21
[40224.572899] input:   Mouse System Control as /devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:1997:2435.0006/input/input22
[40224.625125] input:   Mouse Consumer Control as /devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:1997:2435.0006/input/input23
[40224.625237] hid-generic 0003:1997:2435.0006: input,hidraw4: USB HID v1.01 Mouse [  Mouse] on usb-0000:01:00.0-3/input0

Провером lsusb сам дошао до следеће информације:

Bus 001 Device 004: ID 1997:2435 Shenzhen Riitek Technology Co., Ltd Mouse

idVendor број и lsusb се не поклапају но то није ни битно. Видимо да је идентификатор "Mouse" што је добро. Сличан је излаз и у Windows систему. Ево неких делова који су битни из Windows система а које сам успео да прикупим:

HID-Compliant mouse
Class: mouse
Hardware IDs: HID\VID_1997&PID_2435&REV_0107&Col01

Power data:
PDCAP_D0_SUPPORTED
PDCAP_D1_SUPPORTED
PDCAP_D2_SUPPORTED
PDCAP_D3_SUPPORTED
PDCAP_WAKE_FROM_D0_SUPPORTED
PDCAP_WAKE_FROM_D1_SUPPORTED
PDCAP_WAKE_FROM_D2_SUPPORTED

"Power Delivery Capability" је подржан и то на више нивоа: од најнижег (D3) до највишег (D0) и то је сасвим очекивано, са обзиром на то како се уређај понаша.

Оно што је битно је да се овај уређај показао доста добро. У Федора Линуксу и Њињдовсу сам тестирао овај уређај и дошао до закључка да ће систем остати будан у ситуацијама када је рачунар:

  • укључен и видите празну радну површину
  • закључан са постојећим корисничким налогом
  • укључен први пут и систем очекује ауторизацију корисника (корисничко име, лозинка, USB кључ за потврду идентитета итд итд)

Закључак

Оба решења раде добро. Једно захтева улагање новца док друго захтева дозволу да покрећете било који програм на рачунару. Оваква решења код куће немају много смисла зато што на персоналним рачунарима можете да мењате подешавања. На пословним рачунарима је опрема намењена искључиво за рад стога је очекивано да су закључани на више нивоа и начина.

Лична препорука иде ка хардверском решењу због лакшег рада у различитим системима. Уређај је дискретан и постоји много варијација као и модела које можете добавити.

За сам крај, једна изузетно битна напомена: овакав приступ решавању проблема статуса, у програмима за ћаскање, не утиче на везу са удаљеним системима стога један програм или неки уређај овог типа неће бити довољни да останете повезани на удаљени рачунар/сервер. Другим речима: неће лажирати рад на удаљеном серверу. Не бих да неко помисли да је тема овог текста "мрдач миша је довољан да заради новац". Није.


Написано
Кратка веза ове стране: 9442