Használja a Taskert, hogy értesítse, ha internet-hozzáférése megszűnik a Tethered eszközökön

Hozzon létre internetmegosztási „nincs hálózat” figyelmeztetést a Tasker segítségével. Értesíteni fogja, ha a kapcsolat megszakad. Értesítések hordható és csatlakoztatott eszközökről

Az utolsó cikkből tudja, hogy elég sok időt töltök vonaton. Kiváló alkalom egy-két cikk megírására, feltéve, hogy hozzáférek az internethez tények és ötletek után kutatva. Az internetmegosztás bonyolult lehet a vonaton, mivel a vétel nélküli területek szétszórva vannak az útvonalamon. Elég könnyű megmondani, hogy hamarosan offline leszek, amikor egy alagútban vagyok, de a helyzet kevésbé nyilvánvaló, amikor a vonat Észak-Yorkshire nyílt rétjein cirkál. Az Android beépített internetmegosztási megoldása semmilyen módon nem tájékoztatja Önt arról, hogy a következő 5 percben nem fogja tudni betölteni az adott webhelyet.

Éppen ezért Tasker-rajongóként azon gondolkodtam, hogyan oldjam meg a problémámat a népszerű Android automatizálási alkalmazás segítségével. Megoldottam a problémámat az internetmegosztási „nincs hálózat” figyelmeztetés létrehozásával a Tasker segítségével. A projekt célja, hogy tudassa Önnel, ha telefonja már nincs a mobilhálózat hatókörében. Ez 3 módon történik:

  • Értesítési LED használata (legjobb, ha ismerősökhöz kötöd)
  • Okostelefon ikon használata (okosóra kell)
  • Join push használata (a legjobb a személyes eszközökhöz - helyettesíthető az AutoRemote-tal)

Az értesítésekkel kreatívabb lehet, én azonban csak diszkrét opciókat használok, mivel az internetmegosztást nagy valószínűséggel nyilvános helyeken használják. Senki sem szereti a kellemetlen értesítéseket, igaz? Ne feledje, hogy az értesítések internetkapcsolaton keresztül jelennek meg a csatlakoztatott eszközön. Használhatnád AutoRemote (Bluetooth-on keresztül) figyelmeztetések küldéséhez, ha a hálózat nincs jelen. Ehhez a kérdéses eszközt Bluetooth-on keresztül párosítani kell.

Szükséged lesz:

Android verzió: 4.0+, Android 7.0 szükséges az értesítési csempéhez

Alkalmazások: Csatlakozik

Beépülő modulok: AutoWear (választható), AutoRemote (helyettesítheti a csatlakozást), Automatikus értesítés (választható)


Engedélyezze az internetmegosztási „nincs hálózat” figyelmeztetést a Taskerrel

Ahelyett, hogy ellenőrizné, hogy az internetmegosztás engedélyezve van-e, egyszerűbb az állapotsoron lévő csempe helyettesítése erre Automatikus értesítés és állítson be egy váltási viselkedést. Ha nem Android 7.0-t használ, használhat helyette parancsikont vagy widgetet.

Ha még soha nem engedélyezte a csempét a Automatikus értesítés - látni fogja, hogy ez egy kicsit kínos. Létre kell hoznia egy beállítási feladatot, amely a sablonlapkát az általunk választott csempévé alakítja. Helyezzen el egy üres lapkát, pl. Automatikus értesítés 02 a csempék területére (a látható csempék szerkesztéséhez kattintson a Szerkesztés gombra).

Hozzon létre egy Internetmegosztási csempét

Tethering csempe

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 ]

Olvass tovább

Ezt csak egyszer kell futtatnia a csempék és a változók beállításához. A csempe parancsot fog használni hotspottoggle az internetmegosztás állapotának módosításához, és inaktívként állítja be. Ha megnyomja, az állapotsort is összecsukja. Felöltöztetheti a csempét egy tetszőleges címkével és az ikonnal.

Két további változó jön létre, és 0-ra lesz állítva. HotspotVariable megjeleníti a tether állapotát (0 = nem, 1 = igen) és Hotspot Dialog Megjelenik egy párbeszédablak, amely megkérdezi, hogy melyik eszközt szeretnénk értesíteni (0 = nem jelenik meg, 1 = párbeszédablak megjelenítése).

Internetmegosztás kapcsoló

Internetmegosztás kapcsoló

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 ]

Olvass tovább

Csak akkor akarok párbeszédpanelt megjeleníteni, ha az internetmegosztás engedélyezve van. A párbeszédpanelen megjelennek néhány saját eszközöm, és lehetővé teszi, hogy beállítsam az értesítések célját. Minden esetben úgy állítom be az internetmegosztási telefonomat, hogy az értesítési LED gyorsan villogjon, valahányszor gyenge a vétel.

A csempe megnyomásakor az állapota aktívra változik. Hotspot Dialog 1-re változik, és elindítja a Hotspot Dialog feladat. Amíg kiválasztjuk készülékünket, a Hotspot profilok a változó beállításával élesednek HotspotVariable 1-hez. Amikor újra megnyomok egy csempét az internetmegosztás befejezéséhez, a Hotspot Dialog visszatér 0-ra, és többé nem kéri a párbeszédpanel megjelenítését, és a HotspotVariable semleges 0 értékre van állítva.

A1,A6

A cselekedet Változó +1 hozzáadása a kezdőváltozóink értékét 0-ról 1-re változtatja, és 2 körül fogja össze. Ez azt jelenti, hogy ezek a változók mindig 1 vagy 0 értéket vesznek fel. Az akcióelhelyezés is releváns, mint a Hotspot Dialog szabályozza, hogy mikor jelenjen meg a párbeszédpanel. Ugyanazt a feladatot futtatjuk az internetmegosztás letiltásához és engedélyezéséhez, de nem akarjuk, hogy a párbeszédpanel minden alkalommal megjelenjen, amikor átkapcsoljuk.

A7

Ha már itt tartunk, ha a feladat végrehajtásra kerül a tether letiltására (HotspotVariable = 0), törölni akarjuk azt a változót, amely a Hotspot Dialog feladat által értesített eszköz nevét tárolja.

A5

A Várjon A program hozzáadja a műveletet, amely megakadályozza, hogy a gyenge hatótávolságra vonatkozó információk azonnal megjelenjenek, ami akkor fordulhat elő, ha a hotspot beállítását átkapcsolja.

A3

Egyszerűen kapcsolja be a WiFi tethert akció. Ebben a lépésben nincs semmi bonyolult.

A4

Egy külön feladat jelenik meg a AutoTools párbeszédpanel és cselekvés a döntésemért. Ez akkor fut le, amikor a párbeszédpanel vezérlő változónk %Hotspot Dialog = 1.

A2

A kapcsoló megnyomásakor meg akarunk győződni arról, hogy a csempe aktív/inaktív állapotot vált, és ugyanazt a parancsot megtartja: hotspottoggle. Végül győződjön meg arról, hogy összecsukja az állapotsort.

Hotspot párbeszédpanel

Hotspot párbeszédpanel

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 ]

Olvass tovább

A AutoTools párbeszédpanel az elérhető eszközök megjelenítésére szolgál. Az eszköz kiválasztásakor a párbeszédablak bezárul, és beállítja az értékét HotspotDevice az eszköz nevére. Ez a változó minden alkalommal törlődik, amikor az internetmegosztást leállítják.

Rossz vétel/Nincs adat

Gyenge vétel/Nincs adatprofil

Olvass tovább

Létrehoztam 2 profilt, amelyek ellenőrzik a jelerősséget és az internetkapcsolatot. Mindegyiket a változó vezérli HotspotVariable és csak akkor aktív, ha az internetmegosztás engedélyezve van. Mindkét profil aktiválva és deaktiválva ugyanazt a feladatot indítja el. Az egyik az állapotkontextust – a jelerősséget – tartalmazza, a másik a mobilhálózatot. Ideális esetben a kapcsolat az értesítés kiadásakor is jelen lesz. Ezért veszem bele az 1-re beállított jelerősséget a profilfeltételbe.

Gyenge jel

Gyenge jel

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 ]

Olvass tovább

A Automatikus értesítés értesítés jön létre a telefonon, de csak azért, hogy a LED villogjon. Válassza ki az értesítés többi értékét személyes ízlése szerint, és állítsa be a gyors LED-villogást (az enyém 300 ms be-/kikapcsolás) a kívánt színben. Az ötlet az, hogy diszkrét információkat jelenítsen meg, nem pedig teljesen invazív riasztást, amikor a képernyő felébred. Az értesítést a rendszer állandó értesítésként menti a következővel: azonosító 55.

Ami ezután következik, az a Csatlakozz push minden egyes tulajdonában lévő eszközhöz. Válassz egy Csatlakozz push minden egyes eszközhöz, és használja az IF feltételt az értékhez HotspotDevice változó.

Konfigurálja a Csatlakozz push az Ön által választott értesítés küldéséhez. Mivel ezek az értesítések a céleszközön el lesznek utasítva, nincs szükség további teendőkre.

Okos óra

Okosóra 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 ]

Olvass tovább

Észre fogja venni, hogy megváltoztattam az értesítések működését az okosóránál. A fentiek egyike sem fog megjelenni az órámon. Az egyetlen dolog, amit az órámon szeretnék megjeleníteni, az egy kis ikon, amely kérésre elvethető.

Hozzon létre egy ikont a segítségével Az AutoWear lebegő ikonok kezelése *(Menjen az AutoWear alkalmazásba), és tesztelje a méretet és az elhelyezést az óráján. Az ikon bármelyik képernyő fölé rajzolódik, ezért győződjön meg róla, hogy az érintésre parancsot tartalmaz a bezáráshoz. használtam bezárva szegényes és elnevezte az ikont rossz hatótávolság. Az ikonom mérete 30x30 pixel, és 65%-ban jobbra, 20%-ra felülről van elhelyezve.

Ha elégedett a mérettel és a hellyel, használja a AutoWear App művelet az ikon és az IF feltétel megjelenítéséhez, hogy összekapcsolja azt a HotspotDevice változó.

Megszünteti

Megszünteti

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 ]

Olvass tovább

A LED villogásának befejezéséhez és a lebegő ikon eltávolításához az óráról egy egyszerű módszert fogok használni Automatikus értesítés törlése művelet az értesítésem azonosítójával (55) elvégezni a AutoWear App művelet, amely elrejti a lebegő ikont.

Az okosóra egy további profillal rendelkezik, amely eltávolítja a lebegő ikont, ha megnyomja az ikont. Ehhez használom a AutoWear parancs esemény'bezárva szegényesEzután egy külön feladatot futtatok, amely nagyjából ugyanazt a műveletet tartalmazza, mint a Megszünteti feladat.


Reméljük, hogy elnyeri tetszését ez a kis alkotásunk, és tudassa velünk, ha úgy gondolja, hogy javíthatunk rajta! Mint mindig, most is letöltheti a projektet az alábbi linkre kattintva.

Töltse le a Tethering „Nincs hálózat” figyelmeztető projekt fájlját innen!

Az internetmegosztási „nincs hálózat” figyelmeztetések Tasker projektfájllal történő importálásához töltse le a fenti fájlt, és mentse bárhová a belső tárhelyére. Nyissa meg a Taskert, és ellenőrizze, hogy a "kezdő mód" le van-e tiltva a beállítások menüben. Ezután nyomja meg hosszan a bal alsó sarokban található "otthon" ikont, és kattintson az "importálás" gombra. Keresse meg a korábban mentett prj.xml fájlt, és válassza ki az importáláshoz. Mostantól egy új lap jelenik meg az alsó sorban, amely tartalmazza az összes profilt és feladatot, amelyekre ebben a cikkben hivatkoztunk.