Dette er definitivt alderen av øyeblikkelig kommunikasjon. Alle forventer at du skal være online og tilgjengelig nesten hele tiden. Alle har et Internett-tilkoblingspunkt som må overvåkes og respekteres. Ellers ende du med ulykkelige kunder og venner.
Har du lurt på hvordan disse ulike typer meldinger fungerer og hvordan kan du gjøre din egen. I denne opplæringen vil jeg introdusere deg til den fantastiske verden av varsler og hvordan du kan gjøre det selv.
Denne opplæringen er i to deler og vil lære:
I dette, den første delen av opplæringen, viser jeg teorien og metodene bak aktive varsler.
Ikke alle meldinger er de samme. For eksempel, hvis du har et program som forteller deg om en ny Facebook varsel, du har en polling program som vil avstemme Facebook server med jevne mellomrom for å se om du har noe nytt.
Hvis du har Dropbox på en server med et program som bruker web-kroker, da har du en direkte varslingssystem for å varsle serveren om en endring i Dropbox filsystem.
Polling Systemene er enklest å installere, men krever mer komplisert kode på serveren for å lagre varsler. Det er opp til brukerens datamaskin å kjøre et program som regelmessig vil spørre webserveren. Det betyr imidlertid at pollingfrekvensen bestemmer varslingstidspunktet. Derfor, hvis avstemningsprogrammet kontrollerer en gang i timen, vil det verste kontaktforsinkelsen være en time. Hvis pollingsfrekvensen er for rask, vil du miste systemet. Spesielt hvis du har mange slike programmer.
Direkte Systemene forteller serveren hvordan du kontakter deg når en nettverksforbindelse er etablert. Når et varsel kommer, vil serveren kontakte datamaskinen direkte. Ingen bortkastet tid i avstemning, men å kontakte systemet kan være problematisk. Direkte varslinger er vanskelige å opprettholde på grunn av beskyttelsesutstyr på internett.
I denne veiledningen vil jeg vise deg Direkte eller Aktiv varslingsalternativer. Jeg vil også vise deg de mulige problemene og hvordan de skal komme seg rundt dem.
Hver datamaskin som er på Internett har et unikt identifikasjonsnummer kalt en IP adresse. For at en datamaskin skal koble til en annen, må den oppnå IP-adressen. Vanligvis vil du bruke en Domenenavnsserver (DNS) å få tak i IP adresse fra et unikt servernavn.
NavneksempeleksempelFor eksempel, for å kontakte nettstedet mitt, kontakter datamaskinen min på DNS-server å oversette customct.com til det er IP-adressen til 162.248.101.154. Min datamaskin mottok IP-adressen til DNS-server når den kobles til Internett-leverandør eller ISP. De DNS-server kjenner IP-adressen til datamaskinen som ber om informasjon fra forespørselen. De DNS-server Deretter returneres IP-adressen til webserveren som matcher navnet.
Ved oppsett av en webserver på Internett mottar de en unik statisk IP-adresse som ikke vil endre seg i det meste av serverens levetid. Nettleseren på min datamaskin kontakter den IP-adressen for innholdet på nettstedet mitt. Slik kan en datamaskin direkte kontakte en annen datamaskin på internett.
Problemet med denne metoden for å kontakte er at ikke alle datamaskiner på Internett har et navn tilknyttet det. Din hjemmedatamaskin har bare en IP-adresse, og ikke et navn som helst DNS-server ville vite om.
For å gjøre saker enda vanskeligere, tildeles hver gang en datamaskin kobler til og kobler fra Internett, tildeles en IP-adresse dynamisk. Hver ISP har en gruppe eller et basseng av IP-adresser det kan gi ut til kundene, men kunden bruker bare den IP mens den er tilkoblet. Neste gang du kobler til, vil datamaskinen din trolig få en annen IP-adresse.
En måte for en server å vite hvordan du kontakter en datamaskin, er å abonnere på en Dynamisk DNS tjeneste eller DDNS. Vanligvis får du et navn som er et underdomene til deres DNS Navn.
Når en bruker trenger IP-adressen til datamaskinen, vil de kontakte DDNS service for din nåværende IP. Derefter kjører du et program på datamaskinen din som oppdaterer DDNS service regelmessig eller når IP endres.
En slik tjeneste er Dynu Systems. Når du registrerer deg med deres tjeneste, gir de deg en gratis DNS navn på datamaskinen din som er et underdomen i hoveddomenet ditt. For eksempel har jeg opprettet en konto for customct på Dynu Systems' gratis DNS.
Navnet på datamaskinen min er customct.freeddns.org. På kommandolinjen kan jeg skrive:
nslookup customct.freeddns.org
å motta produksjonen fra:
Server: 8.8.8.8 Adresse: 8.8.8.8 # 53 Ikke-autoritativt svar: Navn: customct.freeddns.org Adresse: 110.77.204.21
De nslookup kommandoen er et kommandolinjeprogram for å utføre en DNS se på et navn for å få det IP adresse knyttet til navnet. I dette eksemplet, nslookup spurte DNS server på 8.8.8.8, som er Google Public DNS. De Google offentlig DNS Deretter spurte DDNS forsørger. De DDNS leverandøren ga adressen til 110.77.204.21, som var den siste gitt gyldig IP for det systemet.
Nå, det første forsøket jeg gjennomførte for å kontakte mitt hjemmesystem fra en server, satt bare der uten at mitt system mottok et varsel. Ved å bruke traceroute, et kommandolinjeverktøy på Linux og Mac-systemer, på serveren, fant jeg ut at varselet stoppet ved den lokale ruteren i hjemmet mitt.
Min Internett-leverandør leverer en masquerading-ruter, i huset mitt, som forkaster alle datamaskinene i huset mitt med en annen IP-adresse. Når jeg fikk innloggingsinformasjonen for ruteren, var jeg i stand til å fikse problemet.
Du må åpne rutens administrasjonsskjerm i nettleseren til oppsettet for a DMZ sone. DMZ står for Demilitarisert sone: et militært begrep som betyr at området eller sonen ikke er beskyttet. Du setter datamaskinens Lokal IP adresse til Destinasjon: IP-adresse.
Siden hver hjemrouter er annerledes, kan jeg ikke muligens vise alle mulige konfigurasjoner. Over, jeg viser en Linksys E1200 ruteren satt til å plassere datamaskinen på den lokale IP-adressen til 192.168.1.111 i DMZ sone. Den datamaskinen vil nå motta all trafikk rettet mot ruteren som ikke håndteres av andre ruter.
Vær veldig forsiktig da datamaskinen ikke er beskyttet mot hackere på internett.
Jeg setter opp ruteren for alltid å gi datamaskinen min samme IP-adresse. På den måten er systemet mitt alltid i DMZ sone. Når min datamaskin var i DMZ sonen, var meldingene kommet i orden.
Du må få innloggingsinformasjonen for den lokale ruteren fra Internett-leverandøren din eller fra brukerhåndboken til ruteren hvis du selv konfigurerer systemet.
Hvis systemet for å motta varsler er på et mobilnettverk eller offentlig Wi-Fi, kan det ikke fungere så godt. Mange mobiltelefonnettverk og alle offentlige Wi-Fi-nettverk tillater ikke at systemene mottar informasjon som kommer fra Internett. I så fall vil denne typen varslingssystem aldri fungere, og du må lagre varslene på serveren og laste dem periodisk til din lokale datamaskin.
Nå som du forstår hvordan meldinger fungerer og de potensielle problemene, vil jeg vise deg hvordan du bruker denne teorien til et ekte system. Jeg vil vise hvordan du lager en node.js server som vil varsle en hjemmedatamaskin ved hjelp av en DDNS service og direkte forbindelse. Serveren vil kontakte Tastatur Maestros offentlige makroutføringsserver for å svare på forespørselen.