Tilkynningin birtist tuttugu mínútum eftir tengingu. Teljarinn undir henni hafði gengið síðan í fyrramálið, eða síðan reikningurinn auðkenndi sig síðast, og ekkert í viðvöruninni sagði hvor. Það er einkennið: áminning bundin við eitthvað annað en tenginguna fyrir framan þig.

Lausnin er ekki betri viðvörun. Hún er að ákveða hvaða klukku krafan á við, og binda svo tímamælinn við hlut sem er til í þeirri klukku.

Hvað fór af stað, og hvað var það að telja

Þrjár líklegar uppsprettur framleiða sama skilaboðið. Dagatalrsregla gengur á föstum staðartíma og veit ekkert um göng. Teljari í biðlarann safnast á meðan einhver tenging er uppi og lifir endurtengingar af. Stefna gáttar lætur lotuna renna út á netþjónshliðinni og sendir fyrst viðvörun.

Aðeins síðustu tvær snúast um lotu, og þær eru ekki sammála. Teljari biðlarans mælir það sem staðbundna ferlið sá; gáttin mælir það sem hún auðkenndi og gerði upp. Svefn, netbreyting eða endurræsing áhorfandans geta skilið þau að tímum saman, og þess vegna rekur viðvörunin og þvinguð útrunna í sundur.

Þrjár klukkur á bak við eina kröfu

Byrjaðu á að skrifa setninguna sem þú vilt í raun. Að vara við áður en gáttin lýkur þessari tengingu er ekki sama krafan og að minna á eftir sólarhring af tengdum tíma. Það er ekki heldur það sama og að tilkynna að þessi lota hafi verið uppi í 23 klukkustundir. Hver útgáfa nefnir annan atburð, og annar hluti verður að svara honum.

Athugaðu svo hvort gögnin séu til. Staðbundin byrjunarstimpli gefur þér aldur lotunnar án tillits til netþjónsins. Stefna gáttar gefur þér eftirstöðvar líftíma, en aðeins ef gáttin birtir hann. Notkunarskýrsla gefur þér tímalengdina eftir á, og það getur ekki knúið fyrirfram tilkynningu.

Festu tímamælinn við lotuna, ekki reikninginn

Veldu hlutinn fyrst. Reikningur getur haldið nokkrum tækjum og nokkrum samtímis lotum, svo áminning bundin við notandanafnið getur ekki sagt hvaða tenging náði aldrinum. Festu hana við prófílinn og þá virkjun, og afturkallaðu tilkynninguna sem bíður þegar virkjunin endar.

Evidence you can readWhat it establishesWhere it misleads
Connection state changes to activeA session started nowDoes not carry the gateway's own session identifier
Duration reported at disconnectTotal service time for that sessionArrives too late for any advance notice
Interim usage updateTime accounted up to that updateStaleness equals the update interval
Local timestamp taken at activationAge of your observationResets whenever the observer restarts

Sú tafla er samningur fyrir þinn eigin tilkynnanda, ekki lýsing á endurkalls-API einhvers biðlara. Hvað sem uppsetta varan skjalfestir um stöðu tengingar er uppsprettan sem þú átt að binda þig við; þar sem hún birtir aðeins auðkenningaratburði skaltu segja það hátt og samþykkja grófari hegðun í stað þess að álykta lotu.

Prófaðu með stuttum þröskuldi

Kembdu aldrei sólarhringstímamæli með sólarhringsbíð. Bættu við stillanlegu þröskuldi, settu hann á þrjátíu sekúndur og keyrðu fjórar umskiptingar í röð: tengja, bíða, aftengja, endurtengja. Hver umskipting á að gefa nákvæmlega eina stöðubreytingu, og endurtengingin á að tímasetja nýjan frest í stað þess að erfa þann gamla.

# current connection state and profile identity
nmcli -f GENERAL.STATE,GENERAL.CONNECTION connection show work

# the notifier unit you wrote: does it restart the deadline or resume it?
journalctl --user -u vpn-timer.service --since "-5 min" -o cat

Fylgstu með tímastimplum frekar en orðalaginu. Tilkynning sem kemur með byrjunartíma fyrri lotu bundi rangan hlut, og tilkynning sem kemur tvisvar fyrir einn frest þýðir að sent-merkið var aldrei vistað.

Svefn, endurtenging og misst afhending

Svefn brýtur báðar barnalegu hönnunina. Einfaldur niðurtalning stöðvast meðan vélin sefur, frestur samkvæmt veggklukku heldur áfram að færast, og tímamælir sem fer af stað í svefni er afhentur seint eða alls ekki. Ákveddu hvaða hegðun krafan þín þarf, settu vélina svo í svefn yfir þröskuldinn og staðfestu.

Afhending á skilið sömu umhyggju. Ef ekki er hægt að sýna tilkynninguna skaltu setja hana í biðröð og athuga aftur hvort marklotan sé enn til áður en þú sýnir hana að lokum; annars er notandanum varað við tengingu sem er þegar lokið. Þvinguð aftenging og endurnýjun skilríkja halda sig utan þessarar leiðar, því áminning sem breytir hljóðlega örlögum tengingarinnar er stefnuákvörðun í klæðum tilkynningar.

Tengdir greinar