Follow CDYNE Blog on WordPress.com
Header Image -

Tag Archives

32 Articles

SMS Notify! API System Keywords

SMS Notify! API is a programming interface that provides connectivity to wireless carriers. It allows developers to build business applications to send and receive text messages using DIDs or short codes. DIDs are SMS-enabled 10-digit phone numbers (e.g., 757-544-9510), and short codes are 5- to 6-digit numbers (e.g. 55512). Here is a PDF document outlining the differences between each method. One important feature of SMS Notify! is the system keywords. When a person begins a text message with a system keyword and sends it to your DID or short code, SMS Notify! will automatically send a text message reply. System keywords and responses vary between DIDs and short codes as outlined below.

DID System Keywords

HELP

System Response:“Business Name”-SMS Notifications.Txt STOP to end.Msg&Data Rates may apply.”Business point of contact.”

  • The default business name is the name used to sign up for the SMS Notify! account. This may be updated by contacting CDYNE.
  • The business point of contact is two forms of contact including any combination of phone number, email, or website.
STOP, END, CANCEL, UNSUBSCRIBE, QUIT

System Response: This provider is now blocked. Text back RESUME to unblock your number.

  • SMS Notify! API will block the recipient’s number from receiving messages until the recipient sends RESUME.
  • CDYNE will log the recipient STOP request including the license key, sending DID, and recipient’s phone number.
  • The STOP response occurs at the license key level. SMS Notify! will only block messages from that same license key to the recipient’s phone number.
  • Other license keys may send to the recipient’s phone number.
RESUME

System Response: OK.

  • This will allow SMS Notify! to send messages to a recipient who previously sent a STOP command.
  • License Key with Assigned DIDs: The recipient can reply RESUME to any DID assigned to the license key that logged the original STOP request.
  • License Key without Assigned DIDs: The recipient must reply RESUME to the original DID assigned to the license key that logged the original STOP request.

Short Code System Keywords

HELP, HLP, AIDE, INFO

System Response:“Business Name”: Reply STOP to cancel. Msg&Data Rates may apply. Msg Freq per acct setup. “Business #.”

  • The default business name and number is the name and number used to sign up for the SMS Notify! account. This may be updated by contacting CDYNE.
  • The HELP response for short codes are at the license key level so you can set up multiple custom HELP responses per short code.
STOP, END, CANCEL, UNSUB, QUIT, ARRET

System Response:“Business Name”: You have opted out and will no longer receive messages from this service. “Business #”

  • SMS Notify! API will block the recipient’s number from receiving messages until the recipient sends RESUME.
  • The STOP response occurs at the license key level. SMS Notify! will only block messages from that same license key to the recipient’s phone number.
  • The reply to French keywords is the standard English reply.
RESUME

System Response: Welcome to “ProgramName”. Reply STOP to cancel. Reply HELP for help or call “ProgramContact”. Msg&Data rates may apply.  Msg freq per acct setup. Pwr’d by CDYNE.

  • Shared short code system messages will contain “Pwr’d by CDYNE.” Dedicated short code messages will not.

Contact CDYNE for more information about short codes.

Test SMS Notify! API for free.

0 views

Receiving SMS Messages with Short Code Keywords

A short code keyword is a unique one-word phrase that identifies a business, product or service. Keywords allow multiple  businesses to run unique campaigns on the same short code. Likewise, a business using a dedicated short code can differentiate communications with multiple keywords. For example, your dentist places a sign in the waiting room that says, “Text SMILE to 55512 to get appointment reminders.” In this example, “SMILE” is the keyword, and “55512” is the short code. By texting SMILE to short code 55512, the patient is opting in to receive appointment reminders. Using the same short code, the dental office may run a separate promotional offer. For example, “Text WHITE to 55512 for $25 off teeth whitening.” In this way, patients choose the interaction they wish to receive from their dentist. Communication with short codes and keywords give businesses great flexibility and responsiveness when engaging their customers, patients, or clients with text messaging. Here are guidelines and rules to consider when using keywords:

Select User Friendly Keywords

Keep it short – A short keyword is easy to remember.

Make it memorable – An easy to remember keyword will generate a better response.

Use a single word – SMS Notify! will match the entire message when checking for incoming keywords. If an incoming keyword is followed by any characters, a match will not be made.

SMS Notify! Incoming Keyword Rules

  • Only 1 instance of keyword per short code
  • Keyword cannot be a system keyword (e.g., STOP, HELP, ect.)
  • Keyword must be at least 3 characters long
  • Keyword cannot be a typical SMS response (e.g., sure, yes, thanks, monday)
  • Keywords are not case sensitive; ‘THIS’ is the same as ‘this’ and ‘ThIs’

Using PostBackURL to Capture Incoming Keywords

Developer’s can set up automated responses to incoming keywords using the SMS Notify! API PostBackURL system. When a keyword is assigned to your short code, CDYNE can also assign a URL or webpage you designate. Set your application to look for the variable SMSResponse=1, which is posted when a message is sent to your short code, or when a response to your outgoing message arrives. PostBackURL data is posted behind the scenes, and is not visible on your webpage. Program your application to capture the PostBackURL variables that are passed to your webpage from SMS Notify! API.

Contact CDYNE for more information about short codes.

Test SMS Notify! API for free.

0 views

Bulk SMS With Short Codes

CDYNE is proud to announce SMS Short Code Service availability. SMS Notify! customers have requested bulk text messaging and can now send up to 35 text messages per second. A short code is a 5- or 6-digit number such as 99431 that is assigned to a business to send text messages over supporting carrier networks. SMS Notify! now supports U.S. and Canadian short codes.

Short codes come in two varieties: random or vanity. A random short code is assigned, and a vanity short code is a number or word you can request for example 77493 for “PRIZE.” They are easy to remember numbers businesses can use to communicate with their customers and clients.

Launching a short code requires access to wireless carrier networks and carrier approval. This includes a carrier application which details the message flow between your business and text message recipients. Short code setup and carrier approval typically takes 8-10 weeks. While setting up short code access, businesses can use SMS-enabled phone numbers (DIDs) to test their applications with SMS Notify! API.

Short codes are an excellent mobile communication tool to reach customers with immediate and relevant information.

Contact CDYNE today for more Short Code Service information.

Or sign up for a free trial license key to test CDYNE Phone Notify! API.

Developers find CDYNE SMS Notify! API integration details on the CDYNE developer’s wiki.

0 views

SMS PostBackURLs Two Ways

For many SMS Notify! applications, it is important to know when an MT* message is sent, when a response to that text message is received, or when an MO* message is received by your application. In each scenario, SMS Notify! will alert your application when you use the PostBackURL feature. This can be helpful for storing information in a database, or responding with another message. The PostBackURL is a web page you assign where CDYNE will post back the specific information about the MT or MO SMS messages.

MT (Mobile Terminated) PostBack Fields

If you specify a PostBackURL in your SMS outgoing request, the following fields can be programmed to postback when a message is sent:

  • SMSSent – Always set to “1.”
  • MessageID – A unique identifier that matches the initial MessageID from your outgoing SMS.
  • ReferenceID – This is populated if you set a reference id in your outgoing request.
  • FromPhoneNumber – This is the number that sent your outgoing message.
  • ToPhoneNumber – This is the number you sent the SMS to.
  • SentTime – UTC Date when the message was sent.

 

MO (Mobile Originated) PostBack Fields

If you specify a PostBackURL in your SMS outgoing request, or CDYNE assigned you an SMS DID – the following fields can be programmed to postback when a response message is returned, or when an MO message is sent to your DID.

  • SMSResponse – Always set to “1.”
  • MessageID – A unique identifier for this response. This will come as a GUID.
  • MatchedMessageID – A GUID that is populated when the response matches a previous message.
  • ReferenceID – This is populated if the response matches a previous message and you set the ReferenceID field in your outgoing SMS.
  • FromPhoneNumber – This is the number that sent the response.
  • ToPhoneNumber – This is the Local SMS Number that received the message. If you have an assigned DID number from CDYNE, this will be that number. Otherwise it will be a random number from our Phone Number pool.
  • ResponseReceiveDate – UTC Date when the message came in.
  • Message – This is the incoming SMS Text Message body.

 

Shared Numbers or DIDs – How to Assign the PostBackURL

There are currently two flavors of CDYNE SMS messaging: shared and dedicated phone numbers. With shared numbers, your application can send SMS messages, and receive responses to those messages. Shared numbers cannot receive MO (Mobile Originated) or customer initiated/inbound text message to your application. You’ll need a DID for MO messages.

You can order a DID through a CDYNE Account Representative. When they assign the DID to your SMS license key, they can also assign the PostBackURL at that time. Alternatively, you can log into your account online and specify a URL for each dedicated phone number assigned to your license key as shown in the image below:

By doing so, all messages sent to or from the DID will be captured with the PostBackURL.

When using CDYNE’s bank of shared phone numbers, you can assign the PostBackURL in the SimpleSMSSendWithPostback or AdvancedSMSSend methods. When using a DID, if the PostBackURL is already assigned, you do not have to pass it in the SimpleSMSSendWithPostback or AdvancedSMSSend methods. If you do put in a PostBackURL, it will override the system URL.

* MT (Mobile Terminated) message – an outgoing message sent from your application. It is a text message that terminates on a mobile device.

* MO (Mobile Originated) message – an inbound message sent to your application that is initiated by the customer (rather than a response to an MT message already sent out). It is a text message that originates from a mobile device.

 

For more information about CDYNE SMS Notify! API, please contact an account representative at 1-800-984-3710, inquire by email, or initiate a chat for more details.

Or sign up for a free trial license key to test CDYNE SMS Notify! API.

Developers find CDYNE SMS Notify! API integration details on the CDYNE developer’s wiki.

0 views

CDYNE Launches International Address Verification

Today CDYNE launched PAV-I, an international postal address verification API which validates addresses for over 240 countries. Businesses with an international market presence can ensure data quality for their customer base without any prior knowledge of international address formats or foreign characters. One of the great features of PAV-I is that it takes the guesswork out of the many address formats that exist worldwide. We are excited about this new offering because it complements CDYNE’s existing PAV API, which is CASS Certified™ for US postal addresses, and now verifies Canadian addresses at no additional cost.

TRANSLITERATE ADDRESSES FROM ONE ALPHABET TO ANOTHER

PAV-I supports 9 writing systems and will transliterate address data for Latin, Cyrillic, Greek, Hebrew, Japanese Kanji, Chinese, Arabic, Thai, and Korean Hangul. For example, if you input a Japanese address in English characters, you have the option to request the validated address in either English or Japanese Kanji.

We will use the address 3-24-20, YOKODAI ISOGO-KU YOKOHAMA, 2350045, JAPAN to highlight the transliteration capabilities of PAV-I. The default setting for transliteration is false. When set to true, the verified address will output to the native language if it is supported. The only exception to this is the country output field, which will return in English.

Address entered with native output set to true:

Input Address: 3-24-20 YOKODAI ISOGO-KU YOKOHAMA 2350045 JAPAN

Output Results: A RESCODE of “1” and OUTPUTSTATUS of “C” combined means the address was successfully matched or parsed and has been corrected to match the reference data. The corrected and transliterated address is output both in the ADDR field as well as the individual address fields. As mentioned earlier, the COUNTRY output field will return in English and does not transliterate.

The last output field MATCHLVL returned a “2,” which signifies verification down to the street level. These output returns are meaningful because they provide a record of any corrections that were made to your addresses along with the level to which the addresses were verified. The following MATCHLVL returns are available:

  • 0 – No Match
  • 1 – Town, City, Locality, Municipality, Suburb
  • 2 – Street
  • 3 – Premise (Building)
  • 4 – Organisation (Varies by country, Business or Administrative Entity)

 

Address entered with native output set to false:

Input Address: 3-24-20 YOKODAI ISOGO-KU YOKOHAMA 2350045 JAPAN

Output Results: A RESCODE of “1” and OUTPUTSTATUS of “C” combined means the address was successfully matched or parsed and has been corrected to match the reference data.

INNOVATIVE PARSING ABILITY

PAV-I has the ability to parse addresses entered in one or many fields. Using multiple address fields for input is useful when you are familiar with international addresses and the specific elements of the input address. If uncertain of the specific address elements, inputting information in the wrong fields may complicate or confuse matching.

To illustrate this, let’s use the address Rose House, 51-59 Circular Road, Isle of Man, IM1 1AZ, United Kingdom to show how this address can be entered using fielded or unfielded input.

Address entered with unfielded input:

Input Address: Rose House, 51-59 Circular Road, Isle of Man, IM1 1AZ, United Kingdom

Output Results: A RESCODE of “1” and OUTPUTSTATUS of “V” combined means the address was successfully matched or parsed and has been verified mailable with no change.

Address entered with fielded input:

Input Address: Rose House, 51-59 Circular Road, IM1 1AZ, United Kingdom

Output Results: In this case, “Isle of Man” was not included in the input data. As a result, RESCODE  “1” and OUTPUTSTATUS “C” was returned (the address was successfully matched or parsed and has been corrected to match the reference data).

PAV-I VERIFICATION CODES

Addresses are verified with a RESCODE and an OUTPUTSTATUS. The RESCODE returns data based on whether the address was successfully matched or not. The OUTPUTSTATUS provides extra details regarding the verification or correction that occurred when verifying the address.

RESCODE
OUTPUT STATUS DETAILS
0 Internal Error Occurred (Contact CDYNE)
1 V Address was successfully matched or parsed and has been verified mailable with no change
1 C Address was successfully matched or parsed and has been corrected to match reference data.
1 P Address was successfully parsed but there is no matching reference data.
2 N There were no hits found and address was not matched or parsed. (This is also returned if an attempt is made to verify an unsupported country.)
3 P Insufficient input details (Too many possible matches)
4 Ambiguous result (Many possible address results)

 

For more information about CDYNE PAV-I API, please contact an account representative at 1-800-984-3710, inquire by email, or initiate a chat for more details.

Or sign up for a free trial license key to test CDYNE PAV-I API.

Developers find CDYNE PAV-I API integration details on the CDYNE developer’s wiki

0 views

CDYNE PAV Now Offers Full Canadian Address Verification

CDYNE’s Postal Address Verification API now fully validates Canadian addresses. You can standardize, correct, and verify US and Canadian addresses in one step. The API has been renamed PAV, and is the perfect complement to the PAV-I API, which standardizes and validates international addresses.

There are two supported operations for Canadian address verification: VerifyAddress and VerifyAddressAdvanced. Only two return codes apply to Canadian addresses. A return code of 200 means that the address was verified. A return code of 202 means that the input address is confirmed for all components except for the secondary number. A return code of 10 means that the address could not be found or verified.

If you have Canadian addresses with missing zip codes, PAV can append the zip code of the address as long as the Canadian province name has been abbreviated at input. Please see image below for an example.

We will use the address 75 University Ave West, Waterloo, ON to emphasize PAV’s ability to append a missing zip code.

Address input with missing zip code:

Address output with appended zip code:

As you can see, the correct zip code has been added and the address yields a return code of 200, meaning that the address is verified.  The address is now prepared for optimum delivery as suggested by the Canada Post with the output address properly parsed in upper case fonts and the zip code separated after the first three characters.

For more information about CDYNE PAV, please contact an account representative at 1-800-984-3710, inquire by email, or initiate a chat for more details.

Or sign up for a free trial license key to test CDYNE PAV.

Developers find CDYNE PAV API integration details on the CDYNE developer’s wiki.

0 views