The eventhandler is a program or script, that smsd runs, whenever it
receives or sent a message or when it was not able to send a message.
Smsd calls the script after it has moved the file from the provider
queue into the failed or sent queue.
Smsd gives two or three arguments to the eventhandler. The first one is SENT, RECEIVED, FAILED, REPORT or CALL.
The second one is the SMS file filename.
The third argument is the message id of the SENT message, it is only used if you sent a message
successfully with status report enabled.
There is an example script in scipts/smsevent.
If you use UTF-8 character set as a locale, you might want to use eventhandler to convert received messages
from ISO character set (which is internally used by the smsd) to UTF-8. See scripts/eventhandler-utf-8 for details.
Also you can use the checkhandler to convert outgoing messages from UTF-8 to ISO,
see scripts/checkhandler-utf-8 for code sample.
The alarm handler is a program that smsd runs whenever an error occures.
Smsd gives the following arguments to the alarmhandler:
- 1 = the keyword ALARM
- 2 = a date in the format yyyy-mm-dd
- 3 = a time in the format hh:mm:ss
- 4 = the alarm severity (1 digit number)
- 5 = the modem name or SMSD
- 6 = the alarm text
# This is an example how to use an alarm handler with smsd.
echo SMSD alarm: $5 $6
This script displays a message for each alarm.