Använd Tasker för att meddela när dina anslutna enheter förlorar internetåtkomst

Skapa en varning för internetdelning "inget nätverk" med Tasker. Det kommer att meddela dig när din anslutning avbryts. Aviseringar för wearables och anslutna enheter

Från förra artikeln vet du att jag spenderar en hel del av min tid på ett tåg. Det är ett utmärkt tillfälle att skriva en artikel eller två, förutsatt att jag har tillgång till Internet för att leta upp fakta och idéer. Tethering kan vara knepigt på tåget, eftersom mottagningslösa områden är utspridda över min rutt. Jag tycker det är ganska lätt att säga att jag är på väg att gå offline när jag är i en tunnel, men situationen är mindre uppenbar när tåget kryssar genom de öppna ängarna i North Yorkshire. Androids inbyggda internetdelningslösning har inget sätt att meddela dig att du inte kommer att kunna ladda den webbplatsen under de kommande 5 minuterna.

Det var därför jag, som en Tasker-aficionado, tänkte på hur jag skulle lösa mitt problem med den populära automationsappen för Android. Jag har löst mitt problem genom att skapa en varning för internetdelning "inget nätverk" med Tasker. Målet med projektet är att låta dig veta när din telefon inte längre är inom mobilnätets räckvidd. Detta kommer att göras på 3 sätt:

  • Använda aviserings-LED (bäst för när du kopplar till vänner)
  • Använda en smartphone-ikon (behöver en smartklocka)
  • Använda en Join-push (bäst för personliga enheter -kan ersättas med AutoRemote)

Du kan bli mer kreativ med aviseringar, men jag kommer bara att använda diskreta alternativ eftersom internetdelning med största sannolikhet kommer att användas på offentliga platser. Ingen gillar vidriga meddelanden, eller hur? Tänk på att aviseringarna kommer att använda en internetanslutning för att dyka upp på den anslutna enheten. Du kan använda AutoRemote (via Bluetooth) för att skicka ut varningar när nätverket inte är närvarande. Detta kräver att enheten i fråga paras ihop via Bluetooth.

Du kommer behöva:

Android version: 4.0+, Android 7.0 behövs för aviseringsrutan

Appar: Ansluta sig

Plugins: AutoWear (frivillig), AutoRemote (kan ersätta Join), Autoavisering (frivillig)


Aktivera en varning för internetdelning "inget nätverk" med Tasker

Istället för att kontrollera om internetdelning är aktiverat är det lättare att ersätta en ruta i statusfältet med Autoavisering och ställ in ett växlingsbeteende. Om du inte använder Android 7.0 kan du använda en genväg eller en widget istället.

Om du aldrig har aktiverat en bricka med Autoavisering – du kommer att se att det här är lite besvärligt. Du måste skapa en inställningsuppgift som konverterar en mallbricka till en bricka som vi väljer. Lägg en tom bricka, d.v.s. Autoavisering 02 på brickområdet (klicka på redigera för att redigera de synliga brickorna).

Skapa en Tethering-bricka

Tethering kakel

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 ]

Läs mer

Du behöver bara köra detta en gång för att ställa in brickorna och variablerna. Kakeln kommer att använda ett kommando hotspotväxla för att ändra tillståndet för internetdelning och kommer att ställa in det som inaktivt. Den kommer också att kollapsa statusfältet när du trycker på den. Du kan klä upp brickan med en valfri etikett och ikonen.

Ytterligare två variabler kommer att skapas och ställas in på 0. %HotspotVariable kommer att visa statusen för tether (0 = nej, 1 = ja) och %HotspotDialog kommer att visa en dialogruta som frågar oss vilken enhet vi vill meddela (0 = visa inte, 1 = visa dialog).

Tethering växlar

Tethering växlar

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 ]

Läs mer

Jag vill bara visa en dialogruta när internetdelning är aktiverad. Dialogrutan kommer att visa några enheter jag äger och gör att jag kan ställa in målet för aviseringarna. I varje fall kommer jag att ställa in min internetdelningstelefon så att den blinkar med aviseringslampan snabbt varje gång mottagningen är dålig.

När brickan trycks in ändrar den statusen till aktiv. %HotspotDialog ändras till 1 och det utlöser HotspotDialog uppgift. Medan vi väljer vår enhet aktiveras Hotspot-profilerna genom att ställa in variabeln %HotspotVariable till 1. När jag trycker på en bricka igen för att avsluta internetdelning, visas HotspotDialog återgår till 0 och uppmanar inte längre att dialogrutan ska visas, och %HotspotVariable är inställd på neutralvärdet 0.

A1, A6

Handlingen Variabel Lägg till +1 kommer att ändra värdet på våra startvariabler från 0 till 1 och linda det runt 2. Det betyder att dessa variabler alltid kommer att ha värden 1 eller 0. Handlingsplaceringen är också relevant, liksom %HotspotDialog kommer att styra när dialogrutan visas. Vi kör samma uppgift för att inaktivera och aktivera internetdelning, men vi vill inte att dialogrutan ska visas varje gång vi växlar den.

A7

Medan vi håller på, om uppgiften utförs för att inaktivera tjudern (%HotspotVariable = 0), vill vi rensa variabeln som lagrar namnet på enheten som aviseras av Hotspot Dialog-uppgiften.

A5

De Vänta åtgärd läggs till för att förhindra att informationen om dålig räckvidd visas direkt, vilket kan inträffa när hotspot-inställningen växlas.

A3

Helt enkelt växla mellan WiFi-tether handling. Inget komplicerat med detta steg.

A4

En separat uppgift visas för att visa Dialogrutan AutoTools och handling för det val jag har gjort. Detta kommer att köras när vår dialogstyrningsvariabel %HotspotDialog = 1.

A2

När du trycker på växeln vill vi se till att brickan växlar mellan tillståndet aktiv/inaktiv och behåller samma kommando: hotspotväxla. Slutligen, se till att det kommer att kollapsa statusfältet.

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 ]

Läs mer

De Dialogrutan AutoTools används för att visa tillgängliga enheter. När enheten är vald stängs dialogrutan och ställer in värdet på %HotspotDevice till namnet på den enheten. Denna variabel rensas varje gång internetdelningen stoppas.

Dålig mottagning/inga data

Dålig mottagning/inga dataprofiler

Läs mer

Jag har skapat 2 profiler som kontrollerar signalstyrkan och internetanslutningen. Var och en styrs av variabeln %HotspotVariable och är bara aktiv när internetdelning är aktiverad. Båda profilerna kommer att utlösa samma uppgift när de aktiveras och deaktiveras. Den ena innehåller tillståndskontexten - signalstyrka - och den andra mobilnätet. Helst kommer anslutningen att finnas kvar när meddelandet utfärdas. Det är därför jag inkluderar signalstyrkan inställd på 1 i profilvillkoret.

Dålig signal

Dålig 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 ]

Läs mer

De Autoavisering avisering skapas på telefonen, men bara för att få lysdioden att blinka. Välj de andra värdena för meddelandet efter din personliga smak och ställ in snabb LED-blinkning (min är 300 ms på/av) i din önskade färg. Tanken är att visa diskret information snarare än en helt invasiv varning när skärmen vaknar. Aviseringen sparas som en permanent avisering med ID 55.

Vad som följer härnäst är a Gå med i push för varje enhet du äger. Välj en Gå med i push för varje enhet och använd IF-villkoret för att matcha värdet på %HotspotDevice variabel.

Konfigurera Gå med i push åtgärd för att skicka ett meddelande om ditt val. Eftersom dessa meddelanden kommer att avvisas på målenheten, behövs inga andra åtgärder.

Smart klocka

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 ]

Läs mer

Du kommer att märka att jag har ändrat hur aviseringen fungerar för smartklockan. Inget av ovanstående kommer att dyka upp på min klocka. Det enda jag vill visa på min klocka är en liten ikon som kan avvisas på begäran.

Skapa en ikon med AutoWear Hantera flytande ikoner *(du måste gå till AutoWear-appen) och testa storleken och placeringen på din klocka. Ikonen kommer att ritas över vilken skärm som helst, så se till att den innehåller ett kommando på tryck för att stänga den. jag använde nära dåligt område och döpte ikonen dåligt räckvidd. Storleken på min ikon är 30x30 pixlar och den är placerad 65% till höger och 20% från toppen.

När du är nöjd med storleken och platsen - använd AutoWear-appen åtgärd för att visa ikonen och OM-villkoret för att länka den till %HotspotDevice variabel.

Annullera

Annullera

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 ]

Läs mer

För att avsluta LED-blinkningen och ta bort den flytande ikonen från klockan, ska jag använda en enkel Avbryt autoavisering åtgärd med ID för min avisering (55) för att utföra AutoWear-appen åtgärd som döljer den flytande ikonen.

Smartklockan har en extra profil som tar bort den flytande ikonen om ikonen trycks ned. För att göra detta använder jag AutoWear-kommando händelse 'nära dåligt områdesedan kör jag en separat uppgift som innehåller ungefär samma åtgärd som Annullera uppgift.


Vi hoppas att du gillar vår lilla skapelse, och låt oss veta om du tror att vi kan göra några förbättringar! Som alltid kan du ladda ner projektet genom att klicka på länken nedan.

Ladda ner projektfilen för Tethering 'Inget nätverk' här!

För att importera varningarna för internetdelning "inget nätverk" med Tasker-projektfilen, ladda ner filen ovan och spara den var som helst i ditt interna minne. Öppna Tasker och kontrollera att "nybörjarläge" är inaktiverat i inställningsmenyn. Tryck sedan länge på "hem"-ikonen i det nedre vänstra hörnet och klicka på "importera". Hitta filen prj.xml som du sparade tidigare och välj den för att importera den. Du kommer nu att se en ny flik i den nedre raden som innehåller alla profiler och uppgifter som vi refererade till i den här artikeln.