2600hz engineer Chris Cole demos the advanced functionality of our API. Currently there are tons of callflow options that include ring a device, ring a user, manual presence, pivot, etc. Chris explores this functionality in his live demo.
2. APIs ! Overlaying VoIP Numbers
#kazoocon14
SOC Codes, SOC Codes, SOC Codes!
Last Year We Launched a
Beta of 2600hz Mobile
3. #kazoocon14
2600hz Mobile
The good news is, we’re closer then ever to turning this into a standard product:
We have customers using our UI to activate phones regularly now
We are releasing our API documentation allowing you to control Cell Service from
your own webpage!
We have a revised UI in the works providing complete functionality
We’re also simplifying our business model more
Everyone is going to get wholesale pricing
Everyone will pay for only what they use + a base fee
Discounts require minimums
4. #kazoocon14
2600hz Mobile
Available APIs:
Device Management
GET /device/{esn}/validate
GET /device/{esn}/subscription
POST /device/{esn}/activate
POST /device/{esn}/deactivate
Subscription Management
GET /subscription/{mdn}/info
GET /subscription/{mdn}/usage_detail
POST /subscription/{mdn}/suspend
POST /subscription/{mdn}/restore
POST /subscription/{mdn}/cancel
POST /subscription/{mdn}/refresh
POST /subscription/{mdn}/change_plan
POST /subscription/{mdn}/add_feature
POST /subscription/{mdn}/remove_feature
POST /subscription/{mdn}/swap_device
POST /subscription/{mdn}/configure
Port Management
GET /port
GET /port/{mdn}/prevalidate
POST /port/{mdn}/port_in
POST /port/{mdn}/modify
POST /port/{mdn}/swap_in
POST /port/{mdn}/cancel
http://top.k.zswitch.net/v1/accounts/{accountID}/
Misc. Functions
GET /coverage
mdn = Mobile Directory Number
esn = Electronic Serial Number
5. #kazoocon14
2600hz Mobile
Terminology
Term Meaning Example
ESN Electronic Serial Number
Uniquely Identifies a Device
DEC: 256691416400086800
HEX: 99000074015310
IMEI International Mobile Station Equipment 99 000074 015310 3
MDN Mobile Device Number
Uniquely Identifies a Subscription
5551234242
ICC ID Integrated Circuit Card ID
Uniquely Identifies a SIM Card
89011200000001079564
MSL Master Subsidy Lock
Used for Provision, Carrier Wipe and
other restricted features
929374
CSA Communications Service Area DENDEN303
6. #kazoocon14
2600hz Mobile
Provisioning
Step Meaning
1. Carrier Wipe Removes carrier-specific data from the device,
Required if previously associated with a different number
Usually triggered by *#*#72786#*#* or ##72786##
2. System Update Retrieves the latest software / operating system for the device
3. Profile Update Updates the device’s network access information, resynchronizing it
with the network.
4. PRL Update Updates the preferred roaming list, optimizing your cellular
connections when roaming.
These Over-The-Air updates require a cellular connection
Newer LTE devices support updating over WIFI
7. #kazoocon14
2600hz Mobile
Cellular Features
Voice Blocking
One-Way Call Blocking
Data Throttling
Tethering
MMS
SMS Blocking
SMS Originate Blocking
SMS Terminate Blocking
LTE
WIMAX
SIP
International Dialing
My name is Chris, I’m the lead mobile engineer, and today I’ll be talking about how you can control Cellular Service via our APIs
Sean and Ricky just finished talking about the Kazoo’s APIs, our keys to the castle
It’s easy to be overwhelmed with all of those keys
Looking at our UI, we offer a huge amount of features – and our UI doesn’t even cover them all!
As an example, we have tons of callflow options…
Ring a device, ring a user, manual presence, pivot,
Sometimes less is more,
We are really excited about what we do.
Last year, we were accepted as participants in TechCrunch Startup Battlefield competition
This was around the time that we finalized our deal with Sprint, and we were eager to tell the world
Shortly after the announcement, we held Kazoocon, and we were extremely excited to share that with you
Many of you probably even left with working 2600hz Mobile phones
A year later, we are still in Beta
Stolen,'Device In Use','Fraudulent', 'Not In Database', 'Owner', 'Pre-Paid', Previously Activated with other MVNO
ESN
What’s an MSL?
Master Subsidy Lock
Designed initially to prevent a phone from being used with another carrier
Also prevented phones from having their technical data reprogrammed
Has really become unimportant as most settings are now controlled on the cell tower side
There are exceptions
For example, something called “Class Of Service” still exists in some networks. In busy areas, it defines what priority your phone gets as opposed to others.
Idea was that EMS & Police could have a higher class of service, call is more likely to go through on a congested network
In reality, most large metropolitan areas now have their own, private, cellular and/or radio networks (more foolproof then sharing)
Long story short: MSL is just a lock to prevent you from doing stupid things with your phone at this point
You have to know it as a reseller, cause you need some of those functions i.e. reprogram / reset / reprovision
While the exact steps to provision cell phones vary from brand to brand and model to model, in general these 4 things must happen
When you “activate” a cell phone in the GUI, that’s only half the story. This causes Sprint to send an “OTA” (Over-The-Air) provisioning message to the phone, assuming the phone is on the network. OTA messages are sent when a phone is activated AND when a phone’s SOC codes (features) are changed
But sometimes the phone doesn’t get the message
This requires you to run “Update Profile” or “Activate Phone” on the phone
Sometimes, even after OTA, the phone has internal settings which make it attach to the wrong carrier or roaming list.
“Update PRL” sometimes fixes this
If none of the above work, you’re going to need your trusty MSL code because you need to reset the carrier settings in the phone, or the phone completely (everything).
The codes are fairly standardized across manufacturers/lines, but vary slightly
You can almost always google them
Codes are generally *#*#CODE#*#* or ##CODE#
Entered into your dialer
iPhones are different (no codes)
Focus on a select number of devices, makes instructions and debugging more manageable
Practice, practice, practice! Try provisioning & deprovisioning a few times. Note that we get charged an activation fee each time. Don’t try too much.
The big key: Make sure the phone number you were given in the GUI matches the phone number in the “About Phone” section of the phone’s setup. IF THEY DO NOT MATCH, YOUR PHONE IS *NOT* PROVISIONED.
While the exact steps to provision cell phones vary from brand to brand and model to model, in general these 4 things must happen