Reference13r1:Concept Provisioning

From innovaphone-wiki

Jump to: navigation, search
There are other versions of this article: Reference10 | Reference13r1 (this version)

Contents

Overview

In 13r1 provisioning of phones is done with Devices. From a user point of view a provisioning code is entered on a new phone and then the rest happens automatically. There are different kind of provisioning. A user who adds a new phone, an adminitrator who performs rollout for many phones and maybe more. The different types of provisioning are defined one after the other.

User adding a new phone

From a user point of view this should work as follows:

  • The user unpacks the phone and connects it to the network (we assume 13r1 is on the phone already, but maybe an old build)
  • On the display a form requesting a provisioning code is displayed
  • The user opens myApps/Profile and selects to add a new phone
  • Drop down to select a category is provided
  • When the user has sent the request a provisioning code is displayed
  • The user adds the provisioning code on the phone
  • The phone is updated to the current version of the installation, configured, a device is added to the user in the PBX

Implementation

Setup
  • The Devices PBX app object must have a websocket connection flag.
  • The UsersAdmin PBX app object must have a websocket connection flag, the Services flag and the "devices-api" App.
User connects a 13r1 phone to the network
  • The standard update url config.innovaphone.com is requested.
  • The provision code form is displayed.
User selects to add a new phone on myApps/Profile
  • The Users instance asks Devices for a list of categories configured for provisioning
  • The Users Instance requests a provisioning code from Devices with selected category
  • Devices requests a provisioning code from config.innovaphone.com and supplies the devices URL
  • config.innovaphone.com generates a random provisioning code of 12 digists without any structure
  • config.innovaphone.com stores the provisioning code and URL in the database
  • Devices stores the provisioning code together with domain and category in the database
  • Users stores the provisioning code and with the requesting user in the database
The user enters the provisioning code
  • The code is sent to config.innovaphone.com
  • config.innovaphone.com configures the Devices URL of the customer
  • The phone connects to Devices and sends the provisioning code
  • Devices assigns the phone to a domain and category
  • Devices updates the phone
  • Devices configures the phone
  • Devices sends the mac address and provisioning code to a Users instance of matching domain. If no Users with matching domain is connected, the mac address is stored in the database so that the info can be sent, when a matching Users connects
  • Users configures a device for the user

Update Software functionality in Devices

A list of jobs is stored. This list contains domain and category of the devices to be updated. With a job the json which was current on the time of creation is stored. When a device registers it is updated according to the latest matching job.

Update Config functionality in Devices

A list of jobs is stored. This list contains doman, category and a type of config with related parameters. When a device registers it is updated according to the latest jobs of all types.

Rollout of many phones on UsersAdmin

On UsersAdmin under "Register phones" phones can be provisioned for many users at once.

To provision the phones:

  • Select new phone registrations and follow the steps.
  • On the first step the connection with Devices is stablished.
  • On the second step, the provisioning category (the categories are configured on Devices for a given domain) and the phone app are selected. A dropdown menu will be displayed if there is more than one option.
  • On the third step the users must be selected
  • On the fourth step the provisioning codes list is displayed. This list can also be downloaded as a CSV file. Every user must enter his code on his phone. After that, the state should change from "Pending" to "Registered".


Offline Provisioning

There is also the possibility for offline provisioning: Reference13r1:Concept_Offline_Provisioning

Related Articles

Personal tools