Difference between revisions of "SMS Notify!"

From CDYNE Wiki
Jump to navigation Jump to search
imported>Nfesette
(Short Codes)
imported>Bdriggers
(SMS Notify! MMS Methods)
(57 intermediate revisions by 2 users not shown)
Line 1: Line 1:
SMS Notify! is a secure two-way [http://www.cdyne.com/terms/sms-gateway.aspx SMS Gateway] that facilitates your business communications with a developer friendly API and [http://www.cdyne.com/company/100-percent-uptime 100% SLA]. Integrate SMS into custom console and web applications using DIDs (dedicated phone numbers) and short codes.
+
Send text messages worldwide from your website or application through CDYNE's SMS Gateway. SMS Notify! uses [http://wiki.cdyne.com/index.php/Glossary#DID DID]s or [http://wiki.cdyne.com/index.php/Glossary#Short_Code short codes] assigned to your account license key to send [http://wiki.cdyne.com/index.php/Glossary#MT_.28Mobile_Terminated.29 MT] text messages and receive [http://wiki.cdyne.com/index.php/Glossary#MO_.28Mobile_Originated.29 MO] text messages. Use a Web Services client in any programming language to interact with SMS Notify! API.
  
Test with a [http://www.cdyne.com/developers/trial-key.aspx?PGID=2E18E28D-40C5-4F86-BDA3-EEAD83BC18A1 free SMS Notify! API trial key] today. <br><br>
+
* Your server or application makes a CDYNE SMS Notify! API Request
 +
* CDYNE replies with an API response
 +
* CDYNE sends message to appropriate aggregator
 +
* Aggregator delivers message to appropriate carrier
 +
* Carrier acknowledges receipt of message (''short codes only'')
 +
* Carrier delivers message to cell phone
  
== CHOOSE THE RIGHT SMS BUSINESS SOLUTION ==
 
  
=== Dedicated Phone Numbers (DIDs) ===
+
== SMS Notify! SMS Methods ==
  
Purchase U.S. or Canadian DIDs for low volume, person-to-person text messaging. Automated bulk sending of text messages is not allowed with DIDs.  
+
==== [[SimpleSMSSend]] ====
 +
Send single, immediate text messages from your website or application.
  
* Send MT (outgoing) SMS at a rate of 1 message every 2 seconds
+
==== [[SimpleSMSSendWithPostback]] ====
* Maximum daily volume per DID is 500 MT messages
+
Send single, immediate text messages from your website or application utilizing the [http://wiki.cdyne.com/index.php/SMS_Notify!_PostBackURLs PostBackURL] feature.
* No restrictions on MO (incoming) messages
 
  
=== Short Codes ===  
+
==== [[AdvancedSMSSend]] ====
 +
Immediately send or schedule a single text message to multiple phone numbers, or individual messages to multiple recipients. The AdvancedSMSSend method includes a [http://wiki.cdyne.com/index.php/SMS_Notify!_PostBackURLs PostBackURL] parameter.
  
Use the same SMS Notify!API for both DID and short code SMS communications. Test with DIDs while short code provisioning is set up.
+
==== [[GetMessageStatus]] ====
* [http://www.cdyne.com/company/contact.aspx Contact] CDYNE to discuss short code implementation for automated, marketing, and high volume SMS.
+
The GetMessageStatus method uses the MessageID parameter to return the status of a message.
  
== DEVELOPER RESOURCES ==
+
==== [[GetMessageStatusByReferenceID]] ====
 +
This method returns all messages with a predefined user ReferenceID set in [[AdvancedSMSSend]] method.
  
=== SMS Notify! 2.0 API Spec Sheet ===
+
==== [[GetUnreadIncomingMessages]] ====
 +
This method returns all unread text message responses attached to a single License Key and marks them as read.
  
[https://secure.cdyne.com/downloads/SPECS_SMS-Notify2.pdf SMS Notify! 2.0 Specification Sheet]
+
==== [[ CancelMessage ]] ====
 +
CancelMessage uses the Message ID to cancel a message scheduled for a later time or date. Does not work if message was already sent out or queued.
  
=== SMS Notify! 2.0 API - WCF/SOAP/REST Service ===
+
==== [[ GetKeywords ]] ====
* http://sms2.cdyne.com/sms.svc SMS Notify!
+
Gets all currently enabled keywords for a license key.
  
==== Simple Test ====
+
==== [[ AssignKeyword ]] ====
 +
Assigns one or more keywords to a license key.
  
Simply change the 17575449510 to your cell phone number to get a test message.
+
==== [[ RemoveKeyword ]] ====
http://sms2.cdyne.com/sms.svc/SimpleSMSsend?PhoneNumber=17575449510&Message=TestMessage
+
Removes one or more assigned keywords from a license key.
  
==== Programming Examples ====
 
* [[SMSv2 CSharp]] - CSHARP Example
 
* [[SMSv2 VB.NET]] - VB Example
 
* [[SMSv2 VBScript]] - VBScript
 
* [[SMSv2_PHP]] - PHP Example
 
* [[SMSv2_Ruby]] - Ruby Example
 
* [[SMSv2_RubyOnRails]] - Ruby on Rails Example
 
* [[SMSv2_cURL]] - cURL
 
* [http://search.cpan.org/~revmischa/Net-SMS-CDYNE-0.04/lib/Net/SMS/CDYNE.pm Perl REST]
 
  
==== Service Endpoint Help Pages ====
+
== SMS Notify! SMS Documentation Links ==
  
* [http://sms2.cdyne.com/sms.svc/help HTTP]
+
'''[https://secure.cdyne.com/downloads/SPECS_SMS-Notify2.pdf SMS Notify! Specification Sheet]''' <br>
* [https://sms2.cdyne.com/sms.svc/SecureREST/help HTTPS]
 
  
==== 3rd Party Tutorials ====
+
PDF document containing all SMS Notify! programming methods with request and response descriptions.
* 3rd party C# .NET Simple Send SMS tutorial can be found here > [http://gunsh.com/blog/2012/02/24/cdyne-sms-sample-winforms-c-app-2/ Video and Source]
 
  
==== Calling via REST (POST/GET) ====
+
'''[http://sms2.cdyne.com/sms.svc?wsdl WSDL]''' <br>
WCF Help page: [http://sms2.cdyne.com/sms.svc/help REST Help Page]
 
  
* http://sms2.cdyne.com/sms.svc/SimpleSMSsend?PhoneNumber=7575449510&Message=hello - Example without a License Key (very limited)
+
An XML format document that defines SMS Notify! endpoints.
* http://sms2.cdyne.com/sms.svc/SimpleSMSsend?PhoneNumber=7575449510&Message=hello&LicenseKey=0000 - Example with a License Key
 
  
=== DID Best Practices ===
+
'''[http://sms2.cdyne.com/sms.svc/help HTTP Service Operations]''' <br>
  
When a license key is passed to SMS Notify! API, it will automatically send messages from the DIDs assigned to that license key. For keys with more than one DID, SMS Notify! API will automatically balance the outgoing messages between DIDs. <br>
+
Service operations at endpoint http://sms2.cdyne.com/sms.svc
  
'''''SimpleSMSSend''''' is recommended for sending single, immediate text messages. The API will default to sending from a DID assigned to the license key passed. <br>
+
'''[https://sms2.cdyne.com/sms.svc/SecureREST/help HTTPS Service Operations]''' <br>
  
'''''AdvancedSMSSend''''' is recommended for sending scheduled text messages and allows multiple numbers with one message, or multiple numbers with individual messages. If a DID is not declared in the “AssignedDID” parameter, SMS Notify! will automatically send from the DIDs assigned to the license key that is passed. <br>
+
Service operations at https://sms2.cdyne.com/sms.svc/SecureREST
  
To declare which DID should send a message, use the AdvancedSMSSend method and input the DID in the AssignedDID parameter.<br>  
+
'''[http://www.cdyne.com/downloads/international-sms-coverage.xls International Extended Suppported Carriers]''' <br>  
  
==== Volume Considerations ====
+
Excel doc containing carriers supported worldwide. Includes destination pricing, available DIDs, carrier restrictions, and reach.
  
Automated bulk sending or marketing text messages are not allowed with DIDs. Other volume limitations include:
+
== API Features ==
* Send MT (outgoing) SMS at a rate of 1 message every 2 seconds per DID
 
* Maximum daily volume per DID is 500 MT messages
 
* No restrictions on MO (incoming) messages <br>
 
  
==== Pick Your Coverage & Area Code ====
+
==== Text Message Length ====
  
'''''SMS to U.S. and Canada''''': all U.S. and Canadian carriers are supported.
+
Within your AdvancedSMSSend request if you set:
* Random U.S. DIDs are available immediately
 
* Area code requests take 5 – 7 business days <br>
 
  
'''''SMS Worldwide''''': supports carriers [http://www.cdyne.com/downloads/international-sms-coverage.pdf worldwide] (including all U.S. and Canadian carriers).
+
IsUnicode = True & Concatenate = True, the max message length is 67 characters (including spaces)
* Random DIDs are available in 1 – 2 business days
+
Concatenate = True, the max message length is 153 characters (including spaces)
* U.S. area code requests take 5 – 7 business days
+
IsUnicode = True, the max message length is 70.0 characters (including spaces)
* Canada area code requests take 14 – 18 business days.* Only 2-way traffic allowed on Canadian DIDs<br>
 
  
==== Order DIDs ====
+
However, if you set both the IsUnicode and Concatenate parameters to false within your request, the maximum character limit is 160 (including spaces).
  
DIDs only cost $1 per DID per month. [http://www.cdyne.com/company/contact Contact] or [http://messenger.providesupport.com/messenger/cdyne.html?ps_s=zoopkDazA3rW chat] with a CDYNE representative to order your trial key or production DIDs today.
 
  
=== PostBackURLs ===
 
  
==== Know When SMS Was Sent or Recieved ====
+
===== U.S. SMS =====
  
CDYNE SMS Notify! API will automatically post information to a URL you specify each time an SMS has been sent or received.  
+
U.S. Carriers are standardized and all text messages are 160 characters (including spaces) in length. When sending a text message to a recipient in the U.S. with more than 160 characters, the SMS Notify! API will automatically split the message into two or more messages for delivery.
  
* [http://wiki.cdyne.com/index.php/SMS_Message_Sent_Postback MT SMS (outgoing)]
+
===== Canadian SMS =====
* [http://wiki.cdyne.com/index.php/SMS_Message_Response_Postback Response to MT SMS]
 
* [http://wiki.cdyne.com/index.php/SMS_Message_Response_Postback MO SMS (incoming)] <br>
 
  
This eliminates the need to constantly query CDYNE servers for responses. PostBackURLs are only sent to the server you specify in the Postback variables.  An example of what a postbackURL link might look like is: <nowiki>http://www.blanksite.com/incomingsms.aspx</nowiki>.
+
Canadian Carriers vary from 136 to 160 characters (including spaces) in length. CDYNE sends to Canada the same way as the U.S. To ensure complete message delivery, CDYNE advises that your application only send messages to Canadian recipients in 136 character increments. If the message is longer than 136 characters, the best practice is to split the message on your application side at the 136 character mark to avoid data loss that may occur from Canadian Carriers that truncate anything over 136 or 140 characters.
  
==== Assign a PostBackURL ====
+
==== [http://wiki.cdyne.com/index.php/SMS_Notify!_PostBackURLs PostBackURL] ====
 +
Know when your MT message has been sent or your application has received a MO or response message. CDYNE SMS Notify! API will automatically post information to a URL you specify each time an SMS has been sent or received.
  
Assign a PostBackURL to your account DID or short code for automated PostBacks by logging into your account online.
+
==== [[DID System Keywords]] ====
 +
SMS Notify! API will automatically respond to select keywords when receiving text messages with DIDs.  
  
* Select “Manage Services” on the left-hand menu
+
==== [[Short Code System Keywords]] ====
* Click open the SMS Notify! module
+
SMS Notify! API will automatically respond to select keywords when receiving text messages with short codes.  
* Select “DID,” which will open a new screen listing your account DIDs or short codes
 
* Click on the edit button on the right and add the URL.
 
  
You may also use the “SimpleSMSSendWithPostback” or the “AdvancedSMSSend” programming methods to declare a URL in the “PostBackURL” parameters.<br>
+
==== [[Short Code Incoming Keyword Management]] ====
 +
Managing keywords assigned to short codes.  
  
Call 1-800-984-3710, [http://www.cdyne.com/company/contact.aspx inquire]or initiate a [http://messenger.providesupport.com/messenger/cdyne.html chat]to assign your PostbackURL.
+
==== [[Unicode Support]] ====
 +
SMS Notify! supports Unicode with International Extended DIDs.
  
=== Automated Keyword Management ===
+
==== [[Message Concatenation]] ====
 +
SMS Notify! supports message concatenation.
  
SMS Notify! API includes automated system responses to the following keywords. <br>
+
==== [[SMS Error Returns]] ====
 +
SMS Notify! API contains a parameter called SMSError, which returns a string indicating errors when sending the text message.
  
==== HELP ====
+
==== [[SMS and Invalid Phone Numbers]] ====
When a recipient responds HELP, we will send contact information about the party who initiated the message to the recipient.  This allows the recipient to know who is contacting them, and provides them information on how they can contact the sender.
+
How SMS Notify! handles invalid phone numbers.
  
==== STOP, END, CANCEL, UNSUBSCRIBE, QUIT ====
+
==== IP Ranges ====
This will block the recipient’s number from receiving messages from our system. This is to protect the recipient from unwanted or unsolicited messages.
 
 
 
==== RESUME ====
 
This will allow CDYNE to send messages to a recipient who previously sent a STOP, END, CANCEL, UNSUBSCRIBE, or QUIT command.
 
 
 
=== Phone Number Format ===
 
 
 
==== USA and Canada ====
 
* 1 + NPA + NXX + XXXX
 
* 1 + (Area Code) + Number
 
 
 
Example
 
* (1 + 757 + 544 + 9510) = 17575449510
 
 
 
==== International ====
 
 
 
* 0 + 11 + Country Code + Phone number
 
 
 
* CDYNE SMS Notify! API coverage is worldwide. View CDYNE [http://www.cdyne.com/downloads/international-sms-coverage.pdf SMS International coverage PDF] by region, country, and network name.
 
 
 
=== IP Ranges ===
 
  
 
4.59.146.64-128 and 4.26.64.64-128
 
4.59.146.64-128 and 4.26.64.64-128
  
=== SMS Error Returns ===
+
== SMS Notify! Best Practices ==
 
 
 
 
SMS Notify! API contains a parameter called SMSError, which returns a string indicating errors when sending the text message.<br><br>
 
 
 
{| class="wikitable" cellspacing="5"
 
|-
 
! Error Code
 
! align="left"| Description
 
|-
 
| 0
 
| NoError
 
|-
 
| 1
 
| STOPfromPhoneNumber
 
|-
 
| 2
 
| LicenseKeyInvalid
 
|-
 
| 3
 
| PhoneNumberInvalid
 
|-
 
| 4
 
| MessageInvalid
 
|-
 
| 5
 
| ScheduledDateTimeIsNotUTC
 
|-
 
| 6
 
| InvalidAssignedDID
 
|-
 
| 7
 
| NotFound (Occurs for Invalid MessageID)
 
|-
 
| 8
 
| InternalError
 
|-
 
| 9
 
| ContactCdyneAccountSuspended
 
|}
 
 
 
=== SMS and Special Characters ===
 
SMS Notify! supports most special characters, however, there are certain characters which most phones have trouble receiving.  Most American and European phones don't support Unicode and thus will not correctly receive messages with certain characters. The following characters can only be received on phones that support Unicode:<br><br>
 
 
 
{| class="wikitable" cellspacing="5"
 
|-
 
! Character
 
! align="left"| Description
 
|-
 
| [
 
| left square bracket
 
|-
 
| \
 
| back slash
 
|-
 
| ]
 
| right square bracket
 
|-
 
| ^
 
| caret
 
|-
 
| `
 
| grave accent
 
|-
 
| {
 
| left curly brace
 
|-
 
| &#124;
 
| pipe or vertical bar
 
|-
 
| }
 
| right curly brace
 
|-
 
| ~
 
| tilde
 
|-
 
| DEL
 
| Delete
 
|}
 
 
 
=== SMS and Daylight Savings Time ===
 
SMS Notify recognizes the date and time in UTC (Coordinated Universal Time).  When clocks move forward 1 hour in the spring, most time zones will need to remove one hour from their UTC offset.  For example, Eastern Standard Time (EST) is  UTC -5 hours but Eastern Daylight Time (EDT) is UTC -4 hours.
 
 
 
=== Invalid Phone Numbers ===
 
 
 
 
 
CDYNE’s SMS Notify! SMS Gateway API will automatically clean up certain errors for U.S. and Canadian phone numbers. For example, if you were to send a message to “7575449510e,” the API would take out the “e” and send the message to 7575449510. In this example, SMS Notify! API would return a parameter of “NoError” and continue to send the message to the cleaned up phone number. <br><br>
 
 
 
While the SMS Notify! text message API will clean errors such as extra digits and/or letters, it will not clean numbers if it has been entered incorrectly and is still a valid number. For example if you wanted to send a notification to 7575449510, but instead you had the number as 7575449501 within your script, the message would be sent to 7575449501 as it is a valid number. <br><br>
 
 
 
CDYNE SMS Notify! API does not do a phone verification check on phone numbers, and it will send all valid numbers out. One work around is to run your phone list through [http://www.cdyne.com/products/phone-verification.aspx CDYNE Phone Verification API] which will return whether a phone number is a landline or cell number. CDYNE Phone Verification API is a cost effective way to distinguish between a landline and cellular or even fake phone number.
 
 
 
== LICENSE KEYS AND PRICING ==
 
 
 
=== Free Trial License Keys ===
 
 
 
CDYNE offers trial license keys for all Web Services so that you may test the APIs for free.  Trial keys do not expire, and are limited to approximately 50 transactions. Normal processing time for trial key requests during normal business hours (M-F, 9-6 eastern) typically ranges from ten minutes to two hours. <br><br>
 
 
 
CDYNE [http://www.cdyne.com/developers/trial-key.aspx?PGID=2E18E28D-40C5-4F86-BDA3-EEAD83BC18A1 SMS Notify! API trial keys] do require a short verification process due to FCC regulations regarding SMS text messaging. CDYNE Corporation is committed to consumer protection and privacy and we do not allow the use of CDYNE SMS Notify! API for any type of unsolicited messaging. In an effort to ensure that all text messaging sent through CDYNE SMS Notify! API is conducted responsibly; we are providing the attached summary guideline for [http://www.cdyne.com/downloads/SMSNotifyResponsibleUse.pdf CDYNE SMS Notify! API use]. <br><br>
 
 
 
Verification will include proof of recipient opt-in or explicit consent to receive text messages. The following is a list of opt-in examples:
 
* Recipient may send a Mobile Originated (MO) message from their handset to the dedicated phone number.
 
* Recipient may initiate opt-in from a website form.
 
* Recipient may initiate opt-in from an IVR system (telephone keypress).
 
* Recipient may initiate opt-in from a paper form.
 
 
 
Oral consent is not an acceptable opt-in method for any telemarketing text message.
 
 
 
=== Production (Account) License Keys ===
 
 
 
Sign up [https://secure.cdyne.com/support/register.aspx?qs=34 here] for a production SMS Notify! license key. <br><br>
 
 
 
Upon registration, your account will be suspended for verification. This is due to FCC regulations regarding SMS text messaging. At all times, text messages sent from CDYNE SMS Notify! API must be in accordance with applicable federal and state laws, rules and regulations. In an effort to ensure that all text messaging sent through CDYNE SMS Notify! API is conducted responsibly; we are providing the attached summary guideline for [http://www.cdyne.com/downloads/SMSNotifyResponsibleUse.pdf CDYNE SMS Notify! API use]. <br><br>
 
 
 
You may call 1-800-984-3710 to expedite the verification process over the phone.
 
 
 
=== Pricing ===
 
 
 
 
 
There is a monthly licensing fee of $9.99 for SMS Notify! API. Each outgoing and incoming message is charged as a transaction and will be billed according to monthly volume:
 
 
 
* Monthly licensing fee of $9.99
 
* Outgoing and incoming transactions are only 1 cent each
 
* Dedicated SMS-enabled phone numbers (DIDs) are $1 per month per assigned number
 
 
 
Response messaging is charged at the normal transaction rate. <br><br>
 
 
 
Pricing for all CDYNE Web Services is based off a set monthly maintenance fee and a per-transaction fee. CDYNE does not require a contract and there are absolutely no start-up or cancellation fees. CDYNE services are post-pay. Your credit card will not be charged until one month from sign-up date and will be billed monthly thereafter unless you deactivate or cancel services. Net 30 billing is available upon application approval.
 
 
 
== RESPONSIBLE USE OF SMS NOTIFY! API ==
 
CDYNE Corporation is committed to consumer protection and privacy and we do not allow the use of CDYNE SMS Notify! API for any type of unsolicited messaging. In an effort to ensure that all text messaging sent through CDYNE SMS Notify! API is conducted responsibly; we are providing the following summary guideline for CDYNE SMS Notify! API use.
 
 
 
* At all times, text messages sent from CDYNE SMS Notify! API must be in accordance with applicable federal and state laws, rules and regulations.
 
* Proof of recipient opt-in or explicit consent is required for all SMS text messaging through CDYNE SMS Notify! API.
 
* A recipient can stop participating and receiving messages through SMS Notify! by texting STOP. SMS Notify! will block sending to that recipient until they text RESUME.
 
* Users of CDYNE SMS Notify! API should record and store all opt-in and opt-out transactions.
 
* Content must be sent to age appropriate customers.
 
* Selling mobile opt-in lists is prohibited.
 
 
 
====Telemarketing Text Messages and Explicit Consent====
 
 
 
A telemarketing message is any message that seeks to sell or advertise goods or services.
 
 
 
* Users of CDYNE SMS Notify! API must obtain approval from recipients before sending telemarketing messages to wireless numbers.
 
* Opt-in must explicitly communicate to the recipient the types of messages they will receive (i.e., order confirmation and upcoming offers, etc), and opt-in should occur at the time the wireless number is provided.
 
* The following is a list of opt-in examples for telemarketing text messages.
 
** Recipient may send a Mobile Originated (MO) message from their handset to the dedicated phone number.
 
** Recipient may initiate opt-in from a website form.
 
** Recipient may initiate opt-in from an IVR system (telephone keypress).
 
** Recipient may initiate opt-in from a paper form.
 
* Oral consent is not an acceptable opt-in method for any telemarketing text message.
 
 
 
====Non-Telemarketing Text Messages and Explicit Consent====
 
 
 
A non-telemarketing text message is a purely informational message requested by the recipient (by paper, electronic, or oral consent) for a specific purpose. It does not contain an unsolicited advertisement, and is not sent for commercial purposes. Some examples of non-telemarketing text messages include bank account balance, credit card fraud alert, package delivery, school closing, customer-care, surveys, and messages by or on behalf of tax-exempt, non-profit entities.
 
 
 
====Reselling CDYNE SMS Notify! and 3rd Party Marketing Applications====
 
 
 
Due to the ambiguous nature of the opt-ins that occur for clients of a reseller, we are unable to approve reseller accounts unless there is an explicit and verifiable opt-in that occurs for all customers through one portal or application. We sincerely apologize for any inconvenience this may cause.
 
 
 
====Additional Information====
 
 
 
* http://transition.fcc.gov/cgb/consumerfacts/robocalls.pdf
 
* http://www.fcc.gov/guides/robocalls
 
* http://transition.fcc.gov/Daily_Releases/Daily_Business/2012/db0215/FCC-12-21A1.pdf
 
 
 
== CDYNE WEB SERVICES ==
 
 
 
=== Security ===
 
 
 
CDYNE Communication and Data Quality APIs support HTTPS for data encryption and secure communication.
 
* [https://sms2.cdyne.com/sms.svc/SecureREST/help SMS Notify! API HTTPS URLs]
 
 
 
==== Secure Data Centers ====
 
 
 
CDYNE data centers are housed behind a climate controlled Biometric Security building with redundant power back up. The building is monitored 24/7 and all individuals are required to carry a picture id hid device in addition to a full biometric hand security scan. All connections between our enterprise grade firewalls and the internal servers are encrypted with Triple AES. Only internal servers would have any data on them. All users who have access to this are required to have a complex password with a change rate of less than 15 days. Our passwords require a minimum of 9 characters that include each of the following: a symbol, upper case letters, lowercase letters, and numbers. '''''CDYNE never mines or sells information that crosses its servers or systems.'''''
 
 
 
==== HIPAA Compliance with SMS Notify! API ====
 
 
 
* You will be required to use HTTPS to provide a secure channel for SMS messaging to be HIPAA compliant. Also, all messages cannot include credit card information or personal health record information.
 
 
 
* CDYNE SMS Notify! was built in WCF (Windows Communication Foundation). WCF uses Message and Transport Security protocols to ensure the protection of information. The xml (including all fields) is protected by these protocols, and it allows for end-to-end security. http://msdn.microsoft.com/en-us/library/ms733137.aspx
 
 
 
=== 100% SLA ===
 
  
CDYNE's [http://www.cdyne.com/company/CDYNEServiceLevelAgreement09.pdf Service Level Agreement(SLA)] is designed to protect our clients against unscheduled outages. As the leader in the Web Services industry, CDYNE is the only provider with such an uncompromising SLA, guaranteeing zero downtime of the services you rely on. The SLA provides unsurpassed levels of availability with correspondingly aggressive penalties for failure to comply with the SLA. This 100% uptime assurance is a direct result of CDYNE's relentless pursuit of service excellence.<br><br>
+
'''[[DID Best Practices]]''' <br>
 +
Best practices for using [[SimpleSMSSend]] and [[AdvancedSMSSend]] with DIDs. Includes PostBack data, volume considerations and carrier coverage. <br><br>
  
CDYNE provides uptime reports and current API status for all services through a respected third party monitoring company. Please check [http://status.watchmouse.com/16077 status.cdyne.com] for more information. Detailed historical reports are available upon request.
+
'''[[Short Code Best Practices]]''' <br>
 +
Best practices for using [[SimpleSMSSend]] and [[AdvancedSMSSend]] with short codes. Includes PostBack data, volume considerations and carrier coverage.

Revision as of 11:59, 9 October 2017

Send text messages worldwide from your website or application through CDYNE's SMS Gateway. SMS Notify! uses DIDs or short codes assigned to your account license key to send MT text messages and receive MO text messages. Use a Web Services client in any programming language to interact with SMS Notify! API.

  • Your server or application makes a CDYNE SMS Notify! API Request
  • CDYNE replies with an API response
  • CDYNE sends message to appropriate aggregator
  • Aggregator delivers message to appropriate carrier
  • Carrier acknowledges receipt of message (short codes only)
  • Carrier delivers message to cell phone


SMS Notify! SMS Methods

SimpleSMSSend

Send single, immediate text messages from your website or application.

SimpleSMSSendWithPostback

Send single, immediate text messages from your website or application utilizing the PostBackURL feature.

AdvancedSMSSend

Immediately send or schedule a single text message to multiple phone numbers, or individual messages to multiple recipients. The AdvancedSMSSend method includes a PostBackURL parameter.

GetMessageStatus

The GetMessageStatus method uses the MessageID parameter to return the status of a message.

GetMessageStatusByReferenceID

This method returns all messages with a predefined user ReferenceID set in AdvancedSMSSend method.

GetUnreadIncomingMessages

This method returns all unread text message responses attached to a single License Key and marks them as read.

CancelMessage

CancelMessage uses the Message ID to cancel a message scheduled for a later time or date. Does not work if message was already sent out or queued.

GetKeywords

Gets all currently enabled keywords for a license key.

AssignKeyword

Assigns one or more keywords to a license key.

RemoveKeyword

Removes one or more assigned keywords from a license key.


SMS Notify! SMS Documentation Links

SMS Notify! Specification Sheet

PDF document containing all SMS Notify! programming methods with request and response descriptions.

WSDL

An XML format document that defines SMS Notify! endpoints.

HTTP Service Operations

Service operations at endpoint http://sms2.cdyne.com/sms.svc

HTTPS Service Operations

Service operations at https://sms2.cdyne.com/sms.svc/SecureREST

International Extended Suppported Carriers

Excel doc containing carriers supported worldwide. Includes destination pricing, available DIDs, carrier restrictions, and reach.

API Features

Text Message Length

Within your AdvancedSMSSend request if you set:

IsUnicode = True & Concatenate = True, the max message length is 67 characters (including spaces) Concatenate = True, the max message length is 153 characters (including spaces) IsUnicode = True, the max message length is 70.0 characters (including spaces)

However, if you set both the IsUnicode and Concatenate parameters to false within your request, the maximum character limit is 160 (including spaces).


U.S. SMS

U.S. Carriers are standardized and all text messages are 160 characters (including spaces) in length. When sending a text message to a recipient in the U.S. with more than 160 characters, the SMS Notify! API will automatically split the message into two or more messages for delivery.

Canadian SMS

Canadian Carriers vary from 136 to 160 characters (including spaces) in length. CDYNE sends to Canada the same way as the U.S. To ensure complete message delivery, CDYNE advises that your application only send messages to Canadian recipients in 136 character increments. If the message is longer than 136 characters, the best practice is to split the message on your application side at the 136 character mark to avoid data loss that may occur from Canadian Carriers that truncate anything over 136 or 140 characters.

PostBackURL

Know when your MT message has been sent or your application has received a MO or response message. CDYNE SMS Notify! API will automatically post information to a URL you specify each time an SMS has been sent or received.

DID System Keywords

SMS Notify! API will automatically respond to select keywords when receiving text messages with DIDs.

Short Code System Keywords

SMS Notify! API will automatically respond to select keywords when receiving text messages with short codes.

Short Code Incoming Keyword Management

Managing keywords assigned to short codes.

Unicode Support

SMS Notify! supports Unicode with International Extended DIDs.

Message Concatenation

SMS Notify! supports message concatenation.

SMS Error Returns

SMS Notify! API contains a parameter called SMSError, which returns a string indicating errors when sending the text message.

SMS and Invalid Phone Numbers

How SMS Notify! handles invalid phone numbers.

IP Ranges

4.59.146.64-128 and 4.26.64.64-128

SMS Notify! Best Practices

DID Best Practices
Best practices for using SimpleSMSSend and AdvancedSMSSend with DIDs. Includes PostBack data, volume considerations and carrier coverage.

Short Code Best Practices
Best practices for using SimpleSMSSend and AdvancedSMSSend with short codes. Includes PostBack data, volume considerations and carrier coverage.