Number Inventory#
Important
From release 21.4-PB4 onwards, the number format in the VOSS Automate Internal Number Inventory (INI)
is with prefix: \+
, including a leading slash \
when the INI is in E164 format.
Verify that entries in the Internal Number column of the Number Inventory - also Webex Calling numbers - follow this format.
Overview#
Number inventory allows you to view and manage the numbers for use by users, devices, and services for the given hierarchy level. The inventory includes a combination of data that is automatically managed by the system (like usage) and other fields that are configurable and available to store any additional useful information you choose about the numbers (examples include ranges, billing IDs, circuit IDs) to complete your inventory view.
The inventory supports a range of capabilities outside the basic loading and tracking of inventory status. These include:
Number Reservation - mark numbers reserved and include a note about why to hold numbers for specific purposes (e.g VIPs, specific services, etc).
Number Cooling - this provides the ability to automatically quarantine numbers for a period of time when unassigned from a user/device/service to prevent re-use for a period of time.
Number Audit - this check the inventory against the currently configured devices and updates the inventory where needed to keep the inventory in sync for changes made outside the system.
Number Inventory Alerting - configure alerts to be sent if a threshold is met (e.g less than 10% of numbers are available) to allow for proactive management of the inventory. See: Number Inventory Alerting.
More details on these features are provided in the sections below.
Note
Typically numbers are pushed to the UC applications when they are allocated/assigned to users/devices/services. While some available numbers may be in the UC apps for various reasons, the platform is not trying to maintain the available numbers in the underlying UC applications as it is only important when assigning the numbers to be used.
Hierarchy Considerations#
The numbers in the inventory should be assigned to the appropriate hierarchy in Automate based on where you need the numbers to be used. The number inventory can exist at the same or higher hierarchy level to the users, services, and devices that will be assigned the numbers. So the hierarchy that the numbers are assigned to in the inventory will determine where they are visible for various MACD tasks, such as user on-boarding.
Here are some points to consider and potentially where to load the inventory numbers for different scenarios:
Site level numbers - Are the numbers dedicated to a single site, for instance due to local trunks, area codes, or emergency routing? If so, then numbers should be at that site in Automate so that they can only be allocated to users/services at that site.
Intermediate Nodes - Is a number range shared across a few separate sites in a common region or city, or within a geography (such as a country)? In this case, an intermediate node could make sense to group the sites and the inventory can then sit at that intermediate node. This allows the numbers to be shared across all the sites under that intermediate node.
No specific allocation required within an organization – then numbers can be at a common hierarchy node (such as a customer) and shared by all the sites. This could be the case if the customer or enterprise is within a single region with central breakout.
If you are using dial plan schemas, then the rules for the dial plan may determine where numbers can reside. For instance, if it is a site-based dial plan (with site codes), then all numbers in the inventory will need to reside at the site level.
Workflows and features in the system generally will not move inventory numbers to the same hierarchy as the service they are assigned to. This is due to the fact that the inventory does not need to be at the same level, it can reside higher up the hierarchy. For instance, if the inventory number is at customer level and the user it is assigned to is at a site, the inventory number would not be automatically moved. An administrator will need to move the number to that site for instance, but only if they want it to reside at the same hierarchy.
Users, devices, and services that will consume numbers are typically at the site level in the system, so numbers they need should be at the same level (site) or above the site they reside in (Intermediate, Customer). The approaches can also be mixed as needed if some numbers are site specific while others are shared pools. When adding the number(s) into the inventory, choose which hierarchy level to add the numbers to and this will determine their visibility in the system. This should be considered when loading. It is important to consider how the inventory should be allocated when designing a hierarchy setup and ultimately how to build out the inventory.
Vendor Specific Guidance and Notes#
Some behaviors and guidance are specific to UC vendors and how their numbers work. We shall cover that in this section.
Cisco UCM/Dedicated Instance#
There are a few considerations specific to the number inventory when used in a Cisco UCM/Webex Dedicated instance environment.
Vendor and Internal Number Type fields in the inventory:
Vendor – this field will be blank or
Cisco
, depending on how the numbers are loadedInternal Number Type – this field is not used in UCM or Dedicated instance deployments
Partition and Cluster#
The number inventory is not partition or cluster aware. If the same numbers are used multiple times but in different partitions, then these all map to the same number. This should be taken into account when thinking about the hierarchy level at which the number inventory exists.
Also, not being cluster aware, if the same number exists on different clusters, this again will map back to the same inventory value unless numbers are assigned to the site level.
Cisco-Microsoft Hybrid Number Inventory#
If utilizing the Automate Cisco-Microsoft Hybrid feature for integrated services, then the following notes apply.
A Cisco-Microsoft hybrid setup is an integration of Cisco and Microsoft capability where we route Microsoft calls via Cisco Unified CM.
In a hybrid setup, the Internal Number Inventory (INI) can be set up in 2 ways:
E164 number based, for example:
an INI entry 3334567 is mapped to an external number of +15553334567.
The number 3334567 is set up in Cisco (along with routing for the mapped external number).
The number +15553334567 is set up in Microsoft as the line.
The numbers 3334567 and +15553334567 should be seen as the same number from an INI tracking perspective.
Internal number based (site code+extension or just extension)
an E164 number is generated by adding a prefix (+88800) to the internal number for setup in Microsoft.
Note
The named macro called MultiVendorLine-InternalExt-E164Prefix is used to store the prefix - currently set to +88800.
For example, 3334567 is set up as an internal number for the user and no external number is mapped. The line is selected in the Hybrid setup. Then the prefix is added, so the number +1888003334567 is the number in MS Teams for that user.
Important
The numbers 3334567 and +888003334567 should be seen as the same number from an INI tracking perspective. The mapping is also reflected in the Audit Number Inventory. In this case, an update of the inventory takes place so that these are not counted as two separate numbers.
The table below sums up the Number Inventory data for these cases.
Note that Extra2 and Extra4 hold the service type and E164 number (includes generated) respectively.
Scenario |
Status |
Vendor |
E164 Number [7] |
Usage |
Extra2 |
Extra4 |
---|---|---|---|---|---|---|
Cisco-MS-Hybrid |
Used |
Cisco, Microsoft |
Exists |
Device, User |
Cisco-MS-Hybrid |
<blank> |
Cisco-MS-Hybrid [8] |
Used |
Cisco, Microsoft |
<blank> |
Device, User |
Cisco-MS-Hybrid |
+88800<INI> |
Cisco-No-Services |
Avail |
<blank> |
<blank> |
<blank> |
<blank> |
<blank> |
Cisco-Only |
Used |
<blank> |
Exists |
Device |
<blank> |
<blank> |
MS-Only-Entvoice |
Used |
Microsoft |
Exists |
User |
MS-Only-Entvoice |
<blank> |
MS-Only-Entvoice |
Used |
Microsoft |
<blank> |
User |
MS-Only-Entvoice |
+88800<INI> |
MS-Only-Hybrid |
Used |
Microsoft |
Exists |
User |
MS-Only-Hybrid |
<blank> |
MS-Only-Hybrid |
Used |
Microsoft |
<blank> |
User |
MS-Only-Hybrid |
+88800<INI> |
MS-Only-No-Entvoice |
Avail |
<blank> |
<blank> |
<blank> |
<blank> |
<blank> |
No-Hybrid-Service |
Avail |
<blank> |
<blank> |
<blank> |
<blank> |
<blank> |
Footnote
Details and Usage
Selecting a specific number from the Number Inventory list view, opens the details view for that number.
The Number Details tab shows read only details for the number, for example Internal Number, Status, Usage, as well as editable fields such as Tag, Description, Reservation Notes, etc. In the case of Cisco-Microsoft hybrid entries, the vendor added would be “Cisco, Microsoft”.
The Usage tab provides links to all instances where the number is used.
In the case of Cisco-Microsoft hybrid usage, the last vendor added would be appended, as seen above in the “Device, User” instances.
In the case of Webex App Calling usage, the link directs to the Webex App user.
See Webex App in the Core Feature Guide.
Note
If the same number is shared by multiple devices/services of the same type, using different partitions, only the first 10 instances will be displayed.
Related Topics
Webex AppMicrosoft Teams Deployments#
The use of the inventory and how it is maintained or managed can differ depending on the types of numbers in your environment. The following is some guidance and best practices to consider for the different number types. If you have a mix of number types, then consider the notes for different number types.
Vendor and Internal Number Type fields in the inventory:
Vendor – this field will typically be
Microsoft
. If they are not loaded with this value initially, the system will update the numbers as they are allocated to vendorMicrosoft
.Internal Number Type – this field is used to reflect the type of number in the Microsoft environment:
Direct Routing
,Operator Connect
, orCalling Plan
. This can be selected when loading the numbers and it is best to select the relevant values to ensure the best experience. In many circumstances, the system will also update the fields as relevant during audit or allocation of numbers if they are incorrect or left blank.
General Notes
The hierarchy consideration is a key section in this chapter to read in planning for numbers in the inventory. Often the numbers are meant to be used in specific sites or regions only due to agreements or emergency services requirements. This is the business context which the Automate number inventory can provide when the numbers are loaded into the inventory at the appropriate hierarchy level. In fact, we often find after adding Automate to an existing environment, that we identify various numbers that have been incorrectly assigned previously and enable them to be corrected. Any numbers that were added to the Automate inventory through the sync/audit process will likely require moving to the correct hierarchy level. More details on this in related to the specific numbers types are below.
This section covers specific logic related to creating and managing the inventory in relation to specific number types in the Microsoft environment. In Automate you can mix and match the types for different needs, so one or more of the sections may apply.
Direct Routing
In this type of setup, you are getting ranges of numbers outside the Microsoft framework from one or more providers. For these number types, the Microsoft tenant only knows about the numbers that you have assigned to users/services. The tenant has no knowledge of the ranges or available/unused numbers.
So the VOSS number inventory capability can only auto-populate the inventory from a sync/audit with those used numbers discovered from the tenant. In this scenario, you will need to load the available numbers into the VOSS Automate number inventory to be managed and available for administrators to assign going forward.
Here are a few guidelines in doing this setup:
You can preload the ranges of numbers you own ahead of any overbuild process that will sync/audit the inventory. In this case, the system will update the inventory as part of the sync/audit process to mark assigned numbers used. It will still add any used numbers it discovered form the tenant if there were any missed in the preload process.
You can load the full ranges after the overbuild process – this will fill in the inventory around the used numbers that were discovered and auto created in the inventory from the tenant. You may need to move the created numbers to a different hierarchy level depending on your needs (intermediate node, moving to site/customer). When you load the ranges after the sync/overbuild, the system will fill in the gaps by adding numbers as available that are missing in the inventory while leaving the ones added via the sync/audit process alone.
Any future ranges you add to the system beyond the initial overbuild will need to be added to VOSS Automate to be available for administrators to use.
Operator Connect and Calling Plan numbers
In this type of setup, you are getting ranges facilitated by the Microsoft Teams framework. For these types of numbers, the Microsoft tenant is fully aware of the ranges of numbers available as they are populated into the system by Microsoft (Calling Plans) or the selected Provider (Operator Connect). So it is important to note the numbers can only actually be used (e.g assigned to a user) when the numbers are available in the Microsoft Tenant post ordering – from Microsoft (Calling Plan) or the selected Provider (Operator Connect). If you add them to the Automate inventory and try to allocate them before they are present in the tenant, you will get an error message about the numbers not existing in the tenant.
At this point in time, the data we receive from the Microsoft tenant about the numbers does not provide any information regarding how the numbers are to be used - e.g site specific, etc.
The hierarchy recommendations earlier in this chapter should be referenced and numbers should be loaded according to how the numbers are ordered and registered with Microsoft or the Provider (e.g site specific, global, etc).
The best practice recommendation to streamline the inventory management of these number types is:
number ranges are loaded into the Automate Inventory at the appropriate hierarchy before they are synced in from the Microsoft tenant
This ensures that the numbers are at the correct hierarchy level and context in the system for use in the system - that users and services can only be assigned appropriate numbers.
When the sync/audit process is run, the system will update those inventory entries with status, usage, type, etc and will not move them.
The Automate system can generate inventory entries for numbers of these types; however there are some considerations and for this reason it is recommended above to preload the numbers for improved accuracy and ease of use. The following are considerations of the generated inventory and potential actions if the sync/audit was run before you loaded your inventory:
It will generate inventory entries for numbers assigned to users/services in the tenant only. We do this for assigned numbers to ensure they are at least captured and since they are assigned there is not a risk of being assigned incorrectly.
Numbers that are not assigned will not be generated in the inventory. This is to avoid available numbers being created at the wrong place in the hierarchy and inadvertently being assigned to users in the wrong sites, etc.
It will create the generated inventory entries at the same hierarchy level as the tenant details (typically customer). Typically, they are required at a different level in the hierarchy and they will need to be moved after this creation.
The ranges will need to be loaded to create the available numbers in the range within the inventory so they are available to be assigned to users/services. You can just load the whole range and the system will fill in the blanks, creating inventory entries for missing numbers while leaving existing numbers (created by the sync) alone.
You can look at the number data provided by Microsoft for these number types by reviewing the device/msteamsonline/Number
device model.
Note - these model instances will always be at the same level as the tenant - they do not get moved around and are completely independent of the
inventory entries for the numbers.
Webex Calling#
This section covers the specifics related to number inventory handling in a Webex Calling environment. Some key considerations in a Webex Calling environment include:
In a Webex Calling environment, resources all reside in Locations including numbers regardless of the source (CCP, non-integrated CCP, Cisco, etc).
PSTN Numbers need to be loaded into Webex as available numbers before they can be used/assigned to users. This process can vary depending on how you are sourcing the numbers - CCP, Cisco Cloud, etc). Due to this, the numbers are typically already in Webex - to pull into the Automate system and inventory.
From the Number Range Management menu at a site:
For numbers and ranges of numbers, Starting Extension and Ending Extension number values must be prefixed with
+
and are then created and maintained in VOSS Automate with the prefix format\+
. When adding numbers, this can also be seen in the Transaction detail.Vendor – this field will typically be
Webex Calling
. If they are not loaded with this value initially, the system will update the numbers as they are allocated to vendorWebex Calling
.Note
Numbers can be pushed to the Webex Control Hub when adding number ranges at site level with the Vendor set as
Webex Calling
.If the Operation is Add:
When adding numbers and selecting the Vendor as
Webex Calling
, a Webex Control Hub panel displays the options if:The Webex App is configured at the customer hierarchy.
See Webex App.The available macro
WebexCallingNumberMgmtEnabledSite
has not been cloned to the site and set to value False. (If required, this task can be carried out if Webex Calling number management should be disabled for a site.)The options are:
Push Numbers to Webex: this allows for numbers to be added to the site in VOSS Automate and to the Webex Control Hub. (Refer to the
Create Spark Number
action in the Transaction list.)Push as Active: dependent on the option Push Numbers to Webex set to enabled.
If enabled and Push Numbers to Webex is enabled, numbers are added in VOSS Automate INI added as Status of Available, and on Webex Control Hub created as Active.
If disabled and Push Numbers to Webex is enabled, numbers are added in both VOSS Automate INI and the Webex Control Hub as Inactive.
Number extensions are added to the INI when a user is assigned a number and an extension is then added.
If the Operation is Modify:
This operation can be used on selected numbers that are in Status of Inactive - to set them as:
Active in the Webex Control Hub. Refer to the
Activate Spark Number
action in the Transaction list.Status is Available in the VOSS Automate INI.
If the Operation is Delete:
Selected numbers are deleted from VOSS Automate INI and the Webex Control Hub. Refer to the
Delete Spark Number
action in the Transaction list.Internal Number Type – this field is used to reflect the type of number in the Webex environment. If you are adding or activating numbers via Number Range Management then the type is
Phone Number
. Any numbers marked asExtension
have been synced in from the Webex Control Hub.
Since the numbers are known in the Webex environment, as well as the Locations for use, the VOSS Automate system will generate the inventory based on the data from Webex. This includes:
The sync process handles the creation of inventory entries in the Automate platform as numbers are pulled in. You should ensure the sync process handles Locations in Webex prior handling numbers (out of the box syncs ensure this).
During a site handling Webex Locations, if a corresponding Automate site does not exist, Automate will create a site.
Webex Location Node Mapping for more details on Site to Location mapping for Webex for more details on how they are aligned.When Webex Numbers are synced into VOSS Automate, the prefix format
\+
is used. Any inventory entries that do not exist are created and they are created in the Automate site corresponding to the Webex Location. This includes PSTN numbers and also internal only extensions.The internal number in the VOSS inventory uses the PSTN number (if it has one); otherwise it will use the extension number if that is the only data available.
For PSTN numbers, the extension (if there is one) is also captured in the inventory record via the Extension field.
Removal of numbers
Typically, inventory audit functionality will not be required if good sync practices are followed, as the inventory changes are handled through the sync process.
Reservation#
Numbers can be reserved for future use. For example, for users who will soon be joining the company. When a number is reserved, it is unavailable and cannot be allocated to a subscriber, phone, device, etc.
Number Cooling#
Numbers can be placed into a cooling period, either manually or automatically. When automated number cooling is enabled, numbers are placed into cooling for a predefined period when the subscriber or phone associated with the number is deleted.
Note
Automated number cooling is enabled and disabled in the Global Settings. The default is disabled.
While the number is in its cooling period, it is unavailable and cannot be allocated, for example, to a subscriber, phone, or device.
A number is released from cooling and is available for use when:
The cooling period reaches its end date
It is manually released from the cooling period
Number Inventory entries - End-user Provisioning Tasks#
The number inventory is integrated into various features in the system to:
Display options of numbers for selecting/assignment across the system. The numbers presented for selection follow rules specific to the feature in many cases, for instance can lines be shared or not, etc.
Manage the state of the numbers in the inventory via the workflows - marking the number used, available, and updating other managed fields depending on the MACD being performed. This includes any specific logic setup for the unmanaged fields - See the section on flexibility for options to control the update that occurs.
Related Topics