Koncept
Nodes

SMS Kammando System og Central Kontrol

Der er en del som gerne vil kunne styre diverse forskellige ting igennem både et Dashboard og deres telefon med for eksempel SMS. Dette kan lade sige gøre med GSMCloud og kan skaleres i forhold til numre og kommandoer.

I dette opslag vil vi gøre brug af følgende noder:

  • TIME: Add Time, Between, Pulse.
  • LOGIC: NOT Gate, Is NULL, Value, AND, Match.
  • Notifications: Receive SMS, Send SMS, Write To Log.

I forhold til et basalt flow som gør brug af kommandoer igennem SMS, så er det forholdsvis simpelt.

Vi starter med at gøre brug af vores “Receive SMS” node hvorved vi skal lave et sub-system som holder styr på hvornår flowet skal opdateres. Dette er grundet vi nemt kan møde noget der hedder “deadlock”. 

Og HUSK, at du ikke må efterlade ting som ikke skal bruges i “TO” feltet i Send SMS. 

Opdaterings System

Vi starter ud med at tage vores Receive SMS, hvorefter vi skal koble Timestamp til 2x Add Time – Add Time skal sættes til 10 sekunder. Nu skal vi have fat i vores Between node, denne node skal kobles sammen med begge Add time noder – den ene skal time “Time” den anden til “Input 2”. Nu skal du bare tilslutte Timestamp fra Receive SMS til “Input 1”. Between Nodens Output går i en pulse 10 sekunder.

Receive SMS update system

Telefon Numre

Den del her er ikke kompliceret, men kan godt være lang i forhold til hvor mange som skal kunne sende SMS’er til systemet. Her skal vi bruge vores Value(text) node og Match node.

Hvordan fungere match noden?

Kort og konkrete, den tager et input som den matcher med de felter som står i den og tager det input der går til feltet.

Først og fremmest er det en god idé med en liste over de personer som skal på systemet. Alle numre skal starte med en landekode. Så i vores tilfælde “+45”.

I Receive SMS er der et output som hedder “Sender” denne skal trækkes til vores match nodes input. Nu vil noden matche det telefonnummer som kommer ind med det der skrevet i.

Nu kan man tage Value noden og ændre den til tekst for a tilføje navne til match noden, dermed kan man nemt logge hvem der har sendt en SMS og hvornår uden problemer.

Nu står du med et system som vil håndtere telefonnumre og sikre sig at de er de rigtige.

SMS Kommandoer og koder

Det er egentligt bare det samme som med telefonnumre. Der er ikke den store forskel, den eneste forskel er at det enlig ikke har en betydning for hvad du skriver i Match noden. Så længe den bare for de rigtige former for input. For eksempel hvis man giver den en værdi “TRUE”, så vil den sende “TRUE” videre, men “TRUE” vil ikke kunne blive logget eller sendt som besked uden et yderligere system som kan “transformere” værdien til en STRING som “er i live”. MEN, det kan bruges i form af et system som skal “trigger” noget andet hvis det lyster.

Men man kan give match noden “temp”, “1” eller “?62345”. Efter du har oprette de kommandoer som du gerne vil have, så kan du tage eventuelt output fra din enhed, for eksempel temperature og sidste opdatering fra en GT-1000 Pro, du vil ikke kunne tage battery grundet det er en true/false værdi, uden at skulle lave noget ekstra.

Receive SMS Match Flow Commands

Men, jeg vil ikke at logge folk som ikke er på listen.

Intet problem, vi tilføjer bare lige lidt ekstra til flowet. Hvis Match noden for data som ikke passer, så vil den give “NULL” som et output. Hvilket betyder vi kan rube en “Is NULL”, “Not GATE” og en “AND Gate” node til at fikse problemet.

Tag en “Is NULL” node og koble den på vores output af vores telefonnumre match node. Dermed skal vi koble vores “Is NULL” til en “AND Gate”. Så skal din Pulse også kobles til “AND Gate”.

Dette betyder at, den altid vil sende true hvis der kommer en ny besked uanset om det er det samme nummer eller ej. Samt betyder det at, hvis en person som sender en SMS ikke er på listen over telefonnumre som er “tilladt”, så vil vores “AND Gate” ikke gå i “True”.

Sammen koble hele systemet

Først og fremmest kan vi tilføje en “Write To Log” node. Dermed skal vi lave en besked, i denne besked skal vi lave nogle variabler – for at holde det simpelt bliver min besked bare `{sender} — {command}`. Dette gør at vi kan trække andre noders output ind i vores besked.

Nu er det endelig på tide, i din Receive SMS skal du tilslutte “Sender” med din telefonnumre match node – yderligere skal du tilslutte “Message” til kommando noden.

Både din telefonnumre match node og kommando node skal tilsluttes til vores “Write To Log” node. Og vores “AND Gate” skal tilsluttes til vores “Write” Input på Log noden.

Men jeg vil gerne have en SMS besked

Så bruger du bare vores “Send SMS” node. Du skal tilføje alle de telefonnumre som du vil sende til i det felt som hedder “To”, for at skrive flere numre skal du trykke “enter” efter, numre i denne node behøver ikke en landkode.

Det skal siges, at alle i denne node vil få en besked – hvis beskeder skal separeres baseret på hvem der sender en besked, kræver det ydere udvikling i jeres flow.