Difference between pages "SMSv2 PHP" and "Pnsample"

From CDYNE Wiki
(Difference between pages)
Jump to navigation Jump to search
imported>Wcchenoweth
 
imported>Mbaughman
 
Line 1: Line 1:
The following example was built using PHP 5.3.2. Your setup may differ, so please assure that your PHP 5.x version supports the SOAPClient class.
+
==WSDL==
 +
[http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?wsdl WSDL] - Link to WSDL
 +
==Spec Sheet==
 +
[http://www.cdyne.com/downloads/SPECS_Phone-Notify.pdf Phone Notify SPEC SHEET] - XML Web Service specifications
  
==== SimpleSMSSend ====
+
__toc__
*Send a single message to a single number.
 
<php>
 
  
// Create a new soap client based on the SMS Notify! WCF service
+
== '''DEVELOPER RESOURCES''' ==
$client = new SoapClient('http://sms2.cdyne.com/sms.svc?wsdl');
+
=== Source Code Examples ===
  
// Specify required info to send a text message
+
*[[CSharp]] - C#
$param = array(
+
*[[VB.net]]
'PhoneNumber' => '7891234567',
+
*[[VBScript]]
'LicenseKey' => '(your license key here)',
+
*[[PHP5]] - using PHP 5's native Web Service capabilities.
'Message' => 'test'
+
*[[PHP]] - using NuSoap
);
+
*[[Flash]] - Implementing a Web Service via Flash.
 +
*[[JavaScript]]
 +
*[[ASP]]
 +
*[[Perl]]
 +
*[[FileMaker]] - using Web Services Plugin from FM Nexus.
 +
*[[URL]] - sending calls from a link or post form.
 +
*[http://zone.ni.com/devzone/cda/tut/p/id/4728 LabVIEW] - National Instruments LabVIEW Phone Notify tutorial.
  
// Send the text message
+
=== Download Original Phone Notify! Web Service Code Examples ===
$result = $client->SimpleSMSsend($param);
 
  
// View the response from CDYNE
 
print_r($result);
 
  
</php>
+
*[http://wiki.cdyne.com/code/php/phonenotify_source.zip PHP]<br>
 +
*[http://wiki.cdyne.com/code/asp/phonenotify/notifybasic_source.zip ASP]<br>
 +
*[http://wiki.cdyne.com/code/asp.net/phonenotify/NotifyASPXExample.zip .NET VB]<br>
 +
*[http://wiki.cdyne.com/code/cfm/phonenotify/notify.zip CFM]<br>
 +
*[http://wiki.cdyne.com/code/flash/phonenotify/phonenotifybasic.zip FLASH]<br>
 +
*[http://wiki.cdyne.com/code/jsp/NotifyPhoneBasic/notify_source.zip JSP]<br>
  
==== AdvancedSMSSend ====
+
=== Sample Applications ===
*Send different messages to different numbers with one method.
 
  
<php>
+
*[[CDYNE Phone Notify! Application]] - Open Source C# application using Phone Notify!<br>
 +
*[[CDYNE Command Line Notify]] - A very small .exe application that can send a Notify via the Command Line.<br>
  
$client = new SoapClient('http://sms2.cdyne.com/sms.svc?wsdl');
+
=== Easy to use 'Phone Notify!' Website examples ===
  
$lk = '(your license key here)';
+
* [http://cdynenotify.com CDYNENotify.com] - Send mass notifications using this web application. CdyneNotify.com utilizes the CDYNE Phone Notify! Web Service to create managed lists by inputting and importing, create a message by voice prompt or by text-to-speech. Send mass phone calls immediately or schedule them. Real-time reports include machine vs. human answering, duration of call, digits pressed, and answered/unanswered calls. Use your CDYNE login/pw for to access this site.
  
$PhoneNumbersArray1 = array('0123456789', '4567891230');
+
=== Phone Notify! Text to Speech Gadgets and Widgets===
$PhoneNumbersArray2 = array('1234567890', '7652212120');
+
<nowiki>***</nowiki>'''IMPORTANT'''<nowiki>***</nowiki>  You will need a license key to use these.
 +
*[[Phone Notify! Vista Sidebar]] - Windows Vista
 +
*[[Phone Notify! Google Gadget]] - Windows XP
 +
*[[Phone Notify! Konfabulator (Yahoo) Widget]] - Windows XP
 +
*[[Phone Notify! Opera Widget]] - Windows XP
 +
*[[Phone Notify! OS X Widget]] - OS X
  
$Message1 = 'Hello World';
+
=== Technical Specs ===
$Message2 = 'Goodbye World';
+
* [http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?wsdl WSDL]
 +
* [http://www.cdyne.com/developers/trial-key.aspx?ref=wiki Testing URL] - Sign up for a trial license key to test Phone Notify! API for free.
 +
* [http://www.cdyne.com/downloads/SPECS_Phone-Notify.pdf Phone Notify SPEC SHEET] - XML Web Service specifications
 +
[[Phone Notify! Field Descriptions]] - This will list the Field Descriptions for Phone Notify! Commands.<br>
 +
[[Queue ID Status Codes]] - List of possible call results.
  
 +
== '''LICENSE KEYS AND PRICING''' ==
  
$RequestArray = array(
+
=== Free Trial License Keys ===
array(
 
'AssignedDID'=>'',
 
                                      //If you have a Dedicated Line, you would assign it here.
 
'Message'=>$Message1, 
 
'PhoneNumbers'=>$PhoneNumbersArray1,
 
'ReferenceID'=>'',
 
                                      //User defined reference, set a reference and use it with other SMS functions.
 
//'ScheduledDateTime'=>'2010-05-06T16:06:00Z',
 
                                      //This must be a UTC time.  Only Necessary if you want the message to send at a later time.
 
'StatusPostBackURL'=>''
 
                                      //Your Post Back URL for responses.
 
)
 
,array(
 
'AssignedDID'=>'',
 
'Message'=>$Message2,
 
'PhoneNumbers'=>$PhoneNumbersArray2,
 
'ReferenceID'=>'',
 
'ScheduledDateTime'=>'2010-05-06T16:06:00Z',
 
'StatusPostBackURL'=>''
 
)
 
);
 
  
$request = new AdvancedCallRequestData($lk,$RequestArray);
+
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>
//print_r($request);
 
  
$result = $client->AdvancedSMSsend($request);
+
CDYNE [http://www.cdyne.com/developers/trial-key.aspx?PGID=16B68F7E-6F2A-4CF8-9152-38DA54DE5BDF Phone Notify! API trial keys] do require a short verification process due to FTC and FCC regulations regarding automated phone calls. At all times, phone calls sent from CDYNE Phone Notify! API must be in accordance with applicable federal and state laws, rules and regulations.<br><br>
print_r($result);
 
  
class AdvancedCallRequestData {
+
Please include the following items in the trial request form for expedited processing:<br><br>
  public $AdvancedRequest;
 
  
  function AdvancedCallRequestData($licensekey,$requests) {
+
* What the services will be used for?
            $this->AdvancedRequest = array();
+
* Who are the phone call recipients (customers, employees, etc)?
            $this->AdvancedRequest['LicenseKey'] = $licensekey;
+
* What is the content of the message (marketing, notification, etc)?
            $this->AdvancedRequest['SMSRequests'] = $requests;
+
* Do the recipients opt-in to receive phone calls? If so, how? <br><br>
  }
 
}
 
  
</php>
+
=== Production (Account) License Keys ===
  
==== GetMessageStatusByReferenceID ====
+
Sign up [https://secure.cdyne.com/support/register.aspx?qs=20 here] for a production Phone Notify! license key. <br><br>
*Returns all Messages with a predefined user ReferenceID set in AdvancedSMSSend.
 
  
<php>
+
Upon registration, your account will be suspended for verification. This is due to FTC and FCC regulations regarding automated phone calls. At all times, phone calls sent from CDYNE Phone Notify! API must be in accordance with applicable federal and state laws, rules and regulations.<br><br>
  
$client = new SoapClient('http://sms2.cdyne.com/sms.svc?wsdl');
+
You may call 1-800-984-3710 to expedite the verification process over the phone.<br><br>
  
$param = array(
+
=== Pricing ===
'ReferenceID' => '(your reference ID, set in AdvancedSMSSend)'
 
,'LicenseKey' => '(your license key)'
 
);
 
  
$result = $client->GetMessageStatusByReferenceID($param);
 
  
print_r($result);
+
There is a monthly licensing fee of $9.99 for Phone Notify! API. Each outgoing and incoming message is charged as a transaction and will be billed according to monthly volume:<br><br>
  
</php>
+
* Zero to 1,000 transactions per month cost 9 cents per transaction
 +
* 1,001 to 3,000 transactions per month cost 8.5 cents per transaction
 +
* 3,001 to 10,000 transactions per month cost 8 cents per transaction
 +
* 310,001 to 50,000 transactions per month cost 7.5 cents per transaction
 +
* 50,001 to UNLIMITED transactions per month cost 7 cents per transaction
 +
* ''Please [https://secure.cdyne.com/company/contact.aspx contact] us for high-volume discounts''<br><br>
  
==== GetUnreadIncomingMessages ====
+
[http://www.cdyne.com/downloads/phonerates_international.xls International Pricing] - Calls outside of the U.S and Canada incur extra charges based on carrier, as seen in this Excel doc.
*Returns all unread SMSResponses attached to a single License Key and marks them as read.
 
<php>
 
  
$client = new SoapClient('http://sms2.cdyne.com/sms.svc?wsdl');
+
[[Transaction Billing]] -
 +
Detailed description on how transactions are incurred per phone call.
  
$param = array(
+
You can use this [http://www.cdyne.com/products/pricing.aspx?PGID=16B68F7E-6F2A-4CF8-9152-38DA54DE5BDF online calculator] to estimate your monthly CDYNE Web Service usage.<br><br>
'LicenseKey' => '(your license key)'
 
);
 
  
$result = $client->GetUnreadIncomingMessages($param);
+
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.<br><br>
  
print_r($result);
+
== '''GENERAL TECHNICAL INFORMATION''' ==
  
</php>
+
=== Preferred Phone Number Format (USA/Canada) ===
==== GetMessageStatus ====
+
*Returns the status of a single SMS message using the Message ID from the SMSResponse object.
 
<php>
 
  
$client = new SoapClient('http://sms2.cdyne.com/sms.svc?wsdl');
+
* 1 + NPA + NXX + XXXX
 +
* 1 + (Area Code) + Number <br><br>
  
$param = array(
+
Example
'MessageID' => '(your message ID here)'//MessageID from SMSResponse Object
+
* (1 + 757 + 544 + 9510) = 17575449510
);
 
  
$result = $client->GetMessageStatus($param);
+
=== Preferred Phone Number Format (International) ===
 +
  
print_r($result);
+
* 0 + 11 + Country Code + Phone number<br><br>
  
</php>
+
CDYNE Phone Notify! API coverage is worldwide. View CDYNE [http://www.cdyne.com/downloads/phonerates_international.xls International coverage Excel Spreadsheet].<br>
 +
 
 +
Calls outside of the U.S and Canada incur extra charges based on carrier
 +
 
 +
=== IP Ranges ===
 +
 
 +
4.59.146.64-128 and 4.26.64.64-128
 +
 
 +
=== Reverse Notify ===
 +
You can now use '''1-866-665-4386''' as your Caller ID and the system will allow "Reverse Notifications".  This will allow users who missed a call to ring back this number and get the last message they missed.  Keep in mind that this doesn't work for Phone Notify! demos; also keep in mind that this counts as 1 transaction.  You must have a license key to use Reverse Notify (transferring does not currently work with this feature.  We do plan on offering it in the near future).
 +
 
 +
Benefits:
 +
* Enable your clients to listen to something they might have missed in the original notification.
 +
* Inform the type of person who just calls back and never checks voicemail. (Great for collection efforts)
 +
* Increase promotion ability and revenue for resellers of CDYNE Phone Notify!.
 +
 
 +
=== Incoming Calls / Phone Numbers ===
 +
CDYNE Phone Notify! also supports incoming call scripts.  Please [http://www.cdyne.com/company/contact.aspx send us a request] or call (1-800-984-3710) to get incoming phone numbers that run CDYNE Call Scripts.  We provide toll-free and local numbers only by request and it takes approximately 1-3 business days.
 +
 
 +
[http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?op=SetIncomingCallScript Operation used to set Incoming Call Script]
 +
 
 +
'''Incoming Phone Number Pricing:'''
 +
CDYNE charges a $1 maintenance fee per number per month for each number set up. All incoming numbers are subject to the same per transaction pricing as outbound calls.
 +
 
 +
Beta '''Incoming Number Operation(s)'''<br>[http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?op=GetAvailableAreaCodes Get Available Area Codes] List all area codes available to claim from the CDYNE database of available phone numbers.<br>[http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?op=GetAvailableIncomingNumbers Get Available Incoming Numbers] List phone numbers available to claim from CDYNE.<br>[http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?op=AssignIncomingNumber Assign an Incoming Phone Number] Assign an available phone number to a license key. This will automatically charge your account $1 per month per phone number set up.
 +
 
 +
=== '''Security''' ===
 +
 
 +
CDYNE does offer [https://ws.cdyne.com/NotifyWS/PhoneNotify.asmx Phone Notify! API HTTPS URLs] for added security. <br><br>
 +
 
 +
CDYNE currently maintains 3 major server farms, bringing added redundancy to our networks and additional capacity. CDYNE's data centers are engineered with multiple levels of security, uninterruptible power supplies (UPS), redundant HVAC systems, and fire suppression, as well as 24 X 7 monitoring and management. They are protected by 24 hour surveillance with a HID security badge and biometric hand scanners. All server racks have locks on them. CDYNE never mines or sell information that crosses our servers or systems.
 +
 
 +
=== '''100% SLA''' ===
 +
 
 +
Because availability is important for your mission-critical environment, 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.

Revision as of 11:35, 25 October 2011

WSDL

WSDL - Link to WSDL

Spec Sheet

Phone Notify SPEC SHEET - XML Web Service specifications

DEVELOPER RESOURCES

Source Code Examples

Download Original Phone Notify! Web Service Code Examples

Sample Applications

Easy to use 'Phone Notify!' Website examples

  • CDYNENotify.com - Send mass notifications using this web application. CdyneNotify.com utilizes the CDYNE Phone Notify! Web Service to create managed lists by inputting and importing, create a message by voice prompt or by text-to-speech. Send mass phone calls immediately or schedule them. Real-time reports include machine vs. human answering, duration of call, digits pressed, and answered/unanswered calls. Use your CDYNE login/pw for to access this site.

Phone Notify! Text to Speech Gadgets and Widgets

***IMPORTANT*** You will need a license key to use these.

Technical Specs

Phone Notify! Field Descriptions - This will list the Field Descriptions for Phone Notify! Commands.
Queue ID Status Codes - List of possible call results.

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.

CDYNE Phone Notify! API trial keys do require a short verification process due to FTC and FCC regulations regarding automated phone calls. At all times, phone calls sent from CDYNE Phone Notify! API must be in accordance with applicable federal and state laws, rules and regulations.

Please include the following items in the trial request form for expedited processing:

  • What the services will be used for?
  • Who are the phone call recipients (customers, employees, etc)?
  • What is the content of the message (marketing, notification, etc)?
  • Do the recipients opt-in to receive phone calls? If so, how?

Production (Account) License Keys

Sign up here for a production Phone Notify! license key.

Upon registration, your account will be suspended for verification. This is due to FTC and FCC regulations regarding automated phone calls. At all times, phone calls sent from CDYNE Phone Notify! API must be in accordance with applicable federal and state laws, rules and regulations.

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 Phone Notify! API. Each outgoing and incoming message is charged as a transaction and will be billed according to monthly volume:

  • Zero to 1,000 transactions per month cost 9 cents per transaction
  • 1,001 to 3,000 transactions per month cost 8.5 cents per transaction
  • 3,001 to 10,000 transactions per month cost 8 cents per transaction
  • 310,001 to 50,000 transactions per month cost 7.5 cents per transaction
  • 50,001 to UNLIMITED transactions per month cost 7 cents per transaction
  • Please contact us for high-volume discounts

International Pricing - Calls outside of the U.S and Canada incur extra charges based on carrier, as seen in this Excel doc.

Transaction Billing - Detailed description on how transactions are incurred per phone call.

You can use this online calculator to estimate your monthly CDYNE Web Service usage.

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.

GENERAL TECHNICAL INFORMATION

Preferred Phone Number Format (USA/Canada)

  • 1 + NPA + NXX + XXXX
  • 1 + (Area Code) + Number

Example

  • (1 + 757 + 544 + 9510) = 17575449510

Preferred Phone Number Format (International)

  • 0 + 11 + Country Code + Phone number

CDYNE Phone Notify! API coverage is worldwide. View CDYNE International coverage Excel Spreadsheet.

Calls outside of the U.S and Canada incur extra charges based on carrier

IP Ranges

4.59.146.64-128 and 4.26.64.64-128

Reverse Notify

You can now use 1-866-665-4386 as your Caller ID and the system will allow "Reverse Notifications". This will allow users who missed a call to ring back this number and get the last message they missed. Keep in mind that this doesn't work for Phone Notify! demos; also keep in mind that this counts as 1 transaction. You must have a license key to use Reverse Notify (transferring does not currently work with this feature. We do plan on offering it in the near future).

Benefits:

  • Enable your clients to listen to something they might have missed in the original notification.
  • Inform the type of person who just calls back and never checks voicemail. (Great for collection efforts)
  • Increase promotion ability and revenue for resellers of CDYNE Phone Notify!.

Incoming Calls / Phone Numbers

CDYNE Phone Notify! also supports incoming call scripts. Please send us a request or call (1-800-984-3710) to get incoming phone numbers that run CDYNE Call Scripts. We provide toll-free and local numbers only by request and it takes approximately 1-3 business days.

Operation used to set Incoming Call Script

Incoming Phone Number Pricing: CDYNE charges a $1 maintenance fee per number per month for each number set up. All incoming numbers are subject to the same per transaction pricing as outbound calls.

Beta Incoming Number Operation(s)
Get Available Area Codes List all area codes available to claim from the CDYNE database of available phone numbers.
Get Available Incoming Numbers List phone numbers available to claim from CDYNE.
Assign an Incoming Phone Number Assign an available phone number to a license key. This will automatically charge your account $1 per month per phone number set up.

Security

CDYNE does offer Phone Notify! API HTTPS URLs for added security.

CDYNE currently maintains 3 major server farms, bringing added redundancy to our networks and additional capacity. CDYNE's data centers are engineered with multiple levels of security, uninterruptible power supplies (UPS), redundant HVAC systems, and fire suppression, as well as 24 X 7 monitoring and management. They are protected by 24 hour surveillance with a HID security badge and biometric hand scanners. All server racks have locks on them. CDYNE never mines or sell information that crosses our servers or systems.

100% SLA

Because availability is important for your mission-critical environment, CDYNE's 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.