(Tcl) SMSAPI - Send SMS with Multiple Lines of Text
Send an SMS message containing multiple lines of text.For more information, see https://www.smsapi.com/docs/#2-single-sms
load ./chilkat.dll
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set http [new_CkHttp]
# 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.
CkHttp_put_AuthToken $http "token_api_oauth"
set messageContent "Hello\r\nThis is a test\r\nwith 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..
set sbMessage [new_CkStringBuilder]
CkStringBuilder_Append $sbMessage $messageContent
CkStringBuilder_Encode $sbMessage "url" "utf-8"
CkHttp_SetUrlVar $http "msgContent" [CkStringBuilder_getAsString $sbMessage]
set sbResponseBody [new_CkStringBuilder]
set success [CkHttp_QuickGetSb $http "https://api.smsapi.com/sms.do?from=sender_name&to=44123456789&message={$msgContent}&format=json" $sbResponseBody]
if {$success == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkHttp $http
delete_CkStringBuilder $sbMessage
delete_CkStringBuilder $sbResponseBody
exit
}
puts "Response body:"
puts [CkStringBuilder_getAsString $sbResponseBody]
delete_CkHttp $http
delete_CkStringBuilder $sbMessage
delete_CkStringBuilder $sbResponseBody
|