Niedzia

Tematy związane z oprogramowaniem, instalacją, konfiguracją
Awatar użytkownika
dedito
Moderator
Posty: 3560
Rejestracja: 18 listopada 2013, 21:07
Lokalizacja: Gliwice

Post autor: dedito »

Nie wiem czy widzisz, ale ten sms działa na zasadzie wysłania emaila na adres xxxxxx@text.plusgsm.pl (xxxxxx to nr tel).
Więc jak nie będzie internetu to nie wyślesz emaila.
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

Hm, ja testowałem ten skrypt na moim koncie (poczta na o2.pl ) i trzeba przekonfigurować

Kod: Zaznacz cały

dpkg-reconfigure exim4-config
Żeby wysyłał pocztę "na zewnątrz".

Jak sobie wpiszesz w terminalu: mail to bankowo będziesz miał komunikaty błędów typu:
Message 1:
From MAILER-DAEMON Wed Mar 19 22:09:56 2014
Envelope-to: root@debian
Delivery-date: Wed, 19 Mar 2014 22:09:56 +0100
X-Failed-Recipients: 48(twójnumer)[email protected]
Auto-Submitted: auto-replied
From: Mail Delivery System <Mailer-Daemon@debian>
To: root@debian
Subject: Mail delivery failed: returning message to sender
Date: Wed, 19 Mar 2014 22:09:55 +0100

This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

48(twójnumer)@text.plusgsm.pl
Mailing to remote domains not supported
...
A i jeszcze - żeby wykonać sendmail... trzeba to robić jako root / ew. sudo ... bo jak odpalałem jako zwykły użytkownik to nie śmigało.
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Jeżeli masz modem gsm w laptopie, to spróbuj skonfigurować jakiś program do wysyłania sms'ów przy jego pomocy: http://forum.dug.net.pl/viewtopic.php?id=19854
hubitru
Posty: 51
Rejestracja: 15 stycznia 2014, 15:59

Post autor: hubitru »

Mój plik wygląda tak:

Kod: Zaznacz cały

#!/bin/sh 
# ustawienia
HOST=$1
PARAMETR=$2
ADMINTEL="486016xxxxxx"
ADMINMAIL="admin@jakis_serwer.pl"
LOG="./pingtest.log"
 
# tworzenie pliku logow, jesli nie istnieje
if [ ! -e $LOG ]; then
        touch $LOG
fi
 
# funkcja wysylajaca sms pod podany w ustawieniach numer
sms () {
        {
                echo From: [EMAIL="powiadomienia@jakis_serwer.pl"]powiadomienia@jakis_serwer.pl[/EMAIL]
                echo To: [email protected]
                echo
                echo `date '+%d/%m/%Y %H:%M:%S'` ":: Host \"$HOST\" nie odpowiada na pingi"
                echo .
                echo quit
        } | /usr/sbin/sendmail -t
}
 
# funkcja wysylajaca e-mail pod adres podany w ustawieniach
email () {
        {
                echo Awaria:
                echo
                echo `date '+%d/%m/%Y %H:%M:%S'` ":: Host \"$HOST\" nie odpowiada na pingi"
        } |  mutt -s "Awaria" -a $LOG $ADMINMAIL }
 
# wypuszczenie pieciu pingow, wynik przypisz do zmiennej wynik
ping $1 -c5 -w5 | grep 'ttl' > /dev/null let wynik=$?
 
# jesli ping dojdzie (wynik 0)...
if [ $wynik -eq 0 ]; then
        echo ok > /dev/null
        # zapisz informacje do logow
        echo `date '+%d/%m/%Y %H:%M:%S'` ":: Host \"$HOST\" odpowiada na pingi" >> $LOG
# jesli ping nie dojdzie (wynik 1)
else
        # zapisz informacje do logow
        echo `date '+%d/%m/%Y %H:%M:%S'` ":: Host \"$HOST\" nie odpowiada na pingi" >> $LOG
 
        if [ "$PARAMETR" != "" ]; then
                # badanie drugiego parametru, domyslnie slij e-mail
                if [ $PARAMETR = "email" ]; then
                        email
                elif [ $PARAMETR = "sms" ]; then
                        sms
                elif [ $PARAMETR = "email+sms" ]; then
                        email
                        sms
                else
                        echo `date '+%d/%m/%Y %H:%M:%S'` ":: Bledny parametr przy badaniu hosta \"$HOST\": $PARAMETR (wysylam e-mail)" >> $LOG
                        email
                fi
        else
                echo `date '+%d/%m/%Y %H:%M:%S'` ":: Nie podano parametru przy badaniu hosta \"$HOST\" (wysylam e-mail)" >> $LOG
                email
        fi
fi
}
Specjalnie wyłączyłem router i spingowałem bezpośrednio przez ping. Nie było odpowiedzi. Wykonałem skrypt i nic się nie działo. Byłem połączony przez GSM.
Przy exim4 pokazuje mi że nie ma takiego pakietu zainstalowanego. Nie chcę wysyłać wiadomości SMS przez modem.
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Byłeś połączony przez modem z internetem? Ten skrypt wymaga połączenia z internetem aby wysłać smsa. Jeżeli chcesz to zrobić przez modem ale bez połączenia z internetem (jak zwykły telefon komórkowy) to musisz to skonfigurować - sprawdź mój poprzedni post.

Jeżeli chcesz to zrobić przez internet (modem połączony z internetem) to musisz odpowiednio skonfigurować modem i zmodyfikować skrypt tak aby najpierw łączył się z internetem. Jeżeli już to robisz, to sprawdź tablicę trasowania poleceniem:

Kod: Zaznacz cały

route
hubitru
Posty: 51
Rejestracja: 15 stycznia 2014, 15:59

Post autor: hubitru »

Byłem połączony z netem. nawiązałem połączenie ręcznie i potem uruchomiłem skrypt.
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Jak napisałem wyżej sprawdź trasę.
hubitru
Posty: 51
Rejestracja: 15 stycznia 2014, 15:59

Post autor: hubitru »

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.0.1 0.0.0.0 UG 0 0 0 wlan0
link-local * 255.255.0.0 U 1000 0 0 wlan0
192.168.0.0 * 255.255.255.0 U 2 0 0 wlan0
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Pokaż jeszcze wyniki:

Kod: Zaznacz cały

ifconfig
po podłączeniu modemu do internetu.
hubitru
Posty: 51
Rejestracja: 15 stycznia 2014, 15:59

Post autor: hubitru »

Kod: Zaznacz cały

eth0      Link encap:Ethernet  HWaddr 00:1e:33:b4:c9:21  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:44 Base address:0x4000 


lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:6648 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6648 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:877391 (877.3 KB)  TX bytes:877391 (877.3 KB)


ppp0      Link encap:Point-to-Point Protocol  
          inet addr:5.173.78.57  P-t-P:10.64.64.64  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:47 errors:0 dropped:0 overruns:0 frame:0
          TX packets:64 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:4361 (4.3 KB)  TX bytes:4395 (4.3 KB)


Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.64.64.64     0.0.0.0         UG    0      0        0 ppp0
10.64.64.64     *               255.255.255.255 UH    0      0        0 ppp0
link-local      *               255.255.0.0     U     1000   0        0 ppp0
ODPOWIEDZ