Sample code for 30+ languages & platforms
Xbase++

SMSAPI - Send SMS with Multiple Lines of Text

See more SMSAPI Examples

Send an SMS message containing multiple lines of text.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oHttp
LOCAL cMessageContent
LOCAL oSbMessage
LOCAL oSbResponseBody

nSuccess := 0

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oHttp := CreateObject("Chilkat.Http")

//  Implements the following CURL command:

//  curl -H "Authorization: Bearer token_api_oauth" \
//  "https://api.smsapi.com/sms.do?from=sender_name&to=44123456789&message=message_content&format=json"

//  Use the following online tool to generate HTTP code from a CURL command
//  Convert a cURL Command to HTTP Source Code

//  Adds the "Authorization: Bearer token_api_oauth" header.
oHttp:AuthToken := "token_api_oauth"

cMessageContent := "Hello" + Chr(13) + Chr(10) + "This is a test" + Chr(13) + Chr(10) + "with multiple lines of text."

//  Given that our message contentn has newlines, we obviously cannot put newlines in a URL without them being URL encoded..
//  Therefore.. URL encode..
oSbMessage := CreateObject("Chilkat.StringBuilder")
oSbMessage:Append(cMessageContent)
oSbMessage:Encode("url", "utf-8")

oHttp:SetUrlVar("msgContent", oSbMessage:GetAsString())

oSbResponseBody := CreateObject("Chilkat.StringBuilder")
nSuccess := oHttp:QuickGetSb("https://api.smsapi.com/sms.do?from=sender_name&to=44123456789&message={$msgContent}&format=json", oSbResponseBody)
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    oHttp:destroy()
    oSbMessage:destroy()
    oSbResponseBody:destroy()
    RETURN
ENDIF

? "Response body:"
? oSbResponseBody:GetAsString()

oHttp:destroy()
oSbMessage:destroy()
oSbResponseBody:destroy()