A wrapper for the cpsms.dk API.
It will allow you to easily send SMS messages through the API from your Ruby applications.
To use the API you need to have an account on cpsms.dk
Once you have the account, you should have the following information:
You will need this information for all calls to the API.
To send an sms simply call the
The method takes the following parameters
- username: Your cpsms.dk username (string)
- password: Your spsms.dk password (string)
- recipient: The phone-number of the recipient (integer)
- message: The message to send to the recipient (string - max 459 chars)
- options: A hash of optional options (described below)
To send a basic sms with the message: "Hello world" to 12345678
CPSMS::SMS.send! "username", "password", 12345678, "Hello World!"
You can pass a hash of optional options to the method. The possible options and their defaults are as follows
- from: A number or string that will be displayed as the sender of the message (string - max 11 chars)
- url: A callback url that CPSMS will call with details about the delivery. (See CPSMS's API documentation for more info) (string - max 100 chars)
- timestamp: A timestamp that specifies when the sms should be sent. (Time)
- flash: If set to true, the sms will be sent as a flash-sms (boolean)
- group: Currently not implemented
To create new tests or edit existing you need to set your cpsms.dk credentials and a valid mobile number as environment variables.
More specifically you need to set these three environment variables with their respective values:
If you're using RVM, you can copy the supplied
.rvmrc_example file to
.rvmrc and edit the last two lines with your credentials
export CPSMS_USERNAME=YourUsername export CPSMS_PASSWORD=YourPassword export CPSMS_MOBILE_NUMBER=YourMobileNumber
Please note: Your mobile number must be prepended with the country-code, for instance: 4512345678 for a danish number (45).
By doing this, the variables will automatically be set when RVM sets the environment.
If you just wish to run the existing test suite, you don't need to set these values, as VCR will simply use existing recordings for communication with the API.