Mga Legacy Client
Kayang i-manage ng HandyCafe ang V3 at V4 client installation kasabay ng modern clients sa iisang server. Lumalabas ang legacy clients sa Admin Panel bilang sarili nilang uri ng card, na may mas kaunting action set na tumutugma sa sinusuportahan ng orihinal na protocol.
Bago mo makita ang legacy clients sa Admin Panel, i-enable ang runtime support sa Settings > Legacy Clients.
Paano Lumalabas ang Legacy Clients
Kumokonekta ang legacy clients sa server sa pamamagitan ng orihinal na UDP multicast protocol. Hindi sila gumagamit ng mDNS tulad ng modern clients. Sa halip, natutuklasan sila ng server sa dalawang paraan:
| Discovery Path | Trigger |
|---|---|
| TCP Login | Nagpapadala ang client ng LoginRequest sa TCP command port. Itinatala ng server ang peer at nag-i-emit ng connected event. |
| UDP Ping | Nagbo-broadcast ang client ng Ping frame sa multicast group. Tinatanggap ito ng server, ina-update ang peer record, at nag-i-emit ng online event. |
Naka-store ang per-MAC state sa legacy client store kasama ang IP, hostname, naka-login na user, client version, session timer, at last-seen timestamp. Bawat inbound frame ay nagre-reset ng inactivity timer. Kung walang traffic sa loob ng timer na ito (default 10 segundo), mamamarkahan ang client bilang offline. Nananatili ang record sa database para hindi mawala ang history.
Legacy Client Card
Lumalabas ang bawat legacy client bilang card na naiiba sa modern client cards. Ipinapakita sa header ang display name (hostname kapag meron, MAC kapag wala), online o offline badge na may kulay, at status label.
Mga Kulay at Label ng Status
| Status | Kulay | Kahulugan |
|---|---|---|
| Online | Berde | May aktibong session na tumatakbo. |
| Idle | Cyan | Nakakonekta ang client at naghihintay. Walang aktibong session. |
| Paused | Amber | Naka-pause ang session. Naka-hold ang billing. |
| Busy | Purple | Nagpo-process ang client ng request. |
| Payment | Rose | Nasa payment flow ang client. |
| Admin | Indigo | Nasa admin o maintenance mode ang client. |
| Offline | Gray | Walang recent traffic. Naka-disable ang mga action hanggang bumalik online ang client. |
| Timed | Sky | Tumatakbo ang time-limited session na may deadline. |
Session Clock
Kapag aktibo ang session, nagpapakita ang card ng clock block:
- Start time.
- End time (para sa time-limited session).
- Used minutes.
- Remaining minutes na may live countdown.
- Accrued cost.
Identity Info
Palaging ipinapakita ng card ang:
- MAC address.
- IP address.
- Client version (halimbawa "3.4.01").
- Naka-login na user kung mayroon.
Action Toolbar
Kapag online ang client, ang action toolbar sa ibaba ng identity info ay nagbibigay ng mga available na operasyon.
Session Control
| Button | Kailan Nakikita | Gawi |
|---|---|---|
| Login | Idle ang status | Binubuksan ang Device Login dialog. Pumili ng minutes at payment method. Ipinapadala ng server ang Login command kasama ang napiling value. Nagsisimula ang session sa client. |
| Logout | Online, timed, paused, busy, o payment ang status | Kapag postpaid ang session, kumukuha ang payment dialog ng halaga at method. Isinusulat ang transaction sa ledger. Ipinapadala ng server ang Logout command. Nagsasara ang session sa client. |
Add Time
Nagbubukas ng minutes picker. Tumatanggap ng positive values (extend) o negative values (bawas). Ang maximum magnitude ay 10,000 minuto sa magkabilang direksyon. Gumagana ito para sa parehong prepaid at postpaid session.
Kung nag-configure ka ng preset minute values sa pricing settings, magpapakita rin ang card ng row ng preset buttons. I-tap ang preset para gamitin ang value nang hindi binubuksan ang picker.
Screenshot
Humihiling ng live screenshot mula sa legacy client sa file transfer port. Ganito ang flow:
- Nagpapadala ang server ng screenshot request command.
- Nagbubukas ang client ng short-lived TCP listener sa ephemeral port.
- Kumokonekta ang server, nagpapadala ng 9-byte file transfer header, at naghihintay.
- Kinukuha ng client ang screen, ini-encode ito bilang compressed BMP, at ibinabalik bilang stream.
- Dina-decompress ng server ang BMP at ini-store ito sa folder na
legacy_screenshotssa ilalim ng iyong HandyCafe data directory. - Nagbubukas ang screenshot viewer gamit ang bagong image.
Kung hindi sumagot ang client sa loob ng timeout (default 30 segundo para kumonekta, 20 segundo para sa data), mabibigo ang request at may lalabas na error toast. Maaari kang mag-retry agad.
Power Actions
| Action | Confirmation | Epekto |
|---|---|---|
| Logoff | Wala | Nilo-log off ang Windows user sa client machine. Nagtatapos ang Windows session pero naka-on pa rin ang computer. |
| Reboot | Oo | Nagpapadala ng reboot command. Muling nagre-restart ang client machine. |
| Shutdown | Oo | Nagpapadala ng shutdown command. Nagsasara ang client machine. |
Nagpapakita ng confirmation dialog ang Reboot at Shutdown para maiwasan ang aksidenteng power action.
Mga Hindi Sinusuportahang Operasyon
Hindi sinusuportahan ng legacy clients ang lahat ng feature na available sa modern HandyCafe clients. Ilan sa mga limitasyon:
- Walang mid-session pause adjustments. Ang mga time change na ipinasa habang naka-pause ang session ay nase-queue pero maaaring hindi ito pansinin ng client. I-resume muna ang session, ilapat ang pagbabago, pagkatapos ay i-pause ulit kung kailangan.
- Walang Admin mode sa pamamagitan ng server command. Hindi maaaring i-toggle mula sa server ang internal admin status ng client. Sa mismong client machine lamang ito kinokontrol.
- Walang license registration mula sa server. Minimirror ng server ang license bytes na nakikita nito sa client frames pero hindi nito maipapadala ang bagong license sa client. I-register ang client nang lokal.
- Walang member wallet integration para sa session na sinimulan sa legacy client. Ang mga payment ay nai-record bilang plain
transactionsrows na maytransaction_type=sessionsat client MAC. Hindi gumagana ang modern wallet flows. - Walang remote desktop. Gumagamit ang remote desktop feature ng UDP streaming path na wala sa legacy clients.
- Walang file sync push. Ang Sync Explorer ay nagpu-push ng files sa modern protocol lamang.
Para sa buong functionality, mag-migrate sa modern HandyCafe clients kapag posible.
Offline Behavior
Kapag nag-expire ang inactivity timeout, dumidilim ang card, nagiging gray ang status badge, at naka-disable ang bawat action button. Nananatili ang client record sa store para mapanatili ang history, MAC, hostname, at last seen data. Kapag bumalik online ang client (bagong UDP ping o TCP login), muling nabubuhay ang card at nagiging available ulit ang mga action.
Hindi awtomatikong inaalis ang record. Para permanenteng alisin ang lumang client, i-edit ito mula sa admin database o i-delete ito sa pamamagitan ng kaugnay na admin tool.
Mga Tip
- Panatilihin ang inactivity timeout sa 10 segundo maliban na lang kung alam mong mas mabagal mag-beacon ang legacy clients mo. Ang mas maikling timeout ay maling nagma-mark ng healthy clients bilang offline kapag may maikling network hiccup.
- Kung mukhang online ang legacy client pero hindi sumasagot sa commands, kumpirmahin ang Protocol Variant sa Settings. Ang hindi tugmang variant sa server (STE vs Standard) at build ng client ay nagdudulot ng tahimik na command drop.
- Ang mga screenshot mula sa legacy clients ay compressed BMP, na mas malaki kaysa modern PNG captures. Panatilihing may sapat na libreng space ang
legacy_screenshotsfolder kung madalas kang kumukuha ng screenshot. - Gamitin ang Add Time na may preset buttons sa shift transitions. Isang tap lang ang magpapahaba ng session sa predefined increment, na mas mabilis kaysa mano-manong pag-type ng minuto.
- I-retire ang legacy clients nang paunti-unti. Mag-migrate ng isang batch sa isang pagkakataon, kumpirmahing gumagana nang pareho ang bagong clients sa Admin Panel, at saka pa lang i-decommission ang luma.