660 likes | 884 Views
The Verizon Network API. Webinar Overview. Introduction to the Verizon Network APIs The On-boarding Process Simulator Tools Certification API Certification Application Certification Messaging. Verizon Network APIs. API OVERVIEW. Open @ Verizon: How It All Fits Together. WAC.
E N D
Webinar Overview • Introduction to the Verizon Network APIs • The On-boarding Process • Simulator Tools • Certification • API Certification • Application Certification • Messaging
Verizon Network APIs API OVERVIEW
Open @ Verizon: How It All Fits Together WAC Mobile Browsers APIs Device APIs Verizon Wireless Network APIs NavBuilder Inside
Network APIs: Overview • Allows third party application developers to design applications using Verizon network capabilities (the Verizon Wireless Platform) • Network API • Applications are generally handset independent with no client-side development • Provide a single programming environment to the developer community for many Verizon services • Provide a common security and policy framework for developers and subscribers • Use Internet standard REST and SOAP Web Services APIs interfaces for third party application servers to the Verizon Service Control Gateway (SCG) • At launch, the project supports 20+ Administrative, SMS, MMS and Terminal Location APIs • Terminal Location APIs support • granular (precise) or AGPS location, and • coarse (cell ID-based) location • Messaging APIs support Send, Receive and Delivery Receipt to VZW subscribers • Admin APIs support aggregator and enterprise features
3rd Party App Server 3rd Party App Server 3rd Party App Server Network API Architecture 3rd Party App Server Web Services over HTTPS • VDC-Developer Portal • SDK • Click-through agreements • Dev support • App submission • Performance reporting • Credential creation Quotas Privacy Engine MDN+APPID+Consent Check opt-in Network API Gateway • Subscriber Consent Portal • MyVerizonAccount • User opt in/opt out management • Back Office & Operations • CDR Mediation • Rating • Developer invoicing • Alarms & System Monitoring Enter/Change Permissions INAP SIP Custom DIA Network Protection Throttles SMPP MM7 MLP GPM aGPS client d/l SMSC MMSC LPS
VDC – Verizon Developer Community Network APIs are an additional platform at Verizon http://developer.verizon.com
Developers: Concept Submission Key part of our effort to achieve a 14 day certification process. 10
Consumer Consent Portal-Key Legal Component Consumers have VZW method to change permissions to protect privacy
Simulator & Tools Basic Demonstration
Basic Demonstration • Create developer credentials and log in to: • http://developer.verizon.com/ • Enter up to two MDNs, answer SMS confirmation to allow MDN use in demo. • Use the VDC web interface to select an MDN for sending a message or getting a location. • You can try the API without creating your own app.
SMS Demonstration Select one of your devices from the drop down menu, type a message, hit send to deliver the message.
MMS Demonstration Select one of your devices from the drop down menu, hit send to deliver the message.
Get Location Demonstration Select one of your devices from the drop down menu, and click “Get Location” to get a location fix of the selected device.
Developing Getting started developing
Documentation http://developer.verizon.com/jsps/devCenters/Network_Enablers/index.jsp
Simulator Credentials Generation • Access the Network API Dev Center • Sign-In in to the VDC Developer Portal (http://verizon.developer.com) • Click Dev Center on the top navigation area and scroll towards bottom to access the Network APIs Dev Center link • From there select an appropriate Network API Tutorial under the Technical Resources Section http://developer.verizon.com/jsps/devCenters/Network_Enablers/Landing_Pages/ne_tech_res_tutorials.jsp • Click the link to “Access your simulator credentials” • An email with your password is sent to your email address
Sticking Point • Make sure Verizon Emails do not go into your spam folder! • Make sure to add network-apps@verizonwireless.com into your email client white list. • If you are not receiving email notification, please let us know: send mail to network-apps@verizonwireless.com
Getting Started Bundle • The link “Getting Started Developing for the Network API” to download the Getting Started zip file is available under the Downloads section. Network_Apps_Getting_Started.zip content • SOAP UI Project (getting_started_soap_ui.xml) • Java API Generation Scripts (axis and cfx)
Introduction to SOAP UI • soapUI is a tool for testing Web-Services. Its functions include: • Inspecting Web Services • Invoking SOAP and REST Services • Open Source Version is downloadable free from http://www.soapui.org/
Java API Generation • Download Apache Axis or Apache CXF • Extract the ‘Network_Apps_Getting_Started.zip’ file to a folder on your computer • Run the appropriate script included in the ‘Network_Apps_Getting_Started.zip’ file • vzw_axis1_sms_client_wsdl2java.sh • vzw_axis1_sms_client_wsdl2java.bat • vzw_cxf_sms_client_wsdl2java.bat • vzw_cxf_sms_client_wsdl2java.sh • The scripts create a Java API on which you can build Network • applications
Verizon Network API : Privacy • A subscriber’s opt-in & opt-out settings is at the application level and it is applicable to both messaging and location requests. • The initial location or messaging request triggers a dynamic sms ask to the subscriber’s device. • Subscribers additionally have the ability to enable or disable their opt-in and opt-out setting for each application from their Verizon My Account site Sample sendSms Flow • A Network Application sends sendSms request • Server checks whether the target device has given consent to the calling application • If the target device has given consent • Server delivers the message • Else • Server sends the opt-in sms message to the target device (W,A,D) - “A program named ${ApplicationShortName} is trying to locate or contact you....“ - this message cannot be changed • Server responds back to the calling application with a 9061 error code
Application On Boarding Process Submitting A CONCEPT
Step 1: Register an Alliance • Sign in to developer.verizon.com • Navigate to My Account • Click Alliances under the Go To Market section • If you are already in an alliance, you will be directed to the click-through agreements page if no contracts has reviewed and signed yet. • Complete the following sections • Company Info • Business Info • Contact Info
Step 2: Submit A Concept • Sign-In • Navigate to My Account • Click My Applications under the Go To Market section • Click ‘Create New Application’ from the left navigation bar • Select Network Enabler from drop-down list • Complete the requested information in App Info Tab • Application Status Changes to Submitted
Content Rating Levels • Content considered suitable for ages 17 and above by most parents • Content considered suitable for ages 7 and above by most parents • Content considered suitable for adults 18 and above • Content considered suitable for ages 13 and above by most parents. • For more information, refer: • http://developer.verizon.com/jsps/devCenters/Smart_Phone/Landing_Pages/VerizonContentRatingGuidelines.jsp
Step 3: Complete LBS checklist and Export Encryption Form • Export control review questionnaire and LBS check, for LBS apps, will be emailed to the developer after the concept is submitted. • To obtain Legal approval complete the Export control review questionnaire and email the scanned signed document to vcastappslegal@verizonwireless.com. • To obtain LBS approval ( Location Based Service), complete the LBS Checklist and email the scanned signed document to vcastappslegal@verizonwireless.com • You also have the option of faxing the signed document to the Legal Department at 908-766-3691. • Please note the effort to include these two forms within concept submission is currently under development.
Step 4: Complete the Campaign Approval Form • A Campaign approval form is emailed to after your concept has been submitted. Complete the information in the form and email it back. • Note: This step is only required for applications that use messaging API.
Application On Boarding Process Obtaining approval
Step 1: Concept Evaluation • What happens • Is the application submitted to the correct queue (Network API, NBI, VCAST?) • Is the description sufficient for downstream reviewers to minimize the RFI process • Evaluate API traffic forecast • Highlight content rating • Notes added for the benefit of downstream reviewers Application Status changed to SUBMITTED
Step 2: Catalog Application Status changed to CONCEPT EVALUATED • You will receive an email notification to login to VDC and capture the application credentials under App tab • Certification credentials for Services are listed under your application. It include username or ApplicaitonID and password. These credentials must be used during invoking LBS, SMS and MMS APIs • Certification credentials for the Admin/ PPMI are listed under your application. These are also called as Admin credentials. It include admin username and password. Admin credentials must be used for authenticating your access to PPMI • Make sure the ApplicationID attribute in PPMI must have username of the Service Credentials
Step 3: Legal/Content Standards • What happens • Applications are reviewed for content rating accuracy and compliance with Verizon's content policy. • Applications are reviewed for privacy policies. • LBS Approval • Encryption Approval Application Status changed to CATALOG APPROVED
Step 4: Tax • What happens • TAX ID assigned Application Status changed to LEGAL/CONTENT APPROVED
How to Avoid RFIs • Is this application submitted to the correct queue (Network API, NBI, VCAST?) • Include clear and comprehensive description of your application, and explain how it works • Enter the expected number of transactions, explain if your transaction volume is very low. • Explain the kind of content the application delivers to the user. • This helps with content rating approval • Only request the API's that the application will use and describe how they are used by the service • If your application uses only LBS API, do not also select the messaging API, and vice versa. • Avoid using application name which includes your alliance name • The application name should describe the app. • It should not describe the alliance or the company. • The app name is not editable and cannot be changed. • Do not apply for multiple applications in one submission • One application at a time
Certification API & APPLICATION Certification
Progress bar and certification • Progress bar displays Certification Status. • API Certification runs concurrent with on-boarding tasks. • Application Certification tests a specific application. • Is last step before production approval.
API Certification • Purpose • Lead developers through a list of test cases to verify that they know how to properly handle common request success and error conditions • Expectation • Execute each test case • Review the certification notes and document planned application behavior for the different error conditions • Provide sign-off on each executed test case
Test Case Breakdown Request parameter violation startSmsNotification with an existing criteria sendSms with an invalid senderName SLA violation getLocation requested accuracy below SLA bounds sendMessage with an attachment that is too large • Successful requests • Successful sendSms request • Successful get fine location • Runtime faults • getLocation request while device is turned off • getMessageDeliveryStatus for an expired request identifier
Application Certification • Application certification requires you to run through your application to trigger the same usage pattern expected in production. • You have the opportunity to execute all the edge and normal cases you need to ensure your application is ready for production using the devices white-listed under MDN management.
Step 2: Complete API Selection • Select the specific operation your application will use. • Current Process • Email us all the APIs you expect to use to network-apps@verizonwireless.com. Short Messaging (SMS) SmsNotificationManagerBinding: startSmsNotification, stopSmsNotification (YES/NO) SendSmsBinding: getSmsDeliveryStatus, sendSms (YES/NO) SmsNotificationBinding: notifySmsDeliveryReceipt, notifySmsReception (YES/NO) Multimedia Messaging MessageNotificationManagerBinding: startMessageNotification, stopMessageNotification (YES/NO) SendMessageBinding: getMessageDeliveryStatus, sendMessage (YES/NO) ReceiveMessageBinding: getMessage (YES/NO) MessageNotificationBinding: notifyMessageDeliveryReceipt, notifyMessageReception (YES/NO) Terminal Location (LBS) TerminalLocationBinding: getLocation, getLocationForGroup, getTerminalDistance (YES/NO) TerminalLocationNotificationManagerBinding: endNotification, startGeographicalNotification (YES/NO) TerminalLocationNotificationBinding: locationEnd, locationError, locationNotification (YES/NO)
Step 3: Start Certification • Click the red “Start Certification button”. • You have up to 3 days to run your tests. • Use the Certification Platform username and password • Certification endpoint : cert.verizoncert.com