COM component

Send messages from Classic ASP and VBScripts

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.

Properties:

Username This is the username of your account
Password This is the password for your account
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

SendMessage Method

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

Result = IntelliSMS.SendMessage _
    ( "44771012345", "Hello", "SENDER_ID", MessageId )
%>

VB Example:

Dim IntelliSMS As New INTELLISMSLib.IntelliSMS

IntelliSMS.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

Dim MessageId As Variant
Dim Result As INTELLISMSLib.ResultCodes

Result = IntelliSMS.SendMessage _
    ( "44771012345", "Hello", "SENDER_ID", MessageId )

SendMessageToMultipleRecipients Method

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

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
				

SendUnicodeMessage Method

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
See Unicode Character Codes for more details.

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

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
				

SendBinaryMessage Method

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

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.Username = "MyUsername"
IntelliSMS.Password = "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.

SendWapPushMessage Method

Sends a WAP PUSH message via the Internet Gateway. WAP PUSH messages can send multimedia content, such as an Image, Wallpaper, Ringtone or a link to WAP website.

SendWapPushMessage ( To As String, Title As String, HRef As String, From As String ) As SendStatusCollection

Parameters:

To Input

This is the destination phone number(s)
NOTE: Separate multiple numbers by a comma

Title Input Display Text for WAP PUSH message
HRef Input URL link to resource ( should start with 'http://' or 'https://' )
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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

Set SendStatusColl = IntelliSMS.SendWapPushMessage ( _
    "44771012345,44771023456", "The message text", _
    "http://www.intellisoftware.co.uk/images/IntelliSMS.gif", _
    "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.SendWapPushMessage ( _
    "44771012345,44771023456", "The message text", _
    "http://www.intellisoftware.co.uk/images/IntelliSMS.gif", _
    "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
			

Considerations:

Our gateway will only send one SMS message per submission. Therefore a WAP PUSH message is charged at 1 credit.

An INVALID_REQUEST will result if the submitted text and href parameters would require 2 SMS messages to be sent. As a guide, the href and text parameters combined should not exceed 114 characters (assuming href starts with 'http://www.' )

GetBalance Method

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

Dim Balance

ResultCode = IntelliSMS.GetBalance ( Balance )
%>

VB Example:

Dim IntelliSMS As New INTELLISMSLib.IntelliSMS

IntelliSMS.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

Dim Balance As Variant
Dim Result As INTELLISMSLib.ResultCodes

Result = IntelliSMS.GetBalance ( Balance )
			

SendStatusCollection Class

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.Username = "MyUsername"
IntelliSMS.Password = "MyPassword"

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
			

SendStatus Values

Provides the send status for a recipient.

Properties:

To Recipient's phone number that this status report is relavant
MessageId ID for this message.
ResultCode Indicates the success/failure of message submission for this recipient.
See ResultCodes

ResultCodes Values

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

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

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

Secure SSL Connection (HTTPS):

To use a secure internet connection configure the gateway addresses as follows:

<%
    IntelliSMS.PrimaryGateway = "https://www.intellisoftware.co.uk"
    IntelliSMS.BackupGateway = "https://www.intellisoftware2.co.uk"

    SendStatus = IntelliSMS.SendMessage ( ......
    %>
Registered in England Number 3549137.
Registered in the UK for VAT Number 712 1836 61
2015 IntelliSoftware Limited.