Primer skripta za Autoreply bazu korisnika

Skript fajl 'sqlscript.txt' se automatski generiše u direktorijumu svakog Autoreply korisnika baze. Ovaj primer skripta pokazuje kako da filtrirate dolazne SMS poruke i prosledite ili odgovorite na njih iz redova generisanih pomoću jedne ili više SQL SELECT naredbi.

Preuzmi: sqlscript.txt

###########################################################################
# Podrazumevani skript fajl za Autoreply konfiguraciju. Ovaj skript
# se izvršava svaki put kada nova poruka bude poslata u sistem 
# sa mobilnog telefona
# 
# Unos:
#     Jedan unos sadrži jednu liniju uslova koja počinje
#     sa opcijom uslova. Linija uslova je praćena
#     jednom ili više akcionih linija. Akcione linije sadrže SQL
#     naredbe. Unos se završava praznom linijom  
#
# Opcije uslova:
#     n - ako broj pošiljaoca odgovara šablonu
#     m - ako tekst poruke odgovara šablonu
#     k - ako ključna reč odgovara šablonu. (Ključna reč je prva reč 
#         poruke. Ključna reč se konvertuje u velika slova)
#
# Akcija:
#     Svaka linija sadrži SQL naredbu. Pre izvršavanja SQL naredbi: 
#     sledeće reči se zamenjuju:
#     $originator - zamenjuje se brojem telefona pošiljaoca poruke
#     $sender - zamenjuje se brojem telefona pošiljaoca poruke 
#     (alias za originator)
#     $recipient - zamenjuje se brojem telefona koji je primio poruku 
#     $receiver - zamenjuje se brojem telefona koji je primio 
#     poruku (alias za recipient)
#     $messagedata - zamenjuje se tekstom poruke
#     $keyword - zamenjuje se ključnom rečju u poruci
#     $after - zamenjuje se tekstom poruke nakon ključne reči u poruci
#     $senttime - zamenjuje se vremenskom oznakom koja predstavlja kada je poruka poslata
#     $receivedtime - zamenjuje se vremenskom oznakom koja predstavlja kada je poruka primljena
#     $messagetype - zamenjuje se tipom poruke (u većini slučajeva ovo će biti SMS:TEXT)
#     $id - zamenjuje se jedinstvenim string identifikatorom poruke
#     $operator - zamenjuje se imenom provajdera usluga 
#     konekcije koja je primila poruku
#     
# Odgovor:
#     SQL naredbe u sekciji Akcija mogu vratiti jedan ili više odgovornih poruka. 
#     Odgovorna poruka je red u rezultatu SQL upita. Red u rezultatu
#     treba da sadrži sledeće kolone:
#     recipient - 1. kolona u rezultatu (Obavezna)
#     messageData - 2. kolona u rezultatu (Obavezna)
#     messageType - 3. kolona u rezultatu (Opciona)
#     sender - 4. kolona u rezultatu (Opciona)
#     operatorNames - 5. kolona u rezultatu (Opciona)
#
# Komentari:
#     Znak taraba (#) označava jednolinijski komentar
###########################################################################

###########################################################################
#Uslov: 
#    Broj pošiljaoca počinje sa +44
#Akcija: 
#    Jedna SQL naredba je navedena. Pre izvršavanja naredbe
#    reč '$sender' se zamenjuje 
#    brojem telefona osobe koja je poslala poruku u
#    sistem.  
#

n^+44.*
SELECT '$sender',messagetext FROM defaultresponse 

###########################################################################
#Uslov: 
#    Poruka počinje sa ključnom rečju: RED
#Akcija: 
#    Dve SQL naredbe se izvršavaju, prva
#    ažurira tabelu u bazi, druga vraća
#    odgovornu poruku

k^RED
UPDATE stats SET incoming = incoming+1 WHERE keyword='RED'; 
SELECT '$sender',messagetext from defaultresponse where keyword='RED'

###########################################################################
#Uslov: 
#    Tekst poruke sadrži reč ALERT
#Akcija: 
#    Mnoge poruke će biti poslate primaocima sačuvanim u 
#    tabeli alertrecipients u bazi

m.*ALERT.*
SELECT recipients,'Upozorenje, neko je provalio!' FROM alertrecipients

###########################################################################
#Uslov: 
#    Sve dolazne poruke (sa bilo kog broja telefona)
#Akcija: 
#    Izabrati odgovor na osnovu ključne reči

n.*
SELECT '$sender',messagetext from keywordresponse where keyword='$keyword'
C:\Program Files\Ozeki\Ozeki10\Data\NG\config\TestApp\sqlscript.txt
Ukupan broj linija: 93

More information