Bruk Tasker til å varsle når de tilkoblede enhetene dine mister Internett-tilgang

Opprett en tethering 'ingen nettverk'-advarsler med Tasker. Det vil gi deg beskjed når forbindelsen din faller ut. Varsler for wearables og tilkoblede enheter

Fra forrige artikkel vet du at jeg bruker mye av tiden min på et tog. Det er et utmerket tidspunkt å skrive en artikkel eller to, forutsatt at jeg har tilgang til Internett for å slå opp fakta og ideer. Tethering kan være vanskelig på toget, siden mottaksløse områder er spredt over ruten min. Jeg synes det er ganske lett å si at jeg er i ferd med å gå offline når jeg er i en tunnel, men situasjonen er mindre tydelig når toget cruiser gjennom de åpne engene i North Yorkshire. Androids innebygde tethering-løsning har ingen mulighet til å fortelle deg at du ikke kommer til å kunne laste den nettsiden de neste 5 minuttene.

Derfor tenkte jeg som en Tasker-elsker på hvordan jeg skulle løse problemet mitt ved å bruke den populære Android-automatiseringsappen. Jeg har løst problemet mitt ved å bygge en "no network"-advarsel ved bruk av Tasker. Målet med prosjektet er å gi deg beskjed når telefonen din ikke lenger er innenfor mobilnettverkets rekkevidde. Dette vil gjøres på 3 måter:

  • Bruke varslings-LED (best for når du tenner for venner)
  • Bruke et smarttelefonikon (trenger en smartklokke)
  • Ved hjelp av en Join-push (best for personlige enheter -kan erstattes med AutoRemote)

Du kan bli mer kreativ med varslinger, men jeg vil bare bruke diskrete alternativer, da tethering mest sannsynlig vil bli brukt på offentlige steder. Ingen liker ubehagelige varsler, ikke sant? Vær oppmerksom på at varslene vil bruke en internettforbindelse for å vises på den tilkoblede enheten. Du kan bruke AutoRemote (via Bluetooth) for å sende ut advarsler når nettverket ikke er tilstede. Dette krever at den aktuelle enheten er sammenkoblet via Bluetooth.

Du vil trenge:

Android-versjon: 4.0+, Android 7.0 nødvendig for varslingsflisen

Apper: Bli med

Plugins: AutoWear (valgfri), AutoRemote (kan erstatte Join), Autovarsling (valgfri)


Aktiver en "ikke-nettverk"-advarsel om nettdeling med Tasker

I stedet for å sjekke om tethering er aktivert, er det enklere å erstatte en flis i statuslinjen med Autovarsling og sett opp en vekslende atferd. Hvis du ikke bruker Android 7.0, kan du bruke en snarvei eller en widget i stedet.

Hvis du aldri har aktivert en flis med Autovarsling – du skal se at dette er litt kjipt. Du må lage en oppsettoppgave som vil konvertere en malbrikke til en flis etter eget valg. Legg en tom flis, dvs. Autovarsling 02 på flisområdet (klikk på rediger for å redigere de synlige flisene).

Lag en Tethering-brikke

Festeflis

Tile Setup

A1: AutoNotification Tiles [ Configuration: Tile: 2

Command: hotspottoggle

Label: Hotspot

Icon: android.resource://net.dinglisch.android.taskerm/hd_aaa_ext_signal

State: 1

Require Unlock: false

Hide Notifications: true Timeout (Seconds):60 ]

A2: Variable Set [ Name:%HotspotVariable To: 0 Recurse Variables: Off Do Maths: Off Append: Off ]

A3: Variable Set [ Name:%HotspotDialog To: 0 Recurse Variables: Off Do Maths: Off Append: Off ]

Les mer

Du trenger bare å kjøre dette én gang for å sette opp flisene og variablene. Flisen vil bruke en kommando hotspottoggle for å endre tilstanden til internettdeling og vil sette den som inaktiv. Den vil også skjule statuslinjen når den trykkes. Du kan kle opp flisen med en valgfri etikett og ikonet.

Ytterligere to variabler vil bli opprettet og satt til 0. %HotspotVariable vil vise statusen til tether (0 = nei, 1 = ja) og %HotspotDialog vil vise en dialog som spør oss hvilken enhet vi vil varsle (0 = vis ikke, 1 = vis dialog).

Tethering veksler

Tethering veksler

Hotspot Toggle 

A1: Variable Add [ Name:%HotspotDialog Value: 1 Wrap Around: 2 ]

A2: AutoNotification Tiles [ Configuration: Tile: 2

Command: hotspottoggle

Label: Hotspot

Icon: android.resource://net.dinglisch.android.taskerm/hd_aaa_ext_signal

State: 999

Require Unlock: false

Hide Notifications: true Timeout (Seconds):60 ]

A3: WiFi Tether [ Set: Toggle ]

A4: Perform Task [ Name: Hotspot Dialog Priority:%priority Parameter 1 (%par1): Parameter 2 (%par2): Return Value Variable: Stop: Off ] If [ %HotspotDialog ~ 1 ]

A5: Wait [ MS: 0 Seconds: 5 Minutes: 0 Hours: 0 Days: 0 ]

A6: Variable Add [ Name:%HotspotVariable Value: 1 Wrap Around: 2 ]

A7: Variable Clear [ Name:%HotspotDevice Pattern Matching: Off ] If [ %HotspotVariable ~ 0 ]

Les mer

Jeg vil bare vise en dialogboks når nettdeling er aktivert. Dialogboksen viser noen enheter jeg eier og lar meg angi målet for varslene. I hvert tilfelle vil jeg stille inn nettingstelefonen min til å blinke varslings-LED-en raskt hver gang mottaket er dårlig.

Når flisen trykkes, endrer den statusen til aktiv. %HotspotDialog endres til 1 og den utløser HotspotDialog oppgave. Mens vi velger enheten vår, aktiveres Hotspot-profilene ved å angi variabelen %HotspotVariable til 1. Når jeg trykker på en flis igjen for å avslutte tjoring, vises HotspotDialog går tilbake til 0 og ber ikke lenger om at dialogboksen skal vises, og %HotspotVariable er satt til nøytral verdi 0.

A1, A6

Handlingen Variabel Legg til +1 vil endre verdien av startvariablene våre fra 0 til 1 og vil vikle den rundt 2. Dette betyr at disse variablene alltid vil ha verdier på 1 eller 0. Handlingsplasseringen er også relevant, som %HotspotDialog vil kontrollere når dialogboksen vises. Vi kjører den samme oppgaven for å deaktivere og aktivere tethering, men vi vil ikke at dialogboksen skal vises hver gang vi bytter den.

A7

Mens vi er i gang, hvis oppgaven utføres for å deaktivere tether (%HotspotVariable = 0), ønsker vi å fjerne variabelen som lagrer navnet på enheten som blir varslet av Hotspot Dialog-oppgaven.

A5

De Vente handling er lagt til for å forhindre at informasjonen om dårlig rekkevidde vises umiddelbart, noe som kan skje når hotspot-innstillingen veksles.

A3

Ganske enkelt veksle mellom WiFi-tether handling. Ingenting komplisert med dette trinnet.

A4

En egen oppgave vises for å vise AutoTools Dialog og handling for valget jeg har tatt. Dette vil kjøre når vår dialogkontrollvariabel %HotspotDialog = 1.

A2

Når bryteren trykkes, vil vi sørge for at flisen veksler mellom tilstanden aktiv/inaktiv og beholder den samme kommandoen: hotspottoggle. Til slutt, sørg for at den vil kollapse statuslinjen.

Hotspot-dialog

Hotspot-dialog

Hotspot Dialog 

A1: AutoTools Dialog [ Configuration: Dialog Type: List

Title: Enable poor network notification?

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png

List Type: 1

Texts: Tablet, Mobile, Computer, Watch, Laptop

Text Size: 20

Images: /storage/emulated/0/Tasker/Material Icons/ic_tablet-1.png,/storage/emulated/0/Tasker/Material Icons/ic_cellphone_android-1.png,/storage/emulated/0/Tasker/Material Icons/ic_desktop_mac-1.png,/storage/emulated/0/Tasker/Material Icons/ic_watch-1.png,/storage/emulated/0/Tasker/Material Icons/ic_laptop-1.png

Image Width: 50

Dim Background: true

Number Of Columns: 3

Top Margin: 16

Bottom Margin: 16

Bottom Buttons Top Margin: 16

Bottom Buttons Bottom Margin: 16

Close On Select: true

Separator: ,

Command Variable: atcommand

Cancelable: true

Turn Screen On: true Timeout (Seconds):60 ]

A2: Variable Set [ Name:%HotspotDevice To:%attext Recurse Variables: Off Do Maths: Off Append: Off ]

Les mer

De Autoverktøy-dialogen brukes til å vise tilgjengelige enheter. Når enheten er valgt, lukkes dialogboksen og angi verdien for %HotspotDevice til navnet på den enheten. Denne variabelen slettes hver gang tilknytningen stoppes.

Dårlig mottak/ingen data

Dårlig mottak/Ingen dataprofiler

Les mer

Jeg har opprettet 2 profiler som vil sjekke signalstyrken og Internett-tilkoblingen. Hver og en er kontrollert av variabelen %HotspotVariable og er bare aktiv når tethering er aktivert. Begge profilene vil utløse den samme oppgaven når de aktiveres og deaktiveres. Den ene inneholder tilstandskonteksten - signalstyrke - og den andre mobilnettet. Ideelt sett vil tilkoblingen fortsatt være tilstede når varselet sendes. Dette er grunnen til at jeg inkluderer signalstyrken satt til 1 i profiltilstanden.

Dårlig signal

Dårlig signal

Profile: Poor Reception (91)

State: Variable Value [ %HotspotVariable ~ 1 ]

State: Signal Strength [ From: 0 To: 1 ]

Enter: PoorSignal (89)

A1: AutoNotification [ Configuration: Use HTML: false

Title: Poor reception

Icon: android.resource://net.dinglisch.android.taskerm/hl_device_access_network_cell

Status Bar Icon: device_access_network_cell

Status Bar Text Size: 16

Id: 55

Priority: -1

Persistent: true

Is Group Summary: false

LED Color: red

LED On: 300

LED Off: 30p

Skip Picture Cache: false

Update Notification: false

Only on Phone: true Timeout (Seconds):20 ]

A2: Join Send Push [ Configuration: Device: Chrome@Laptop

Text: Poor range

Title: Poor reception

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Laptop ]

A3: Join Send Push [ Configuration: Device: Chrome@Home

Text: Poor range

Title: warning

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ]

A4: Join Send Push [ Configuration: Device: Tablet

Text: Poor range

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Tablet ]

A5: AutoWear App [ Configuration: Execute Now: true

Trigger Event: true

Haptic Feedback: true

Name: App

AutoWear Elements: Show

AutoWear Element Id: poorrange

Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]

Exit: Cancel (90)

A1: AutoNotification Cancel [ Configuration: Id: 55

Cancel All: false Timeout (Seconds):0 ]

A2: AutoWear App [ Configuration: Execute Now: true

Trigger Event: true

Haptic Feedback: true

Name: App

AutoWear Elements: Hide

AutoWear Element Id: poorrange

Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]

Profile: No Data (92)

State: Variable Value [ %HotspotVariable ~ 1 ]

State: Mobile Network [ 2G: On 3G: Off 3G - HSPA: Off 4G: Off ]

Enter: PoorSignal (89)

A1: AutoNotification [ Configuration: Use HTML: false

Title: Poor reception

Icon: android.resource://net.dinglisch.android.taskerm/hl_device_access_network_cell

Status Bar Icon: device_access_network_cell

Status Bar Text Size: 16

Id: 55

Priority: -1

Persistent: true

Is Group Summary: false

LED Color: red

LED On: 300

LED Off: 30p

Skip Picture Cache: false

Update Notification: false

Only on Phone: true Timeout (Seconds):20 ]

A2: Join Send Push [ Configuration: Device: Chrome@Laptop

Text: Poor range

Title: Poor reception

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Laptop ]

A3: Join Send Push [ Configuration: Device: Chrome@Home

Text: Poor range

Title: warning

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ]

A4: Join Send Push [ Configuration: Device: Tablet

Text: Poor range

Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Tablet ]

A5: AutoWear App [ Configuration: Execute Now: true

Trigger Event: true

Haptic Feedback: true

Name: App

AutoWear Elements: Show

AutoWear Element Id: poorrange

Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]

Exit: Cancel

A1: AutoNotification Cancel [ Configuration: Id: 55

Cancel All: false Timeout (Seconds):0 ]

A2: AutoWear App [ Configuration: Execute Now: true

Trigger Event: true

Haptic Feedback: true

Name: App

AutoWear Elements: Hide

AutoWear Element Id: poorrange

Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]

Les mer

De Autovarsling varsling opprettes på telefonen, men kun for å få LED-lampen til å blinke. Velg de andre verdiene for varslingen etter din personlige smak og still inn hurtig LED-blink (min er 300ms på/av) i din foretrukne farge. Tanken er å vise diskret informasjon i stedet for et fullstendig invasivt varsel når skjermen våkner. Varslingen lagres som en permanent varsling med ID 55.

Det som følger er en Bli med på push for hver enhet du eier. Velg en Bli med på push for hver enhet, og bruk IF-tilstanden for å matche verdien av %HotspotDevice variabel.

Konfigurer Bli med på push handling for å sende et varsel om ditt valg. Siden disse varslene vil bli avvist på målenheten, er ingen andre handlinger nødvendig.

Smartklokke

Smartwatch-profil

Profile: Remove Watch Icon 

Event: AutoWear Command [ Configuration: Command Filter: closepoorrange

Case Insensitive: false

Exact: true

Regex: false

Variable Array: false ]

Enter: Close WearIcon (55)

A1: AutoWear App [ Configuration: Execute Now: true

Trigger Event: true

Haptic Feedback: true

Name: App

AutoWear Elements: Hide

AutoWear Element Id: poorrange

Turn Screen On: true Timeout (Seconds):60 ]

Les mer

Du vil legge merke til at jeg har endret måten varslingen fungerer på for smartklokken. Ingen av de ovennevnte vil dukke opp på klokken min. Det eneste jeg vil vise på klokken min er et lite ikon som kan avvises på forespørsel.

Lag et ikon ved hjelp av AutoWear Administrer flytende ikoner *(du må gå til AutoWear-appen) og teste størrelsen og plasseringen på klokken. Ikonet vil tegne over hvilken som helst skjerm, så sørg for at det inneholder en kommando på trykk for å lukke den. jeg brukte nært dårlig rekkevidde og kalt ikonet dårlig rekkevidde. Størrelsen på ikonet mitt er 30x30 piksler og det er plassert 65 % til høyre og 20 % fra toppen.

Når du er fornøyd med størrelsen og plasseringen - bruk AutoWear-appen handling for å vise ikonet og HVIS-tilstanden for å koble det til %HotspotDevice variabel.

Avbryt

Avbryt

Cancel (90)

A1: AutoNotification Cancel [ Configuration: Id: 55

Cancel All: false Timeout (Seconds):0 ]

A2: AutoWear App [ Configuration: Execute Now: true

Trigger Event: true

Haptic Feedback: true

Name: App

AutoWear Elements: Hide

AutoWear Element Id: poorrange

Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]

Les mer

For å avslutte LED-blinket og fjerne det flytende ikonet fra klokken, skal jeg bruke en enkel Avbryt autovarsling handling med ID-en til varselet mitt (55) for å utføre AutoWear-appen handling som skjuler det flytende ikonet.

Smartklokken har en tilleggsprofil som fjerner det flytende ikonet hvis ikonet trykkes. For å gjøre dette bruker jeg AutoWear-kommando begivenhet 'nært dårlig rekkeviddeså kjører jeg en egen oppgave som inneholder stort sett den samme handlingen som Avbryt oppgave.


Vi håper du liker denne lille kreasjonen vår, og gi oss beskjed hvis du tror vi kan gjøre noen forbedringer! Som alltid kan du laste ned prosjektet ved å klikke på lenken nedenfor.

Last ned Tethering 'No Network' advarselsprosjektfilen her!

For å importere tethering 'ingen nettverk'-advarslene med Tasker-prosjektfilen, last ned filen ovenfor og lagre den hvor som helst i din interne lagring. Åpne Tasker og kontroller at "nybegynnermodus" er deaktivert i preferansemenyen. Deretter trykker du lenge på "hjem"-ikonet nederst i venstre hjørne og klikker på "importer". Finn prj.xml-filen du lagret tidligere, og velg den for å importere den. Du vil nå se en ny fane i den nederste raden som inneholder alle profilene og oppgavene vi refererte til i denne artikkelen.