Using the IntelliSMS COM Component you can send SMS messages from any
language that supports COM. This includes VB, VBScript, JScript, ASP, C++. This
component is free to download and use.
Download:
Download
COM Component (IntelliSMS.dll)
Install:
1. Save IntelliSMS.dll to harddrive (e.g.
C:\IntelliSMS\IntelliSMS.dll)
2. Start->Run..
3. Type 'regsvr32 C:\IntelliSMS\IntelliSMS.dll' and click OK
Properties:
AccessKey |
This is your AccessKey used to authenticate to you IntelliSoftware account
Click here to create an AccessKey / SecretKey pair |
SecretKey |
This is your SecretKey used to authenticate to you IntelliSoftware account
Click here to create an AccessKey / SecretKey pair |
MaxConCatMsgs |
Maximum number of concatenated SMS messages that will be sent per
recipient (Default is 1) |
ProxyAddress |
(Optional) If a proxy server is required to access the internet then set this
property to the address of your proxy server |
Sends an SMS message via the Internet Gateway.
SendMessage ( To As String, Text As String, From As String, MessageId As Variant ) As ResultCodes
Parameters:
To |
Input |
This is the destination phone number |
Text |
Input |
The content of the text message |
From |
Input |
This is the source/sender's phone number |
MessageId |
Output |
Unique message ID |
ResultCode |
Return |
See ResultCodes
|
ASP Example:
<%
Set IntelliSMS = Server.CreateObject("IntelliSoftware.IntelliSMS")
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Result = IntelliSMS.SendMessage _
( "44771012345", "Hello", "SENDER_ID", MessageId )
%>
VB Example:
Dim IntelliSMS As New INTELLISMSLib.IntelliSMS
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Dim MessageId As Variant
Dim Result As INTELLISMSLib.ResultCodes
Result = IntelliSMS.SendMessage _
( "44771012345", "Hello", "SENDER_ID", MessageId )
Sends an SMS message to multiple recipients via the Internet Gateway.
SendMessageToMultipleRecipients ( To As String, Text As String, From As String ) As SendStatusCollection
Parameters:
To |
Input |
This is the destination phone number(s) NOTE: Separate multiple
numbers by a comma |
Text |
Input |
The content of the text message |
From |
Input |
This is the source/sender's phone number |
SendStatusCollection |
Return |
Collection containing the send status for each recipient. See
SendStatusCollection
|
ASP Example:
<%
Set IntelliSMS = Server.CreateObject("IntelliSoftware.IntelliSMS")
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Set SendStatusColl = IntelliSMS.SendMessageToMultipleRecipients _
("44771012345,44771023456", "Hello", "SENDER_ID")
If SendStatusColl.OverallResult <> 1 Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Result=" & Status.ResultCode & "<BR>"
Next
End If
Response.Write Summary
%>
VB Example:
Dim IntelliSMS As New INTELLISMSLib.IntelliSMS
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Dim SendStatusColl As INTELLISMSLib.SendStatusCollection
Set SendStatusColl = IntelliSMS.SendMessageToMultipleRecipients _
("44771012345,44771023456", "Hello", "SENDER_ID")
Dim Summary As String
If SendStatusColl.OverallResult <> ResultCodes.rcOK Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
Dim Status As INTELLISMSLib.SendStatus
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Status=" & Status.ResultCode & vbCrLf
Next
End If
MsgBox Summary
Sends a Unicode SMS message to multiple recipients via the Internet
Gateway. The Unicode format is used to send multilingual messages not support by
the standard GSM character set.
SendUnicodeMessage ( To As String, Message As String, From As String ) As SendStatusCollection
SendUnicodeMessageHex ( To As String, MessageHex As String, From As String ) As SendStatusCollection
Parameters:
To |
Input |
This is the destination phone number(s)
NOTE: Separate multiple numbers by a comma
|
Message |
Input |
The content of the text message (70 Unicode characters max.) |
MessageHex |
Input |
Unicode text encoded in hexadecimal (140 octets max, 70 unicode characters) |
From |
Input |
This is the source/sender's phone number |
SendStatusCollection |
Return |
Collection containing the send status for each recipient. See
SendStatusCollection
|
ASP Example:
<%
Set IntelliSMS = Server.CreateObject("IntelliSoftware.IntelliSMS")
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Set SendStatusColl = IntelliSMS.SendUnicodeMessage _
("44771012345,44771023456", "Hello", "SENDER_ID")
If SendStatusColl.OverallResult <> 1 Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Result=" & Status.ResultCode & "<BR>"
Next
End If
Response.Write Summary
%>
VB Example:
Dim IntelliSMS As New INTELLISMSLib.IntelliSMS
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Dim SendStatusColl As INTELLISMSLib.SendStatusCollection
Set SendStatusColl = IntelliSMS.SendUnicodeMessage _
("44771012345,44771023456", "Hello", "SENDER_ID")
Dim Summary As String
If SendStatusColl.OverallResult <> ResultCodes.rcOK Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
Dim Status As INTELLISMSLib.SendStatus
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Status=" & Status.ResultCode & vbCrLf
Next
End If
MsgBox Summary
Sends a Binary SMS message via the Internet Gateway. Binary Messages can be
used to send SmartMessages, such as Ringtones and Logos.
SendBinaryMessage ( To As String, UserDataHeaderHex As String, UserDataHex As String, From As String ) As SendStatusCollection
Parameters:
To |
Input |
This is the destination phone number(s) NOTE: Separate multiple
numbers by a comma |
UserDataHeaderHex |
Input |
(Optional) User Data Header |
UserDataHex |
Input |
User Data (140 octets max) |
From |
Input |
This is the source/sender's phone number |
SendStatusCollection |
Return |
Collection containing the send status for each recipient. See
SendStatusCollection
|
ASP Example:
<%
Set IntelliSMS = Server.CreateObject("IntelliSoftware.IntelliSMS")
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Set SendStatusColl = IntelliSMS.SendBinaryMessage ( _
"44771012345,44771023456", "06050415820000", _
"32F40100480E0100000000000000000000000000000000000000" & _
"0000000000000000000001247803000000E0080120CC06400000" & _
"40080120CC06C00000479E7124F0EFFADCF64448892479B6DAC6" & _
"CD4448F9241DB6DACECF44488124CDB6CD96CC44488924CDB6CD" & _
"96CDE446712478E66D9EC6000000000000000000000000000000" & _
"000000", "SENDER_ID" )
If SendStatusColl.OverallResult <> 1 Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Result=" & Status.ResultCode & "<BR>"
Next
End If
Response.Write Summary
%>
VB Example:
Dim IntelliSMS As New INTELLISMSLib.IntelliSMS
IntelliSMS.AccessKey = "MyUsername"
IntelliSMS.SecretKey = "MyPassword"
Dim SendStatusColl As INTELLISMSLib.SendStatusCollection
Set SendStatusColl = IntelliSMS.SendBinaryMessage ( _
"44771012345,44771023456", "06050415820000", _
"32F40100480E0100000000000000000000000000000000000000" & _
"0000000000000000000001247803000000E0080120CC06400000" & _
"40080120CC06C00000479E7124F0EFFADCF64448892479B6DAC6" & _
"CD4448F9241DB6DACECF44488124CDB6CD96CC44488924CDB6CD" & _
"96CDE446712478E66D9EC6000000000000000000000000000000" & _
"000000", "SENDER_ID" )
Dim Summary As String
If SendStatusColl.OverallResult <> ResultCodes.rcOK Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
Dim Status As INTELLISMSLib.SendStatus
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Status=" & Status.ResultCode & vbCrLf
Next
End If
MsgBox Summary
The above examples send an 'IntelliSoftware' operator logo to a
handset.
Obtains the available credits on an account.
GetBalance ( Balance As Variant ) As ResultCodes
Parameters:
Balance |
Output |
Number of remaining credits |
ResultCode |
Return |
See ResultCodes
|
ASP Example:
<%
Dim IntelliSMS
Set IntelliSMS = Server.CreateObject("IntelliSoftware.IntelliSMS")
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Dim Balance
ResultCode = IntelliSMS.GetBalance ( Balance )
%>
VB Example:
Dim IntelliSMS As New INTELLISMSLib.IntelliSMS
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Dim Balance As Variant
Dim Result As INTELLISMSLib.ResultCodes
Result = IntelliSMS.GetBalance ( Balance )
Collection containing the send status for each recipient.
Methods:
Item(Index) As SendStatus |
Returns an individual SendStatus object
from the collection |
Properties:
OverallResult |
Indicates the overall success/failure. See
ResultCodes
|
Count |
Number of SendStatus objects in the collection |
ASP Example:
<%
Set IntelliSMS = Server.CreateObject("IntelliSoftware.IntelliSMS")
IntelliSMS.AccessKey = "Yva$ER%Uhs+UU[MzwEYe"
IntelliSMS.SecretKey = "F{kQ^s`wVpm!EU~Bx8yB^A$N$[l{pxJA"
Set SendStatusColl = IntelliSMS.SendMessageToMultipleRecipients _
("44771012345,44771023456", "Hello", "SENDER_ID")
If SendStatusColl.OverallResult <> 1 Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Result=" & Status.ResultCode & "<BR>"
Next
End If
Response.Write Summary
%>
VB Example:
Dim IntelliSMS As New INTELLISMSLib.IntelliSMS
IntelliSMS.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"
Dim SendStatusColl As INTELLISMSLib.SendStatusCollection
Set SendStatusColl = IntelliSMS.SendMessageToMultipleRecipients _
("44771012345,44771023456", "Hello", "SENDER_ID")
Dim Summary As String
If SendStatusColl.OverallResult <> ResultCodes.rcOK Then
Summary = "Failed, Result=" & SendStatusColl.OverallResult
Else
Dim Status As INTELLISMSLib.SendStatus
For Each Status In SendStatusColl
Summary = Summary & "To=" & Status.To & _
", MessageId=" & Status.MessageId & _
", Status=" & Status.ResultCode & vbCrLf
Next
End If
MsgBox Summary
Provides the send status for a recipient.
Properties:
To |
Recipient's phone number that this status report is relevant
|
MessageId |
ID for this message.
|
ResultCode |
Indicates the success/failure of message submission for this recipient.
See ResultCodes
|
Indicates the success/failure of a request.
Returned by SendMessage, GetBalance, SendStatus.ResultCode and
SendStatusCollection.OverallResult properties.
INTELLISMSLib.ResultCodes
Values:
0 |
rcUnknown |
Unknown error has occurred |
1 |
rcOK |
Request was successfully actioned |
2 |
rcNoUsername |
Username was not supplied (Set Username property) |
3 |
rcNoPassword |
Password was not supplied (Set Password property) |
4 |
rcNoTo |
Message recipient(s) not specified |
5 |
rcNoText |
Message text not specified |
6 |
rcLoginInvalid |
Username/Password not valid |
7 |
rcInsufficientCredit |
Insufficient credit available to complete the request |
8 |
rcGatewayError |
An error occurred on remote gateway (please retry later) |
9 |
rcInternalError |
An error occurred on remote gateway (please retry later) |
10 |
rcHTTPConnectionError |
Unable to make connection to remote gateway |
11 |
rcInvalidNumber |
The recipient number is invalid |
12 |
rcInvalidRequest |
The request was invalid |
13 |
rcServerTooBusy |
Remote gateway too busy (please retry later) |
14 |
rcMsgIdInvalid |
Supplied Message ID not valid
|
15 |
rcParameterMissing |
Mandatory parameter is missing |
16 |
rcParameterInvalid |
A supplied parameter is invalid |
17 |
rcAccountExists |
CreateSubaccount - subaccount already exists |
18 |
rcTooManyNumbers |
Too many recipients specified |
19 |
rcNoMsgId |
MsgId paramter was missing |
20 |
rcDailyAllowanceExceeded |
Your Daily Allowance is exceeded |
21 |
rcMonthlyAllowanceExceeded |
Your Monthly Allowance is exceeded |
22 |
rcAuthParameterMissing |
Auth Parameter is missing |
23 |
rcAuthParameterInvalid |
Auth Parameter is invalid |
24 |
rcConnectionNotSecure |
Could not action request as connection is not secure |
Advanced Features
Send to Distribution Lists (or Group Send)
Our gateway allows you to send SMS messages to preconfigured Distribution Lists
or Groups. To send to a Distribution List or Group simply insert the Group
Name were you would normally place the recipient's phone number.
Distribution Lists or Groups are setup in your online account login
on the Contacts page.
Reply Tracking:
The IntelliSoftware platform provides tracking of SMS replies, allowing you
to determine which particular message a mobile user is replying to. When
you submit a message to the SMS Gateway you can supply a User Context
parameter. When a reply is received, the IntelliSoftware platform will included
the User Context parameter when forwarding the message to your server.
The User Context can be supplied to the IntelliSoftware platform in the
following ways:
.Net Component |
use SendMsgWithUserContext method |
COM Component |
use SendMessageWithUserContext method |
HTTP Interface |
add 'usercontext' POST/GET parameter |
SMTP Interface (Email to SMS) |
add 'UserContext:' parameter |
PHP SDK |
use SendMessageWithUserContext method |
Java SDK |
use SendMessageWithUserContext method |
The IntelliSoftware platform will forward the User Context for received messages
in the following ways:
HTTP Interface |
'usercontext' POST/GET parameter |
SMTP Interface (SMS to Email) |
User Context appears in Subject line |