Send Multiple MMS

Send Multiple MMS

Service Address api/SendMMSMultiple

Base Address https://app.intellisms.com.au

ContentType = MutlipartPart/Form-Data  or Raw - application/json 

This service can be used to send either multiple SMS or multiple MMS.   When sending multipleSMS leave the image properties blank.

Message Size Limitations

Telstra it's up to 2MB, Optus up to 1.5MB and Vodafone only allows up to 500kB

messages over 600kb incur 1.6 times standard cost.

Supported Media Types

".png", ".jpg", ".jpeg", ".bmp", ".gif", ".avi",".flv",".wmv",".mp4",".mpg",".3gp",".mov", ".aif", ".cda", ".mid", ".midi", ".mp3",".mpa", ".ogg", ".wav" , ".wma", ".wpl"

Message Process Notes

Recipient Address and Number Validation.

Our system uses configuration values defined by country to validate your recipient address.  You can define these numbers in International or local format.   if they are in local forma all messages recipient in a single call must be in the same country of destination, and this country must be defined in the property countryCode - see parameter below

Invalid numbers are removed from the returned recipients list.   If we are removing numbers you believe to be valid please contact us to update our number validation configuration.

To send to any country destination with MMS messages we must setup pricing to that country against your account - if pricing is not setup the system will return a -109 status and messages will not be processes.  Contact us if you are getting this status.

MutlipartPart/Form-Data


  1. file element content 
    file_content  value is byte array of base64 encoded image data
    fie_content.Header.ContentType = MIME image content type eg "image/jpg"
    file_content.Header.ContentDisposition = FileName = [your file name], Name = "MMSMedia" 
  2. string element content
    Value is JSON string  per the structure defined below;   The name given to this element can either be "" or ''jsonstring"


Raw - application/json

Send same Json model as required for Multipart but as content Raw - application/json


Json Data Model for Both Content types

Name
Meaning
Notes
usernameaccount username
passwordaccount password
SubjectSubject Text contentmax 64 characters - will be truncated if longer
textBody text content of the message
senderFrom address for messageCan only be either; up to 11 characters alpha or a leased MMS long number
recipientsList of recipientlist of recipients to send the message to -  max 50 per request
validitytime period before MMS that is not delivery will keep trying to delivery for in format  dd:hh:mmeg  "00:03:00"  being 3 hours.
scheduledDate time format dd/MM/yyyy HH:mm:ss zzz   eg "01/10/2018 00:02:00 -10:00",where zzz is time zone offset  -10:00    10 hours in front of UTC
ImageDatabase64 encoded image data - Only populate when sending using Raw - application/jsonbase64 encoded image data
FilenameFilename including ext. - Only populate when sending using Raw - application/jsonname of file - with no directories 
FileTypeMIME image content Type - Only populate when sending using Raw - application/jsoneg "image/png"
countryCode

2 digit standard country code - eg Australia = "AU"

Optional - if left bland recipient numbers must be in international format or they will fail our number validation. 

To send with local prefix code only you must specify the countryCode


recipientsList of recipients - can be in either local or international format - if using local format you must specify the CountryCodelist of recipients to send the message to -  max 50

recipient properties

Name
Meaning
Note
destinationAddressMobile number - can be local or international formatif in local format that country code must be set in the header data
messageContentMessage Text Body - will replace body text set in the header data model
idYour message Id if you wish to send it to us. This requires additional configuration on your account  - let us know if you wish to use this.

Json Structure

{
    "username" : "peter",
    "password" : "thing",
    "text" : "new message to all",
    "sender" : "61401002002",
    "validity" : "00:02:00",
    "countryCode":"AU",
    "scheduled" : "01/10/2018 00:02:00 -10:00",
    "FileName" : "Myfile.jpg",
    "FileType" : "image/jpg",
    "ImageData" : "iVBORw0KGgoAAAANSUhEUgAAAK8AAABACAYAAABsgCciAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH4QIYATsSMGi60AAAGFFJREFUeNrtnXu8FVXZx79nc7jIxZA5CAYSSlhe0VLUkWp2vmlvWaJOZulL...",
    "recipients" : [
        { "destinationAddress" : "61401328025", "messageContent":"My Replace Message for John","id":"12345"},
        { "destinationAddress" : "61401328026", "messageContent":"","id":"12346"},
        { "destinationAddress" : "61401328027", "messageContent":"","id":"12347"},
        { "destinationAddress" : "61401328028", "messageContent":"","id":"12348"}
        ]
}

C# Model Structure

public class MultipleSMS
    {
        public string username { get; set; }
        public string password { get; set; }
        public string text { get; set; }
        public string sender { get; set; }
        public List<recipient> recipients { get; set; }
        public string validity { get; set; }
        public string scheduled { get; set; }
        public string FileName { get; set; }
        public string FileType { get; set; }
        public string countryCode { get; set; }
        public string ImageData { get; set; }
    }
    public class recipient
    {
        public string destinationAddress { get; set; }
        public string messageContent { get; set; }
        public string id { get; set; }
    }

The Method Returns Json String with an array of recipients contained in the message send request that are valid recipients for the country of destination.  It gives the individual messageIds by destination address for mapping of final delivery status.

{
  "messageStatus": 11,
  "documentId": "14b777bc-f786-4238-a200-d8a418841cef",
  "recipients": [
    {
      "destinationAddress": "61401328025",
      "messageId": "60e9c8c1-ecca-405c-838f-e8c28f8a1dd0",
      "id":"123456"
    }
  ]
}

Notes about Return

If you have no valid recipient address for the country of destination the recipients array will be empty.   Invalid recipients are removed from the recipients return List;

If you do not have pricing setup for your country of destination messageStatus will equal -109

If you account is prepaid and you don't have sufficient credits to send to the full list of recipients messageStatus will equal -210