Table of Contents

OTPByNetsizeValve

Warning

This valve is blocking - this may hurt throughput and cause performance issues since other pipes won't be able to execute while this valve is waiting on a long-running operation in the same instance of the pipes module, for example due to a network request, disk access or similar. Try to limit the usage of blocking valves, try to ensure that they are fast to execute, and if needed, consider deploying multiple instances of the pipes module.

Note

Valve for delivering one-time passwords by SMS via Netsize.

Properties

Name Description Default value Mandatory Supports property expansion
generated_otp_name Item property containing the generated otp. generated_otp No No
recipient_param_name Property containing the recipient mobile number. mobile No Yes
userid_param_name Property containing the username. User-Name No Yes
gateway_username The gateway username for the Netsize account. Yes No
gateway_password The gateway password for the Netsize account. Yes No
alpha_originating_address The originating address. Note: only 11 characters allowed. Example: 'PhenixID' No No
msisdn_originating_address The originating msisdn address. (Not necessary if alpha_originating_address is used). No No
use_flash If the SMS message should be sent as flash. true No No
wash_recipient_number If the mobile number should be washed (i.e. removal of whitespaces, - and other non-number characters). true No No
remove_leading_plus If the leading + character should be removed from the mobile number. false No No
recipient_prefix If the mobile number should be prepended with a country prefix, (example: +46). No No
message_key Locale key for the sms message. Found in lang/*/strings.xml. valves.otp.netsize.message No No
message Static, non localizeable message. Overrides message_key parameter. No No
dynamic_values Dynamic template mapping values. Separated by pipe (|) Replaces key with value in the message sent to user.
Syntax: $$USERNAME={{item.givenName}}|$$SOME_OTHER_KEY={{item.somevalue}}
See example below.
No Yes

Example Configuration

{
        "name": "OTPByNetsizeValve",
        "config": {
              "generated_otp_name":"generated_otp",
              "recipient_param_name":"othermobile",
              "userid_param_name":"{{request.username}}",
              "alpha_originating_address":"PhenixID",
              "gateway_username":"phenixid",
              "gateway_password":"{enc}Lsd28p9AMU1oAjwHgHprVdWmGteLZ6XYxY/AxkBusXg=",
              "use_flash":"false",
              "recipient_prefix":"+46",
              "message_key":"valves.otp.netsize.message",
              "dynamic_values" : "$$USERNAME={{item.givenName}}"
        }
}

In the example above the value for attribute othermobile has been picked up earlier in the flow.

The value for userid_param_name has been picked up from the request. Most common values are {{request.User-Name}} for RADIUS and {{request.username}} for HTTP.

The message sent to user is fetched from the entry: valves.otp.netsize.message located in the lang/en/strings.xml file.

Requirements

Item set must have at least one entry.