gsm sms - v mysql bazo - in iz nje

info at polivrt.si info at polivrt.si
Sat Mar 13 14:26:50 CET 2004


Pozdravljneni !

Pi¹em eno proceduro (bolj zaradi firbca, kot zares), ki bo poslala in sprejela sms direktno iz gsm telefona v/iz mysql bazo.

Do sedaj sem uspel iz ukazne vrstice poslati in v datoteko zapisati prejeta sms sporoèila.

Ker nisem najbolj¹i pri ukazih grep in sed, ne vem kako bi iz prejetega sms generiral insert ukaz.
Iz gsm aparate dobim datoteko v kateri so smsi.

Rad bi naredil insert stavek v obliki:

insert into insms (posilja, kdaj, sms) values ('38651350736', '20040301170551', 'Avto je predrag, zato ga ne bom kupil');
insert into insms (posilja, kdaj, sms) values ('38651350736', '20040307171320', 'Dobiva se ob 7 h');

Izvorna datoteka z SMS je tak¹ne oblike in vsebuje lahko veliko sms sporoèil:


Type of message: SMS message
---------------------------------------------------------------------------
Message type: SMS-DELIVER
SC address: '38641001333'
More messages to send: 1
Reply path: 0
User data header indicator: 0
Status report indication: 0
Originating address: '38651350736'
Protocol identifier: 0x0
Data coding scheme: default alphabet
SC timestamp: 07.03.2004 17:05:51 (+0000)
User data length: 15
User data header: 0x
User data: 'Avto je predrag, zato ga ne bom kupil'
---------------------------------------------------------------------------


Type of message: SMS message
---------------------------------------------------------------------------
Message type: SMS-DELIVER
SC address: '38641001333'
More messages to send: 1
Reply path: 0
User data header indicator: 0
Status report indication: 0
Originating address: '38651350736'
Protocol identifier: 0x0
Data coding scheme: default alphabet
SC timestamp: 07.03.2004 17:13:20 (+0000)
User data length: 15
User data header: 0x
User data: 'Dobiva se ob 7 h'
---------------------------------------------------------------------------


Do sedaj sem naredil to, vendar ne znam odpraviti preloma vrstic.

grep -E "(^Originating address:.*)|(^SC timestamp:.*)|(^User data:.*)" inboxsms.txt | sed 's/\(User data: \)\(.*\)/\2/g' | sed 's/^Originating address: .\(...........\)./\1/g' | sed 's/^SC timestamp: \(..\...\..... ..\:..\:..\) (+0000)/\1/g'


Prosim za pomoè. Verjetno je kje ¾e napisana re¹itev, vendar je nisem na¹el.

lp, Franc



More information about the lugos-prog mailing list