## SMS Server Tools 3

Home

### Eventhandler

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.

### Alarm handler

The alarm handler is a program that smsd runs whenever an error occures.

See this document for possible error messages.

Smsd gives the following arguments to the alarmhandler:

- the keyword ALARM
- a date in the format yyyy-mm-dd
- a time in the format hh:mm:ss
- the alarm severity (1 digit number)
- the modem name or SMSD
- the alarm text

Example:

#!/bin/sh
# 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.

> The book describes how to use eventhandler to do different things automatically, like forwarding to eMail, storing received messages and status report into SQL database, running a self-test, publishing received messages with a webserver and more.

> The book is about the version 2.x and written, maintained and owned by Stefan Frings.