Mesh Chat Action Scripts

This is a collection on community contributed action scripts for Mesh Chat. Action Scripts are any type of script that gets executed when a match is made on a message in Mesh Chat. Each Action Script page documents its usage and installation instructions. You configure the match for a particular Action Script in the config file /etc/meshchat_actions.conf. Actions Scripts are only supported on the Raspberry Pi version of Mesh Chat. Here is an example configuration file:

# Mesh Chat action script config file
# <channel>:<hashtag>:<script>:<timeout>
# <channel> and <hashtag> cane be * for wildcard match
#
# Examples:
#
# *:*:/usr/local/bin/meshchat_archive:10
# This will run on every message on every channel regardless of hashtag
#
# SMS:*:/usr/local/bin/meshchat_archive:10
# This will run on every message from the SMS channel
#
# *:sms:/usr/local/bin/meshchat_archive:10
# This will run on every message that contains #sms regardless of channel
#
# SMS:bob:/usr/local/bin/meshchat_archive:10
# This will run on any message from the SMS channel that contains #bob
SMS:*:/home/pi/meshchat_twilio_sms_out:30

Action Scripts can match on #hashtags in messages, channel, a combination of #hashtag and channel, or every message. This powerful interface enables all kinds of expansion to Mesh Chat. Messages can be sent using anything you can write a script for like SMS, Packet, Winlink, etc.

Action Scripts

Action ScriptDescription
Message ArchiverSave messages to a flat text file
SMS Twilio Outgoing GatewaySend messages to Twilio as SMS text messages

Troubleshooting

/var/www/meshchat/db/action_error.log
If there is an error running an action script, details will be logged here.

/var/www/meshchat/db/action.log
Messages that were sent to action scripts and the output from the script. This can be seen from the Status page in Mesh Chat on the node the script executed on.

Contributing Action Scripts

If you have an Action Script you have written you would like to share with the community contact me here. I need this information from you to add your script to the library:

Your Name
Your Call Sign
Version # of your script
License you are distributing it under – I suggest MIT
Package dependencies
Comments at the top of the script that describe variables that need to be set if needed

Whatever your script write to STDOUT will be logged inĀ /var/www/meshchat/db/action.log and can be viewed from the Status page in Mesh Chat on the node the script executed on.