StackStorm is an event-driven software solution for routine automation. It supports the infrastructure-as-code (IaC) principle with respect to DevOps. It can be compared with alternatives such as Ansible or SaltStack. The end-user counterpart to StackStorm is IFTTT, Integromat or Zapier. StackStorm is written in Python and offers a wide range of modules for every conceivable use case in IT.
Installing our package for StackStorm is quite simple. All that is required is a working instance of StackStorm. Once this is available, all that remains is to run the command
st2 pack install https://github.com/sms77io/StackStorm in a terminal.
The sample configuration sms77.yaml.dist must be copied to /opt/stackstorm/configs/sms77.yaml and the key api_key must be supplemented with an API key from sms77 which can be created or viewed in the developer dashboard.
The configuration file also supports dynamic values – see documentation.
Important: After configuration is complete, we must notify StackStorm of new values by running
st2ctl reload --register-configs in the terminal.
The following is an explanation of the implemented Actions. Each action addresses a different endpoint of the interface.
This action sends SMS messages. Multiple destinations can be specified separated by commas.
st2 run sms77.send_sms to="01716992343,491771783130" text=HI2U from=SenderIdentifier flash=true performance_tracking=true sandbox=false no_reload=true label=MyLabel foreign_id=MyForeignID delay="2022-11-29 14:15:30"
send_voice – This action converts a text to voice, calls the given phone number and plays it.
st2 run sms77.send_voice to=+491716992343 text='System failure!' from=+491771783130 xml=false.