A node-red soap server
Listen for an incoming SOAP request used to start a Node-RED flow and pass in input data.
npm install node-red-contrib-soapserver to install.
This package provides a node that can be used to start a Node-RED flow. The node is called
soap server and listens on a configurable TCP port on the host on which Node-RED run.
It is important that the port number be supplied as there is no default assumed.
The listener is listening for an incoming SOAP/HTTP request. The WSDL that describes the
SOAP server can be retrieved through an HTTP GET request using the
/soap?wsdl URL and query
parameters. For example:
The endpoint for the SOAP request is found at the same address ...
The interface supplies one operation called
startFlow which takes a single parameter as input
of type string. When a client invokes that operation, a new Node-RED flow is initiated. The
passed in data appears in the
msg.payload property of the Node-RED message.
A Node-RED flow that starts with a
soap server node should also conclude with a corresponding
soap server output node. This is used to pass back a value to the original SOAP client. The
string found in
msg.payload is returned as the response value.
- When re-deploying a flow which contains a
soap servernode, the previously deployed flow may wait up to 120 seconds before allowing itself to stop. The reason for this is that it can be up to 120 seconds from the last received transmission from a closing TCP/IP socket before we can be sure that there is no more incoming traffic. The listening SOAP server running inside node-RED can't stop and restart within 120 seconds of the last received message.
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request
- 2015-02-25 - First release