Modalități de obținere a notificărilor active către o teorie Mac

Aceasta este cu siguranță vârsta comunicărilor instantanee. Toată lumea se așteaptă să fii online și disponibil aproape tot timpul. Toată lumea are un punct de conectare online, care trebuie monitorizat și respectat. În caz contrar, veți ajunge cu clienți și prieteni nefericiți.

Te-ai întrebat cum funcționează aceste tipuri diferite de notificări și cum poți să-ți faci singur. În acest tutorial, vă voi prezenta lumea uimitoare de notificări și cum o puteți face singuri. 

Acest tutorial are două părți și va preda:

  1. teoria și metodele din spatele notificărilor active
  2. teoria într-un exemplu real de server web

Teoria și metodele din spatele notificărilor active

În această primă parte a tutorialului, vă voi arăta teoria și metodele din spatele notificărilor active.

Tipuri de notificări

Nu toate notificările sunt aceleași. De exemplu, dacă aveți un program care vă spune despre unul nou Facebook notificare, aveți un votare program care va sondaj Facebook server periodic pentru a vedea dacă aveți ceva nou. 

Daca ai dropbox pe un server cu un program care utilizează web-cârlige, atunci aveți un a direct sistem de notificare pentru a notifica serverul de o schimbare în dropbox Sistemul de fișiere.

Interogare sistemele sunt cele mai ușor de instalat, dar necesită un cod mai complicat pe server pentru a stoca notificările. Depinde de computerul utilizatorului să ruleze un program care va interoga periodic serverul web. Aceasta înseamnă însă că frecvența de interogare determină latența notificării. Prin urmare, dacă programul de verificare verifică o dată pe oră, cea mai gravă întârziere de contact va fi de o oră. Dacă frecvența de interogare este prea rapidă, veți bate sistemul. Mai ales dacă aveți multe astfel de programe.

Direct sistemele le spun serverului cum să vă contacteze după ce a fost stabilită o conexiune la rețea. Când va apărea o notificare, serverul va contacta direct calculatorul. Nu s-au pierdut timpul în chestionare, dar contactarea sistemului poate fi problematică. Direct notificările sunt dificil de întreținut datorită echipamentelor de protecție de pe internet.

În acest tutorial, vă voi arăta Direct sau Activ opțiunile de notificare. Vă voi arăta, de asemenea, posibilele probleme și modul de abordare a acestora.

Metoda de a face contact

Fiecare computer care se află pe Internet are un număr de identificare unic numit adresa IP. Pentru ca un computer să se conecteze la altul, trebuie să obțină adresa IP a acestuia. În mod normal, ați folosi a Server de nume de domeniu (DNS) pentru a obține adresa IP de la un nume de server unic.

Nume exemplu de căutare

De exemplu, pentru a contacta site-ul meu, computerul meu contactează DNS Server a traduce customct.com la adresa IP a lui 162.248.101.154. Computerul meu a primit adresa IP a DNS Server când se conectează la Furnizor de servicii de internet sau ISP. DNS Server cunoaște adresa IP a computerului care solicită informații din solicitare. DNS Server apoi returnează IP-ul serverului web care se potrivește cu numele. 

După configurarea unui server Web pe Internet, acestea primesc o adresă IP statică unică, care nu se va schimba pe toată durata de viață a serverului. Browserul web de pe computerul meu contactează adresa IP pentru conținutul site-ului meu. Acesta este modul în care un computer poate contacta direct cu un alt computer de pe internet.

Problema cu această metodă de a contacta este că nu fiecare computer de pe Internet are un nume asociat cu acesta. Computerul dvs. de acasă are doar o adresă IP, și nu un nume pe care îl are DNS Server ar ști despre.

Pentru a face lucrurile mai grele, de fiecare dată când un computer se conectează și se deconectează de la internet, îi este atribuită dinamic o adresă IP. Fiecare ISP are un grup sau un grup de adrese IP pe care le poate oferi clienților săi, dar clientul utilizează numai acea IP în timp ce este conectat. Data viitoare când vă conectați, computerul dvs. va obține cel mai probabil o adresă IP diferită.

Servere DNS dinamice

O modalitate prin care un server să știe cum să contacteze un computer este să vă abonați la un serviciu Dynamic DNS serviciu sau DDNS. De obicei, obțineți un nume care este un subdomeniu al lor DNS Nume.

Ori de câte ori un utilizator are nevoie de adresa IP a computerului, acesta va contacta DDNS serviciu pentru IP-ul curent. Apoi rulați un program pe computerul dvs. care actualizează DDNS periodic sau ori de câte ori se schimbă IP.

Un astfel de serviciu este Dynu Systems. Când vă înregistrați la serviciul lor, vă oferă gratuit DNS nume pentru computerul dvs. care este un subdomeniu al domeniului lor principal de domeniu. De exemplu, am creat un cont customct pe Dynu Systems' liber DNS

Numele computerului meu este customct.freeddns.org. Pe linia de comandă, pot tasta:

nslookup customct.freeddns.org

pentru a primi producția de:

Server: 8.8.8.8 Adresa: 8.8.8.8 # 53 Răspuns non-autoritar: Nume: customct.freeddns.org Adresa: 110.77.204.21

nslookup comanda este un program de linie de comandă pentru a efectua o DNS căutați pe un nume pentru a obține IP adresa asociată cu numele. În acest exemplu, nslookup a cerut DNS server la 8.8.8.8, care este DNS public Google. Google Public DNS apoi a întrebat DDNS furnizor. DDNS furnizorul a dat adresa 110.77.204.21, care a fost ultima IP valabilă pentru acest sistem.

Probleme legate de contactarea unui sistem home

Acum, prima încercare pe care am efectuat-o să-mi contactez sistemul de acasă dintr-un server, a stat acolo fără ca sistemul meu să primească o notificare. Folosind traceroute, un utilitar de linie de comandă pe sistemele Linux și Mac, pe server, am constatat că notificarea sa oprit la routerul local din casa mea. 

Furnizorul meu de servicii Internet furnizează un router mascat în casa mea, care ascunde toate computerele din casa mea cu o altă adresă IP. Odată ce am primit acreditările de autentificare pentru router, am reușit să rezolv problema.

Linksys Router Administration Screen

Va trebui să deschideți ecranul de administrare al router-ului în browser-ul web pentru configurarea pentru a DMZ zona. DMZ standuri pentru Zonă demilitarizată: un termen militar care înseamnă că zona sau zona nu este protejată. Ai setat computerul IP local adresa la adresa Destinatia adresei IP.

Deoarece fiecare router de acasă este diferit, nu pot arăta eventuala configurație posibilă. Deasupra, eu văd a Linksys E1200 router-ul a fost setat pentru a plasa computerul la adresa IP locală de la 192.168.1.111 în DMZ zona. Acest computer va primi acum tot traficul direcționat către router, care nu este gestionat de alte căi. 

Fii foarte atent, deoarece computerul nu este protejat de hackeri pe internet.

Am setat routerul pentru a da întotdeauna computerului aceeași adresă IP. În acest fel, sistemul meu este întotdeauna în DMZ zona. Odată ce calculatorul meu era în DMZ zonă, notificările au fost finalizate. 

Va trebui să obțineți informațiile de conectare pentru routerul local de la ISP-ul dvs. sau de la manualul de instrucțiuni pentru router dacă configurați sistemul dvs..

Dacă sistemul care primește notificări se află într-o rețea celulară sau Wi-Fi publică, este posibil să nu funcționeze la fel de bine. Multe rețele de telefonie mobilă și toate rețelele publice Wi-Fi nu permit sistemelor să primească informații provenite de pe internet. În acest caz, acest tip de sistem de notificare nu va funcționa niciodată și va trebui să stocați notificările pe server și să le descărcați periodic pe computerul local.

Concluzie

Acum că înțelegeți cum funcționează notificările și problemele potențiale, vă voi arăta cum să aplicați această teorie unui sistem real. Voi arăta cum să creați o Node.js server care va notifica un computer de uz casnic folosind un a DDNS serviciu și o conexiune directă. Serverul va contacta Tastatura Maestropentru a răspunde cererii.