Toll-free telecommunications and data management platform

Information

  • Patent Grant
  • 11563860
  • Patent Number
    11,563,860
  • Date Filed
    Friday, October 16, 2020
    4 years ago
  • Date Issued
    Tuesday, January 24, 2023
    a year ago
Abstract
A method for identifying a fraudulent phone number is provided. The method includes receiving a user report dataset indicating fraudulent activity corresponding to a phone number, and responsive to receiving the user report dataset, identifying a record in a database corresponding to the phone number. The method further includes tagging the record to identify the phone number as being associated with fraudulent activity.
Description
FIELD OF INVENTION

This disclosure is related to the operation, control and management of toll-free telecommunication lines.


BACKGROUND

Businesses increasingly use toll-free telephone numbers for providing customers with a convenient and cost-free means of communicating with them and their various departments, such as customer service and technical support representatives. With the proliferation of toll-free numbers and advanced business analytics for receiving, routing, and logging, the use of such numbers has come increased complexity in managing toll-free numbers.


SUMMARY

A method according to one disclosed non-limiting embodiment of the present disclosure may include a web-based interface adapted to communicate with a toll-free telecommunications management platform and a toll-free network operator platform; at least one processor in communication with the toll-free telecommunications management platform, wherein the web-based interface is adapted to transmit a command to the at least one processor; a database associated with the toll-free telecommunications management platform, wherein the database contains call routing data that is associated with the toll-free network operator platform; and


an activation mechanism within the web-based interface, the activation mechanism programmed to generate the command, wherein the command is to at least update the database by appending IP address data to the call routing data.


In embodiments, an activate request may be received from a user, through a web-based interface, wherein the request includes at least a customer record template reference and an indication of when to activate a toll-free telecommunications number associated with the request. An add request may be received from the user, through the web-based interface, wherein the add request includes at least one IP address datum associated with the toll-free telecommunications number. A customer record template may be updated and a call routing table with the at least one IP address based at least in part on the received add request, wherein the call routing table is associated with the toll-free telecommunications number, and the update stored in a database that is associated with a toll-free telecommunications management. A call routing table may be configured to include multiple carriers. A call routing table may be configured to have at least one rule pertaining to the proximity of a caller to an entity associated with the toll-free number. A rule may be shared with a service provider and/or integrated within a call routing template. In embodiments, the web-based interface may be designed to operate on a mobile device, including but not limited to a smart phone.


In embodiments, a toll-free call route trend may be identified among a plurality of toll-free calls taking place within a toll-free network operator platform; wherein the call route trend is identified at least in part by call routings among toll-free numbers sharing an attribute. The toll-free network operator platform may be notified of the trend, an entity identified using at least one toll-free number with the shared attribute from among the entities using the toll-free network operator platform. An add request may be received through a web-based interface, wherein the add request includes at least one IP address datum associated with the entity and at least one toll-free number sharing the attribute, and a call route template update created for use in directing calls to the at least one toll-free number sharing the attribute, wherein the call routing template update includes the at least one IP address datum. In embodiments, an entity may be a carrier, a call center, a service control point, or some other type of entity. An attribute may be an originating state, a geographic region, an area code, a telecommunications carrier, or some other type of attribute. In embodiments, calls may be directed based at least in part on a call routing preference associated with an entity. A call routing preference may be stored in a call routing template. Call routing preference may vary based at least in part on the attribute.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving a one-click activate request from a user, wherein the request includes at least a customer record template reference and an indication of when to active a toll-free number associated with the request; searching a responsible organization record to determine the presence of a defined customer template record relating to the user request, wherein the responsible organization is associated with toll-free telecommunications; retrieving at least one customer template record, wherein the customer template record is a defined customer template record for the responsible organization; and activating the user request, wherein the activation includes at least one of activating or reserving the toll-free number.


A further embodiment of the present disclosure may include that the one-click activate request is received from a widget that is operable on a client device.


A further embodiment of the present disclosure may include that the at least one customer template record includes call path data derived at least in part from a predictive analytics engine.


A further embodiment of the present disclosure may include that the activation of the user request creates a toll-free service provider identifier (TSPID) that is associated with the user.


A method according to one disclosed non-limiting embodiment of the present disclosure can include creating at least two toll-free call routing tables based on a congestion threshold criterion, wherein the first of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are below the congestion threshold, and the second of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are equal to or above the congestion threshold; providing the call routing tables to at least one service control point that is associated with the toll-free telecommunications carrier network; monitoring toll-free call volumes and durations occurring within a toll-free telecommunications carrier network; receiving at least one of a call count datum or call duration datum from the toll-free telecommunications carrier network wherein the call count datum or call duration datum indicates a change in call volumes over the toll-free telecommunications carrier network from below the congestion threshold to above the congestion threshold; and instructing the service control point to switch from using the first call routing table to the second call routing table.


A further embodiment of the present disclosure may include that the switch from the first call routing table to the second call routing table is based at least in part on the receipt of an abuse report associated with toll-free number within the toll-free telecommunications carrier network.


A further embodiment of the present disclosure may include that the call volume is expressed as a percentage of the total call volume occurring over the network.


A further embodiment of the present disclosure may include that the call volume is specific to an entity.


A further embodiment of the present disclosure may include that the switch to the second call routing table is automated and occurs in real time.


A further embodiment of the present disclosure may include that decision nodes of the first and second call routing tables are loaded into the service control point.


A further embodiment of the present disclosure may include that the call volumes are used to create a call path score for a possible call route path that is available on the network.


A further embodiment of the present disclosure may include that the call path score is based at least in part on a call travel distance estimate.


A further embodiment of the present disclosure may include that the call path score is based at least in part on a call travel speed estimate.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving data relating to toll-free number call activity from a toll-free telecommunications system, wherein the data includes at least one of call duration or call count data; receiving third party data relating to macroeconomic activity; modeling at least one of call duration or call count data with the third party data to derive a macroeconomic trend; receiving a request from a client device to present the macroeconomic trend; and presenting a representation of the macroeconomic trend to a user interface on the client device.


A further embodiment of the present disclosure may include that the presentation of the macroeconomic trend is presented to the user interface in conjunction with a sponsored content.


A further embodiment of the present disclosure may include that the third party data is stock market data.


A further embodiment of the present disclosure may include that the third party data is Bloomberg™ data.


A further embodiment of the present disclosure may include that the third party data is government data.


A further embodiment of the present disclosure may include that the third party data is social media data.


A further embodiment of the present disclosure may include that there is a temporal delay between the time of the request and the time of the presentation of long enough duration that the client device enters a sleep mode as regards the interaction, and the client device is activated out of sleep mode upon the presentation.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving a one-click activate request from a user, wherein the request includes at least a customer record template reference and an indication of when to active a toll-free number associated with the request; searching a responsible organization record to determine the presence of a defined customer template record relating to the user request, wherein the responsible organization is associated with toll-free telecommunications; retrieving at least one customer template record, wherein the customer template record is a defined customer template record for the responsible organization; and activating the user request, wherein the activation includes at least one of activating or reserving the toll-free number.


A user interface according to one disclosed non-limiting embodiment of the present disclosure can include a webpage; and a widget operable to reserve a toll free number embedded within the webpage.


A further embodiment of the present disclosure may include that the widget provides a login element.


A further embodiment of the present disclosure may include that the widget provides a search feature for the toll free number.


A further embodiment of the present disclosure may include that the widget provides a reservation feature for the toll free number.


A further embodiment of the present disclosure may include that the widget provides an activation feature for the toll free number.


A further embodiment of the present disclosure may include that the widget provides historical information related to actions previously performed by a user.


A further embodiment of the present disclosure may include that the widget provides one-click functionality.


A method to secure user interface according to one disclosed non-limiting embodiment of the present disclosure can include lazy loading a widget operable to reserve a toll free number embedded within a webpage.


A further embodiment of the present disclosure may include providing a login element upon loading of the widget.


A further embodiment of the present disclosure may include providing a search feature for the toll free number.


A further embodiment of the present disclosure may include providing a reservation feature for the toll free number.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving data relating to at least one of a dip rate or dip volume that is associated with a toll-free number; receiving social media data relating to usage of the toll-free number; analyzing the combined data and social media data to create a valuation metadata tag that is associated with the toll-free number, wherein the valuation metadata is a quantitative summary of the demand associated with the toll-free number; and distributing a communication to an entity regarding the current valuation of the toll-free number.


A further embodiment of the present disclosure may include that the data is data sniffer data.


A further embodiment of the present disclosure may include that the tag includes data related to a category of toll-free number.


A further embodiment of the present disclosure may include that the category relates to an industry segment.


A further embodiment of the present disclosure may include that the tag includes data relating to popularity as derived at least in part from the search history associated with the toll-free number.


A further embodiment of the present disclosure may include that the tag includes location information associated with the toll-free number.


A further embodiment of the present disclosure may include that the tag includes financial information associated with the toll-free number.


A method according to one disclosed non-limiting embodiment of the present disclosure can include analyzing data relating to a toll-free number and social media data to create a valuation metadata tag that is associated with the toll-free number, wherein the valuation metadata is a quantitative summary of the inferred economic activity associated with the toll-free number; inferring a rating of a second toll-free number based at least in part on the valuation metadata, wherein the toll-free number and the second toll-free number share an attribute; and storing the inferred rating of the second toll-free number.


A further embodiment of the present disclosure may include that the data is data sniffer data.


A further embodiment of the present disclosure may include that the inferred rating is presented to a user in a user interface upon the user submitting a toll-free number query.


A further embodiment of the present disclosure may include that the inferred rating generates an alert to a user if it exceeds a given rating value.


A further embodiment of the present disclosure may include that the alert is sent to a user sharing the attribute.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving data relating to at least one of a dip rate or dip volume that is associated with a toll-free number; receiving social media data relating to usage of the toll-free number; analyzing the combined data and social media data to create a valuation metadata tag that is associated with the toll-free number, wherein the valuation metadata is a quantitative summary of the demand associated with the toll-free number; and initiating a toll-free number reservation based on the current valuation of the toll-free number.


A further embodiment of the present disclosure may include that the data is data sniffer data.


A method according to one disclosed non-limiting embodiment of the present disclosure can include creating at least two toll-free call routing tables based on a congestion threshold criterion, wherein the first of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are below the congestion threshold, and the second of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are equal to or above the congestion threshold; providing the call routing tables to at least one service control point that is associated with the toll-free telecommunications carrier network; monitoring toll-free call volumes and durations occurring within a toll-free telecommunications carrier network; receiving at least one of a call count datum or call duration datum from the toll-free telecommunications carrier network wherein the call count datum or call duration datum indicates a change in call volumes over the toll-free telecommunications carrier network from below the congestion threshold to above the congestion threshold; and instructing the service control point to switch from using the first call routing table to the second call routing table.


A further embodiment of the present disclosure may include that the call volume is expressed as a percentage of the total call volume occurring over the network.


A further embodiment of the present disclosure may include that the call volume is an indication of a network failure to transmit calls.


A further embodiment of the present disclosure may include that the call volume is specific to an entity.


A further embodiment of the present disclosure may include that the entity is a carrier.


A further embodiment of the present disclosure may include that the entity is a call center.


A further embodiment of the present disclosure may include that the entity is a service control point.


A further embodiment of the present disclosure may include that the switch to the second call routing table is automated and occurs in real time.


A further embodiment of the present disclosure may include that decision nodes of the first and second call routing tables are loaded into the service control point.


A further embodiment of the present disclosure may include that the call volumes are used to create a call path score for a possible call route path that is available on the network.


A further embodiment of the present disclosure may include that the call path score is based at least in part on a call travel distance estimate.


A further embodiment of the present disclosure may include that the call path score is based at least in part on a call travel speed estimate.


A further embodiment of the present disclosure may include that the call path score is used in association with the congestion threshold criterion to determine the switch to the second call route table.


A method according to one disclosed non-limiting embodiment of the present disclosure can include associating a toll-free telecommunications network congestion threshold criterion with a first rule regarding the usage of a plurality of call routing tables, and a second rule regarding the usage of a plurality of telecommunications carriers, wherein the congestion threshold criterion indicates a level of toll-free call volumes occurring within the toll-free telecommunications network; and switching toll-free calls across the telecommunications carriers based at least on the congestion threshold criterion, wherein the switched calls are further routing according to at least one of the plurality of call routing tables.


A method according to one disclosed non-limiting embodiment of the present disclosure can include creating at least two toll-free call routing tables based on a congestion threshold criterion, wherein the first of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are below the congestion threshold, and the second of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are equal to or above the congestion threshold; providing the call routing tables to at least one service control point that is associated with the toll-free telecommunications carrier network; monitoring toll-free call volumes and durations occurring within a toll-free telecommunications carrier network; receiving at least one of a call count datum or call duration datum from the toll-free telecommunications carrier network wherein the call count datum or call duration datum indicates a change in call volumes over the toll-free telecommunications carrier network from below the congestion threshold to above the congestion threshold; creating a second congestion threshold criterion based on the data received from the toll-free telecommunications network; and creating a third call routing table based on the second congestion threshold criterion.


A further embodiment of the present disclosure may include that the toll-free call traffic occurring within a toll-free telecommunications network is switched based at least in part on one of the first or second congestion threshold criterion.


A method of identifying and storing an identifier associated with a toll-free-communication entity, according to one disclosed non-limiting embodiment of the present disclosure can include locating an identifier within the header portion of an SMS text message routed over a toll-free telecommunications line, the identifier located based at least in part through latent semantic indexing; comparing the located identifier with metadata stored on a server, the metadata associated with a plurality of entities; selecting an entity from among the plurality of entities based at least in part on the comparison; and storing a code associated with the entity within a translation table associated with a toll-free telecommunications management platform.


A further embodiment of the present disclosure may include that the code is an FCC code.


A further embodiment of the present disclosure may include that the entity is engaged in multimedia content distribution.


A further embodiment of the present disclosure may include that the entity is an ad agency.


A further embodiment of the present disclosure may include that the translation table pertains to routing voice data.


A further embodiment of the present disclosure may include that the translation table pertains to routing multimedia data.


A method of creating and storing an identifier associated with a toll-free-communication entity, according to one disclosed non-limiting embodiment of the present disclosure can include locating data within the header portion of an SMS text message routed over a toll-free telecommunications line, the data located based at least in part through latent semantic indexing; creating an entity identifier based at least on the data; storing a code associated with the entity identifier and an entity within a translation table associated with a toll-free telecommunications management platform; and associating the entity and entity identifier with a call routing table.


A further embodiment of the present disclosure may include that the call routing table is configured to include multiple carriers.


A further embodiment of the present disclosure may include that the call routing table is configured to have at least on rule pertaining to the time of day at which a call occurs.


A further embodiment of the present disclosure may include that the call routing table is configured to have at least one rule pertaining to the proximity of a caller to the entity.


A method of identifying and storing an identifier associated with a toll-free-communication entity, according to one disclosed non-limiting embodiment of the present disclosure can include identifying a toll-free call route trend among a plurality of toll-free calls taking place within a toll-free telecommunications network; wherein the call route trend is identified at least in part by call routings among toll-free numbers sharing an attribute; creating a call route template based at least in part on the trend; identifying an entity using at least one toll-free number with the shared attribute; prepopulating a call route tree for the entity based on the call route template.


A method according to one disclosed non-limiting embodiment of the present disclosure can include storing a taxonomy of abuse events that may occur regarding the usage of a toll-free number; storing a rule regarding an action to take upon receipt of a reported abuse event, wherein the rule specifies a routing rule defining how a call that is associated with the abuse event is to be routed over a toll-free telecommunications system; receiving a report of abuse of a toll-free number; identifying at least one abuse event within the stored taxonomy and routing rule that is related to content of the abuse report; and automatically routing a call that is the subject of the abuse report according to the routing rule.


A further embodiment of the present disclosure may include that the report of abuse derives from a call center.


A further embodiment of the present disclosure may include that the report of abuse derives from a telecommunications carrier.


A further embodiment of the present disclosure may include that the report of abuse derives from a business entity.


A further embodiment of the present disclosure may include that the routing rule is integrated within a call routing template.


A further embodiment of the present disclosure may include that the call routing template is shared with an entity other than that generating the report of abuse.


A further embodiment of the present disclosure may include that the routing of the call is manual instead of automatic.


A further embodiment of the present disclosure may include that the report of abuse includes data relating to a responsible organization.


A further embodiment of the present disclosure may include that the report of abuse includes data relating to a time of the abuse event.


A further embodiment of the present disclosure may include that the report of abuse includes data relating to an originating number.


A further embodiment of the present disclosure may include that the report of abuse includes data relating to a geographic location of an originating number.


A further embodiment of the present disclosure may include that the report of abuse includes data relating to a geographic location of a terminating number.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving a report of abuse of a toll-free number; identifying an absence of an abuse event definition within a stored taxonomy that is related to the type of abuse reported; storing a new definition of the abuse event within the taxonomy; and creating a routing rule defining how a call that is associated with the abuse event is to be routed over a toll-free telecommunications system.


A further embodiment of the present disclosure may include that the stored definition is further associated with third party industry data.


A method according to one disclosed non-limiting embodiment of the present disclosure can include storing a taxonomy of abuse events that may occur regarding the usage of a toll-free number; associating the abuse events in the taxonomy with a toll-free number rating action; receiving a report of abuse of a toll-free number; identifying at least one abuse event within the stored taxonomy and rating action that is related to content of the abuse report; automatically computing a rating for the toll-free number based on the rating action; and reporting the rating to an entity.


A further embodiment of the present disclosure may include that the rating is associated with a call routing rule.


A further embodiment of the present disclosure may include that the call routing rule is shared with a service provider.


A mobile device, according to one disclosed non-limiting embodiment of the present disclosure may include a unique toll-free ID (TFID) present in the mobile device, the TFID operable to facilitate toll-free communication between the mobile device and a manufacturer.


A further embodiment of the present disclosure may include that the TFID is hard flashed in the mobile device and present at the time of manufacture of the mobile device.


A further embodiment of the present disclosure may include that the TFID is operable to identify a customer.


A further embodiment of the present disclosure may include that the TFID is operable to identify a toll free provider that is providing the toll free communication.


A further embodiment of the present disclosure may include that the TFID is provided via a standard support app that is natively installed.


A further embodiment of the present disclosure may include that the TFID is agnostic of type of mobile device.


A further embodiment of the present disclosure may include that the TFID facilitates a consumer's ability to at least one of talk, message, view, and browse support related features associated with merchandise at a point of sale.


A further embodiment of the present disclosure may include that the TFID facilitates a registration process.


A further embodiment of the present disclosure may include that the TFID facilitates a warranty process.


A further embodiment of the present disclosure may include a TFID Mobile App resident on the mobile device, the TFID Mobile App operable with the TFID.


A further embodiment of the present disclosure may include that the TFID Mobile App facilitates reading of at least one of a QR code, Barcode, RFID, and a serial number via a camera of the mobile device.


A method of communication via a toll-free service according to one disclosed non-limiting embodiment of the present disclosure can include associating at least one mobile device to merchandise purchased from a manufacturer via a unique toll-free ID (TFID) present in the mobile device, the TFID operable to facilitate toll-free communication between the mobile device and the manufacturer.


A further embodiment of the present disclosure may include reading of at least one of a QR code, Barcode, RFID, and a serial number via a camera of the mobile device.


A further embodiment of the present disclosure may include associating at least one of the QR code, Barcode, RFID, and the serial number with the TFID via a TFID Mobile App.


A further embodiment of the present disclosure may include identifying a customer via the TFID.


A further embodiment of the present disclosure may include identifying a toll free provider that is providing the toll free service via the TFID.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving data relating to toll-free number call activity from a toll-free telecommunications system, wherein the data includes at least one of call duration or call count data; receiving third party data relating to macroeconomic activity; modeling at least one of call duration or call count data with the third party data to derive a macroeconomic trend; receiving a request from a client device to present the macroeconomic trend; and presenting a representation of the macroeconomic trend to a user interface on the client device.


A further embodiment of the present disclosure may include that the toll-free telecommunications system is a toll-free service provider.


A further embodiment of the present disclosure may include that the toll-free telecommunications system is a service control point.


A further embodiment of the present disclosure may include that the toll-free telecommunications system is an interexchange carrier.


A further embodiment of the present disclosure may include that the third party data is stock market data.


A further embodiment of the present disclosure may include that the third party data is Bloomberg™ data.


A further embodiment of the present disclosure may include that the third party data is government data.


A further embodiment of the present disclosure may include that the third party data is social media data.


A further embodiment of the present disclosure may include that the third party data is credit card processing data.


A further embodiment of the present disclosure may include that there is a temporal delay between the time of the request and the time of the presentation of long enough duration that the client device enters a sleep mode as regards the interaction, and the client device is activated out of sleep mode upon the presentation.


A method according to one disclosed non-limiting embodiment of the present disclosure can include receiving data relating to toll-free number call activity from a toll-free telecommunications system, wherein the data includes at least one of call duration or call count data; receiving metadata about the toll-free numbers that are the subject of the call activity, wherein the metadata includes data pertaining to at least one of business type or location; modeling at least one of call duration or call count data with the metadata to derive a macroeconomic trend; receiving a request from a client device to present the macroeconomic trend; and presenting a representation of the macroeconomic trend to a user interface on the client device.


A further embodiment of the present disclosure may include that the business type is a governmental office.


A further embodiment of the present disclosure may include that the governmental office is an unemployment office.


A method of distributing a macroeconomic data trend over a network to a remote client device, according to one disclosed non-limiting embodiment of the present disclosure can include providing a user interface dashboard to a user for installation on the remote client device; receiving third party social media data; modeling at least one of call duration or call count data with the third party social media data to derive a macroeconomic trend; receiving a request from the remote client device to present the macroeconomic data trend; generating an alert from the macroeconomic data trend that contains a stock name, stock price and a universal resource locator (URL), which specifies the location of the data source; transmitting the alert over a communication channel to the remote client device associated with the user based upon a destination address and transmission schedule that is associated with the remote client device, wherein the alert activates the user interface dashboard to cause the alert to display on the remote client device and to enable connection with the user interface dashboard when the remote client device is activated.


The foregoing features and elements may be combined in various combinations without exclusivity, unless expressly indicated otherwise. These features and elements as well as the operation thereof will become more apparent in light of the following description and the accompanying drawings. It should be appreciated, however, the following description and drawings are intended to be exemplary in nature and non-limiting.





BRIEF DESCRIPTION OF THE FIGURES

Various features will become apparent to those skilled in the art from the following detailed description of the disclosed non-limiting embodiments. The drawings that accompany the detailed description can be briefly described as follows:



FIG. 1 depicts a high level view of a toll-free management platform.



FIG. 2 depicts a simplified illustration of a toll-free management platform.



FIG. 3 depicts a schematic view for a decision tree for the Customer Record Template Builder (CRTB).



FIG. 4 depicts a schematic of an example conceptual Call Processing Record (CPR) Routing Tree.



FIG. 5 depicts a simplified flow diagram for constructing a call routing template based at least part on natural language inputs from a user.



FIG. 6 depicts a schematic view of a routing tree based disaster recovery and performance statistic structure.



FIG. 7 depicts a schematic view of a customer dashboard structure.



FIG. 8 depicts a schematic view of a whitelist management for toll-free spam control system.



FIG. 9 depicts a schematic view of a Toll Free Number (TFN) abuse reporting database for whitelist management for toll-free spam control system.



FIG. 10 depicts a toll-free smart services central registry deployed in conjunction with an existing toll-free voice registry.



FIG. 11 depicts a candidate service enablement workflow deployed via a toll-free smart services central registry.



FIG. 12 depicts a schematic view of a systems page on a hard-flashed phone with a toll-free number.



FIG. 13 depicts a schematic view of a hard-flashed phone to a toll-free number that may be used for a customer or tech support call related to the phone.



FIG. 14 depicts a schematic view of a Toll-Free Service Provider ID (TSPID).



FIG. 15 depicts a schematic view of real time machine based routing tree enhancements.



FIGS. 16-20 depict simplified schematic architecture views of toll-free Management Architectures.



FIG. 21 depicts a schematic view of a system for predictive analytics based on toll-free number utilization.



FIGS. 22-26 depict a schematic view of a system for search result population based on customer profile/behavior.



FIG. 27 depicts a simplified view of a toll-free Management Architecture.



FIG. 28 depicts a North American Numbering Plan Administration (NANPA) format.



FIG. 29 depicts a schematic of an SS7 architecture.



FIG. 30 depicts a schematic of toll-free call processing.



FIG. 31 depicts a schematic of toll-free business interactions.



FIG. 32 depicts a schematic of a toll-free IP Future State.



FIG. 33 depicts a schematic of a Number Administration future state.



FIG. 34 depicts a schematic view of a system for tagging toll-free numbers.



FIG. 35 depicts a schematic of a call routing future state.



FIGS. 36-39 are schematic views of a one-click activation system.



FIG. 40 is a schematic of a current system flow.



FIG. 41 depicts a Customer Record Status State Diagram.



FIG. 42 depicts a Customer Record Status State Diagram.



FIG. 43 depicts a schematic of a Carrier Identification Code (CIC) validations abbreviated summary flow from a service provider perspective.



FIG. 44 depicts a schematic of a Carrier Identification Code (CR) validations flow.



FIG. 45 depicts a schematic of Service Control Point (SCP) interactions.



FIG. 46 depicts a schematic of an API interface used by Customer Record Administration and Number Administration components of the disclosed embodiment.



FIG. 47 depicts a schematic representation of a disaster recovery scenario.



FIG. 48 is an example of hourly Responsible Organization Search activity.



FIG. 49 is an example of hourly Responsible Organization Reservation activity.



FIG. 50 is an example of hourly Responsible Organization Spare activity.



FIG. 51 depicts a graphical representation of daily customer records updates.



FIG. 52 presents a simplified call flow diagram showing the relationship between the TFMP, Responsible Organizations, and SCPs.



FIG. 53 depicts mobile network operators and local exchange carriers that have networks established with national communication carriers, such as inter exchange carriers.



FIG. 54 depicts the toll-free management platform in associated with simplified call flows.



FIG. 55 shows an example embodiment of the Smart Toll-Free Aggregation providing a small footprint wiretap that is collocated within an SCP network.



FIG. 56 depicts the toll-free aggregation cloud that may be comprised of toll-free intelligence, and a reporting functionality for trend analysis and prediction.



FIG. 57 shows an example embodiment in which a call may originate in the Carrier Network Local Exchange.



FIG. 58 depicts distribution of toll-free routing data from the TFMP to SCPs in Service Provider networks.



FIG. 59 depicts the high level architecture of the Data Distribution Hub.



FIG. 60 shows the high level architecture corresponding to alternate route provisioning.



FIG. 61 depicts a distribution channel that includes at least in part network operators and RaaS providers.



FIG. 62 depicts a certified distributor distribution channel.



FIG. 63 depicts a distribution channel using a certified routing database.



FIG. 64 depicts this distribution channel.



FIG. 65 depicts a sample Data Distribution Hub system architecture.



FIG. 66 depicts Data Distribution Hub system interfaces.



FIG. 67 depicts a sample Data Distribution Hub System virtual machine view.



FIG. 68 depicts a sample SCP application architecture.



FIG. 69 depicts a sample Data Distribution Hub software architecture.



FIG. 70 depicts a sample SCP and Data Distribution Hub interface interaction.



FIG. 71 depicts a Data Distribution Hub server.



FIG. 72 depicts a sample Data Distribution Hub process flow.





Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the methods and systems disclosed herein.


DETAILED DESCRIPTION

The present disclosure will now be described in detail by describing various illustrative, non-limiting embodiments thereof with reference to the accompanying drawings and exhibits. The disclosure may, however, be embodied in many different forms and should not be construed as being limited to the illustrative embodiments set forth herein. Rather, the embodiments are provided so that this disclosure will be thorough and will fully convey the concept of the disclosure to those skilled in the art. The claims should be consulted to ascertain the true scope of the disclosure.


With reference to FIG. 1, a Toll-Free Management Platform (TFMP) 100 includes methods and systems for number administration 102, customer administration 104, call management services 108, texting services 110 and text registry, and a smart services registry 112, as described herein. The TFMP may allow users to search for, receive recommendations for, and make reservations of toll-free numbers 114. A user interface may allow activating a toll-free number, for example through a one-click activation function 118, as described herein. Users may access the TFMP to create and access existing templates 120 of toll-free call routing templates, and utilize a routing tree engine 122 to create customized call routing trees for the toll-free numbers of interest to the user. A Toll-Free Service Provider ID “TSPID,” 124 may provide an aggregate identifier for Service Registrars, who provide services such as, but not limited to, SMS, MMS, video conferencing, and streaming content. Predictive analytic services 128 may be provided that allow a user 154 through a customizable user interface, or “dashboard,” 132 to access third party data sources 144 and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers 140, service control points 144, call centers 142, or other parties affiliated with a toll-free telecommunication network 138. Access to third party data sources 146 outside of the TFMP 100 may be, for example, through the Internet 150, a cloud computing environment 148, a virtual private network, or some other connectivity. A user 154 may access the reporting capabilities of the TFMP through a client device 152, such as a personal computer, mobile phone, tablet computer, or some other computing facility, and receive data, including multimedia to the user's client device. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration (FIG. 2).


With reference to FIG. 2, the main functional components of the TFMP 100, illustrating examples of the functionality provided by the TFMP and interfaces 204 to the TFMP 100. The NA function 102 may allow toll-free providers to search a pool of toll-free numbers using specified criteria and reserve numbers that will be used by toll-free subscribers, and perform CR administration 104. This functionality may include, but is not limited to, storing toll-free provider and telecommunications data 210, reporting processes 212, billing, and service control point (SCP), and management functionality 220 for the coordination with SCPs 222.


Responsible organizations, also referred to herein as “RespOrgs,” 202, may utilize the TFMP 100. Reporting from the TFMP 100 may be back to RespOrgs or to other systems and platforms 124 that are external to the TFMP 100. The TFMP enables searching for any random number or to search for a plurality of numbers that are consecutive and/or include an indicated combination of digits. Since certain toll-free number codes (e.g. 800) and combinations of digits (e.g. repeating digits, digits whose corresponding telephone keypad letter values spell a word or phrase) may be considered most desirable, the NA function 102 includes capabilities for searches and reservations to be handled so that a toll-free provider does not gain an advantage to reserve a given toll-free number.


The TFMP 100 also enables tracking the overall assignment of numbers for each toll-free provider to enforce regulations for toll-free number allocation specified by a tariff. NA may maintain a status for each number that reflects whether it has been reserved and whether a customer record has been created and sent to SCPs. It is possible to query the TFMP 100 for status and reservation information associated with a toll free number.


A view of the main functional components which is intended to illustrate the functionality provided by embodiments of the system and is not intended to reflect design or implementation of the current system or a potential replacement system. In addition to the functional components embodiments may alternatively or additionally provide Operations, Administration, Maintenance, and Provisioning (OAM&P) capabilities to configure, maintain, monitor and audit the system.


The NA function 102 facilitates toll-free service providers to search the pool of toll-free numbers using specified criteria and reserve numbers that can be used by toll-free subscribers. It is possible to search for any random number or to search for a number or numbers that may be consecutive and/or include an indicated combination of digits. Numbers may be reserved on a First In-First Out basis. It is also necessary to track the overall assignment of numbers for each toll-free service provider in order to enforce regulations for toll-free number allocation specified by a tariff.


The NA function 102 may maintain a status for each number that reflects whether it has been reserved and whether a customer record has been created and sent to SCPs. It is possible to query embodiments of the system for status and reservation information associated with a number.

    • A reserved toll-free number becomes active when routing information for the number, specified in a CR, is uploaded into SCPs. The CR administration 104 function facilitates toll-free service providers to create a CR and to specify when the information should be sent to SCPs. Records can be updated or deleted and the send time can be updated prior to sending. Once a CR has been sent, a record can be created to update or delete the routing specified by the previous record. The routing information specified in a customer record may typically includes:
      • a. An Area of Service (AOS) that specifies from where the toll-free number can receive calls;
      • b. The carrier that can route calls to the toll-free number;
      • c. The terminating number that can receive calls to the toll-free number; and
      • d. Optionally, a set of rules that specifies different routing based on criteria like time of day and area from where the call originated.


Carriers who have arrangements to carry calls for a toll-free service provider may approve the CR when routing for a toll-free number has been assigned to the carrier. The CR administration 104 maintains a list of carriers and preferences for whether approval is required when a toll-free service provider indicates the carrier in a CR. A notification is sent carrier when approval of a CR is required. Each CR has an associated status. CRs can be queried to view the status and information contained in the record, based on the permissions of the user.


The user interface function facilitates manual access for human users and mechanized access for systems to make use of the NA and CR functions. The mechanized interface provided by a current system is known as Mechanized Generic Interface (MGI). Capabilities may be required for external users to establish data connectivity with embodiments of the system and gain access to the available functions. In embodiments, the system can maintain logins and passwords to provide security to limit system access to only authorized users. Permission levels that restrict access to system functions and to proprietary data may be assigned for each authorized user. In addition, the user interface function may provide notifications and other information to external users using mechanisms such as email and File Transfer Protocol (FTP).


In embodiments, interfaces are maintained to send routing information from CRs to SCPs. The SCP Management Function manages interactions with SCPs, including maintaining data connectivity, sending CR information at the specified date and time and monitoring responses in order to update customer record status. The SCP interface is specified by TM-STS-00798, CMSDB/SMS Interface Specification Manual and Interface Message Manual.


The SCP Administration functions allow users to establish and modify SCP-related reference data in embodiments of the system and send messages to the SCP node and the Call Management Services Database (CMSDB) within the SCP to manage data tables at the SCP.


Network management functions for toll-free database service involves the management of various automatic capabilities intended to monitor and control toll-free query traffic and calling volumes at the Service Control Points, Service Switching Points, terminating switches and terminating subscriber lines. When various call volume thresholds may be exceeded, the SCPs trigger Automatic Code Gapping (ACG) controls at the originating SSPs. The Network Management functions allow network managers to configure and adjust the relevant control parameters. Data collection at the SCPs can be requested to provide network managers with relevant surveillance information useful to monitor traffic and analyze problems, such as the detection of SCP overloads and excessive calling or excessive ineffective attempts to dialed codes.


To track user actions, system events, and performance statistics and format the information into reports for toll-free service providers and system administrators, embodiments of the system may provide capabilities for users to request reports and for delivery of report results in various formats. Reports may be requested online by users as per the assigned permissions and delivered over the interface on which the report was requested. It is also possible for users to request reports offline. Offline reports may be compiled in embodiments by the system administrator using information provided by the system. It should be appreciated that other requests may be performed.


The disclosed embodiment may track and report on events that can result in charges to toll-free service providers. A tariff specifies the rate elements that can result in charges on a monthly bill and the rate to be charged. A tariff specifies the rate elements that can result in charges on a monthly bill and the rate to be charged. These include establishment of a system logon ID, monthly access to the system, reservation of a toll-free number, and report requests. Information provided by embodiments of the system is needed to calculate monthly charges and create monthly bills that may be sent to each toll-free service provider.


The user interface function facilitates manual access for human users and mechanized access for systems to make use of the NA and CR functions provided by the disclosed embodiment. The mechanized interface provided by the current system is known as Mechanized Generic Interface (MGI). Capabilities may be required for external users to establish data connectivity with the system and gain access to the available functions. The system maintains logins and passwords to provide security to limit system access to only authorized users. Permission levels that restrict access to system functions and to proprietary data may be assigned for each authorized user. In addition, the user interface function provides notifications and other information to external users using mechanisms such as email and File Transfer Protocol (FTP).


The security function defines a security framework that identifies the aspects of a system or service that require security and the methods available to address the security threats for each. From a security perspective, a system or service can be viewed as consisting of user, control and Management planes. Each plane includes infrastructure, services, and application layers.


Toll free may have unique IP requirements. The North American Numbering Plan Administration (NANPA) administers geographic numbers. Number portability is handled through the Number Portability Administration Center (NPAC). Toll-free numbers require enhanced number management capabilities for the following primary reasons:

    • a. The significantly higher search load on NPAC due to unique toll-free search patterns diluting and distracting from its core purpose.
    • b. Toll-free numbers have strict rules around hoarding, bartering, auctioning and fair trade practices.
    • c. Toll-free numbers differ in their access patterns compared to geographic numbers:
    • d. Toll-free numbers have to go through an allocation process for assignment and sparing, as specified by the FCC.
    • e. Toll-free numbers have strict rules around hoarding, bartering, auctioning and fair trade practices.


Prior to assigning toll-free numbers, owners traverse a validation and vetting process to establish identity compared to straight number allocation for a geographic number. Vanity toll-free numbers typically may be searched millions of times during a day compared to 100s of searches for a geographic number in an entire year.


Toll-free number portability has its own set of rules that may be more strict and different from geographic numbers. Relying solely on the geographic number NPAC would be inadequate since toll-free numbers differ in their use and management from geographic numbers.


The NA function 102 may allow toll-free providers to search a pool of toll-free numbers using specified criteria and reserve numbers that will be used by toll-free subscribers, and perform CR administration 218. This functionality may include, but is not limited to, storing toll-free provider and telecommunications data 210, reporting processes 212, billing, service control point (SCP), and management functionality 220 for the coordination with SCPs 222. Responsible organizations, also referred to herein as “RespOrgs,” 202, may utilize the TFMP 100. Reporting from the TFMP 100 may be back to RespOrgs or to other systems and platforms 224 that are external to the TFMP 100. The TFMP 100 facilitates searching for any random number or to search for a plurality of numbers that are consecutive and/or include an indicated combination of digits. Since certain toll-free number codes (e.g. 800) and combinations of digits (e.g. repeating digits, digits whose corresponding telephone keypad letter values spell a word or phrase) may be considered most desirable, the NA function 102 includes capabilities for searches and reservations to be handled so that a toll-free provider does not gain an advantage to reserve a given toll-free number. The TFMP also enables tracking the overall assignment of numbers for each toll-free provider in order to enforce regulations for toll-free number allocation specified by a tariff. The NA function 102 may maintain a status for each number that reflects whether it has been reserved and whether a customer record has been created and sent to SCPs. It is possible to query the TFMP 100 for status and reservation information associated with a number.


The TFMP 100 enables customer record administration, allowing toll-free providers to create a customer record and to specify when the information should be sent to SCPs. A reserved toll-free number may become active when routing information for the number, specified in a customer record, is uploaded into SCPs. Customer records may be updated or deleted and the send time updated prior to sending. Once a customer record has been sent, a new record may be created to update or delete the routing specified by the previous record. The routing information specified in a customer record may include, but is not limited to:

    • An Area of Service (AOS) that specifies from where the toll-free number can receive calls
    • The carrier that will route calls to the toll-free number
    • The terminating number that will receive calls to the toll-free number
    • A set of rules that specifies different routing based on criteria like time of day and area from where the call originated


Carriers who have arrangements to carry calls for a toll-free provider may wish to approve customer records when routing for a toll-free number has been assigned to the carrier. The customer record function may maintain a list of carriers and preferences for whether approval is required when a toll-free provider indicates the carrier in a customer record. A notification may be sent to a carrier when approval of a customer record is required. In embodiments, each customer record may have an associated status. Customer records may be queried to view the status and information contained in the record, based on the permissions of the user.


In another disclosed non-limiting embodiment, the TFMP may include a user interface functionality that allows manual access for human users and mechanized access for systems (such as an application programming interface) to make use of the NA and CR functions provided by the TFMP. The user interface functionality may be embodied in a distributed computing environment, such as a “cloud” based computing network. In another embodiment, the user interface functionality may be embodied in hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks). The mechanized interface provided by the TFMP may also allow external users to establish data dynamic connectivity with the platform and gain access to its available functions. The TFMP may maintain logins, passwords, encryption, authentication, and the like to provide security to limit system access to only authorized users. Permission levels that restrict access to TFMP's functions and to proprietary data may be assigned for each authorized user, and stored locally or remotely to an enterprise utilizing the TFMP, including within a computing storage facility that is remote to, but operatively coupled, with the TFMP. In embodiments, the user interface functionality may provide real time notifications and other information to external users using mechanisms such as email and File Transfer Protocol (FTP).


In another disclosed non-limiting embodiment, the TFMP may provide an interface to send routing information from CRs to SCPs. The SCP Management Function of the TFMP may enable management of interactions with SCPs, including maintaining data connectivity, sending CR information at the specified date and time, and monitoring responses in order to update customer record status. The SCP interface may include an interface that is based on the specification provided by TM-STS-00798, CMSDB/SMS Interface Specification Manual and Interface Message Manual.


In another disclosed non-limiting embodiment, the SCP administration functions of the TFMP may allow users to establish and modify SCP-related reference data in the system and send messages to the SCP node and the Call Management Services Data Base (CMSDB) within the SCP to manage data tables at the SCP. Network management functions for toll-free database services may involve the management of various automatic capabilities intended to monitor and control toll-free query traffic and calling volumes at the SCPs, Service Switching Points, terminating switches, terminating subscriber lines, and the like. When various call volume thresholds are exceeded, the SCPs may trigger Automatic Code Gapping (ACG) controls at the originating SSPs. The TFMP's management functions may allow network managers to configure and adjust relevant control parameters. Data collection at the SCPs may be requested through the TFMP to provide network managers with surveillance information that is useful to monitor traffic and analyze problems, such as the detection of SCP overloads and excessive calling or excessive ineffective attempts to dialed codes.


In another disclosed non-limiting embodiment, the TFMP may enable reporting functionalities that allow tracking user actions, system events, performance statistics, and other events and formatting the information into reports for toll-free providers and system administrators. The TFMP may provide capabilities for users to request reports and for delivery of report results in a plurality of formats. Reports may be requested online by users as per the assigned permissions and delivered over the interface on which the report was requested. Requests may be made from any computing facility, including, but not limited to, a personal computer, laptop computer, tablet, mobile communication facility (such as a smart phone), or some other type of computing device. It may also be possible for users to request reports off-line using the TFMP. For example, a system administrator using information provided by the platform may dynamically compile off-line reports. In embodiments, the TFMP may track and report on real time events that will result in charges to toll-free providers. A tariff specifies the rate elements that may result in charges on a monthly bill and the rate to be charged. These may include, but are not limited by, establishment of a system logon ID, monthly access to the system, reservation of a toll-free number, report requests, or some other type of element. Information provided by the TFMP may be needed to calculate monthly charges and create monthly bills that are sent to each toll-free provider.


The current practice of managing toll-free numbers and activities, and the tools currently available to users for building a complex customer record, are very often single threaded and cumbersome. In addition, the current industry practices do not provide the ability to define a default customer record for a user, in part because it may not be intuitive to build a complex customer record. According to the methods and systems presently disclosed, the TFMP may provide tools that work intelligently with the user, allowing a natural language input, such as English words, to translate and map such language to signifiers that may be less familiar to a user, such as call routing codes. This translation and mapping of natural language to toll-free number management information and data may produce a dynamic, complex customer record, including using existing user records and usage data, to populate information for the user. This may speed the creation of complex routing and other metadata that is associated with a toll-free line, based at least in part on the TFMP enabling the dynamic querying of the real time status of data that is associated with a toll-free number, guide the user in providing the necessary natural language information that allows the TFMP to map such language to toll-free number metadata (e.g., routing codes), and store and implement a complex decision tree describing the actions to take for a given toll-free number.


In an example, the TFMP may provide a user interface in which a user types a command such as “Route all incoming calls made to toll-free numbers having the extension 571 to the technical support staff.” The TFMP may take this natural language input and map it to routing codes or other data corresponding to the natural language. In another example, the natural language may be selected from a menu that is provided in the user interface of the TFMP, provided via voice command using voice recognition software, via scanned text that is input to the TFMP, or using some other means of conveying natural language. The Customer Record Template Builder (CRTB) of the TFMP may allow building a complex customer record template using a user interface, enabling that record to be designated as the default customer record. Using the TFMP, a toll-free provider may build multiple complex customer record templates for their use and define a record as the default customer record, allowing the user to select the default with a single click, thus reducing their work effort.


In another disclosed non-limiting embodiment, the CRTB may lead a user through an initial customer data population (known as the Customer Administrative Data (CAD) portion), and also the call routing logic (Call Processing Record; known as the CPR portion) that is associated with a toll-free number, by utilizing the TFMP user interface to construct a decision tree logic structure with defined data nodes derived from the user's natural language inputs.


Based upon the decisions at the nodes in the decision tree that is constructed by the TFMP, the user interface may drive down a branch to a new decision node ultimately driving the customer record decision logic to the lowest level. In embodiments, decision trees constructed by the TFMP based on a user's input may represent a series of decision points. Each decision point may be called a node and off of each node may be one of more branches. The point at which there are no more decisions to be made may be referred to as a leaf and used as the “end point” of a branching structure.



FIG. 3 illustrates an example generic visualization of one possible decision tree structure 300 created by the TFMP 100. For example, a call to a particular toll-free number may initially have a node 302 based on the area code from which the toll-free number is called, to segregate an East Coast or West Coast technical support staff. Then, the next node may be a time node to segregate the time of day between business hours where the call is routed to the technical support staff, or after business hours where the call is routed to a voice-mail system. The decision tree may further branch into “leaves” 304, 308 to indicate additional routing rules, such as specifying a single termination number for a received call to be routed to, a particular department within an organization, or some other routing tree rule. The TFMP performs such routing essentially instantaneously or near instantaneously.


In another disclosed non-limiting embodiment, the CAD portion of the CRTB may logically lead a user to populate information including, but not limited to, the following:

    • Administrative data about the toll-free customer
      • Toll-Free Number
      • Effective Date and Time
      • Control Toll Free Provider Identifier
      • End Customer Name
      • End Customer Address
    • Area of Service (AOS)
    • List of destination telephone number(s)
    • Carrier Identification Codes (CICs) for IntraLATA and InterLATA traffic


In another disclosed non-limiting embodiment, complex customer record (CPR) decision nodes that may be supported by the TFMP include, but are not limited to, the following:

    • Originating State
    • Originating Numbering Plan Area (NPA)
    • Originating LATA
    • Originating Plain Old Telephone System (POTS) Central Office Exchange (NXX)
    • Originating POTS NPANXX
    • Originating POTS number
    • Specific date
    • Day(s) of the week
    • Time-of-day range
    • Percent load share, which may be used to automatically direct different percentages of processed queries (calls) to different branches below the node.


In another disclosed non-limiting embodiment, the “leaves” that may be supported by the TFMP data model at the ends of a given branch include, but are not limited to, the following:

    • Destination Telephone Number
    • Carrier
    • Announcement Treatment


With reference to FIG. 4, a simplified depiction of a customer record routing, created using the TFMP, is provided. In this simple example, starting from the left-most branched path, the three decision paths corresponding to the decision trees branched paths may be represented as a routing from a toll-free number 400, detecting an area code 402, an exchange 404, carrier 408, and terminating telephone number 410, as in the following example:

    • 1. Area Code=732, NXX={699,494}, Carrier=ATX-0288, Tel #=800-234-5678
    • 2. Area Code=732, NXX=Other, Carrier=MCI-0222, Tel #=800-234-5678
    • 3. Area Code=Other, NXX=<null>, Carrier=MCI-0222, Tel #=800-234-5678.


Continuing the example of FIG. 4 using the TFMP, the CRTB toll may be built in such a manner to allow a user to work though the decision tree and anticipate/prepopulate information based upon the information already provided in this build or also information provided in previous customer record entries. Once a default customer record template is built, the TFMP may invoke this template when creating a customer record for a new number, thus reducing the time and effort for a subsequent customer record to be built. Invocation of the default customer record template by the TFMP may also serve to reduce human error associated with the manual creation of such records insofar as the template may already embody necessary data, thereby not requiring a user to remember or retrieve the same.


With reference to FIG. 5, the methods and systems of the present disclosure may provide for pre-populating a call routing template based on natural language inputs including, associating a natural language element 500 with a telecommunications routing code 502, the telecommunications routing code associated with decision tree logic associating routing of incoming calls to a toll-free number 504; storing the association in a database 508 that is associated with a toll-free telecommunications system; receiving a natural language input 512 from a user 510, the natural language input 512 may include the natural language element 500; selecting the telecommunications routing code 514 based at least in part on the stored association 504; populating the telecommunications routing code 518 at a node of a call routing decision tree 520 to generate a populated call routing decision tree 522; and storing the populated call routing decision tree as a call routing template 524 that may be identified and presented to a user interface based at least in part on the natural language input.


In embodiments, a natural language input may be a text or voice element. A text element may be a scanned text element. A voice element may be obtained by voice recognition software.


In embodiments, the decision tree logic may determine the call path taken by an incoming toll-free call to a termination number, the call path taken by an incoming toll-free call based at least in part on the time of day the incoming call is received, the call path taken by an incoming toll-free call based at least in part on the geographic location of the device from which the incoming call is received, the call path taken by an incoming toll-free call within a business entities telecommunications system, or some other call path outcome.


Further provided herein are methods and systems for creating a call routing decision tree, the system comprising a user device of a user configured to receive a natural language input from a user; select a stored call routing template, wherein the selection is based at least in part on a stored association of the call routing template and a natural language element that is included in the natural language input; present the stored call routing template to the user within a graphic user interface; receive a command from the user, through the graphic user interface, to associate the selected call routing template with a toll-free number indicated by the user; and store the association between the call routing template and the toll-free number.


In embodiments, the command from the user may be text-based, such as a text-based item that is presented within the graphic user interface in a menu or other location. In embodiments, the command may be a voice command.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method of pre-populating a call routing template based on natural language inputs comprising:

    • associating a natural language element with a telecommunications routing code, the telecommunications routing code associated with decision tree logic associating routing of incoming calls to a toll-free number;
    • storing the association;
    • receiving a natural language input from a user, wherein the natural language input includes the natural language element;
    • selecting the telecommunications routing code based at least in part on the stored association;
    • populating the telecommunications routing code at a node of a call routing decision tree to generate a populated call routing decision tree;
    • storing the populated call routing decision tree as a call routing template that may be identified and presented to a user interface based at least in part on the natural language input.


A system for creating a call routing decision tree, the system comprising:

    • a user device of a user configured to:
    • receive a natural language input from a user;
    • select a stored call routing template, wherein the selection is based at least in part on a stored association of the call routing template and a natural language element that is included in the natural language input;
    • present the stored call routing template to the user within a graphic user interface;
    • receive a command from the user, through the graphic user interface, to associate the selected call routing template with a toll-free number indicated by the user; and
    • store the association between the call routing template and the toll-free number.


In embodiments, and with reference to FIG. 6, the TFMP may facilitate determining toll-free network congestion in real-time. The TFMP system may include a subsystem, referred to as a “node,” and in this example embodiment called the Percent (%) Node 602. This node may be used to build a decision tree that is downloaded to the SCPs. The Percent Node may allow a tree to be built so that a certain percentage of the calls are routed to different branches on the call tree. The Percentage may be whole numbers and can range from 0% to 100%, with the total percentage for all sibling branches not to exceed 100%. This may allow Resp Orgs to use the TFMP as their disaster recovery routing for a toll-free number. In an example, a call routing tree may be built with multiple branches to different locations, such as terminating numbers. In a normal situation, 100% of the calls may go to a main location 604. In a disaster, which could be a carrier system failure, for example, and which may originate outside of the carrier itself, a call routing table created according to the Percent Node and related rules may allow that all calls are diverted to another branch 608, 610 on the tree that uses a different carrier.


In embodiments, real time network data may be used by the TFMP to create, and allow Resp Orgs to use, a “congestion threshold” node in the call routing tree. This may allow a Resp Org to determine with an end subscriber the appropriate congestion threshold for each branch in a call routing table. For example, if one call center can only handle 200 calls per minute before calls are placed in queue, and statistics show for this end subscriber that wait times start to creep up to 20 minutes when 1000 calls per minutes are received, and they do not want this to occur, the ability to obtain real time call counts/congestion will allow the SCP to route the calls using call counts/congestion in addition to all the other possible call decision nodes. Call counts may be very specific to an end subscriber, and congestion thresholds may differ and depend on congestion on the line as a whole. The congestion measurement and threshold value may allow detecting congestion issues and routing to another branch, including one that may be in a different area, should a congestion threshold be reached. This may occur in real-time without a need to change the routing tree. The TFMP may confirm real-time call count information that is available from SCPs and use such data to confirm real-time network congestion. Call count information may be further organized and analyzed by TSPID to permit tracking, for example, by service provider.


In embodiments, nodes in a call routing table may be mapped to real-time information in the SCPs from the network. With the decision nodes embedded in the call tree and loaded into the SCPs, real-time routing may be provided by the TFMP. In embodiments, a call routing table may be a crowd-sourced translation table associated with the TSS that may enable mapping of service providers to unique identifiers, as described herein. Such a mapping would enable a registry that may be used by third parties to locate the plurality of identifiers that may be associated with a service provider or plurality of service providers.


In embodiments, nodes in a call routing table may be used to facilitate predictive analytic services that may be provided to allow a user, through the customizable user interface, or “dashboard,” to access third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. Nodes in a call routing table may also be utilized with origination data that may be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trends and prices on an interactive map via the TFMP.


In embodiments, nodes in a call routing table may be used to facilitate reporting capabilities of the TFMP through a client device, such as a personal computer, mobile phone, tablet computer, or some other computing facility, and receive data, including multimedia to the user's client device. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration.


In embodiments, the TFMP may determine accessibility among VoIP and tandem calls. For example, with VoIP the TFMP may ping an IP address at regular intervals to determine status. Using real-time network information and static call routing information, the TFMP may create a real-time call path score. SCPs may also be a source of real-time call routing data. SCPs are in the call path of every toll-free call. The ability to collect real-time data about every call, and every carrier, based on dates, times, day of week, and locations are available to SCPs. Using this information it is possible to extrapolate and determine uptime, downtime, congestion, geographical movement and economic movement of people communicating via calls. Based on real-time data that can be obtained from the SCPs and from the network, the TFMP may create a score that can be assigned to each call decision node. Similar to a mapping algorithm that uses distance and speed limit, given a starting point and a destination, the quickest or shortest map may be mapped. Changes in the call routing tree may be dependent upon an update to the routing tree that is then validated by the TFMP and then downloaded to the SCPs. With the use of real-time data, and more network decisions nodes added to a call routing tree based on the needs of the end subscriber, the TFMP may provide the ability to allow an end subscriber to have real-time business continuity for their toll-free number instead of having to contact their service provider, or getting a ticket opened to update their routing tree, and then having it download to all the SCPs for the new routing to take place.


In embodiments, a call path score and real-time routing may be based on the best possible availability score. This may also be modified by the TFMP to allow for lowest cost score, based on the per-call and per-minute cost for particular carrier. The call score may be updated during low activity periods with a date/time stamp associated with it. This may allow real-time, or near real time, detection of a path's status. Upon completion of a call down a particular path, the TFMP may also update the call path score, thereby keeping the score up-to-date.


In embodiments, nodes in a call routing table may be used to facilitate determination of the call path score such that real-time routing may be displayed via a distributed computing environment, such as a cloud-based computing network. In another embodiment, such systems may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method comprising:

    • creating at least two toll-free call routing tables based on a congestion threshold criterion, wherein the first of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are below the congestion threshold, and the second of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are equal to or above the congestion threshold;
    • providing the call routing tables to at least one service control point that is associated with the toll-free telecommunications carrier network;
    • monitoring toll-free call volumes and durations occurring within a toll-free telecommunications carrier network;
    • receiving at least one of a call count datum or call duration datum from the toll-free telecommunications carrier network wherein the call count datum or call duration datum indicates a change in call volumes over the toll-free telecommunications carrier network from below the congestion threshold to above the congestion threshold; and
    • instructing the service control point to switch from using the first call routing table to the second call routing table.


A method comprising:

    • associating a toll-free telecommunications network congestion threshold criterion with a first rule regarding the usage of a plurality of call routing tables, and a second rule regarding the usage of a plurality of telecommunications carriers, wherein the congestion threshold criterion indicates a level of toll-free call volumes occurring within the toll-free telecommunications network; and
    • switching toll-free calls across the telecommunications carriers based at least on the congestion threshold criterion, wherein the switched calls are further routing according to at least one of the plurality of call routing tables.


A method comprising:

    • creating at least two toll-free call routing tables based on a congestion threshold criterion, wherein the first of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are below the congestion threshold, and the second of the two call routing tables is to be used when toll-free call volumes occurring within a toll-free telecommunications carrier network are equal to or above the congestion threshold;
    • providing the call routing tables to at least one service control point that is associated with the toll-free telecommunications carrier network;
    • monitoring toll-free call volumes and durations occurring within a toll-free telecommunications carrier network;
    • receiving at least one of a call count datum or call duration datum from the toll-free telecommunications carrier network wherein the call count datum or call duration datum indicates a change in call volumes over the toll-free telecommunications carrier network from below the congestion threshold to above the congestion threshold;
    • creating a second congestion threshold criterion based on the data received from the toll-free telecommunications network; and
    • creating a third call routing table based on the second congestion threshold criterion.


In the current industry practice, updates and additions to toll-free providers numbers are not available through conventional platform reporting capabilities for up to 24 hours. This makes it difficult for end users to call up information about work done on the current day. If a toll-free number is reserved and for whatever reason the user does not record the actual number, there is often no way to find it, or a laborious search is required to assemble the necessary data elements for retrieval. One reason for the delay in the ability to report is that reporting is sourced from a Report History Data Base (RHDB) that is only populated with updates once a day. Additionally, most reporting from the RHDB is run in the background, thus in some cases, still further delaying the response.


With reference to FIG. 7, in another disclosed non-limiting embodiment, the TFMP 100 provides the user with the ability to report on its number portfolio in real time or near real time via an online customer dashboard 132. The online customer dashboard 132 may display simulated gauges and dials, business graphics such as pie charts, bar charts and graphs to provide overview that summarizes all pertinent data in one or two screens or views. The gauges and dials may be based upon real time data that is stored within the TFMP. The TFMP may include a subsystem, referred to as a “node,” that may be used to build a decision tree that is downloaded to the SCPs for use with the dashboard. The decision tree may be used in various manners as otherwise described to facilitate call efficiency.


The online customer dashboard may allow the user to see all its customer data and drill down in the details in near real time. To do so, a data source for the dashboard may maintain the data in real time or near real time. The online customer dashboard may also be associated with a user profile and security administration that grants permissions to different groups of users to access embodiments of the system to create, view, update and activate certain functions. The platform or system can implement a role-based access control mechanism.


The online customer dashboard 132 may provide the user with a view into the user portfolio of toll-free number information. This may allow a user to see basic number information about the toll-free numbers the user has the authority to view. Predictive analytic services may also be provided that allow a user, through the customizable user interface, or dashboard, to access third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. As elsewhere described, origination data may be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trends and prices on an interactive map via the TFMP.


A user may also access the reporting capabilities of the TFMP through a client device, such as a personal computer, mobile phone, tablet computer, or some other computing facility, and receive data, including multimedia to the user's client device. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration. Such systems may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, such systems may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


The online customer dashboard may utilize real time network statistics, sourced from carriers and the public domain, within an algorithm that provides a call path score. This call path score may be provided to LCR and SCPs to determine the net value of a route for display.


The online customer dashboard may also provide an alert system similar to Internet alerts for toll-free numbers. Numbers, or groups of numbers, may be tagged based on tag groups. The alert system for toll-free numbers may use a subscription prioritization engine and offer premium services for service prioritization.


The online customer dashboard for a toll-free voice registry may share reserved, assigned, and working numbers with the Toll-Free Texting and Smart Services Registry (TSS)


The online customer dashboard may initially provide a main dashboard screen from which the user may drill down within a specific toll-free number to investigate more detailed information thereof. In one example, the main dashboard screen may provide a base set, or minimum list of data elements that are available, including, but not limited to, the following:

    • User Information
      • Toll Free Provider
      • User Id
      • Last Login
      • Amount of numbers reserved
    • Number Information (a list of all toll free numbers associated with this provider)
      • Toll Free Number
      • Number Status
      • Date Reserved
      • Date Last Updated
      • Customer Name


The user can then drill down into the particular toll free number by clicking on that particular number to find more detailed information such as, Area of Service, Carrier(s), Call Routing, Reserve numbers, or other information associated with a toll-free number.


A user may also view the history of the number i.e. “the life of a toll-free number.” By selecting a particular toll free number, the history of use of the toll free number may be readily viewable. Various charts, timelines, and usage data may be included therein. This functionality may allow a user to view and report on the status and activities of an entire RespOrg in real time, rather than parts of a RespOrg's activity and/or only at predefined time intervals (e.g., once per day).


In another disclosed non-limiting embodiment, the online customer dashboard is not a view only tool, but may provide additional or alternative features to be customized by the user. That is individual users may select their desired types of information available via their dashboard.


Such features may include, but are not limited to, the following:

    • Customer information updates from the dashboard.
    • System alerts pertaining to all users
    • Historical customer usage information and populate information to the user such as suggestions of available numbers
    • Alerts announcing the upcoming availability of numbers that the customer has previously searched for
    • Billing alerts and notification of payments made


Overall, the online customer dashboard may provide a single starting point for any user working with toll free numbers. Having a single location may allow a user of the system to use a single user interface (the dashboard) to view the entirety of activity that is associated with a plurality of toll-free numbers.


With reference to FIGS. 8 and 9, the TFMP may include a toll-free number rating registry (TFRR) 802, that functions as a service to provide customers an indication of how often a toll-free number is abused, such as by fraudulent, frequent calling to increase billing costs. The rating may be calculated based on input from users, automated systems and/or proprietary algorithms that are collecting, storing and analyzing call data from throughout the toll-free system.


In embodiments, the system may collect toll-free number abuse information 804 from a plurality of sources including, but not limited to, a telephone service provider 808, toll-free number operators and Resp Orgs. The abuse information may be collected and processed in real-time to provide timely rating information for entities. In embodiments, the TFMP may publish standard interfaces that reporting parties can invoke to register abuse. Such interfaces may allow clients to connect synchronously and asynchronously. Interfaces may include, but are not limited to:

    • A web page
    • RestFul API
    • Mobile application


In embodiments, the abuse reporting interfaces that are associated with the TFMP may be invoked in a manual or automated manner. In the case of service providers, the reporting of abuse may occur during call setup. This may necessitate that the reporting is automated and introduces the least load on the device reporting the abuse. In an example, an asynchronous API may be made available to service providers for this purpose. In another example, for call centers where toll-free numbers terminate, such as a technical support department of a company, call-center processing software may be enhanced to include a module to detect and report abuse.


Additionally, the TFMP may also provide a mobile or other application that small business and single toll-free number users can use to report abuse. The TFMP may include a subsystem, referred to as a “node,” that may be used to build a decision tree that is downloaded to the SCPs. The decision tree may be used in various manners to facilitate operation of the service as otherwise described to facilitate call efficiency. The service may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, such systems may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


In embodiments, to automate the processing of toll-free calls and reduce abuse, the TFMP system may be enhanced to allow customers to provision an abuse route. This route may be distributed to the SCPs along with current information being shared. When a service provider determines that a call being setup is an abuse call, they can use the abuse route specified by the customer.


With reference to FIG. 9, an example abuse reporting interface architecture 900 that is associated with the TFMP is provided. This abuse reporting interface may permit toll-free customers to report when a toll-free number abuse event occurs. The interface may allow for abuse to be reported manually and/or programmatically in an automated fashion. In embodiments, the abuse collection system described herein may collect information that includes, but is not limited to, the following:

    • TFN 904
    • Resp Org 908
    • Date/time of abuse Date/time of report 909
    • Originating number 910
    • Has the originating number been verified as authentic (i.e., not spoofed) 912
    • Geographic location of the originating number 920
    • Geographic location of the terminating number 922


The abuse database 924 may also collect information about Resp Orgs and other industry details in an offline mode. The abuse information may be captured in the toll-free number abuse database 924. This information may then be processed using a rating engine 928 to compute the toll-free number rating. The rating engine 928 may take into account a plurality of factors including, but not limited to, input provided by Resp Orgs 928, TSPID's associated with service providers, frequency of abuse 930, identified source of abuse, and the like, to compute a rating for the toll-free number. In the absence of specific reports of abuse, predictive analytics methods of the TFMP, as described herein, may be used to infer abuse or unusual call activity, the results of which may be used in computing a rating. In an embodiment, the identification of abuse may be an inference of an abuse event produced by a predictive analytics engine that is associated with the TFMP based on at least a call history and metadata relating to calls placed over the toll-free telecommunications number. In an example, 100 calls may be placed over a toll-free number, each of which by itself does not appear to be abusive. For example the calls may be placed from locations that do not appear suspicious. However, an inference of abuse, based at least in part on the totality of calls placed over the toll-free number, may be used by the predictive analytics engine that is associated with the TFMP to infer that abuse is occurring or has occurred. For example, the totality of the calls may indicate a pattern indicative of abuse, or a call frequency that is indicative of abuse or some other criterion that may be used by the predicative analytics engine to infer that an abuse event, or plurality of abuse events is occurring or has occurred. In embodiments, a toll-free number rating may be a number between “0” and “100” that provides an indication of how often the number is abused and/or how severe the abuse is. A number with “0” rating may indicate a number that is never abused, and a number with a “100” rating may indicate a number for which the majority of activity is abusive in nature. The toll-free number rating may be made available to users of the TFMP, and may be used to make routing and other decisions about the toll-free number.


Based on the rating of a toll-free number, the service provider may take a specific action to ensure legitimacy of a toll-free call. In addition to the number rating, the rating engine may also generate routing rules to be shared with service providers. These rules may be imported by the service provider into their call routing engine to automatically route abusive calls in a manner that is consistent with the routing rules. These rules may also be used in combination with user profiles and security administration may grant permissions to different groups of users to access the toll-free number rating to create, view, update and activate certain functions. The system can implement a role-based access control mechanism. Predictive analytic services may be provided that allow a user, through the customizable user interface, or “dashboard,” to access third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. Origination data may also be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trend and prices on an interactive map via the TFMP.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method comprising:

    • storing a taxonomy of abuse events that may occur regarding the usage of a toll-free number;
    • storing a rule regarding an action to take upon receipt of a reported abuse event, wherein the rule specifies a routing rule defining how a call that is associated with the abuse event is to be routed over a toll-free telecommunications system;
      • receiving a report of abuse of a toll-free number;
    • identifying at least one abuse event within the stored taxonomy and routing rule that is related to content of the abuse report; and
    • automatically routing a call that is the subject of the abuse report according to the routing rule.


A method comprising:

    • receiving a report of abuse of a toll-free number;
    • identifying an absence of an abuse event definition within a stored taxonomy that is related to the type of abuse reported;
    • storing a new definition of the abuse event within the taxonomy; and
    • creating a routing rule defining how a call that is associated with the abuse event is to be routed over a toll-free telecommunications system.


A method comprising:

    • storing a taxonomy of abuse events that may occur regarding the usage of a toll-free number;
    • associating the abuse events in the taxonomy with a toll-free number rating action;
    • receiving a report of abuse of a toll-free number;
    • identifying at least one abuse event within the stored taxonomy and rating action that is related to content of the abuse report;
    • automatically computing a rating for the toll-free number based on the rating action; and
    • reporting the rating to an entity.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A user device for presenting data to a user in real time regarding changes in metadata associated with a toll-free number, the user device configured to:

    • receive an indication of a change in status of a toll-free communications number, wherein the telecommunications number is associated with a responsible organization that processes toll-free telecommunications;
    • update a metadatum associated with the toll-free communications number based at least in part on the change in status;
    • store the metadatum;
    • receive a status request from a user relating to the responsible organization;
    • present the user with a graphic representation of the telecommunications number's status


A method of toll-free telecommunications data visualization comprising:

    • presenting a data visualization dashboard to a mobile application on a client device, wherein the presentation includes a selectable listing of toll-free telecommunications data parameters;
    • receiving a selection from the client device of the toll-free telecommunications data parameters to analyze and at least one type of data analysis to perform;
    • retrieving, in substantially real time, data relating to the selected toll-free telecommunications data parameters;
    • analyzing the data according to the at least one type of data analysis; and
    • presenting to the mobile application a summary of an analytic result.


In another disclosed non-limiting embodiment, the TFMP may provide a click-to-chat tool. The click-to-chat tool enables users to quickly contact a support representative through the user interface, dashboard, or other interface. The click-to-chat tool may integrate with existing web based access, provides an immediate channel to a support representative, and may facilitate support training.


In another disclosed non-limiting embodiment, the TFMP may provide a simplified two-factor authentication tool for maintaining identity and access security (e.g. dual factor authentication). This may eliminate the need to use hard tokens and improve VPN accessibility.


In another disclosed non-limiting embodiment, the TFMP may provide a password self-service tool that provides the ability for self-service passwords and unlock logon IDs. This may be automated via structured email processes.


In another disclosed non-limiting embodiment, the TFMP may provide a real-time status update tool that provides number counts and tasks within the application. This may facilitate a real-time view of number counts and status (i.e. reserved, assigned, etc.)


In another disclosed non-limiting embodiment, the TFMP may provide integrated data stores and a reporting tool that integrates data stores for consolidated reporting. This may facilitate the creation of a single operational data store to eliminate separate software as a service licenses and consolidated reporting for responsible organizations.


In another disclosed non-limiting embodiment, the TFMP may provide a single sign-on tool for Web Based Access (WBA), mechanized generic interface (API), Website/Billing, Web-based Reporting System (WRS), Virtual Private Networks (VPNs), IP Multimedia Subsystem (IMS), or some other network type.


In another disclosed non-limiting embodiment, the TFMP may provide an enhanced configurability tool that allows administrators to configure the limit of TFN that can be reserved in a single request, for example, more than 10. This may provide, for example, up to 5000 (would then do 500 batch calls).


The present disclosure includes a toll-free management platform (TFMP) for providing services to toll free subscribers and providers, enabling them to manage a plurality of toll-free numbers and tasks associated with such numbers. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration.


The TFMP enables searching for any number, random number or to search for a plurality of numbers that are consecutive and/or include an indicated combination of digits. Since certain toll-free number codes (e.g. 800) and combinations of digits (e.g. repeating digits, digits whose corresponding telephone keypad letter values spell a word or phrase) may be considered most desirable, the NA function includes capabilities for searches and reservations to be handled so that a toll-free provider does not gain an advantage to reserve a given toll-free number. The TFMP also enables tracking the overall assignment of numbers for each toll-free provider in order to enforce regulations for toll-free number allocation specified by a tariff. NA may maintain a status for each number that reflects whether it has been reserved and whether a customer record has been created and sent to service control points (SCPs). It is possible to query the TFMP for status and reservation information associated with a number.


The TFMP enables customer record administration, allowing toll-free providers to create a customer record and to specify when the information should be sent to SCPs. A reserved toll-free number may become active when routing information for the number, specified in a customer record, is uploaded into SCPs. Customer records may be updated or deleted and the send time updated prior to sending. Once a customer record has been sent, a new record may be created to update or delete the routing specified by the previous record. The routing information specified in a customer record may include, but is not limited to:

    • An Area of Service (AOS) that specifies from where the toll-free number can receive calls
    • The carrier that will route calls to the toll-free number
    • The terminating number that will receive calls to the toll-free number
    • A set of rules that specifies different routing based on criteria like time of day and area from where the call originated


Carriers who have arrangements to carry calls for a toll-free provider may wish to approve customer records when routing for a toll-free number has been assigned to the carrier. The customer record function may maintain a list of carriers and preferences for whether approval is required when a toll-free provider indicates the carrier in a customer record. A notification may be sent to a carrier when approval of a customer record is required. In embodiments, each customer record may have an associated status. Customer records may be queried to view the status and information contained in the record, based on the permissions of the user.


In another disclosed non-limiting embodiment, the TFMP may include a user interface functionality that allows manual access for human users and mechanized access for systems (such as an application programming interface) to make use of the NA and CR functions provided by the TFMP. Such systems may be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, such systems may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks). The mechanized interface provided by the TFMP may allow external users to establish data dynamic connectivity with the platform and gain access to its available functions. The TFMP may maintain logins, passwords, encryption, authentication, and the like to provide security to limit system access to only authorized users. Permission levels that restrict access to TFMP's functions and to proprietary data may be assigned for each authorized user, and stored locally or remotely to an enterprise utilizing the TFMP, including within a computing storage facility that is remote to, but operatively coupled, with the TFMP. In embodiments, the user interface functionality may provide real time notifications and other information to external users using mechanisms such as email and File Transfer Protocol (FTP).


In another disclosed non-limiting embodiment, the TFMP may provide an interface to send routing information from CRs to SCPs. The SCP Management Function of the TFMP may enable management of interactions with SCPs, including maintaining data connectivity, sending CR information at the specified date and time, and monitoring responses in order to update customer record status.


In another disclosed non-limiting embodiment, the SCP administration functions of the TFMP may allow users to establish and modify SCP-related reference data in the system and send messages to the SCP node and the Call Management Services Data Base (CMSDB) within the SCP to manage data tables at the SCP. Network management functions for toll-free database services may involve the management of various automatic capabilities intended to monitor and control toll-free query traffic and calling volumes at the SCPs, Service Switching Points, terminating switches, terminating subscriber lines, and the like. When various call volume thresholds are exceeded, the SCPs may trigger Automatic Code Gapping (ACG) controls at the originating SSPs. The TFMP's management functions may allow network managers to configure and adjust relevant control parameters. Data collection at the SCPs may be requested through the TFMP to provide network managers with surveillance information that is useful to monitor traffic and analyze problems, such as the detection of SCP overloads and excessive calling or excessive ineffective attempts to dialed codes.


With reference to FIG. 10, in embodiments, the TFMP may provide a Toll-Free Texting and Smart Services Registry (TSS) 1000 to support toll-free telephone numbers and related services, such as SMS, MMS and streaming media. The TSS 1000 may include several components such as, but not limited to, number administration, call control and route provisioning, as well as number status assessment. The number administration function may provide number assignment for toll-free subscribers as well as provide services to manage the toll-free numbering plan. This component may provide for toll-free number portability as well as managing the mapping of toll-free numbers to geographic numbers. The number administration function may also open new number plan administration codes. The number administration function may forecast the exhaustion of codes and demand for codes for use by organizations such as the FCC.


The call control and routing function may be responsible for providing intelligent routing for calls made to toll-free numbers. Toll-free subscribers may have the ability to configure call routing to include multiple carriers, time of day rules, and rules based on the caller's proximity, among others. These rules may be downloaded to real-time network routing databases or Service Control Points (SCPs) 1008. The number status assessment function may determine the availability of certain numbers. Numbers may be reserved and assigned according to activation date and then are deployed. The number status function may assess whether numbers are spare, reserved, assigned, or currently deployed.


Providers of various smart services, such as voice, media, or texting services, may be able to access the TSS that can be text enabled from a list of reserved, assigned, and working numbers. After numbers are identified, an automated online letter of authorization/agency may be executed. The letter of authorization/agency may independently demonstrate authorization to a responsible organization that maintains the registration for individual toll-free numbers in a distributed database. The distributed database may be associated with a distributed computing network, as described herein. Upon execution of the letter of authorization/agency, the information may then be provisioned to industry routing databases for delivering various services, such as SMS (text) messaging, MMS messaging 1010, and content streaming, including but not limited to video content as well as future services 1012.


Letter of authorization/agency, as used herein, may include but is not limited to communication used by a toll-free end subscriber, such as during the provisioning phase of a toll-free number engagement, to enable that end subscriber to switch providers for a given telephone, messaging service, and the like. In an example, an end subscriber may wish to change its long distance provider so that a local company need not be used. The long distance provider to whom the end subscriber wishes to do business would typically walk the end subscriber through an authorization process to enable the end subscriber to switch long distance carriers from the local company to the new company. This authorization may manifest in the carrier's system as a letter of authorization/agency that documents the needed approvals from the end subscriber.


In an embodiment of the present disclosure, the TSS may enable a letter of authorization/agency process for a provider to authorizing texting and other services on a toll-free number or plurality of toll-free numbers that are used by an end subscriber. The letter of authorization/agency may be electronically stored and presented to the responsible organization or owner of record for a given number or service. The letter of authorization/agency may further define a time frame during which certain actions, such as the turning on of texting services for a toll-free number, are permitted. Such letters of authorization, as defined herein, may be further associated with stored profiles of an owner of record and/or end subscriber. A letter of authorization/agency may allow a toll-free number end-user, or toll-free number subscriber, to authorize service enablement for services not covered by their existing responsible organization. In this way, consumers can have multiple services enabled on a single telephone number, across multiple service providers. In an example, a letter of authorization/agency may authorize a responsible organization or other entity to take a plurality of actions so that additional communication with, for example, an end subscriber is unnecessary and actions may be taken more quickly and efficiently. This may enable service registrars, and others, to activate new services, such as toll-free texting services or bandwidth increases on a shorter timeline, which may have commercial benefits as speed activation of needed telecommunications services.


With reference to FIG. 11, in an embodiment of the present disclosure, the TSS may facilitate the enablement of a letter of authorization/agency process 1100 used to enable toll-free texting capability and capture basic data such as customer name, responsible organization, service registrar, toll free number, service enablement date, and letter of authorization/agency, status of services, or some other type of data associated with toll-free telephone numbers and services. The TSS may facilitate the letter of authorization/agency process by programmatically sending a notification to the responsible organization of record to memorialize the transaction. A timer may be set that will give the responsible organization a limited period of time to dispute the transaction. If no action is taken, the transaction may proceed and texting service enablement, or some other service type, may be fulfilled in the TSS Registry. Continuing the example, this letter of authorization/agency process may be provided for each toll-free number that is provisioned 1102 in the TSS registry, or only a subset of numbers depending on the wishes of the end users.


In order to streamline the letter of authorization/agency process, a “blanket” letter of authorization/agency may be used whereby the customer of record may authorize a specific service registrar to provision, update, and deactivate records in the TSS as needed 1104. In such cases, a notification may be sent to the responsible organization to memorialize each transaction. In order to further streamline the letter of authorization/agency process, responsible organization's may choose to put a “blanket” authorization on specific service registrar's which will allow the transaction to take place in real time 1108.


In embodiments, the TSS may allow electronic documentation to be stored and managed, providing a library of legal documentation that may be used by the system in real time to facilitate transactions more efficiently, and to provide more concrete evidence of formal authorization through a physical electronic document proving, for example, the end user's identity and validity.


In embodiments, the TSS may operate in conjunction with current toll-free services, including a toll-free voice registry. In order to establish unambiguous authority for the use of a toll-free number, a controlling organization for a toll-free number may be the responsible organization of record in the toll-free voice registry. Number administration may be the exclusive function residing only in the authoritative toll-free voice registry.


In embodiments, the TSS may be flexible and extensible to support a plurality of toll-free services such as SMS or MMS messaging services, and content provisioning. The TSS may additionally provide toll-free numbers for services such as videos, mobile device applications, games, or any other software, products or services that may be important to an organization to anchor their identity and brand. To support this environment, in embodiments, the TSS may reside on a stand-alone platform using hardware, software, and support systems independent of those used today in the toll-free voice registry. The TSS may be able to connect to a toll-free voice registry to obtain number information, such as availability and reservation status, as well as control responsible organization information, such as the responsible organization contact information, but may remain otherwise separate in its operation.


A responsible organization may maintain a toll-free voice registry that provides number administration, route provisioning, toll-free database services to various service control points, or some other type of toll-free service. The TSS, as described herein, may incorporate the services from a toll-free voice registry to provide smart services enablement, route provisioning, and smart services registry to existing SMS/MMS routing databases as well as other smart services requiring toll-free numbers, such as mobile device applications or games.


With reference to FIG. 12, in another embodiment, a mobile device 1200 may utilize an unambiguous support identifier along with a toll-free data, message, and voice service. In this embodiment, the mobile device may be assigned a unique Toll-Free ID (TFID) 1202 at the time of manufacturing. That is, the TFID may be agnostic of type of device and may be hard flashed into the mobile device to identify a customer with a toll free provider that is providing the toll free communication. The TFID may be associated with the carrier identifier such as IMEI, MEID if GSM phone, CDMA, a service provider identifier such as a TSPID, as described herein, or to another identifier associated with a mobile device. In another embodiment, the TFID may be associated with other systems, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


A standard support app that is natively installed, such as a “setting” 1208 app distributed as part of the device, or separately though an app store, facilitates a consumer's ability to talk, message, view, browse support related features of merchandise, devices or other issues that the consumer may have. The standard support app may further interact with a user profile and security administration that grants permissions to different groups of users to access embodiments of the system to create, view, update and activate certain functions. The system can implement a role-based access control mechanism.


When consumers buy a device, the device manufacturers and retailers may “auto register” the device to the support application at the Point of Sale (POS). The TFID may be embedded in the hardware of the device and cannot be changed to provide a definitive way to identify a device when using toll-free services.


With reference to FIG. 13, in another embodiment, the TFID may permit a customer who is purchasing an appliance, a device, or other merchandise to be presented with an opportunity to associate one or more mobile devices to the merchandise purchased 1300. For example, this can be performed at the POS or after the sale as a registration and/or warranty process 1302. The process of registration is thereby automated to simplify these somewhat otherwise bothersome processes for the customer.


In one example, a TFID Mobile App is operable to permit the mobile device to read QR codes, Barcodes, RFIDs, serial numbers, or other merchandise identifiers and then communicate with the manufacturer via toll free service provided by the manufacturer 1304. For example, a user may need only point a camera of the mobile device toward the merchandise to capture the merchandise identify and thereby complete a registration, warranty, support or other process.


On the backend, a TFID Mobile App registry 1308 may be updated with the added mobile device TFID to merchandise association. Via a separate mechanism, merchandise manufactures 1310 can then update the registry with the contact information associated with the TFID for registration and user association. The TFID Mobile App registry may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, such systems may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


Once the merchandise is associated with the particular mobile device—the TFID Mobile App may present or otherwise store the various information about the merchandise, e.g., product documentation, upgrades, manufacture contact information, etc. This permits the user to readily communicate with the manufacturer via the toll free service provided by the manufacturer and accessed via the TFID. For example, once the merchandise is associated with the mobile device, a support call registry may be made readily available from the manufacturer via a toll free service. Support such as repair and troubleshooting for the merchandise may then be more readily provided as the initial validation of the merchandise to the particular user, e.g., warranty registration and confirmation has already been automatically provided by the registry. That is, the registry facilitates more direct access to support from the manufacturer via a toll free communication provided by the manufacturer as supported by the support application on the device.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A mobile device, comprising:

    • a unique toll-free ID (TFID) present in the mobile device, the TFID operable to facilitate toll-free communication between the mobile device and a manufacturer.


A method of communication via a toll-free service, comprising:

    • associating at least one mobile device to merchandise purchased from a manufacturer via a unique toll-free ID (TFID) present in the mobile device, the TFID operable to facilitate toll-free communication between the mobile device and the manufacturer.


A toll-free voice registry may share reserved, assigned, and working numbers with the TSS. The TSS may then establish available numbers for service enablement. As described herein, a service registrar may identify toll-free numbers to be provisioned to an organization and may complete a letter of authorization/agency and provide “owner of record” documentation. The TSS may then request approval for service enablement from a responsible organization. The responsible organization may review the service enablement request. If approved, the TSS may change the service status of the toll-free number from “available” to “assigned.” The service registrar may then assign a unique identifier to number such as a Service Provider Identifier (SPID) or eSPID. The TSS may then provision the service and change the number status from “assigned” to “active.” The routing database associated with the TFMP may then provision the toll-free number with the unique identifier.


With reference to FIG. 14, a toll-free voice registry may share reserved, assigned, and working numbers with the Toll-Free Texting and Smart Services Registry (TSS). The TSS may then establish available numbers for service enablement. As described herein, a service registrar may identify toll-free numbers to be provisioned to an organization and may complete a letter of authorization/agency and provide “owner of record” documentation. The TSS may then request approval for service enablement from a responsible organization. The responsible organization may review the service enablement request. If approved, the TSS may change the service status of the toll-free number from “available” to “assigned.” The service registrar may then assign a unique identifier to number such as a Service Provider Identifier (SPID) or eSPID. The TSS may then provision the service and change the number status from “assigned” to “active.” The routing database associated with the TFMP may then provision the toll-free number with the unique identifier.


Additionally, the TFMP may also provide a mobile or other application that small business and single toll-free number users can use to report abuse in combination with the TSS. The TFMP may include a subsystem, referred to as a “node,” that may be used to build a decision tree that is downloaded to the SCPs. The decision tree may be used in various manners to facilitate operation of the service as otherwise described to facilitate call efficiency. The TFMP may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, the TFMP may include hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


Telecommunication service providers are required by industry guidelines to have a unique company code assigned to them. This unique company code identifies carriers as they interconnect with each other and allows for rating, guiding, billing and routing functionality. Historically, when service providers provided voice only services, each service provider was identified by a company code termed an Operating Company Number (OCN). With the evolution of the communications industry, service providers started introducing additional voice services, for example number portability. As these services were introduced, the need for uniquely identifying the carriers became of paramount importance. Registries and organizations were set up to facilitate the integration and interactions required to fulfill these services. Such developments prompted service organizations' need for additional context-based metadata to support these interactions (for example number portability). One result was the adding of additional identifiers to each service provider that required integration. These are sometimes referred to as the SPID or Alternate Service Provider Identifier (Alt-SPID).


With the introduction of over-the-top (OTT) providers, for example Skype, and Internet Protocol-based vendors (IP Vendors) selling traditional communication services over a full Internet Protocol (IP) network, the activities between software and the traditional telecommunications industry become more interactive. IP allowed for a new breed of vendors to integrate with traditional communication service provider networks for delivery and exchange of consumer data. This created a new set of challenges for the unique identification of service providers since the IP Vendors were not traditional carriers and did not meet industry guidelines for OCNs. Additional, sometimes proprietary metadata were created to support these new service providers, for example an eSPID, as described herein. The preponderance of different identifiers from eclectic industry organizations lead to lack of a consistent, unique way to identify and interact with service providers, with no centralized industry provider, organization or registry having a complete view of service provider community.


In an example embodiment of a service provider routing text messages though the network, as the text messages are processed the TSS may obtain metadata associated with the messages that includes coding data. By reading these codes, the TSS may confirm that a given message is derived from a service provider such as Skype for delivery to an AT&T subscriber. Such metadata may be obtained, for example, in a header file. Fields in the header file may be associated with a SPID. This may allow the TSS to determine that the text message is coming from Skype en route to ATT. If it were the case that many texts were originating from Skype at a particular time or day, the TSS may utilize this data to assist third parties in providing targeted advertising content. The TSS may also utilize this data to identify the unnecessary usage of intermediaries in processing communications such as text messages and assist users in avoiding the excess charges for intermediaries by routing messages without using intermediaries. The TSS may utilize a context-based unique identifier to distinguish specific services associated with the TSS Registry. The TSPID 1402 may be enabled in TSS and applies to such multimedia services such as but not limited to SMS, MMS, video conferencing, and streaming data. Resp Org IDs may also be associated with any toll free number enabled in TSS. The TSPID may further facilitate the value chain of a multimedia service for toll-free numbers in order for that service to be delivered.


The Toll-Free Service Provider ID “TSPID,” provides an aggregate identifier for Service Registrars, who provide services such as, but not limited to, SMS, MMS, video conferencing, and streaming content that may be registered and distributed by the TSS Registry. That is, the TSPID provides a single unified identifier that may include other identifiers 1404 over a broad distribution of data, to include, but not be limited to, traditional voice services. The TSPID may also be utilized as an authoritative identifier of the service provider of record for toll-free numbers, and/or ultimately local 10 digit numbers. The TSPID may be enabled by a user profile and security administration that grants permissions to different groups of users to access embodiments of the system to create, view, update and activate certain functions. The system can implement a role-based access control mechanism.


Telecommunication service providers are required by industry guidelines to have a unique company code assigned to them. This unique company code identifies carriers as they interconnect with each other and allows for rating, guiding, billing and routing functionality. Historically, when service providers provided voice only services, each service provider was identified by a company code called as Operating Company Number or (OCN). With the evolution of the communications industry, service providers started introducing additional voice services, for example number portability. As these services were introduced, the need for uniquely identifying the carriers became of paramount importance. Registries and organizations were set up to facilitate the integration and interactions required to fulfill these services. Such developments prompted service organizations' need for additional context-based metadata to support these interactions (for example number portability). One result was the adding of additional identifiers to each service provider that required integration. These are sometimes referred to as the SPID or Alternate Service Provider Identifier (Alt-SPID).


The SPID is the authoritative identifier for telephone number ownership in the Number Portability Administration Center, which includes “ported” numbers associated with Local Number Portability as well as “pooled” numbers, which are associated with assigned pool blocks as administered by the Pooling Administration. Over time, many companies may map various identifiers such as the SPIDs to a broader table for use with the TSPID to still further aggregate such data. Further, traditional voice services may be mapped as well.


With the introduction of value added mobile services (for example SMS), exchanges and hubs set up by Inter Carrier Vendors (ICV) provide communication between multiple mobile network operators. Route tables are stored in industry proprietary databases that provided a call path service to determine, in real time, the destination service provider for an incoming mobile service. These ICVs further add additional metadata to identify carriers and facilitate integration. This process may have added complexity insofar as countries have their own local and regional authorities and naming conventions.


With the introduction of over-the-top (OTT) providers, for example Skype, and Internet Protocol-based vendors (IP Vendors) selling traditional communication services over a full Internet Protocol (IP) network, the activities between software and the traditional telecommunications industry become more interactive. IP allowed for a new breed of vendors to integrate with traditional communication service provider networks for delivery and exchange of consumer data. This created a new set of challenges for the unique identification of service providers since the IP Vendors were not traditional carriers and did not meet industry guidelines for OCNs. ICVs created additional, sometimes proprietary metadata to support these new service providers, for example an eSPID, as described herein. The preponderance of different identifiers from eclectic industry organizations lead to lack of a consistent, unique way to identify and interact with service providers, with no centralized industry provider, organization or registry having a complete view of service provider community.


In embodiments of the present disclosure, the TSS may provide an inclusive view of industry identifiers, enabling a single system of record for identifying service providers, whether traditional telecommunications provider, OTT provider, or some other type of service provider. During the on-boarding process (e.g., toll-free number reservation and provisioning), service registrars may be required to provide their unique identifiers (UIds) with the various organizations they interact.


In embodiments, the TSS may establish a baseline of UIds by public domain information gathering. Data gathered through the public domain may be further validated through crowd sourcing, where a global, potentially mechanical human process can be used to identify, validate and confirm UIds to create a baseline for the registry. In another embodiment, latent sematic indexing may be used to associate data and metadata associated with communications to the actual owner, provider, or responsible party that is associated with a communication, such as a text message. This crowd-sourced translation table associated with the TSS may enable mapping of service providers to unique identifiers. Such a mapping would enable the a registry that may be used by third parties to locate the plurality of identifiers that may be associated with a service provider or plurality of service providers.


In order to facilitate proper content delivery, service providers may be required by the TSS to periodically update their UIds. A validation, verification and certification process may be used to ensure integrity and validity of data entering the TSS. This may provide the industry with a single resource that may be used to identify and validate the identity of service providers. In an example usage scenario, a communications company that intends to optimize its network and manage traffic, may wish to identify where its end traffic (original source) is located by looking at packet headers and identifying service providers. In another example, a consumer reports-based rating service may use the TSS to provide consumers with message or delivery metrics. Bulk-advertising (pam) management companies may use the TSS look at detailed metadata and associate a name to a code. ICVs may use the TSS to streamline establishment and setup of their recipients without requiring expensive and costly set up. Ad agencies may use data derived from the TSS to customize ads to end users by understanding the source and destination (as opposed to area codes), and personalize content based on the service provider(s), for example if the content originated on an IP network.


In an example embodiment of a service provider routing text messages though the network, as the text messages are processed the TSS may obtain metadata associated with the messages that includes coding data. By reading these codes, the TSS may confirm that a given message is derived from a service provider such as Skype for delivery to an AT&T subscriber. Such metadata may be obtained, for example, in a header file. Fields in the header file may be associated with a SPID. This may allow the TSS to determine that the text message is coming from Skype en route to AT&T. If it were the case that many texts were originating from Skype at a particular time or day, the TSS may utilize this data to assist third parties in providing targeted advertising content. The TSS may also utilize this data to identify the unnecessary usage of intermediaries in processing communications such as text messages and assist users in avoiding the excess charges for intermediaries by routing messages without using intermediaries.


With reference to FIG. 15, in embodiments, the TSS (Texting and Smart Services) Registry 1500 may establish a baseline of UIds by public domain information gathering for messages 1508 sent from a client device 1504. Data gathered through the public domain may be validated through crowd sourcing, where a global, potentially mechanical human process can be used to identify, validate and confirm UIds to create a baseline for the registry. Every Service Provider has a set of unique UIds by which its customers are reached by various methods such as, but not limited to, voice, short messaging service (SMS), multimedia messaging service (MMS), video conferencing, and streaming content. When any of these Service Providers signs up to be a TSS user 1502, it has a unique UId, called a TSPID, which is assigned. This TSPID provides the baseline for which many other UIds can be mapped. Many Data Providers, Messaging Hubs, Aggregators, and others who are in the business of routing and providing services such as voice, SMS, MMS, video conferencing, streaming content, and other multimedia services, to sign on to consume TSS Data. Each of these entities that consume data will have a unique identifier to which the TSPID will be mapped. Data Providers that consume TSS data will be required to provide to TSS a new toll-free specific UId for each established TSPID. The end result is a mapping that extends to any data provider that is consuming TSS data. As distribution widens, a fairly comprehensive routing table 1514 for each Service Provider is created.


Furthermore, each TFN that is enabled in the TSS Registry, has the Resp Org ID and Resp Org Entity associated with it, and thus is also mapped to the TSPID. The result is the most comprehensive routing table specific to toll-free numbers that will map toll-free numbers to their voice provider, messaging provider, as well as the routing information across a plurality of data providers. Once this comprehensive Toll-Free routing table 1514 is established, it can be further extended to layer in other identifiers, such as, but not limited to local ten digit numbers (also known as “long codes”), SPID, LRN, OCN, and LATA.


In another embodiment, latent semantic indexing may be used to associate data and metadata associated with communications to the actual owner, provider, or responsible party that is associated with a communication, such as a text message. This crowd-sourced translation table associated with the TSS may enable mapping of service providers to unique identifiers. Such a mapping would enable a registry that may be used by third parties to locate the plurality of identifiers that may be associated with a service provider or plurality of service providers. In embodiments, toll-free number abuse information, as described herein, from a plurality of sources including, but not limited to, a telephone service provider, toll-free number operators and Resp Orgs may also be used for the purposes of creating translation tables, including but not limited to crowd-sourced translation tables. The TSS routing table, once sufficiently established, may be used for services such as value added predictive analytics, as described herein, that service providers can use to gain valuable insights about their customers. Service Providers and other consumers of the data in the routing table would access the information using either an application programming interface (API) for automated integration into their own analytics engines, or a web-based GUI for simpler one-time lookups. Below are some examples of probable use-cases for the routing table.


In order to facilitate proper content delivery, service providers may be required by the TSS to periodically update their UIds. A validation, verification and certification process may be used to ensure integrity and validity of data entering the TSS. This may provide the industry with a single resource that may be used to identify and validate the identity of service providers. In an example usage scenario, a communications company that intends to optimize its network and manage traffic, may wish to identify where its end traffic (original source) is located by looking at packet headers and identifying service providers.


In another embodiment, a consumer reports-based rating service may use the TSS to provide consumers with message or delivery metrics. Bulk-advertising (spam) management companies may use the TSS to look at detailed metadata and associate a name to a code to streamline establishment and setup of their recipients without requiring expensive and costly set up. Ad agencies may use data derived from the TSS to customize ads to end users by understanding the source and destination (as opposed to area codes), and personalize content based on the service provider(s), for example if the content originated on an IP network.


In another embodiment of a service provider routing text messages though the network, as the text messages 1508 are processed, the TSS may obtain metadata associated with the messages that includes coding data. By reading these codes, the TSS may confirm that a given message is derived from a service provider such as Skype for delivery to an AT&T subscriber. Such metadata may be obtained, for example, in a header file. Fields in the header file may be associated with a SPID. This may allow the TSS to determine that the text message is coming from Skype en route to AT&T. If it were the case that many texts were originating from Skype at a particular time or day, the TSS may utilize this data to assist third parties in providing targeted advertising content. The TSS may also utilize this data to identify the unnecessary usage of intermediaries in processing communications such as text messages and assist users in avoiding the excess charges for intermediaries by routing messages without using intermediaries.


In embodiments, the TFMP may provide a Toll-Free Texting and Smart Services Registry (TSS) to support toll-free telephone numbers and related services, such as SMS, MMS and streaming media. The TSS may comprise several components such as, but not limited to, number administration, call control and routing, as well as number status assessment. The number administration function may provide number assignment for toll-free subscribers as well as provide services to manage the toll-free numbering plan. This component may provide for toll-free number portability as well as managing the mapping of toll-free numbers to geographic numbers. The number administration function may also open new number plan administration codes. The number administration function may forecast the exhaustion of codes and demand for codes for use by organizations such as the FCC. The call control and routing function may be responsible for providing intelligent routing for calls made to toll-free numbers.


Toll-free subscribers may have the ability to configure call routing to include multiple carriers, time of day rules, and rules based on the caller's proximity, among others. These rules may be downloaded to real-time network routing databases or Service Control Points (SCPs). The number status assessment function may determine the availability of certain numbers. Numbers may be reserved and assigned according to activation date and then are deployed. The number status function may assess whether numbers are spare, reserved, assigned, or currently deployed. Providers of various smart services, such as voice, media, or texting services, may be able to access the TSS that can be text enabled from a list of reserved, assigned, and working numbers. After numbers are identified, an automated online letter of agency may be executed. The letter of agency may independently demonstrate authorization to a responsible organization that maintains the registration for individual toll-free numbers in a distributed database. The distributed database may be associated with a distributed computing network, as described herein. Upon execution of the letter of agency, the information may then be provisioned to industry routing databases for delivering various services, such as SMS (text) messaging, MMS messaging, and content streaming, including but not limited to video content.


Letter of agency, as used herein, may include but is not limited to communication used by a toll-free end subscriber, such as during the provisioning phase of a toll-free number engagement, to enable that end subscriber to switch providers for a given telephone, messaging service, and the like. In an example, an end subscriber may wish to change its long distance provider so that a local company need not be used. The long distance provider to whom the end subscriber wishes to do business would typically walk the end subscriber through an authorization process to enable the end subscriber to switch long distance carriers from the local company to the new company. This authorization may manifest in the carrier's system as a letter of agency that documents the needed approvals from the end subscriber. In an embodiment, the TSS may enable a letter of agency process for a provider to authorize texting and other services on a toll-free number or plurality of toll-free numbers that are used by an end subscriber. The letter of agency may be electronically stored and presented to the responsible organization or owner of record for a given number or service. The letter of agency may further define a time frame during which certain actions, such as the turning on of texting services for a toll-free number, are permitted. Such letters of agency, as defined herein, may be further associated with stored profiles of an owner of record and/or end subscriber. A letter of agency may allow a toll-free number end-user, or toll-free number subscriber, to authorize service enablement for services not covered by their existing responsible organization. In this way, consumers can have multiple services enabled on a single telephone number, across multiple service providers. In an example, a letter of agency may authorize a responsible organization or other entity to take a plurality of actions so that additional communication with, for example, an end subscriber is unnecessary and actions may be taken more quickly and efficiently. This may enable service registrars, and others, to activate new services, such as toll-free texting services or bandwidth increases on a shorter timeline, which may have commercial benefits as speed activation of needed telecommunications services.


In an embodiment, the TSS may facilitate the enablement of a letter of agency process used to enable toll-free texting capability and capture basic data such as customer name, responsible organization, service registrar, toll free number, service enablement date, and letter of authorization/agency, status of services, or some other type of data associated with toll-free telephone numbers and services. The TSS may facilitate the letter of agency process by programmatically sending a notification to the responsible organization of record to memorialize the transaction. A timer may be set that will give the responsible organization a limited period of time to dispute the transaction. If no action is taken, the transaction may proceed and texting service enablement, or some other service type, may be fulfilled in the TSS Registry. Continuing the example, this letter of agency process may be provided for each toll-free number that is provisioned in the TSS Registry, or only a subset of numbers depending on the wishes of the end users. In order to streamline the letter of agency process, a “blanket” letter of agency may be used whereby the customer of record may authorize a specific service registrar to provision, update, and deactivate records in the TSS as needed. In such cases, a notification may be sent to the responsible organization to memorialize each transaction. In order to further streamline the letter of agency process, responsible organization's may choose to put a “blanket” authorization on specific service registrar's which will allow the transaction to take place in real time.


In embodiments, the TSS Registry, as described herein may be an authoritative database of all, or some subset of, text-enabled toll-free numbers in North America. It may also contain the top-level routing information, in the form of a toll-free service provider identifier (TSPID), used by the texting ecosystem to send messages to the proper toll-free subscriber. Since a letter of agency is required for each toll-free number that is enabled in the TSS, the TSPID may become a centralized and authoritative source identifier and may be used in the provisioning of additional services associated with toll-free numbers such as, but not limited to MMS, video conferencing, and streaming data. Furthermore, since part of the enablement process includes Responsible Organization authorization and/or notification, coupled with the direct connection to a voice telecommunications platform associated with the TFMP, the TSPID may also serve to validate the authority of a call routing table.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method of identifying and storing an identifier associated with a toll-free-communication entity, comprising:

    • locating an identifier within the header portion of an SMS text message routed over a toll-free telecommunications line, the identifier located based at least in part through latent semantic indexing;
    • comparing the located identifier with metadata stored on a server, the metadata associated with a plurality of entities;
    • selecting an entity from among the plurality of entities based at least in part on the comparison; and
    • storing a code associated with the entity within a translation table associated with a toll-free telecommunications management platform.


A method of creating and storing an identifier associated with a toll-free-communication entity, comprising:

    • locating data within the header portion of an SMS text message routed over a toll-free telecommunications line, the data located based at least in part through latent semantic indexing;
    • creating an entity identifier based at least on the data;
    • storing a code associated with the entity identifier and an entity within a translation table associated with a toll-free telecommunications management platform; and
    • associating the entity and entity identifier with a call routing table.


A method of identifying and storing an identifier associated with a toll-free-communication entity, comprising:

    • identifying a toll-free call route trend among a plurality of toll-free calls taking place within a toll-free telecommunications network; wherein the call route trend is identified at least in part by call routings among toll-free numbers sharing an attribute;
    • creating a call route template based at least in part on the trend;
    • identifying an entity using at least one toll-free number with the shared attribute;
    • prepopulating a call route tree for the entity based on the call route template.


With reference to FIGS. 16-20, a system according to various embodiments, and which may be referred to in some instances herein as an intelligent platform, platform, or an architecture, is operable to support the ever evolving toll-free industry through the use of modern technologies which may include enhanced functionality and deliver improved cost efficiencies and quality of service.


The architecture depicted in FIGS. 16-20 may include aspects such as:

    • a. Number searches return suggestions
    • b. Scheduled number search
    • c. One-click number search to activate
    • d. Number search based on history
    • e. Smart number search
    • f. Bulk search
    • g. Spare number availability notification
    • h. Enhanced number configurability
    • i. Enhanced route management
    • j. Self-service administration
    • k. Additional user roles
    • l. Customer record builder
    • m. Customer record template transfer
    • n. Dashboard
    • o. Customer access
    • p. Open API
    • q. Bulk Processing
    • r. Improved Search
    • s. Workflow
    • t. Customer records/Template
    • u. System Performance
    • v. Reporting and Analytics


The architecture depicted in FIGS. 16-20 may include the components in the following table:














Component
Decision
Rationale







Application
Apply Service-oriented (SOA) and
SOA and EDA create loose coupling


Platform
event-driven (EDA) design throughout
and high cohesion, which enable



the application. The core system
flexibility and extensibility to



should be considered a platform for
business change in alignment with



existing application services as well
the solution principles.



as future products and services, some




of which may be provided by the




TFMP while others would be provided




by either third parties or affiliated




entities, interfacing with the system




via public APIs.



Application
Follow web scale IT design to enable
Web-Scale design concepts consider


Platform
cloud-based scale and high availability
global-class compute capacity



using stateless models, open source
given the massive expansion of web-



tools, Agile/DevOps approaches, and
and cloud-enabled capabilities.



Web Oriented Architecture (Web
Web-Scale is the modern equivalent



APIs) concepts.
to high quality of service arch-




itectures on low cost/commodity




infrastructure.


Application
Utilize web API architecture to
Traditional N-Tier architectures


Platform
simplify traditional N-Tier models
require significant “platform



by connecting any device/channel/
plumbing,” and may be quickly



interface via a single API that
being replaced by simpler, more



encapsulates a back-end data/process
modern Web API architectures that



service.
use generic interfaces to back-end




data/processing services. This




simpler architecture aligns well with




the solution principles.


Application
Distributed queue with guaranteed
Traditional, storage-based queues


Platform
(storage-based) messaging to ensure
should be sufficient to handle



FIFO request management. Develop
transaction volumes. If the queue



a proof of concept for in-memory
becomes a bottleneck and the



queue if requirements necessitate
database architecture cannot



faster performance.
maintain integrity, an in-memory




queue may be necessary.


Application
Prefer Java as the programming
Over the last few years, Java has


Platform
platform/language of choice for core
consistently been ranked as one



application components. Leverage
of the most popular programming



alternative languages opportunistically
languages with an installed base



to accelerate development for
that rivals any other programming



lightweight Web components, native
language. A wide availability of



sockets, or analytics, among others.
resources and products exist to




complement the language. A




minimal risk exists with Java based




on the fact that it is controlled by




Oracle and does not share the same




degree of openness as many other




languages. Nonetheless, Java is a




generic rather than a purpose-




specific language, so the architecture




should expect a plurality of




alternatives to solve discrete




technical or business problems.


User
Design for web-based, thin client user
Responsive/cross-channel web


Interface
interface with HTML5, JavaScript and
design and cross-platform/device



CSS.
compatibility requires modern user




interface technologies to deliver




consistency across a variety of




browsers, screen-sizes and




platforms. JavaScript libraries




(formerly referred to as AJAX/RIA)




have significantly matured, when




combined with HTML5 and CSS,




can now deliver rich, dynamic and




usable experiences that integrate




easily with web APIs. These tools




do, however, require significant




hand-coding.


Business
Implement a business rule engine
Current business processes may


Process and
(BRE), but not a BPMS, to simplify
not require use of a business process


Rules
call-tree routing for customer records
management suite (BPMS) because



and enable configuration of valid
1) processes may be deterministic



values and ranges throughout the
with defined beginnings and ends,



application.
2) processes do not change




frequently, and 3) processes do not




require business user change. Basic




workflow/orchestration logic and




rule evaluation tools meet minimum




solution requirements. These basic




capabilities may be packaged in




many leading products including




service buses and open source tools.


Integration
Use a lightweight service bus to
An integration layer centralizes and



intermediate Web APIs between
simplifies Web API mediation and



channels/devices/interfaces. The
security, as well as decouples the



service bus can be one of two
architecture to increase flexibility



patterns/usages:
and extensibility. ESBs may be



1. Open Source Enterprise Service
traditional integration mainstays



Bus (ESB) that provides advanced
that provide a suite of integration



service mediation, intelligent routing,
functionality. Popular open source



BPEL/orchestration, rule evaluation,
tools include Talend, Mulesoft, Red



security and robust message
Hat Fuse, and WSO2. Lighter-



transformation
weight API Management Appliances



2. API Management Appliances that
(formerly referred to as SOA



provide basic service mediation,
Governance tools) may be



routing, orchestration and transfor-
increasingly popular for simplified



mation plus hardware acceleration
and accelerated service mediation.



for security/SSL and message
Popular appliances may be CA/



processing
Layer 7, DataPower, and Intel SOA




Express.


Integration
Both SOAP and REST, and others can
Both REST and SOAP WS-I may be



be used. SOAP WS-I is preferred for
mainstream Web Service integration



higher quality of service requirements
technologies. These technologies



such as security and reliable
provide for relatively easy and



messaging. REST is preferred for
efficient integration following



ubiquity and interoperability.
industry-accepted standards.


Integration
Use data integration to ensure
CDC and ETL may be both main-



consistency across data stores and
stream options for moving data.



synchronization for replication.
CDC should be used for near real-



Data integration tools may deliver two
time data integration whereas ETL



patterns/usages:
should be used to move bulk



1. Change data capture (CDC) for
changes on a periodic basis.



moving data from transaction
Numerous open source data



processing systems (OLTP) into the
integration tools may be available,



operational data store (ODS) in near/
including those packaged with the



real-time
chosen database.



2. Extract, transform, load (ETL) for




moving data from ODS to other data




stores for replication and analysis in




batch/scheduled mode



Business
Expand use of the SAP
There is an existing investment,


Intelligence
BusinessObjects suite investment to
comfort, and experience with



address the three business intelligence
BusinesObjects for end-user



use cases: Dashboards, Reporting,
reporting. BusinessObjects is a



and Analytics. This includes using
leading product and suite for dash-



BusinessObjects as a replacement
boards, reporting and analytics.



for Concurrent Technologies Knosys,
The Knosys platform is expensive,



which is currently used for manage-
adds complexity to the environment,



ment reporting. Evaluate use of
and requires data to be sent off-site



BusinessObjects On-Demand/SaaS
without clear repossession rights.



to reduce the infrastructure footprint.



Business
Analytics and Reporting can run
A separate reporting database is


Intelligence
against the operational data store
essential to remove those work-



(ODS) for both management and end-
loads from the transaction process-



user reports (dashboards, canned
ing database (when not using an in-



reports, parameterized reports, ad hoc
memory database, which is the



reports). The ODS can provide insight
current direction). The ODS can



into “what happened?” and “what is
maintain an integrated, near real-



happening?”
time set of all operational data




including number, customer, and




billing information.


Business
Analytics and Reporting can run
A separate analytics database is


Intelligence
against a data warehouse or “big data”
essential to remove those workloads



data store. The analytics data store can
from the ODS. This analytics data



be created for industry intelligence
store may also include a different



workloads, which may include
schema, different data types, and



mining, forecasting, and trending to
different semantics. ETL, and others



provide insight into “why is this
can be used to move data from the



happening?” and “what is likely to
ODS to the analytics data store



happen next?”
unless near/real-time information




is necessary for industry analytics.


Data
There is no need for master or
There may be current or future


Management
metadata management, search engines
requirements that necessitate active



or Web/content/document
data quality management, metadata



management.
management, or unstructured




content search. Web and content




management may be out of scope.


Data
The database architecture can enable
Traditional, shared-everything,


Management
partitioning in a shared nothing model.
monolithic database architectures



This can ensure that data access and
may be being replaced by modern,



indexing can be scaled in a widely
shared-nothing, highly scalable



accepted, fault-tolerant manner.
architectures. These concepts align




with Web-Scale deployments and




disclosed embodiments solution




principles.


Data
Data integrity and availability may
ACID is the traditional, high


Management
be characterized by two data model
integrity database model that



patterns/usage: ACID and BASE.
provides ample scale and capacity.



Preference is for ACID, but others
This is a low risk solution for well-



may be prototyped such as BASE
known number and customer



using strict success criteria (monitor-
administration functionalities. BASE



ing, management, consistency,
offers nearly infinite performance



responsiveness) to determine if
and scale benefits, but requires a



additional benefits exceed the risks of
significant shift in developer and



complexity, difficulty, and ability to
user experience that introduces



maintain user expectations.
risk into the deployment. This



1. ACID: Traditional session-based
degree of change and risk currently



database locking strategies to
outweigh the benefits of scale



guarantee transaction integrity (e.g.,
and capacity. Further investigation



Oracle, DB2, SQL Server, my SQL)
is needed to understand the true



2. BASE: Trending stateless database
benefits/tradeoffs, and implications



models that favor data availability
to other architectural decisions.



and eventual consistency over data




integrity (e.g., mySQL Cluster,




Cassandra, MongoDB)



Data
If the performance requirements
Data sharding is an advanced


Management
necessitate additional scale, the BASE
alternative technique that not only



pattern design should be favored over
partitions data but also moves those



data sharding
partitions into separate databases.




This requires intelligence in the




application to know in which data-




base certain sets of data reside. For




disclosed embodiments, the benefit




of sharding scale and performance




do not justify the costs of additional




application complexity.


Monitoring
Monitoring may cover three levels:
Application monitoring is a critical



1) application performance
piece of application management



monitoring (end-user experience,
and is essential to reduce



application runtime, transaction
maintenance costs. Consistent



profiling, component deep-dives),
application instrumentation



2) server monitoring and 3) network
implementation practices are



monitoring. Unified monitoring tools
followed to ensure accurate end-to-



may be utilized to simplify the land-
end user and transaction level



scape and provide a single console for
monitoring.



application and infrastructure health.



Security
Multiple products may be used to
Application security is a



secure the runtime environment, Web
fundamental concern for all



Application Firewalls provide real-
application development, and should



time event monitoring and protect
be ingrained into every aspect of the



against known SQL injection and
application code. Web Application



phishing vulnerabilities. Dynamic
Firewalls may be simple hardware



security testing tools may continually
appliances that can also accelerate



verify protection against known
and load balance requests. Many



signatures and patterns. Data masking
other security tools may be open



tools should be used to obfuscate
source or easily acquired.



production data for test/development




purposes.



Security
Identity and Web access
Security cannot be compromised,



management can be provided via on-
but there may be more usable



premises Web Access Management
solutions available that can sustain



tools. These tools provide integrated
and even enhance system security



identity management, self-service
posture.



password management, authenti-




cation management and authorization




integration. Disclosed embodiments




may still require two-factor




authentication. A password is likely




to be the first factor. A token (soft




or certificate-based) or a one-time




password (OTP) may be likely to be




the second factor. A VPN should be




used to create a secure tunnel and




mitigate Man-In-The-Middle attacks.









With reference to FIG. 21, in embodiments, the TFMP may include a subsystem that enables distributed call collectors to collect data from various sources including service control points (SCPs), toll-free service providers, interexchange carriers, and others. Data may be real-time grouped, aggregated and reduced based on toll-free numbers and relevant parameters, including but not limited to origination location, originating area of service, originating NPA, ANI, or some other criterion. Call counts may be calculated for high priority numbers. Data may be enriched with call duration information when it is available. This process may assist in reducing the overall data set size and speeding processing. A local NoSQL data store may be used to aggregate local trends and pre-process raw data.


In embodiments, once pre-processing completes, data may be shared in real time, or near real time, to a centralized analytics data store 2102 that is associated with the TFMP for more real time mapping and reduction. The analytics NoSQL datamart may combine data feeds from various service providers from the network and further reduce information to call counts, call completion rates and call duration for high priority numbers. This subsystem of the TFMP may gather historical macroeconomic data from market sources 2104 like Bloomberg™ and Reuters™ and create a reference data store that groups and summarizes economic trends month over month. This subsystem may serve as a reference data source for the analysis, inference and indexing system.


In embodiments, this subsystem may collect historical call completion and call count data from high priority numbers and apply mapping and data reduction techniques to create historical baselines for calls. Calls may be sourced from market data sources, data purchases, data bartering from call sources, or through some other type of data source. Call sampling and aggregation may be iteratively performed until a statistically significant dataset is created (e.g., over a tuning period). Multi-factor models may be created for correlating toll-free call activity with selected macroeconomic trends, backed by high priority numbers tied to businesses. For example, calls to toll-free numbers for employment commissions in the 50 states may be tied to a forward-looking indicator for unemployment and consumer sentiment.


In another example, historical changes in macroeconomic data may be plotted with changes in call metrics like call volume, call duration, or some other data related to toll-free data. This may provide a correlation between telemetry and economic indicators. Financial modeling techniques may be applied, and additional factors may be analyzed, including but not limited to consumer sentiment, including sentiment that is sourced by social media comments and online behaviors related to relevant topics (e.g., questions regarding unemployment benefits or questions regarding food stamps). Interrelationships between indicators may also be analyzed. Credit card spending data may be an additional factor analyzed. These underlying factors may drive stochastic probabilities to determine a prediction model that may be utilized by the TFMP. The TFMP system may include a subsystem, referred to as a “node,” that may be used to build a decision tree that is downloaded to the SCPs to facilitate the stochastic probabilities to determine a prediction model. The decision tree may be used in various manners as otherwise described to facilitate call efficiency. The output of the model may be a prediction trend 2108 that can forecast the probability of a relative positivity or negativity of the upcoming indicator. Data from the analytics data store and the historical trends data store may be analyzed through a multi-factor model for deriving a macro economic trend indicator and a relative level of confidence with the trend.


In embodiments, a client device 2110 such as an online and/or a mobile application may allow users to filter, search and sort trend data, increase or reduce granularity, include or exclude factors and zone in or drill down based on dimensions. For example, a user may choose to include or exclude a state from the model to derive a trend prediction and a prediction confidence indicator. Alternatively or in addition, a customizable user interface, or “dashboard,” may be utilized to provide access for third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. As elsewhere described, origination data may be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trends and prices on an interactive map via the TFMP. Further, the user profile and security administration grants permissions to different groups of users to access embodiments of the system to create, view, update and activate certain functions. The system can implement a role-based access control mechanism.


In embodiments, this analytic subsystem of the TFMP may provide a flexible mapping interface for a user 2112 to enter their own data as part of an analysis. Once configured, additional data sources may be added in real time, or near real time, through an API or a web interface to further refine the model based on customer specific data sets to make intelligent business decisions. The system may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, such systems may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


The system may also provide a marketplace for data trading where subscribers can choose and buy data sources that are of interest to them to include in their analysis to further refine their predictive model. The system may facilitate the sale of data sources and assist in ensuring that the data uploaded and made available on the data market is scrubbed of personally identifiable or other sensitive data. For facilitating the data sale, the system may charge a percentage of the sale proceeds in addition to an annual or monthly subscription fees. For consumers interested in a monthly subscription, overall sentiment data may be made available through a number trend report. Alerts may be presented to users, such as to a client device. The user may also access the reporting capabilities of the TFMP through a client device, such as a personal computer, mobile phone, tablet computer, or some other computing facility, and receive data, including multimedia to the user's client device. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration.


In embodiments, the TFMP may provide macroeconomic data trend over a network to a remote client device, by providing a user interface dashboard to a user for installation on the remote client device; receiving third party social media data; modeling at least one of call duration or call count data with the third party social media data to derive a macroeconomic trend; receiving a request from the remote client device to present the macroeconomic data trend; generating an alert from the macroeconomic data trend that contains a stock name, stock price and a universal resource locator (URL), which specifies the location of the data source; and transmitting the alert over a communication channel to the remote client device associated with the user based upon a destination address and transmission schedule that is associated with the remote client device, wherein the alert activates the user interface dashboard to cause the alert to display on the remote client device and to enable connection with the user interface dashboard when the remote client device is activated.

    • The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method comprising:

    • receiving data relating to toll-free number call activity from a toll-free telecommunications system, wherein the data includes at least one of call duration or call count data;
    • receiving third party data relating to macroeconomic activity;
    • modeling at least one of call duration or call count data with the third party data to derive a macroeconomic trend;
    • receiving a request from a client device to present the macroeconomic trend; and
    • presenting a representation of the macroeconomic trend to a user interface on the client device.


A method comprising:

    • receiving data relating to toll-free number call activity from a toll-free telecommunications system, wherein the data includes at least one of call duration or call count data;
    • receiving metadata about the toll-free numbers that are the subject of the call activity, wherein the metadata includes data pertaining to at least one of business type or location;
    • modeling at least one of call duration or call count data with the metadata to derive a macroeconomic trend;
    • receiving a request from a client device to present the macroeconomic trend; and
    • presenting a representation of the macroeconomic trend to a user interface on the client device.


A method of distributing a macroeconomic data trend over a network to a remote client device, the method comprising:

    • providing a user interface dashboard to a user for installation on the remote client device;
    • receiving third party social media data;
    • modeling at least one of call duration or call count data with the third party social media data to derive a macroeconomic trend;
    • receiving a request from the remote client device to present the macroeconomic data trend;
    • generating an alert from the macroeconomic data trend that contains a stock name, stock price and a universal resource locator (URL), which specifies the location of the data source; and
    • transmitting the alert over a communication channel to the remote client device associated with the user based upon a destination address and transmission schedule that is associated with the remote client device, wherein the alert activates the user interface dashboard to cause the alert to display on the remote client device and to enable connection with the user interface dashboard when the remote client device is activated.


With reference to FIG. 22, in another embodiment, a toll-free management platform (TFMP) may refine a recommendation for a toll-free number search via a recommendation engine that utilizes a searcher's profile to improve the search. The toll-free management platform (TFMP) may utilize other assets of a toll-free system generally, such as carrier data, location information regarding call origination, payment data and so forth. The TFMP system may include a subsystem, referred to as a “node,” that may be used to build a decision tree that is downloaded to the SCPs. The decision tree may be used in various manners as otherwise described to facilitate call efficiency. In one example, the toll-free number search may be based upon a customer's historical data such as prior search criteria and existing toll-free numbers, and thereby provide the customer suggestions or notification of toll-free numbers that are available for use. This toll-free number search may be based upon previous searches by either that customer and alternatively or in addition, upon other customer searches.


The toll-free number predictive search is operable to utilize multiple sources of data to extrapolate possible toll-free numbers and those included in a Resp Org and/or user's search history to include, but not be limited to, a current Resp Org inventory, an overall search history, lists of upcoming available numbers, or some other type of data. Predictive analytics is an area of data mining that deals with extracting information from data and using it to predict trends and behavior patterns. The toll-free number predictive search is operable for the user profile and security administration grants permissions to different groups of users to access embodiments of the system to create, view, update and activate certain functions. The system can implement a role-based access control mechanism.


Predictive analytics utilized for the predictive search may encompass a variety of statistical techniques from predictive modeling, machine learning, and data mining that analyze current and historical facts to make predictions about future, or otherwise unknown, events. Predictive analytics can be applied to any type of unknown whether it be in the past, present or future. Predictive analytic services may also be provided that allow a user, through the customizable user interface, or dashboard, to access third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. As elsewhere described, origination data may be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trends and prices on an interactive map via the TFMP.


The toll-free number predictive search may check on the availability of a suggested toll-free number before making a particular suggestion and may otherwise automatically reserve that toll-free number, based upon the customer selecting an “automatically reserve” option. That is, the toll-free number may be automatically reserved if it meets particular search criteria to essentially automate the reservation thereof. Further, the automatic reservation may be a fee-based function in which particular bidders are able to prioritize the choice of toll free numbers via particular fee based arrangements.


In embodiments, initially, a user may be provided the option to opt in to the toll-free number predictive search feature as well as the option to automatically reserve toll-free numbers determined to be available based upon the predictive search. That is, rather than wait for a request, a customer-desired number is predicted, offered, and potentially reserved. The user may also access the reporting capabilities of the TFMP through a client device, such as a personal computer, mobile phone, tablet computer, or some other computing facility, and receive data, including multimedia to the user's client device. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration. It should be appreciated that other options may be alternatively or additionally provided.


In one disclosed non-limiting embodiment of a method 2200 for operation of a toll-free number predictive search is initiated via accessing a Resp Org's search history (step 2202; FIGS. 23, 24, 25, and 26). Numerous criteria may be used when searching for toll-free numbers including the use of wildcards, words translated to numbers, and the like. The search may be performed at both a Resp Org level and broken down by a user as well. This history may be one of the factors used in providing suggestions. Typically, an inventory of toll-free numbers associated with a particular Resp Org as well as an inventory of available toll-free numbers is accessible. Next, the toll-free number predictive search feature may utilize an algorithm that would, for example using the data noted above, produce a list of customer desired toll-free numbers for the customer (step 2204). For example, the algorithm may use any and/or all of the following information to make a search recommendation:

    • Previous search number history (what numbers has a user/Resp Org searched for recently and how many times has the search been performed).
    • Current inventory of toll-free numbers managed by this particular Resp Org. For example, if 888-234-CARS is managed perhaps 800-234-CARS may be predicted as being desired.
    • Numbers that are to be spared (made available). Examine numbers that are going to become available and determine if they meet any patterns in which a user has expressed interest.
    • Search histories from this or other Resp Orgs as it relates to a number this Resp Org has searched for.


The predictive search results may facilitate a standing willingness for a customer to pay for a particular toll-free number and thus automatically reserve the predicted toll-free number (step 2206). For example, once a toll-free number is identified, various offers may be made available via an auction, payment to be first in line, subscription offerings, and others. Finally, a plurality of options may be provided when the customer receives the predictive search results (step 2208), such as, but not limited to:

    • At every logon;
    • Emailed at a specific time of the day. In one example, coordinated around the TFN Spare activity.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method of searching for a toll-free number, comprising:

    • identifying a previous search number history for a user; and
    • offering a toll free number associated with the previous search number history to the user.


A method of searching for a toll-free number, comprising:

    • predicting a customer-desired toll free number for a user;
    • reserving a toll free number in response to the predicting; and
    • offering the reserved toll free number to the user.


A method of searching for a toll-free number, comprising:

    • identifying a previous search number history for a user;
    • predicting a customer-desired toll free number for a user from the previous search number history; and
    • offering the predicted toll free number to the user.


One disclosed embodiment of the system can support future and the ever-evolving toll-free industry through the use of modern technologies, enhanced functionality, and improved cost efficiencies and quality of service. The system can provide additional and enhanced system capabilities that meet or exceed the performance of the existing legacy system on all parameters such as response time, capacity, scalability and cost. The system can improve core services, lower operational expenses, and enable innovations for customers.


More specifically, embodiments of the system can facilitate:

    • a. Modernization of core technologies
    • b. Relevance with transition to IP.
    • c. Use cloud, mobile, and leading-edge technologies to enable new business opportunities and facilitate customer innovation.
    • d. Meet/Exceed current service levels.
    • e. Optimize processes and data.
    • f. Make it easier for customers to do business thereby building stronger relationships.
    • g. Increase customer satisfaction and perceived value
    • h. Enable business process automation to optimize cycle time
    • i. Make data more valuable and accessible for both internal and external use.
    • j. Optimize functionality and system access methods to the minimum required. Increase ability to change.
    • k. Be more flexible to quickly add/enhance products and services.
    • l. More easily adapt to and support business/industry change over time.
    • m. Simplify in everything to optimize and reduce costs.
    • n. Broaden pool of available talent by leveraging current technologies and leading concepts.


Embodiments of the disclosed system may include the integration of one or more of the following capabilities:

    • a. Number searches return suggestions.
    • b. Scheduled number search.
    • c. One-click number search to activation.
    • d. Number search based on history.
    • e. Smart number search.
    • f. Bulk search.
    • g. Spare number availability notification.
    • h. Enhanced number configurability.
    • i. Enhanced route management.
    • j. Self-service administration.
    • k. Additional user roles.
    • l. Customer record builder.
    • m. Customer record template transfer.
    • n. Dashboard.
    • o. Customer access.


Additionally, the capabilities listed herein may include the following features in its integration such as Minimal Feature Sets (“MFS”), New Feature Sets (“NFS”) and Non-Functional Requirements. Additionally, the capabilities listed in the S, NFS, and Non-Functional Requirements may include the following:

    • a. Ease of Use.
    • b. Open API.
    • c. Bulk Processing.
    • d. Improved Search.
    • e. Workflow.
    • f. Customer records/Template.
    • g. System Performance.
    • h. Reporting and Analytics.


With reference to FIG. 27, a high performance Agile and DevOps application delivery organization 2700 permits each vendor to examine the organization and sample toolset to see if it fits within their idea of a delivery organization. The system can be built on a Web-Scale infrastructure capable of delivering continuous availability and continuous delivery. The Web-Scale infrastructure can enable developers and administrators to easily provision and deploy environments on-demand. The infrastructure and application services can scale up and down based on external factors (i.e., current load, performance requirements). Integrated teams, process and tools that provide increased agility, transparency and ease of governance, and effective allocation of resources


A subscriber to basic telephone service is assigned a telephone number that identifies the service and is billed for calls originated from the telephone line associated with the service. In contrast, with toll-free service the subscriber is assigned a toll-free telephone number and is billed for all calls terminated to that number. There is no charge to the originator of the toll-free call.


Toll-free number portability made it possible for any company to provide service for any available toll-free number. FCC Tariff No. 1×, 800 Service Management system functions specified the functionality of a Service Management system that would be operated by the Bell Operating Companies (BOCs). One embodiment of a tariff is Tariff F.C.C. No. 1×, 800 Service Management System Functions, Issued Jan. 31, 2013, Effective Feb. 15, 2013. A disclosed embodiment, originally developed and maintained by Bellcore, facilitates a company that wishes to provide toll-free service (referred to as a Responsible organization/Resp Org/toll-free service provider) to obtain control of toll-free numbers and provision of the information in the network needed to route calls to a designated terminating number. (This information is sometimes referred to as a Customer Record.) This tariff outlines the requirements for becoming a toll-free service provider, the capabilities required of the disclosed embodiment to allow toll-free service providers to search for and reserve toll-free numbers and provision Customer Record information, and how toll-free service providers may be to be billed for use of the disclosed embodiment and control of toll-free numbers.


With geographic portability made possible through the use of centralized routing databases, it became possible for the same toll-free number to be dialed from anywhere in the country and for the toll-free call to be delivered to different destinations based on routing criteria specified in the Customer Record. Toll-free service quickly grew in popularity, and the supply of available 800 numbers neared exhaustion. The toll-free code 888 was opened in 1996, followed by 877 in 1998, 866 in 2000, and 855 in 2010. Plans may be underway for opening of the 844 code in the near future and the FCC tariff has designated the future use of the 833 and 822 codes. As the value of toll-free service and the advantages to having a meaningful combination of digits in a toll-free number (referred to as a vanity number) became increasingly apparent, numerous companies became toll-free service providers and established businesses selling toll-free service. Today, there may be more than 450 toll-free service providers, including telecommunications network providers, resellers, and independent organizations.


To understand routing of toll-free calls, it may be useful to understand how routing is performed for standard (i.e., not toll-free) calls.


With reference to FIG. 28, the North American Numbering Plan (NANP) 2800, introduced in the 1940s, established the 10-digit telephone number format used in the United States, Canada, and neighboring countries in the Caribbean. The format, shown in FIG. 28 consists of a three-digit Numbering Plan Area (NPA) code, and a seven-digit telephone number that includes three digits that identify an office code or local exchange and four digits that identify the individual number within the office code. The NPA, or area code, uniquely identifies a geographic area, the office code uniquely identifies a central office switching system (historically referred to as an exchange) within an NPA, and the line number points to the service components and dedicated resources in the switching system that provide the service instance identified by the line number.


When toll-free service was introduced in 1967, telephone calls were routed using information provisioned in each Public Switched Telephone Network (PSTN) local switching system. A routing table specified how the switch should process an originating call based on the digits dialed by the calling party and the arrangement of facilities that connected the switch to other switches. A switch has direct connections to other switches in the same area and connections to intermediate switches called tandems that provide the next hop toward other switches operated by the same company. Additional connections to specialized tandems provide access to long distance networks to transport calls to switches outside the local area. The local area where a company provides services is known as a Local Access and Transport Area (LATA).


The NPA or NPA-NXX of the dialed called party number identifies an entry in the routing table that points to the route needed to transport the call toward the terminating switch that serves the dialed line number. Initially, calls within a local area only required 7-digit dialing (just the NXX and the final 4 digits), but as the demand for telephone numbers grew, additional area codes were opened within a local area, and it became necessary to dial 10 digits for both local and long distance calls. If the digits dialed may be for an NPA-NXX served by the same switch, the routing table can indicate that a call should be offered to the subscriber identified by the telephone number. If the digits dialed indicate a NPA-NXX not served by the switch, the routing table can point to a route to a neighboring local switch, a local tandem, or a long-distance tandem.


Unlike a typical NPA, the 800 code introduced to identify toll-free numbers does not identify a unique area to which a call can be routed. To support toll-free service, additional entries had to be made in each local switch routing table to indicate the route for an 800-NXX code. Calling a particular 800 number was limited to the local switches that had been provisioned with routing information for that number. Additionally, further routing information was required at a terminating switch to map the 800 number to the terminating line.


In the early 1980s, AT&T introduced centralized call routing databases to handle routing of 800 calls. With a centralized database, it was not necessary to provision routing information for toll-free numbers in every local switch. Instead, switches were configured to query the database for routing information when it was recognized that an 800 number had been dialed. The database can be provisioned with routing information to direct a call to a route based on many factors, providing flexibility and removing the association of an 800 number to a specific local switch. This made it possible for a company to own a national 800 number and for calls to that number to be routed to a different local switch depending on where the call originated or the time of day. The flexibility provided by centralized call routing databases also enabled any carrier to provide service for any 800 number. Both geographic and carrier portability for toll-free service had become possible.


Today, in addition to toll-free calling, services like local number portability, operator services, and Advanced Intelligent Network (AIN) features, make use of advanced routing capabilities enabled by signaling system 7 (SS7).


With reference to FIG. 29, in the SS7 network 2900, the local switch is known as a Service Switching Point (SSP). A Signal Transfer Point (STP) 2902 provides routing of SS7 messages, and databases with call routing and feature information may be known as Service Control Points (SCP) 2904. To enable advanced routing via a centralized database, local switch routing tables may be configured to trigger a query to a database for additional call processing instructions based on various criteria.


In the case of a toll-free call origination, the switch can recognize the 8XX code in the dialed digits and launch a query to an SCP for routing information using the SS7 Signaling Connection Control Part (SCCP) protocol to transport a Transaction Capabilities Application Part (TCAP) query.


As shown in FIG. 30, the query may be routed by an STP to an SCP that has been provisioned with the information that describes how to route the toll-free call. In some cases the initial SCP that is queried by the local switch can return information that can cause the call to be routed to a switch operated by another carrier where a subsequent query to a different SCP can be performed to obtain the routing information needed to direct the call to the destination.


The routing information, consisting of a carrier code and terminating number, is returned in a TCAP response to the originating switch. The switch uses the information to select a route from its routing database and continues processing 3000 of the toll-free call.


Toll-free number administration includes management of number assignment and provisioning of customer records. This section describes the toll-free business, the key stakeholders, roles and responsibilities, and disclosed embodiment capabilities.


Key aspects of the toll-free number business may be described by the FCC tariff. This tariff, describing “regulations, rates and charges applying to the provisioning of functions and support services” was first released in 1993. Updates have occurred since, with the latest released January, 2013, becoming effective in February, 2013. This tariff describes the undertakings of the company responsible for the disclosed embodiment and the capabilities required of embodiments of the system itself. It defines key terminology and specifies the responsibilities of toll-free service providers, who may be the primary users of the disclosed embodiment. It also provides a schedule of rates and charges with regulations for billing toll-free service providers for disclosed embodiment access and usage. System requirements defined by this, or any other, tariff may be provided in “Business Rules” Section.


Some key participants in the toll-free business 3100 and the interactions between them may be illustrated in FIG. 31. Note that a primary geographic area for the toll-free business is the United States, Canada, and other areas where the NANP is used.


A toll-free subscriber contacts a toll-free service provider to order toll-free service. The toll-free service provider may be a carrier who operates a network or may have a relationship with a network provider in order to enable service. The toll-free service provider has an interface to the disclosed embodiment to search the pool of unassigned toll-free numbers and reserve one or more for use by the toll-free subscriber. Working with the toll-free subscriber, the Resp. Org determines how calls to the toll-free number should be routed.


On behalf of the toll-free subscriber, the toll-free service provider enters a Customer Record in the disclosed embodiment that specifies routing and carrier information for the toll-free number. The disclosed embodiment sends this information to the SCPs that control real-time routing of calls in the network. When the SCPs have received the routing information in the customer record, toll-free service is enabled for the toll-free number.


The toll-free subscriber has a business relationship with the toll-free service provider 3102 to pay for toll-free service. The toll-free service provider has a relationship with the TFMP to pay for access to the disclosed embodiment and use of the toll-free number assigned to the toll-free subscriber.


There may be a number of stakeholders that play key roles in the toll-free business, which may include those that follow:


FCC 3108—The FCC is the federal agency that has responsibility for the FCC tariff that specifies the need for a toll-free number Service Management system and defines the regulations, rates, and charges applicable for the use of system functions and support services. The FCC may approve changes to rates or other aspects of the FCC tariff.


The TFMP 100—The TFMP is responsible for the administration and operations of the disclosed embodiment and enforcement of the regulations outlined by a tariff. The TFMP may retain a number of contractors to assist with the activities required to manage the disclosed embodiment and related functions, including maintaining the disclosed embodiment software, running the data centers that house the disclosed embodiment, performing routine and corrective maintenance activities on the disclosed embodiment hardware, handling billing for access and use of the disclosed embodiment, and running the help desk to handle questions and requests from disclosed embodiment users.


Administrators and the TFMP Help Desk personnel can access the disclosed embodiment. Administrators can enter and maintain configuration and reference information needed for operation of the disclosed embodiment. Help Desk personnel can assist with troubleshooting access and Customer Record issues, complete TFMP Requests, and submit trouble reports.


Toll-Free Subscribers—Toll-free subscribers may be the end users of toll-free service. Toll-free service includes a toll-free telephone number and the network capabilities that enable calls to a toll-free number to be delivered to a designated terminating number according to conditions specified by the toll-free subscriber. Toll-free service is obtained from a toll-free service provider.


Toll-free service providers (aka Resp Orgs)—Toll-free service providers may be responsible for the overall coordination required to provision, maintain, and test toll-free service. A toll-free service provider may be a carrier that operates a network or instead could be an independent company or organization that interfaces with a carrier to arrange toll-free service. Toll-free service providers may be the primary users of disclosed embodiment. In embodiments, the system may be used to search for and reserve toll-free numbers for subscribers and provision Customer Records that provide the network with the information needed to route toll-free calls. Toll-free service providers may be billed for access and use of the disclosed embodiment and control of toll-free numbers on a monthly basis as described by a tariff.


Toll-free service providers often maintain sub-organizations based on geography or other organization classifications. The toll-free service provider entity is the top-level organization against which reservation limits may be imposed (represented by the first 2 digits of toll-free service provider ID in the current system). The sub-organization within a toll-free service provider entity (represented by the full 5 digit toll-free service provider ID in the current system) is referred to as a toll-free service provider unit. The toll-free service provider users who access the disclosed embodiment can be associated with a toll-free service provider unit and the corresponding toll-free service provider entity. A toll-free service provider entity may manage many toll-free service provider units, each having a unique toll-free service provider ID.


SCP Owners/Operators (SCP O/O)—SCPs may be the databases in the SS7 network that contain the information used to route toll-free calls. SCP Owners/Operators contract with the TFMP to receive updates from the disclosed embodiment. An interface is established between the disclosed embodiment and the SCPs so Customer Record information can be provisioned to SCPs to enable the real-time routing of toll-free calls. SCP O/Os may be billed for this service.


At SCP O/O companies, the SCP administrator is responsible for establishing reference data about the SCPs and their corresponding SS7 networks. The administrator also manages tables at the SCP node and the Call Management Services Database (CMSDB) within the SCP to set controls and limits for SCP operations. They may be permitted to access and change data only for the O/O's SCPs in the SS7 network.


A network manager is a member of Network Management Center (NMC) or Network Operations Center (NOC) at the SCP O/O company staff responsible for managing mass calling surveillance and control capabilities in its managed SS7 networks.


SCP O/O SCP administrators and SCO O/O Network managers may be users of the disclosed embodiment.


Billing Administrator—This function coordinates the Billing of all customers, using information provided in the disclosed embodiment.


Industry and Regulatory Liaison—This function uses information in the disclosed embodiment to respond to inquiries or to make inquiries to the regulatory bodies.


Carriers—Actual telephone entity that carries the toll-free call. Carriers operate networks that process telephone calls. Local-Exchange Carriers (LECs) operate end office switches that provide access service to subscribers and carry calls within a local area, known as a LATA. Interexchange carriers (IC) carry calls between local areas. A subscriber receives service from a local-exchange carrier and designates the default IC to carry calls between LATAs. Historically, local carriers and ICs were distinct, but today a carrier can be both a LEC and an IC. A carrier may also be an SCP O/O, or a carrier may obtain SS7 signaling and database services from a separate SCP O/O.


With reference to FIG. 32, in one disclosed embodiment, the architecture 3200 for a solution for toll-free with key enhancements to support the unique requirements for toll-free number administration and call routing is illustrated.


With reference to FIG. 33, in one disclosed embodiment, the architecture 3300 provides number administration capabilities for toll-free numbers facilitating integration between PSTN and an IP network. This unified platform can serve both PSTN and IP enabled numbers.


Toll-free subscribers work with Resp Orgs to search and reserve toll-free numbers. Responsible organizations continue to populate the disclosed architecture with CICs for PSTN numbers and an NS Records for IP-enabled numbers.


The disclosed embodiments of the architecture can store additional metadata (for example: toll-free CNAM, industry code, description, license status, trade group affiliations, BBB ratings and such) for the toll-free organization As the transition completes, toll-free calls would provide consumer assurance through a validated neutral third party trust chain to significantly improve consumer confidence and prevent identity fraud.


In addition to the NS Record for the iSCP, Resp Orgs can choose to configure aspects of the routing logic with the disclosed architecture (second dip). They can map a SIP URI to a toll-free record. In this example scenario, a Resp Org would copy over that information with the iSCPs. In addition to the enhanced aspects of the iSCP, the iSCP may also facilitate direct IP interconnects between RespOrgs and their service providers, if desired, through sharing additional metadata about a route.


With reference to FIG. 34, Toll-free numbers 3414 (unlike mobile and landline numbers) have evolved to be a branding and identity vehicle. Companies are increasingly using their toll-free numbers along with their online assets to provide an integrated customer experience. With this growth, availability of vanity numbers has become sparse and demand is increasing. In embodiments, a toll-free tagging service may be provided that includes a subscription-based service that is made available to Responsible Organizations (Resp Orgs), consumers and businesses. The toll-free tagging service may provide the ability to tag a toll-free number (or group of numbers), and once a number is tagged, to track updates to that number (e.g., a change in ownership, change in availability, increase in search statistics) that may then be distributed (“pushed”) to customers through emails/text messages or other means. Subscribers of the toll-free tagging service may also have the ability to create, view, update and delete tags through a web application, mobile application, or some other user interface.


The toll-free tagging service may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, the toll-free tagging service may be utilized via hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks). The toll-free tagging service may permit the user to access the reporting capabilities of the TFMP through a client device, such as a personal computer, mobile phone, tablet computer, or some other computing facility, and receive data, including multimedia to the user's client device. Functionalities of the TFMP include, but are not limited to, Number Administration (NA) and Customer Record (CR) administration.


In embodiments, subscribers may be provided options to create custom toll-free number tags based on keywords, using a website. Subscribers may have the option to choose, for example:

    • Keywords that spell a number (for example 800-Success)
    • Category based tagging (for example “Laundry”)
    • Location based tagging (for example “California Numbers”)
    • Popularity (suggestions based on search engine metrics)
    • Social Media mentions (Facebook and twitter feeds)
    • Suggestive Tags (based on peer user behavior)


In embodiments, the system may ingest data from a plurality of sources, including but not limited to the following:

    • Number popularity sourced from number searches from the toll-free management platform (TFMP) 3402
    • Number dips sourced from SCPs and network elements 3404
    • Facebook, Linkedin and twitter mentions of key words based on categories 3408
    • Location information from fuzzy location parameters (including network location elements like NPA-NXX, ANI, JIP) and such
    • Tag trend report based on tags that are most frequently indexed 3410
    • News and Current event tags
    • User contact sourcing (tag generation from subscribers address book)
    • User social feed sourcing (tag generation based on users social media feeds)
    • Seasonal tag sourcing (for example, Thanksgiving ads)


In embodiments, the TFMP 100 may allow for differentiated services based on subscriptions through a user interface 3420. For example, service offerings may be tiered:

    • Regular Tier: May allow for tag alerting based on acceptable latency. Alerts maybe available through a non-guaranteed delivery mechanism like email, and allows for basic subscription services with a cap on subscribers.
    • Plus Tier: May allow for low latency alerting based on multiple mechanisms. Premium customer support and access to artificial intelligence based indexing may be provided to see popular tags. This may allow for extended customer bases.
    • Premium Tier: May allow for premium access to see search patterns from others, unlimited tags, high speed and high frequency alerting, and the like. May also allow for an “auto reserve” function.


In embodiments, the tagging service of the TFMP may provide an unbiased valuation for a number or group of numbers based on several factors including, but not limited to:

    • Tag popularity
    • Industry financial metrics
    • Call completion, dip status
    • Average call duration
    • Vanity-ness


In embodiments, the tagging service of the TFMP may source data from distributed data sniffers that reside in networks to see dip rate and dip volume for popular numbers. This data may be compiled with other data sources including, for example, Google™ and Alexa™ trends (or other web traffic data and analytics) for tags and provide a heat map that shows “hot spots” for where the numbers are in demand and who is calling these numbers, nationally and internationally. In another example, a view may be provided that is a near real time valuation trend (e.g., analogous to a stock ticker) for, say, the top 10 tags/numbers by state/city. Current methods are limited in that they cannot combine call origination data, with social media and other public domain data, and near real-time, apply a valuation model to display a trends and prices on an interactive map, however the methods and systems of the TFMP enable such functionality.


The toll-free tagging service may alternatively or additionally utilize the TFMP system and may include a subsystem, referred to as a “node,” that may be used to build a decision tree that is downloaded to the SCPs. The decision tree may be used in various manners as otherwise described to facilitate call efficiency. Tagging data associated with toll-free numbers may be used, including with real-time network information and static call routing information, to create a real-time call path score. In an example, a toll-free number that is associated with spoofing or other fraudulent call activity may be tagged as a problematic number and a call route assigned to it to minimize the financial impact of receiving a high volume of fraudulent calls to the toll-free number. SCPs may also be a source of real-time call routing data and data used for tagging purposes. Using this information facilitates extrapolation and determination of uptime, downtime, congestion, geographical movement and economic movement of people communicating via calls. Based on real-time data that can be obtained from the SCPs and from the network, the TFMP may create a score that can be assigned to each call decision node. Such a score may also be used for the purposes of tagging. Similar to a mapping algorithm that uses distance and speed limit, given a starting point and a destination, the quickest or shortest map may be mapped. Changes in the call routing tree may be dependent upon an update to the routing tree that is then validated by the TFMP and then downloaded to the SCPs. With the use of real-time data, and more network decisions nodes added to a call routing tree based on the needs of the end subscriber, the TFMP may provide the ability to allow an end subscriber to have real-time business continuity for their toll-free number instead of having to contact their service provider, or getting a ticket opened to update their routing tree, and then having it download to all the SCPs for the new routing to take place. In embodiments, a call path score and real-time routing may be based on the best possible availability score. This may also be modified by the TFMP to allow for lowest cost score, based on the per-call and per-minute cost for particular carrier. The call score may be updated during low activity periods with a date/time stamp associated with it. This may allow real-time, or near real time, detection of a path's status. Upon completion of a call down a particular path, the TFMP may also update the call path score and the data used for the purposes of tagging. Further, real time status changes in a telecommunications network, the performance of a given call route, or some other status change, may be used as additional tagging data. In an example, a toll-free number that may experience a season high-demand may begin to operate less efficiently, this metadata 3412 may be tagged to the toll-free number for use in, for example, predictive analytics provided by the TFMP regarding temporal changes in call activities and the optimization of certain call routes. Toll-free numbers tagged as having significant seasonal variation in call volume, or some other criterion, may have additional enhanced routing trees created for the purpose of handling peak seasonal call demands. A plurality of tagged numbers may be further associated with a TSPID so that a common entity associated with the toll-free numbers may be identified.


In embodiments, number trend optimization 3410 may be provided by the TFMP in order to provide recommendations to target the right audience for a number. Recommendations may include marketing a number on a certain media within a certain geography to promote calls to the right customer. Call origination data (in partnership with the call originators and service control points (SCPs)) will be sources to provide effectiveness metrics to users based on, for example, originating numbers and derived call success rates (based on average call duration) and call completion. The toll-free tagging service may alternatively or additionally be utilized with predictive analytic services that allow a user, through the customizable user interface, or “dashboard,” to access third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. As elsewhere described, origination data may be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trend and prices on an interactive map via the TFMP.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method comprising:

    • receiving data relating to at least one of a dip rate or dip volume that is associated with a toll-free number;
    • receiving social media data relating to usage of the toll-free number;
    • analyzing the combined data and social media data to create a valuation metadata tag that is associated with the toll-free number, wherein the valuation metadata is a quantitative summary of the demand associated with the toll-free number; and
    • distributing a communication to an entity regarding the current valuation of the toll-free number.


A method comprising:

    • analyzing data relating to a toll-free number and social media data to create a valuation metadata tag that is associated with the toll-free number, wherein the valuation metadata is a quantitative summary of the inferred economic activity associated with the toll-free number;
    • inferring a rating of a second toll-free number based at least in part on the valuation metadata, wherein the toll-free number and the second toll-free number share an attribute; and storing the inferred rating of the second toll-free number.


A method comprising:

    • receiving data relating to at least one of a dip rate or dip volume that is associated with a toll-free number;
    • receiving social media data relating to usage of the toll-free number;
    • analyzing the combined data and social media data to create a valuation metadata tag that is associated with the toll-free number, wherein the valuation metadata is a quantitative summary of the demand associated with the toll-free number; and
    • initiating a toll-free number reservation based on the current valuation of the toll-free number.


With reference to FIG. 35, routing information in NS records 3500 may be downloaded to originating service provider (SP) ENUM or similar directory for call control. PSTN Call originations can continue existing PSTN 8xx call flow.


IP call originations can use an intelligent ENUM-like and SIP enabled intelligent Service Control Point (iSCP). In embodiments, many geographically redundant, highly available iSCP servers can reside in the originating service providers or provided by independent third parties. iSCPs can operate in mixed mode (SIP and PSTN) or be exclusively SIP. iSCPs provide ENUM like functionality enhanced with intelligent routing capabilities required for toll-free routing.


For IP call originations, the originating service provider queries its local naming (ENUM-like capability) server for call routing. The SP ENUM or similar service delegates the 8xx number queries to the iSCPs (similar to level 2 DNS). iSCPs execute intelligent call routing logic, and return a SIP Redirect with a URI for the SIP gateway of the toll-free service provider. The originating service provider can then route the SIP INVITE to the terminating toll-free subscriber's service provider.


For IP calls terminating to the PSTN network, the originating service provider queries its ENUM server similar to IP termination as described above, with the iSCP returning the URI for a PSTN gateway.


Toll-free numbers follow the NANP 10-digit format (NPA-NXX-XXXX) used for all telephone numbers in North America. A toll-free NPA designated by the FCC, such as 800 or 888, identifies a number as a toll-free number. Toll-free numbering may follow the E.164 format for identifying telephone numbers. The disclosed embodiment maintains status and associated information for the complete pool of toll-free numbers.


The Number Administration function provides the ability for a user to perform any of the following capabilities:

    • a. Number Query: the ability to find out information such as availability, toll-free provider ownership, and status about a specific toll-free number.
    • b. Number Search: the ability to look for one or many toll-free numbers.
    • c. Number Reserve: the ability to reserve one or many toll-free numbers for his/her toll-free provider based upon the results of a search.
    • d. Number Search & Reserve: the ability to search for one or many toll-free numbers and reserve them in the same single user action.


Except when noted otherwise, all number reservations may be taken and processed on a first come/first served basis. In embodiments, this may be due to a tariff requirement and true regardless of the source of the request.


A status is associated with each toll-free number that changes based on user actions to search for and reserve numbers and to provision and delete Customer Records for a number. Other status changes may be made automatically by embodiments of the system based on rules specified by a tariff.


The business rules around status change in the may include:

    • a. Spare—Number is available to be reserved. No toll-free service provider entity has control of the number.
    • b. Reserved—Toll-free service provider entity has taken control of the number, but a Customer Record has not yet been provisioned.
    • c. Assigned—Customer Record has been provisioned in the disclosed embodiment, but has not been sent to SCPs.
    • d. Working—Customer Record has been sent to SCPs and accepted by at least one SCP.
    • e. Disconnect—Toll-free service has ended and intercept treatment, such as an announcement, is provided; a Customer Record may be needed to specify routing for intercept treatment.
    • f. Transitional—Toll-free service and intercept service, if provided, have ended; there is no longer routing information in SCPs for the number and therefore no active Customer Record reflecting current information in an SCP associated with the number
    • g. Unavailable—Number cannot be reserved by a toll-free service provider.
    • h. Suspend—Number has been disconnected but has a Customer Record to restore service, or number is the subject of a billing dispute.


For all statuses except usually SPARE and UNAVAILABLE, a toll-free service provider entity may be associated with the number. This association begins when the toll-free service provider entity takes control of the number by completing a reservation. Except when noted otherwise, all number reservations may be taken on a first come/first served basis.


With reference to FIG. 36, in another embodiment for one click activation 118, a widget 3602 may be embedded within a webpage 3604 to facilitate reservation of a toll-free number via a user interface 1806. The term widget as used herein may refer to a client side, browser based application which displays data coming from different sources. In an embodiment, the widget 3602 may also be used on a mobile device as a mobile app. The embedded widget 3602 may communicate with a server 3608 using an API 3608 such as secure Restful API.


The widget 3602 may be embedded within a webpage 3604 with HTML tags. The complexity and logic may thus be hidden in the Javascript that resides on the server 3608. Loading the widget 3602 on to the hosting webpage 3604 may be performed through a bootstrap script that, for example, may be written as a Javascript file, or in some other language, that resides in the server 3608. A script tag can then be used to invoke loading this, thereby loading the bootstrap.


Generally, there are two ways to embed the content on the hosting webpage 3604, using IFrame, or using DOM in Javascript, and placing it within the host site or a combination thereof. The host page may be a client website within which the widget 3602 is embedded.


Communication technology may include HTML5, JavaScript, CSS, JSON and Restful API and services. The client may utilize HTML5, Javascript, or CSS whereas the server may provide the Restful API and services. In order for the widget to communicate with the host page or if the widget needs to send data to the server, based on what is being used, it can be performed using Normal Post, AJAX (asynchronously), or some other process. In order for cross domain communication between the host page, embedded code or IFrame, HTML 5's API called postMessage may be used. JSON is a file format that is understood by both client and server and hence may be also be readily used for data representation and transfer.


With reference to FIG. 37, various methods may be utilized to secure this communication. The widget 3602 may include a login feature 3902 in order to use the services. After initial credential validation with username and password, tokens may be provided to users. This may be used in the subsequent communication back to the server. In the alternative, API keys may be used. On authentication and authorization, various search 3904, reserve 3906, activation 3910, and confirmation 3912 elements may be provided.


With reference to FIG. 38, one disclosed non-limiting embodiment of a method 3800 may be initiated by loading the webpage 3604 (step 3802) then lazy loading the widget 3608 (step 3804). That is, the lazy loading may be utilized to minimize any effect upon the loading speed of the webpage 3604. Once the widget 3608 is loaded (step 3804) the login and search features (step 3808) are provided such that reservation/activation may be initiated.


The widget 3602 may be particularly beneficial to a business owner and/or Resp Org/Toll Free Service Provider. The business owner who visits a web page may view the widget 3602 that includes a statement such as, for example, “Reserve your Toll Free Number or “Do you have your Toll Free Number?” with a ready presented text field to search for a desired Toll Free Number or to enter their business name. A list of appropriate or related toll free numbers and an option to reserve and activate is thereby provided in a one-click or relatively one-click manner.


For a Resp Org/Toll Free Service Provider, the widget 3602 can be embedded in their portal. The widget 3602 provides a login page such that the widget 3602 provides a text field to reserve toll-free numbers along with a drop down list of numbers that expire in the next month and a popup link to extend. A popup link may also provide historical information such as their last 10 actions. The widget 3602 may also display a popup link to display status of the toll-free numbers in which a user previously indicated interest.


In the toll-free industry, it currently is a multi-step process to obtain a toll-free number and submit a request to active that number. It requires the user to first search and reserve a number and then in a separate transaction, often on a separate user screen, input the information to create a toll-free number routing record that is sent to the service control points (SCPs), thus activating the number for use. According to embodiments of the present disclosure, users may complete such a request related to activation of a toll-free number in a single user interaction with the system, providing minimal information. This process may provide a one-click-type functionality, hereinafter referred to as one-click activate, to activate the number, and will, in the same single-step user activation search for the toll-free number based upon user criteria. Initiation of the one-click activation may be facilitated by the use of a widget, as described herein, such as a widget operating on a client device. In embodiments, a one-click activate request may be a request from a user to 1) search for a number, or multiple numbers, that fit a provided search criteria, 2) reserve the number(s) matching the criteria, and 3) activate the number(s) using a selected customer record template, as described herein, and producing a pointer record. The final result of this request will be a toll-free number assigned to the user's Resp Org that has a customer pointer record assigned to it.


In embodiments, a user may utilize a new user interface screen, including but not limited to a customizable dashboard, as described herein, that may be accessed from a landing page of the user interface that is associated with the TFMP. The new screen may be referred to as the “Search-Reserve-Active,” also referred to herein as the S-R-A, from the landing page. A user may be required to have the correct permissions to be able to perform these actions, such as:

    • The user must have Update in NUS_PERMISSIONS
    • The user must have Update in PAD_PERMISSIONS


The S-R-A may also provide for predictive analytic services that may be provided to a user, through the customizable user interface, or dashboard, to access third party data services, sponsored data and information derived from toll-free telecommunications networks, including but not limited to telecommunications carriers, service control points, call centers, or other parties affiliated with a toll-free telecommunication network. As elsewhere described, origination data may be combined with social media and other public domain third party data, and near real-time, apply a valuation model to display a trends and prices on an interactive map via the TFMP.


In embodiments, the S-R-A screen may be a clone of a number search screen that is associated with the TFMP, and have, but not be limited to, the following screen design elements:

    • Present an action button called “Activate New Number”
    • Provide an action for the user to select a template record to be used for activation from a drop down list of template records
    • Provide an action for the user to specify information necessary to be supplied in order to active a number, including but not limited to the following:
      • Effective date & time—A future date and time or “now.” Now may indicate that the record should go directly to an activated state.
      • Service order number
      • Number of lines to validate


With reference to FIG. 39, a sample UI design 3900 is provided. The UI may alternatively or additionally be embodied in a distributed computing environment, such as a cloud based computing network. In another embodiment, the UI may be hybrid networks, including usage of a cellular telephone network (and associated mobile communication devices, such as smart phones), a distributed, cloud network and an enterprise network associated with a carrier or other business organization (and any combination or sub-combination of such networks).


In embodiments, when a user selects the S-R-A function of the landing page, the system may retrieve a list of customer template records that have been defined for a Resp Org. If this Resp Org does not have any customer template records defined, the user may receive a message notifying the user of a lack of required definition, such as “E205: Search, Reserve, & Activate functionality requires the users Resp Org to have at least one customer template record defined. Your Resp Org does not.” The user may then be returned to the Landing page. If the Resp Org does have customer template records defined, the customer template record names may be displayed in a scrolling list on the screen. The user may then select one of the customer template records for use in the request.


In embodiments, a user may select a number search criterion that provides the ability to specify a specific number, a number with wildcard selection, or the NPA, NXX, and line number selections. The user may elect to have a set of default information (template, effective date, and service order number and so forth) associated with their Resp Org and/or user ID. Rather than select these items, the user may elect to use default values that are provided, thus expediting the process even further. The user may also elect not to use the default values, and may then supply the values. The search process may also include utilizing predictive analytics of the TFMP, as described herein, in order to learn more about the history and metadata that is associated with a number. Toll-free numbers, including those that are reserved and/or activated using the one-click activation may be tagged, using the methods and systems described herein, according to criteria of interest to a user. In an example, a user may search for toll-free numbers based on a predictive analytic result of toll-free numbers the TFMP has determined are active in the New England area. Predictive analytic results may also relate to specific populations of interest to a user (e.g., New York residents), behavioral data, or some other data parameter.


In embodiments, a number may then be reserved and/or activated and tagged by the user as a number that is relevant to the New England marketplace. Prior to reserving or activating a number, a user may also check a TFMP registry to determine if there is a history of reports of abuse associated with the number, for example frequent fraudulent calls (i.e., “spoofing”). The user may tag toll-free numbers in order to note this history of abuse, or other factor of interest, for future searches, and reserved or activated numbers may be associated with a toll-free service provider identifier (TSPID). The TSPID may be an existing TSPID that the user has, or as part of the one-click to activate method and system, a new TSPID may be created for the user. The user may select a customer template record from a list to be used when creating a pointer record used to active toll free number(s). The user may select only one customer template record to be used and that template record may be used with every number requested in this particular request. The user may select an effective date and time for the request. The user may further specify a future date and time or select “now” for immediate processing. Formatting and validation criteria may also be provided. The user may complete additional fields as necessary for a pointer record to be created:

    • Service Order number
    • Number of Lines


In embodiments, once all the required fields are populated, the user may select the “Activate New Number” button to start the process. The process may include the search of, and reservation for, the toll-free number(s), and the submission of a request to create a pointer record for the number(s). Errors encountered along the way may result in an error being reported back to the user for that number. In an example, requests of more than ten numbers may be processed in the background, from the perspective of the user. The user's request may be validated and the user provided a request ID. Control of the one-click activate function may be given back to the user with a notice that they will be informed when the request completes. In another example, requests for ten or fewer numbers may be processed in real time and the results are returned to the user when the request completes.


In embodiments, the one-click activate function may perform a search and reserve function for all the requested numbers in blocks of up to ten numbers, depending upon how many numbers are requested. The activation function of the process may require a separate system request for each number being activated. The one-click activate function may control the processing of the individual requests so that, from a user standpoint, it appears as a single user interaction with the system, and a response does not go back to the user until the process has been completed. Once the request has completed processing, the one-click activate function may display back to the user in the search results area of the screen (e.g., ten or fewer numbers) the list of numbers and information about them similar to how it is done with the search and reserve functionality, as described herein. For more than, for example, ten numbers, the results may be made available in the communication area off the landing page.


In embodiments, a parking lot functionality may allow a user to go through a similar one-click activate process, but instead of establishing specific routing for a number via a customer record template, the user may define the routing for this number as “parked.” Parked in this context means that the number may have a default routing to a pre-defined customer announcement so the number can be activated without a final determination of the routing and when called, the user may be presented with this announcement stating the service this number provides is not currently available.


The following are illustrative clauses demonstrating non-limiting embodiments of the inventions described herein:


A method comprising:


receiving a one-click activate request from a user, wherein the request includes at least a customer record template reference and an indication of when to active a toll-free number associated with the request;


searching a responsible organization record to determine the presence of a defined customer template record relating to the user request, wherein the responsible organization is associated with toll-free telecommunications;


retrieving at least one customer template record, wherein the customer template record is a defined customer template record for the responsible organization; and


activating the user request, wherein the activation includes at least one of activating or reserving the toll-free number.


A user interface, comprising:


a webpage; and


a widget operable to reserve a toll free number embedded within the webpage.


A method to secure user interface, comprising:

    • lazy loading a widget operable to reserve a toll free number embedded within a webpage.


A representative flow operation showing the current system common number status transitions for activation of a toll-free service, starting with a number in SPARE status 4002, is shown in FIG. 40. Transitions that may not be part of the typical flow may not be illustrated in FIG. 40, including transition from WORKING 4004 to ASSIGNED 4008 and ASSIGNED 4008 to RESERVED 4010, as well as transitions to and from UNAVAILABLE status. SUSPEND 4012, DISCONNECT 4014 and TRANSITIONAL 4016 features may be provided. This flow is shown to facilitate understanding of system status transitions as may be understood by the customers.


A description of possible number status transitions is provided in the below table. This flow is shown to facilitate understanding of system status transitions as is understood by the customers and is not a dictate of limitations thereto.
















Transition
Transition



From
To
Trigger





Initial
Spare
System administrator opens a toll-free NPA-NXX.


Creation




Spare
Reserved
Successful reservation by toll-free service provider




entity user or system administrator user.


Spare
Unavailable
System administrator user action.


Reserved
Assigned
CR provisioned against the number.


Reserved
Spare
Time since transition from SPARE to RESERVED has




reached specified limit (Reserved Duration Limit,




currently specified by FCC as 45 days) or user action.


Reserved
Unavailable
System administrator user action.


Assigned
Working
CR has been sent to SCPs and accepted by at least one.


Assigned
Reserved
CR provisioned against the number, but deleted by




toll-free service provider entity user, and Reserved




Duration Limit timer has not been reached.


Assigned
Spare
CR provisioned against the number, but deleted by the




toll-free service provider entity user, and Reserved




Duration Limit timer has expired. Or Assigned




Duration Limit, currently specified by the FCC as 6




months, expires.


Working
Disconnect
CR disconnect has been accepted by all SCPs and




intercept routing is being provided.


Working
Transitional
CR has been deleted from all SCPs (no intercept




routing provisioned).


Disconnect
Transitional
End Intercept date has been reached and SCPs have




deleted CR.


Disconnect
Spare
Time since transition from WORKING has reached




specified limit (currently specified by FCC as 4




calendar months) or toll-free service provider entity




user or system administrator user action.


Transitional
Spare
Time since transition from WORKING has reached




specified limit (currently specified by FCC as 4




calendar months) or toll-free service provider entity




user or system administrator user action.


Transitional
Reserved
System administrator user action.


Transitional
Unavailable
System administrator user action.


Disconnect
Suspend
“New Connect” CR entered while number is in




DISCONNECT status.


Suspend
Working
CR to restore service has been sent to SCPs and




accepted by at least one.


Suspend
Assigned
Intercept period ends and “New Connect” CR is




pending.


Suspend
Spare
Time since transition into SUSPEND has reached




specified limit (currently specified as 8 calendar




months) with no connect CR or CR deleted by the




toll-free service provider entity user or system




administrator user.


Unavailable
Spare
System administrator action.










Number Administration: Query, Search, Reserve, and Search & Reserve


Requirements—Minimal Feature Set











Current state




MFS #
or New
Function
Description





MFS 1
Current state
Search Available
Find available numbers. Control




Numbers
search by configurable





parameters.


MFS 1a
New
Locking numbers
Do not lock numbers during a




after search
straight search. Numbers may be





only locked on a reserve.


MFS 2
Current state
Reserve Avail
ROs reserve available numbers.




Numbers
Reservation limits apply by resp.





org & overall number





administrator rationing and





FIFO.


MFS 3
Current state
Search & Reserve
Combination of MFS 1 & 2 in




Available
one user action.




Numbers



MFS 4
Current state
Query a Number
Return relevant attributes





regarding a number.


MFS 4a
Current state
Number
In embodiments, the system may




Reservation
maintain limits for the quantity




Limits
of numbers an individual toll-





free service provider entity is





allowed to have in RESERVED





status. The current limit specified





by the FCC tariff is the greater of





7.5% of the toll-free service





provider's working numbers or





2000 numbers, not to exceed 3%





of the total quantity of SPARE





numbers. A system administrator





may specify different limits.





Defining a limit should be





configurable.


MFS 4b
Current state
Number
In embodiments, the system may




Allocation
impose weekly limits for how




Limits
many numbers a toll-free service





provider entity can reserve. The





available pool of numbers in





SPARE status is divided into a





portion that is allocated to each





toll-free service provider entity





based on market share and a





portion that is allocated equally





among all toll-free service





provider Entities. This function





should be configurable.










Functional Descriptions









Function
Function Criteria
Response Criteria





Query a
Query for a specific number
Return information about the


Number

number including status of the




number, Date/time of transition




to current status, toll-free




service provider, Reserved Until




Date, Disconnect Until Date,




Last Active Date depending




upon permissions.


Search for
Search for completely random
Return a number or list of


a Number
number(s)
numbers meeting the search




criteria (1—configurable max




number) with status. The




number is not locked until a




reserve is executed.



Search for multiple consecutive




numbers with any criteria as




specified herein




Search for numbers in a specific




NPA (i.e., 800, 888, 877, etc.)




Search using wildcards to represent




any number




(i.e., 800-***-CARS)




Search for numbers with duplicated




numbers in them (i.e., 855-345-




&&&& where & means a duplicate




numbers like 2222 or 5555)




Search for numbers containing a




specific string of numbers at any




point in the number (i.e.***-777-




0000)




Search for numbers starting with a




specific string




(i.e., 855-234-****)




Search for numbers ending with a




specific string




(i.e., 855-***-5555




Search for numbers using alpha




characters as well as numbers (i.e.,




888-234-CARS)



Reserve a
Reserve a single number selected
Return updated number status


Number
from a search result
of Reserved and updated toll-




free service provider assigned if




number still available; else




return notification of number no




longer available.



Reserve multiple numbers
Return updated number status



selected from a search result
of Reserved and updated toll-



(1—configurable max number)
free service provider assigned




for all numbers that may be still




available; else return




notification of number no




longer available for those that




may be not available.


Search &
Search & Reserve completely
Return a number or list of


Reserve a
random number(s)
numbers meeting the search


Number

criteria with updated number




status of Reserved and updated




toll-free service provider




assigned.



Search for numbers in a specific




NPA (i.e., 800, 888, 877, etc.)




Search using wildcards to represent




any number




(i.e., 800-***-CARS)




Search & Reserve numbers with




duplicated numbers in them (i.e.,




855-345-&&&& where & means a




duplicate numbers like 2222 or




5555)




Search & Reserve numbers




containing a specific string of




numbers at any point in the number




(i.e.***-777-0000)




Search & Reserve numbers starting




with a specific string




(i.e., 855-234-****)




Search & Reserve numbers ending




with a specific string




(i.e., 855-***-5555




Search & Reserve numbers using




alpha characters as well as numbers




(i.e., 888-234-CARS)









The below delineated example use cases may be generic in showing the flow for multiple specific cases as defined in the particular example use case.















Use Case ID
NA-UC-1


Use Case
Search for a number


Name



Use Case
Search for a toll-free number or multiple numbers with


Description
status of SPARE


MFS
MFS 1; MFS 1A;


Reference



Actor(s)
User (toll-free service provider or disclosed embodiment



administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-
The user has logged into the system


Conditions
In embodiments, the system has verified identity and



permissions of the specific user and of the toll-free service



provider as a whole


Post-
User has found Spare numbers meeting criteria


Conditions
No change for the searched number status


Assumptions
None identified


Interface
None identified


Con-



siderations










Primary
Step 1
The user initiates a Search. The user may specify


Flow

none, one, or more of the following Search criteria:




One or more than one number returned




Specific starting NPA




Various combinations of alpha & numbers




included in the number




Specify numbers using wildcards and duplicate




value indicators




Request consecutive numbers



Step 2
In embodiments, the system returns a number or list




of numbers with SPARE status








Alternate
E1: At Step 2, if no values with SPARE status may be


Flows
found, embodiments of the system indicates this to the user



E2: At Step 2, if multiple numbers may be requested and



there may be not enough SPARE numbers to match the



quantity requested by the user, embodiments of the system



returns the quantity that is available



E3: At Step 2, if the maximum allowed quantity of



RESERVED numbers for the toll-free service provider



entity has been exceeded, embodiments of the system



indicates this to the user when the SPARE number is



returned


Use Case ID
NA-UC-2


Use Case
Reserve a number with spare status


Name



Use Case
Reserve a number or multiple numbers with spare status


Description
based upon the results of a previously executed Search


MFS
MFS 2


Reference



Actor(s)
User (toll-free service provider or disclosed embodiment



administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-
The user has logged into the system.


Conditions
In embodiments, the system has verified identity and



permissions of the specific user and of the toll-free service



provider as a whole



The user has executed a Search that has returned a toll-free



number or list of toll-free numbers in Spare status


Post-
Numbers in RESERVED status.


Conditions



Assumptions
None identified


Interface
None identified


Con-



siderations










Primary
Step 1
The user requests Reservation of one or more of the


Flow

numbers returned by the system.



Step 2
For each number requested to be reserved, system




verifies that the number is still available (in Spare




status) for reservation.



Step 3
For each number requested to be reserved, system




verifies that the toll-free service provider entity has




not reached the maximum allowed number of




RESERVED numbers.



Step 4
For each number for which is still available and the




maximum allowed quantity of RESERVED numbers




has not been reached, embodiments of the system




places the requested numbers in RESERVED status,




and updates the count of RESERVED numbers for




the toll-free service provider entity.



Step 5
In embodiments, the system indicates the numbers




that have been reserved for the user.








Alternate
E1: At Step 2, If a number requested to be reserved is no


Flows
longer available, embodiments of the system can return to



the user a notification that this number is no longer avail-



able and continue with the list of numbers to be reserved.



E2: At Step 3 and 4, if the toll-free service provider entity



has reached the maximum allowed number of RESERVED



numbers, the Reservation attempt fails for that number: an



indication of this error is provided to the user. This applies



for each number for which reservation was requested. At



Step 7, embodiments of the system indicate the numbers



that may be reserved and that the maximum allowed



quantity of RESERVED numbers has been reached.


Use Case ID
NA-UC-3


Use Case
Search And Reserve a number or multiple numbers


Name



Use Case
Search for a number or multiple random in SPARE status


Description
using any of the available search criteria and reserve the



numbers in one operation


MFS
MFS 3


Reference



Actor(s)
User (toll-free service provider or disclosed embodiment



administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-
The user has logged into the system


Conditions
In embodiments, the system has verified identity and



permissions of the specific user and of the toll-free service



provider as a whole


Post-
Numbers may be in RESERVED status


Conditions



Assumptions
None identified


Interface
None identified


Con-



siderations










Primary
Step 1
The user initiates a Search. The user may specify


Flow

none, one, or more of the following Search criteria:




One or more than one numbers returned




Specific starting NPA




Various combinations of alpha & numbers




included in the number




Specify numbers using wildcards and duplicate




value indicators




Request consecutive numbers



Step 2
In embodiments, the system verifies the quantity




requested, the current count of numbers reserved for




the toll-free service provider entity, and the




maximum allowed quantity of RESERVED numbers.



Step 3
In embodiments, the system places a quantity of




numbers in RESERVED status, up to the limit




allowed for the toll-free service provider entity, and




updates the count of RESERVED numbers for the




toll-free service provider entity.



Step 4
In embodiments, the system indicates the numbers




that have been reserved for the user.








Alternate
E1: At Step 2, if no SPARE values may be found,


Flows
embodiments of the system may indicate this to the user and



fno urther action is taken.



E2: At Step 2, if the maximum allowed quantity of



RESERVED numbers has been exceeded before reserving



any numbers, embodiments of the system indicates this to



the user and no further action is taken.



E3: At Step 4, if the quantity of numbers reserved in Step 3



is less than the quantity requested (because the maximum



allowed quantity of RESERVED numbers is reached),



embodiments of the system indicates the numbers that may



be reserved and that the maximum allowed quantity of



RESERVED numbers has been reached.


Use Case ID
NA-UC-4


Use Case
Query for Information about a number


Name



Use Case
The user queries embodiments of the system for information


Description
related to a specific number


MFS
MFS 4


Reference



Actor(s)
User (toll-free service provider or disclosed embodiment



administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-
The user has logged into the system


Conditions
In embodiments, the system has verified identity and



permissions of the specific user and of the toll-free service



provider as a whole


Post-
No change for the queried numbers


Conditions



Assumptions
None identified


Interface
None identified


Con-



siderations










Primary
Step 1
The user requests information about a number.


Flow
Step 2
In embodiments, the system returns status and other




information about the number. Information returned




depends on the permissions of the user and the toll-




free service provider entity controlling the number.








Alternate
E1: At Step 2, embodiments of the system provide an


Flows
indication to the user information cannot be returned for the



number.









Examples: Number Search Using Starting Point
















Starting
Example



Point
Starting Point
Possible Search Result





NXX
NXX = 321
NPA-321-XXXX to NPA-999-XXXX,




where NPA is any valid toll-free NPA




and XXXX is 0000-9999


XXXX
XXXX = 1234
NPA-NXX-1234 to NPA-NXX-9999,




where NPA is any valid toll-free NPA




and NXX is any valid NXX in the NPA


NXX and
NXX = 321 and
NPA-321-1234 to NPA-999-9999,


XXXX
XXXX = 1234
excluding XXXX = 0000-1233,




where NPA is any valid toll-free NPA




Note: NPA-322-0000 is not a valid




response for this search


NXX-XXXX
NXX-XXXX =
NPA-321-1234 to NPA-999-9999,



321-1234
where NPA is any valid toll-free NPA




Note: NPA-322-0000 is a valid




response for this search














Example






Masks and






Search






Results for a
Valid
Quantity
Example
Example


Consecutive-
Quantity of
of
Valid
Invalid


Number
Consecutive
Numbers
Search
Search


SearchMask
Numbers
Requested
Results
Results





888-234-
2-9
4
888-234-5673
888-234-5678


567*


888-234-5674
888-234-5679





888-234-5675
888-234-5680





888-234-5676
888-234-5681


888-234-
2-99
4
888-234-5678
888-234-5698


56**


888-234-5679
888-234-5699





888-234-5680
888-234-5700





888-234-5681
888-234-5701


888-234-
2-9
4
888-234-5111
888-234-5888


5&&*


888-234-5112
888-234-5889





888-234-5113
888-234-5890





888-234-5114
888-234-5891





Or






888-234-5885






888-234-5886






888-234-5887






888-234-5888









Example Number Search with Mask Characters















Mask


Possible


Character
Usage
Example Mask
Search Results







Wildcard- *
Number returned
888-456-78**
888-456-7800 to



in search results

888-456-7899



can include any





digit in the





indicated position




Repeat
Number returned
800-456-&23&
800-456-0230


Wildcard- &
in search results

800-456-1231



includes the same

800-456-2232



digit in each of

800-456-3233



the positions

800-456-4234



indicated

800-456-5235





800-456-6236





800-456-7237





800-456-8238





800-456-9239


Number—0-9
Number returned
***-87*-****
NPA-870-0000 to



in search results

NPA-879-9999



includes the

Where NPA is a



specified digit in

valid toll-free



the position(s)

NPA



indicated




Alpha—A-Z
Number returned
866-***-TEAM
866-NXX-8326



in search results

where NXX is a



includes a digit

valid NXX



that maps to the





letter specified in





the position(s)





indicated, based





on the mapping





provided by a





standard





telephone keypad









In addition to the existing number search and reserve functionality noted above, embodiments of the disclosed architecture may support search and reserve features. Description of at least some of these is provided at a relatively high level describing the business functionality required as follows:














Search & Reserve Requirements-New Feature Set









NFS #
Function
Description





NFS 1
Suggested Number
When a toll-free provider searches for a specific



Response
number and that number is not available, the




system should provide the ability to return




suggested alternative numbers to the user. The




alternative numbers would be determined via an




algorithm based upon the number requested. This




same functionality should be able to be expanded




to return suggested alternative when a partial




number search is performed, but there are no




numbers matching the mask entered by the user.




The user should have the ability to turn off this




feature if they do not want suggestions.




Example: The user searches for 888-222-1234




and it is not available, but 888-777-1234 is, the




system can return this as an alternative.


NFS 2
Predictive Number
By performing an analysis of the toll-free



Search & Reserve
providers current number allocation, provide a list




of available numbers that that similar




characteristics to the current allocation. The user




should then have one click reservation ability for




this number




Example: The toll-free provider has allocated the




numbers 877-234-3000 thru 877-234-3015 and




the number 877-234-3016 is available, provide




this as an informatory suggestion when going to




the Search function.


NFS 3
User Saved Searches
Allow the toll-free provider to create searches and



with one click initiation
save them for future use. These saved searches




could then be executed with a single click or




could also be setup to be run every time the user




logs into the system.


NFS 4
Bulk Load Numbers
Bulk import/export TFN (toll-free numbers) for



for Search
search and reservation requests performed online




or thru an API. This would allow a user to




maintain list of TFNs they wish to search on a




regular basis.


NFS 4A
Bulk Number Search
The user will be able to search & reserve more



& Reserve
than 10 numbers in one request (10 numbers is the




current system limit). The new limit should be




configurable. Depending upon the size of the




request and time it takes to process, the control of




the system can be returned to the user and a




notification of the completion of the request will




be sent to the user upon request completion.


NFS 5
Scheduled Searches
Allow toll-free providers to schedule a specific




search to be performed on a regular basis at a




date/time desired by the user without the user




being logged in. Allow the user to either be




notified via email or text if a number becomes




available or alternatively to set a reserve option




on the search and reserve the number automatically.


NFS 5A
One Click Activate
Allow a toll-free provider to search for a number,




reserve that number and activate that number by




assigning it a default customer record with a




single user transaction.










Number Administration: Additional User Functions


Requirements-Minimal Feature Set









MFS #
Function
Description





MFS 5
Update user
Update contact information for end user of number



information
or comments.


MFS 5a
Update number
Update any of the information associated with the



information
number that is reserved.


MFS 5b
Find toll-free service
Have their ability for a toll-free service provider to



provider numbers &
determine their numbers and status information



status information
utilizing a “toll-free Service provider dashboard of




numbers”


MFS 6
Toll-free service
Toll-free service provider releases numbers, return



provider release
to spare.



numbers



MFS 7
Toll-free service
Transferring a number or multiple numbers from



provider number
one toll-free service provider to another.



transfer










Functional Descriptions









Function
Function Criteria
Response Criteria





Update Numbers
Update Information
Acknowledge changes were made and display


MFS 5 & 5a
such as dates, contact
updated information.



info, etc. for number(s)




associated with a toll-




free service provider.



Toll-free service
Toll-free service
Acknowledge changes were made and display


provider release
provider releases
updated information.


numbers
numbers, returning



MFS 6
them to spare status



Toll-free service
Transferring a number
Acknowledge changes were made and display


provider number
or multiple numbers
updated information.


transfer
from one toll-free



MFS 7
service provider to




another.



Find toll-free
Have their ability for a
Provide a toll-free service provider a method of


service provider
toll-free service
displaying current up to date information about the


numbers & status
provider to display their
numbers they control. The information should be


information
numbers and status
current with minimal latency.


MFS 5b
information utilizing a




“toll-free service




provider dashboard of




numbers”









As an example use case, to update Information such as dates, contact info, etc. for number(s) associated with a toll-free service provider may be provided as follows:















Use Case ID
NA-UC-4


Use Case Name
Change Reserve-Until Date/Disconnect Until Date



for a Number


Use Case
User requests that embodiments of the system


Description
change the date associated with an expected change



of status of a number.


MFS Reference
MFS 5a


Actor(s)
User (toll-free service provider or disclosed



embodiment administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-Conditions
The user has logged into the system



In embodiments, the system has verified identity



and permissions of the specific user and of the



toll-free service provider as a whole


Post-Conditions
The specified date is changed


Assumptions
None identified


Interface
None identified


Considerations



Primary Flow
Step 1 The user requests one of the following date



changes: 1. Reserve-Until Date (for a RESERVED



number) 2. Disconnect Until Date (for a



Disconnected number)



Step 2 In embodiments, the system verifies the



identity and permissions of the user and that the



specified number has the expected status.



Step 3 In embodiments, the system verifies that the



specified date is earlier than the existing date.



Step 4 In embodiments, the system changes the date



when the number can change to its next status (in



the absence of other user activity).


Alternate Flows
E1: At Step 2, embodiments of the system notify



the user if the user does not have permission for the



change or if the number is not in the expected status.



E2: At Step 3, if the specified date is beyond the



current value, an indication is provided to the user.


Use Case ID
NA-UC-6


Use Case Name
Change the Status of One or More Numbers


Use Case
The user requests that embodiments of the system


Description
change the status of one or more numbers to another



allowed status


MFS Reference
MFS 5a; MFS 6


Actor(s)
User (toll-free service provider or disclosed



embodiment administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-Conditions
The user has logged into the system



In embodiments, the system has verified identity



and permissions of the specific user and of the



toll-free service provider as a whole


Post-Conditions
The specified numbers may be SPARE and may be



reserved by any toll-free service provider.


Assumptions
None identified


Interface
None identified


Considerations



Primary Flow
Step 1 The user requests that the status of one or



more numbers currently at one status be changed to



another allowed status.



Step 2 In embodiments, the system verifies the



identity and permissions of the user



Step 3 In embodiments, the system changes the



status of the numbers to the status.


Alternate Flows
E1: At Step 2, embodiments of the system notify the



user if any of the specified numbers cannot change



from the current status to a status.









Change the toll-free service provider information for one or more numbers















Use Case ID
NA-UC-7


Use Case Name
Change the toll-free service provider information for



one or more numbers


Use Case
User requests that embodiments of the system change


Description
the toll-free service provider Unit associated with a



number or numbers in RESERVED, WORKING,



DISCONNECTED, or TRANSITIONAL status


MFS Reference
MFS 7


Actor(s)
User (toll-free service provider or disclosed



embodiment administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-Conditions
The user has logged into the system



In embodiments, the system has verified identity and



permissions of the specific user and of the toll-free



service provider as a whole


Post-Conditions
The specified toll-free service provider unit is



changed for all information associated with the



number(s).


Assumptions
None identified


Interface
None identified


Considerations



Primary Flow
Step 1 The user requests that the toll-free service



provider Unit associated with a number or list of



numbers that is currently controlled by a particular



toll-free service provider Unit be changed to a value.



Step 2 In embodiments, the system verifies the



identity and permissions of the user.



Step 3 In embodiments, the system changes the



toll-free service provider Unit associated with the



number(s).


Alternate Flows
E1: At Step 2, embodiments of the system notifies the



user if any specified numbers may be not associated



with the specified toll-free service provider unit.



E2: At Step 2, embodiments of the system notifies the



user if the specified toll-free service provider unit is



not valid.



E3: At Step 2, embodiments of the system notifies the



user if not permitted to request this change.









Number Administration: Additional User New Features


Additional features in the embodiments of the disclosed architecture may be supported such as:












Additional User New Features Requirements-New Feature Set









NFS #
Function
Description





NFS 6
Spare Number
This feature would allow for a toll-free



Availability
Provider to submit requests to be notified if a



Notification
specific toll-free number became available to




be reserved. The notification could be via an




email notification, pop-up when they log in,




or text notification.




This could be a value added service with an




additional charge, which would have tariff




implications or just a service provided to all




users.









There may be a number of tasks where a system administrator enters values for configuration parameters that control an aspect of system functionality. A pre-condition is that the user is a system administrator with permissions to perform the specific administrative task.


For each administrative use case, the following sequence of steps applies:

    • a. Step 1: The user enters values
    • b. Step 2: In embodiments, the system verifies the user input
    • c. Step 3: In embodiments, the system accepts the parameter values and notifies the user of success


If the user input is not valid or some other condition prevents successful completion of the use case, embodiments of the system can inform the user of an error.














Requirements-Minimal Feature Set











Current




MFS #
state or New
Function
Description





MFS 9
Current state
NPA &
Open & Close NPA's and




NPANXX
NPANXXs (SMS Admin




Mgmt.
only). The pool of toll-free





numbers is controlled by





opening and closing toll-





free NPAs and NPA-





NXXs as directed by the





FCC. An NPA becomes





Open when the numbers





in the first NXX within





the NPA become available.





An NPA becomes Closed





when all the NXXs within





the NPA may be Closed.


MFS 10
Current State
Reservation
Set mandated Reservation




and
and Allocation limits. In




Allocation
embodiments, the system




limits
can impose weekly limits





for how many numbers a





toll-free service provider





entity can reserve. The





available pool of numbers in





SPARE status is divided





into a portion that is





allocated to each toll-free





service provider entity





based on market share and a





portion that is allocated





equally among all toll-free





service provider entities.





(SMS Admin may be only





allowed to set limits)










Functional Descriptions










Function



Function
Criteria
Response Criteria





NPA/NNX
Open & Close
Return information about the


Management
NPA's and
number including status of the


MFS 9
NPANXXs
number, date/time of transition to




current status, toll-free service




provider, Reserved Until Date,




Disconnect Until Date, Last Active




Date depending upon permissions.


Reservation
Set Tariff
Return a number or list of numbers


and
mandated
meeting the search criteria


Allocation
Reservation
(1—configurable max number) with


limits
and Allocation
status.


MFS 10
limits









An example use case to open a Toll-Free NPA and NXXs is as follows:















Use Case ID
NA-UC-8


Use Case Name
Open a Toll-Free NPA and NXXs


Use Case
Administrator opens a toll-free NPA and schedules


Description
opening of one or more of the included NXXs.


MFS Reference
MFS 9


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-Conditions
The user has logged into the system



In embodiments, the system has verified identity and



permissions of the specific user


Post-Conditions
A toll-free NPA is added to the system. Numbers



within the NXXs may be added with an initial status



of SPARE.


Assumptions
None identified


Interface
None identified


Considerations



Primary Flow
Step 1 The user enters the three digit toll-free NPA



to be opened.



Step 2 In embodiments, the system verifies that the



NPA is a valid format and is not currently open.



Step 3 In embodiments, the system facilitates the user



to enter a date and time to schedule availability for



each of the NXXs within the NPA that may be to be



available for Search/Reserve. (Allocation controls can



be specified for an NPA).



Step 4 At the indicated date and time, embodiments



of the system add the numbers in the NXXs within



the NPA with an initial status of SPARE and, for the



first NXX that is made available in the NPA, marks



the NPA as Open.


Alternate Flows
E1: At Step 2, embodiments of the system notify the



user if the operation cannot complete due to system



conditions or invalid inputs.



E2: At Step 2, embodiments of the system notify the



user if the user does not have permission to execute



the operation.



E3: At Step 3, prior to reaching the specified date and



time for opening of an NPA-NXX, the user can revise



the date and time.









An example use case to Specify Number Reservation Limits is as follows:















Use Case ID
NA-UC-9


Use Case Name
Specify Number Reservation Limits


Use Case
In embodiments, the system administrator enters


Description
values to specify limits for percent of numbers in



working status, count of numbers in RESERVED



status, and percent of quantity of SPARE numbers



that a toll-free service provider entity is allowed to



have in RESERVED status.


MFS Reference
MFS 10


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional
NA—Number Administration


Category



Pre-Conditions
The user has logged into the system



In embodiments, the system has verified identity and



permissions of the specific user


Post-Conditions
The limits for percent of working numbers, count of



working numbers, and percent of quantity of SPARE



numbers that a toll-free service provider entity is



allowed to have in RESERVED status may be set.


Assumptions
None identified


Interface
None identified


Considerations



Primary Flow
Step 1 In embodiments, the system administrator



enters values for the limits for percent of working



numbers, count of reserved numbers, and percent of



quantity of SPARE numbers that a toll-free service



provider is allowed to have in RESERVED status.



Step 2 In embodiments, the system verifies that the



user input and sets reservation limits.



Step 3 In embodiments, the system notifies the user



that the operation has completed.


Alternate Flows
E1: At Step 2, embodiments of the system notify the



user if the operation cannot complete due to system



conditions or invalid inputs.









There may be additional features the embodiments of the disclosed architecture may include those that follow:












Additional User New Features Requirements-New Feature Set









NFS #
Function
Description





NFS 7
Enhanced
Allow administrators to configure most of



Number
the settings within the system without



Administration
development changes. For example, the



Configurability
system may have a limit of 10 TFNs




returned from a search, which can be raised,




but be configurable.









The Customer Record Administration (CRA) functions may be those concerned with the input, validation, processing, and management of the toll-free Customer Records (CRs). These may also include the processes by which embodiments of the system can upload relevant customer record data to the SCP toll-free databases in the public network, to enable their processing of SS7 toll-free database queries. Multi-number and mass change capabilities impacting CRs may also be included in CRA functionality.


The system's CRA functions support interactions with external users or systems at the toll-free service provider to create and update the customer records. Additional interactions may be supported with telecommunications carriers, to approve and/or be notified of CR updates that impact toll-free calling traffic in their respective networks, i.e., Carrier Notification and Approval (CNA) functions. Further interactions may be supported with respect to the Local-Exchange Carriers (LECs), including Incumbent Local-Exchange Carriers (ILECs), Competing Local-Exchange Carriers (CLECs), other IntraLATA carriers, and CCS network operators whose networks may be involved in terminating the toll-free calls to the toll-free subscriber lines, and whose reference data, and others can be used to validate certain call routing instructions in the CRs. These latter capabilities may be referred to as IntraLATA Carrier Management (ICM) functions.


After a toll-free number (TFN) is reserved by a toll-free service provider's toll-free service provider, it should be assigned to a customer, and Customer Records (CRs) for that TFN may be created in the disclosed embodiment, ultimately resulting in their downloading to Service Control Points (SCPs) and the activation of service for the toll-free subscriber (the customer) in the public network.


A CR contains both customer administrative data and call routing information for a customer's toll-free service. In particular, it defines important aspects of the service, including the originating Area of Service (AOS)—the geographic area from which calls to the toll-free number can be allowed, and the rules for translation of the toll-free number to call routing instructions. The call routing instructions may include Destination Telephone Number(s) to which the toll-free calls may be routed, the Carrier Identification Code (CICs) of telecommunications carriers whose networks may be used for IntraLATA and InterLATA calls, and call announcement treatment instructions for those cases in which the toll-free calls should not be routed further.


Each TFN may have several CRs associated with it, each containing the toll-free service information to take effect at a given date and time (i.e., the Effective Date and Time of the CR). Once established, service for a customer may be modified or disconnected via subsequent future-dated CRs. Future pending CRs then replace the active CR when their effective dates and times may be reached.


At the effective date and time, a subset of the active CR's data applicable to toll-free database query processing is then downloaded to the applicable SCPs in the public network, replacing (overwriting) any previous SCP customer record in effect for that TFN. Only one CR may be the active CR in embodiments of the system reflecting the current toll-free service for a given TFN.


Customer Records can be considered either one of two types:

    • a. Regular Customer Records: Define the call routing for a toll-free number and define the final toll-free-to-TN destination number translations and what carrier can carry the call. These may be simple or complex.
    • b. Turnaround Records: The originating toll-free calls may be routed only via the TFNs and CICs. The routing is deferred to the interexchange carrier networks, which may be responsible for the final toll-free-to-TN destination number translations. The term “turnaround routing” refers to the CR's instruction to the SCP to “turn around” the TFN received in the SS7 query message as the routing number (Destination Telephone Number) in the SCP response, and the call is then routed onward to a carrier network based on the TFN and obtained CIC. It is then the responsibility of the carrier network to provide the final translation to the POTS Destination Telephone Number for final call routing. A TR can therefore contain only the TFN as a DTN or intercept treatment in its call routing instructions, and always without final routing to POTS destination numbers.


The disclosed embodiment administers 3 types of CRs:

    • a. Customer Records: each pertaining to a single TFN and containing all of its service parameters;
    • b. Pointer Records: each pertaining to a single TFN but pointing to a “reusable” “template record,” for much of its more complex service data, which it may share with other TFNs, and
    • c. Template records: a record with service information that can be referenced (shared) by multiple Customer Records and referenced via Pointer Records (TFNs). Template records are valuable as a single complex record can be created and then referenced by multiple Pointer records. This saves space in the SCPs


Each type of CR may have a required common administrative data portion, and more complex, optionally populated Call Processing Record (CPR) data portions for more complex routing scenarios. The CPR portion facilitates a tree structure for the specification of variable (branching) call routing logic based on various decision criteria (decision nodes) and the resulting translations to destination numbers and carriers or announcement treatments (action nodes). CPRs may be used within Regular CRs and Template Records.


Creation/Updating of Customer Records to Reflect Call Routing












Requirements-Minimal Feature Set











Current




MFS #
state or New
Function
Description





MFS 11
Current state
Customer
There may be a number of




Record-
Call Routing options in the




Routing
current system. These can




options
be needed and possibly





options moving forward.


MFS 12
Current state
CRUD
Includes user input,




(Create
modification, query, view,




Read
disconnect, copy, transfer,




Update
list, and status retrieval,




Delete)
includes scheduling in




Customer
future.




Records



MFS 13
Current state
Validate
Validate Customer Records




CRs
against reference data,





syntax, and routing





correctness


MFS 14
Current state
CR
CRUD (Create Read Update




Templates
Delete).


MFS 15
Current state
Customer
View all associated CRs




Record
with a TFN. Drill down into




View
details for CRs


MFS 16
Current state
Pointer
CRUD (Create Read Update




Records
Delete). Pointer Records





may be tied to TFNs.


MFS 17
New
Copy CR/
Create an easy way for




Template
toll-free service providers to




(clone &
create records based on




modify)
existing records









In embodiments, the platform may include a customer record template builder. The process and tools currently available for building a complex customer record may be single threaded and cumbersome. In addition, a tool may be required that works intelligently with the user to interpret natural language input to produce a complex customer record while using existing user records and usage data to prepopulate information for the user. This tool may be intuitive such that a first time user could build a complex record without hours of training.


The Customer Record Template Builder (CRTB) can allow toll-free providers to easily build a complex customer record template using a simple UI that can then let that record be designated at the default customer record. A toll-free provider can build multiple complex customer record templates for their use and to define a record as the default customer record, allowing the user to select the default with a single click, thus significantly reducing their work effort.


The CRTB can lead the user thru both the initial customer data population (known as the CAD portion) but also the call routing logic (known as the CPR portion) utilizing a simple UI using a decision tree logic structure with defined data nodes. Based upon the decisions at those nodes the UI can drive down a branch to a new decision node ultimately driving the customer record decision logic to the lowest level.


A decision tree can represent a series of decision points. Each decision point is called a node and off each node is one of more branches. The point at which there may be no more decisions to be made is called a leaf and is used as ‘the “end point” of a branching structure. See FIG. 3 for a generic visualization of this structure.


The CAD portion of the CRTB can logically lead the user to populate the example following pieces of information:

    • a. Administrative data about the toll-free customer
    • b. Toll-free number
    • c. Effective date and time
    • d. Control toll-free provider identifier
    • e. End customer name
    • f. End customer address
    • g. Area Of Service (AOS),
    • h. List of destination telephone number(s)


Carrier Identification Codes (CICs) for IntraLATA and InterLATA traffic


The complex customer record (CPR) decision nodes supported by the may be as follows:

    • a. Originating State
    • b. Originating NPA
    • c. Originating LATA
    • d. Originating POTS NXX
    • e. Originating POTS NPANXX
    • f. Originating POTS number
    • g. Specific date
    • h. Day(s) of the week
    • i. Time-of-day range
    • j. Percent load share, which may be used to automatically direct different percentages of processed queries (calls) to different branches below the node.


The “leaves” supported by the data model at the ends of a given branch may include:

    • a. Destination Telephone Number;
    • b. Carrier; and
    • c. Announcement Treatment.


A simple example of Customer Record routing would be as in FIG. 4.


In this relatively simple example, starting from the left-most branched path, the 3 decision paths corresponding to the decision trees branched paths can be represented as:

    • a. Area Code=732, NXX={699,494}, Carrier=ATX-0288, Tel #=800-234-5678
    • b. Area Code=732, NXX=Other, Carrier=MCI-0222, Tel #=800-234-5678
    • c. Area Code=Other, NXX=<null>, Carrier=MCI-0222, Tel #=800-234-5678.


The CRTB toll can be built in such a manner to allow a customer works his/her way down the decision tree and anticipate/pre-populate information based upon the information already provided in this build or also information provided in previous customer record entries. Once a default customer record template is built, the system can build the capability to invoke this template when creating a customer record for a new number, thus reducing the time and effort for a customer record to be built.


The CPR portion of the CR may provide a mechanism for users to specify branching call routing and call treatment logic involving multiple destination numbers and multiple carriers based on one or more decision criteria. The decision criteria include aspects of the toll-free call, such as its originating geographic area (the originating state, CCS network, NPA, LATA, NPANXX etc.) to be mapped by the SCP, based on the calling party number and other attributes of the query), and the date, time-of-day and day-of week of the query, among other variables.


The CPR is linked to the CAD portion of a regular customer record by the referenced TFN and the Effective Date and Time. The CPR portion is also used in Template Records. When used in a Template record, the CPR portion is linked to the Template Record by the referenced Template Name and Effective Date and Time in the equivalent TAD portion of the Template Record.


The logical branch points of the CPR decision tree may be specified within one or more “decision nodes” along each traversable branched path. The resulting call processing actions, including the translation of the toll-free number to specific destination numbers, call routing via specific carriers, or the announcement treatment for non-routed calls may be specified in “action nodes” at the ends of each path. Each path logically begins at the dialed toll-free number being translated, progresses through one or more decision nodes that define the call criteria, and ends at one or more action nodes. Each possible path through the decision tree from root to the end of each branched path may be conceived of as a “row” in a logical data table or matrix. Each row may contain numerous decision nodes defining the set of criteria to be matched by the call attributes for a call routing case (path) and may end with one or two action nodes.


The CPR decision nodes supported by the data model according to one embodiment can include one or more of the following:

    • a. Originating State (STATE)
    • b. Originating NPA (AREA CODE)
    • c. Originating LATA (LATA)
    • d. Originating POTS NXX (NXX)
    • e. Originating POTS NPANXX (6-DIGIT #)
    • f. Originating POTS number (10-DIGIT #)
    • g. Specific date (DATE)
    • h. Day(s) of the week (DAY)
    • i. Time-of-day range (TIMES)
    • j. Binary Switch (SWITCH)—an on-or-off binary switch, which may be used to manually redirect call processing onto an alternate branched path.
    • k. Percent load share (PERCENT), which may be used to automatically direct different percentages of processed queries (calls) to different branches of the node.


The action nodes supported by the data model according to one embodiment at the ends of a given branch can include:

    • a. Destination Telephone Number (TEL #)
    • b. Carrier (CARRIER)
    • c. Announcement Treatment (ANNOUNCE)
    • d. Go-To (GOTO) a pointer to another decision tree (CPR subsection) within the CPR, which defines further (refining) decision criteria.


Logically, decision nodes can have more than one argument for their included decision criteria (e.g., a list of more than one originating NPA, or more than 1 day of the week), and there may be multiple decision nodes used in combination to define each branched path (row). Each action node may have, at most, one outcome in the call routing logic. Null (empty) values for a decision node within a row convey its decision criteria is not to be part of the matched criteria defining the decision case for that row (i.e., that any value for that call parameter can suffice). A conceptual view of a CPR routing tree example is illustrated in FIG. 3.


Sample of Main Flow Customer Record Use Cases


This section has a sample of some of the many use cases that may be covered in this functionality. It does not represent every possible use case and should be a base for determining CRA functionality.


An example use case for Create a New CR for a Reserved toll-free number (New Service Connect) is as follows:















Use Case ID
CR-UC-1


Use Case Name
Create a New CR for a Reserved toll-free number



(New Service Connect)


Use Case
The user creates a regular or pointer customer record


Description
in embodiments of the system to activate service for a



given RESERVED toll-free number, either



immediately, or at a future effective date and time.



The user may create a regular customer record or a



pointer record referencing an existing template record.


MFS Reference
MFS 11; MFS 12


Actor(s)
User (toll-free service provider or administrator)



System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions and
In embodiments, the system has verified the identity


Pre-Conditions
and permissions of the User or has established the



necessary API interface connectivity.



The toll-free number is in the RESERVED state and



is reserved by the requesting toll-free service provider



unit.



No CRs for the TFN yet exist.



If a pointer record is being defined, it may point to an



existing active template record.


Post-Conditions
A CR for the toll-free number with a future or current



effective date and time is created and stored in



embodiments of the system with PENDING status for



future or immediate activation in the network. (Its



subsequent state in embodiments of the system can



depend upon whether its final validation and carrier



approval processing has completed successfully.) The



number status is changed to “ASSIGNED” when the



first valid CR for the TFN is successfully created.


Interface
Human User Interface


Considerations
API interface (REQ/RSP-CRA or REQ/RSP-CRC)


Primary Flow
1. The user enters the toll-free number, a requested



future effective date and time (or NOW for an



immediate activation), all mandatory parameters, and



any optional parameters for the CR's CAD portion



(Regular CR) or PAD portion (Pointer Record).



2. For regular CRs, the user may also populate a LAD



portion of the CR specifying TFN-specific labels for



use in CPR decision and action nodes.



3. For regular CRs, the user optionally populates a



CPR portion to specify any complex call routing logic,



including any LAD labels defined in the LAD portion



for decision and action nodes.



4. The user submits the completed CR, including all



of its applicable component data portions to



embodiments of the system for validation and



processing.



5. In embodiments, the system validates the CR is



correct and complete, per CR data requirements and



per CR validations, and posts the validated CR to the



TFMP database with an initial status of PENDING.


Alternate Flows
E1: In Step 1, the TFN was not valid or reserved by



the user's toll-free service provider, creation of the



CR is not allowed, and an error indication is returned



to the user.



E2: In Step 1, a CR with the TFN and same effective



date and time already exists, so creation of a CR with



the same key data is not allowed, and an error



indication is returned to the user.



E3: In Step 4, the CR data in the CAD (or PAD),



LAD, or CPR portions may be invalid, missing,



inconsistent, or incomplete, embodiments of the



system rejects the CR as invalid. The CR enters the



INVALID state and is stored in the database. It may



be corrected (modified) and resubmitted in a separate



update request.



In all cases, further processing is stopped.









An example use case for Query/Retrieve/View an Existing CR is as follows:















Use Case ID
CR-UC-2


Use Case Name
Query/Retrieve/View an Existing CR


Use Case
The user retrieves an existing CR (regular CR or


Description
pointer record) for a given TFN and Effective Date



and Time for the purpose of viewing/reading its



content.


MFS Reference
MFS 15


Actor(s)
User (toll-free service provider, Customer, Agent,



Carrier, or administrator)



System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions and
In embodiments, the system has verified the identity


Pre-Conditions
and permissions of the user or has established the



necessary API interface connectivity.



The CR may exist in the database.



The user may be from the CR's Control toll-free



service provider entity, TFMP administration, or an



involved routing carrier on the CR, or the CR's



customer (or their agent) with online access.


Post-Conditions
The retrieved CR is unchanged. Its contents may be



displayed or returned to the user or external user



system, subject to CR access restrictions, with only



the authorized information provided or displayed.


Interface
Human User Interface


Considerations
API interface (REQ/RSP-CRV)


Primary Flow
1. The user specifies or selects the toll-free number,



and the specific Effective Date and Time of the CR to



be retrieved.



2. In embodiments, the system retrieves the indicated



customer record, facilitates the user to view



appropriate data (HUI case), or sends the appropriate



data to the requesting external user system (API case).



(The Control toll-free service provider, customer,



agent, and TFMP administration can retrieve/view all



fields. Involved carriers and their associated toll-free



service providers may view only those portions of the



record relevant to their role, including their own CICs



and the Destination Telephone Numbers to which the



TFN routes via their CICs. Non-involved toll-free



service providers can view only the TFN, Effective



Date/Time, Control toll-free service provider, CR



Status, and Approval Status.) Refer to functional



requirements concerning returned information and



restrictions for this use case.


Alternate Flows
E1: In Step 1, no CR with the TFN and effective date



and time exists, so the record cannot be retrieved. A



record not found indication or error is returned to the



user.



E2: In Step 2, a requesting user is not from one of the



specified types of entities that may be allowed to



access CRs for the TFN, and therefore is denied access



to the record. An error notification to this effect should



be returned. In either case, further processing is



stopped.









An example use case to Create a New CR (Update Active or Pending toll-free service) is as follows:















Use Case ID
CR-UC-3


Use Case Name
Create a New CR (Update Active or Pending Toll-



Free Service)


Use Case
The user creates a CR for a TFN (regular CR or PR)


Description
for which an ACTIVE record and/or other future



PENDING records for that TFN already exist in the



database. The CR can replace or become the active



record at the future effective date and time. Relative



to any earlier-effective record or the active record for



the TFN, the differences in the CR's parameters may



include, in Regular CRs, for example (but may be not



limited to):



1. The addition of Destination Numbers and their



related destination parameters.



2. Expanding or changing the Area of Service (AOS)



3. Changing other administrative parameters on



the CR.



4. Adding a LAD portion, or adding or removing



labels and argument lists from/to the LAD.



5. Adding or removing a CPR portion or a CPR



section.



6. Changing the call routing (decision nodes, DNs,



carriers, or announcement treatments in any of the



CPR table rows defining the CPR tree).


MFS Reference
MFS 11; MFS 12


Actor(s)
User (toll-free service provider or administrator)



System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions and
In embodiments, the system verifies the identity and


Pre-Conditions
permissions of the user or has established the



necessary API interface connectivity.



An ACTIVE CR or one or more PENDING CRs



already exist in the database for the TFN.



No other PENDING CRs exist for that TFN with the



same effective date and time.



The user may be from the TFN's Control toll-free



service provider entity or the administration, or may



otherwise have update permission for the control toll-



free service provider's CRs.


Post-Conditions
A CR for the TFN and with the effective date and



time and with the updated CR data attributes can be



created with an initial status of PENDING. (Its



subsequent state in embodiments of the system and in



the network can depend upon whether its validation



and carrier approval processing has proceeded.)


Interface
Human User Interface


Considerations
API interface (REQ/RSP-CRA or REQ/RSP-CRC)


Primary Flow
1. The user specifies the TFN, the requested effective



date and time (NOW for immediate updates and a



future effective date and time for future updates), all



mandatory parameters, and any optional parameters



for the CR's CAD or PAD portion.



2. For a regular CR, the user optionally populates a



LAD portion of the CR specifying TFN-specific labels



for use in CPR decision nodes.



3. For regular CRs, the user optionally populates a



CPR portion to specify any complex call routing



logic, including any LAD labels for decision and



action nodes.



4. The user submits the completed CR, including all



of its component portions to embodiments of the



system for validation and processing.



5. In embodiments, the system validates the CR is



correct and complete, per CR data requirements and



per CR validations, and posts the validated CR to the



database with an initial status of PENDING (future)



or SENDING (immediate).


Alternate Flows
E1: In Step 1, the user does not have update



permission for the TFN. Creation of the CR is not



allowed, and an error indication returned to the user.



E2: In Step 1, a CR with the TFN and same effective



date and time already exists, so creation of a CR with



the same key data is not allowed, and an error



indication is returned to the user.



E3: In Step 5, the CR data in the CAD (or PAD),



LAD, or CPR portions may be invalid, missing,



inconsistent or incomplete, and in embodiments, the



system rejects the CR as invalid and returns an error



response to the user. The CR enters the INVALID



state and may be corrected (modified) and resubmitted



as a subsequent update.



In all cases, further processing is stropped.









An example use case to Delete an Existing (Future) CR is as follows:















Use Case ID
CR-UC-4


Use Case Name
Delete an Existing (Future) CR


Use Case
The user deletes an existing CR (Regular CR or PR)


Description
with a given TFN and future Effective Date and Time.


MFS Reference
MFS 12


Actor(s)
User (toll-free service provider or administrator)



System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions and
In embodiments, the system verifies the identity and


Pre-Conditions
permissions of the user or has established the



necessary API interface connectivity.



The CR may exist in the database.



The CR's current status may be one of PENDING,



INVALID, MY CHECK, or HOLD so that its



effective date and time is in the future. (The ACTIVE



record may not be deleted.).



The user may be from the TFN's Control toll-free



service provider entity or the administration, or may



otherwise have update permission for the control



toll-free service provider's CRs.


Post-Conditions
The existing record is deleted from the database.


Interface
Human User Interface


Considerations
API interface (REQ/RSP-CRA or REQ/RSP-CRC)


Primary Flow
1. The user specifies or selects the toll-free number,



and the specific effective date and time of the CR to



be deleted.



2. In embodiments, the system deletes the future CR



and returns a confirmation of the action to the user.


Alternate Flows
E1: In Step 1, no CR with the TFN and Effective Date



and Time exists, so the record cannot be deleted. A



record not found indication or error is returned to the



user.



E2: In Step 1, if the user specifies a CR with a past



effective date and time (ACTIVE, FAILED, OLD,



SENDING, or HOLD), the deletion action may not be



permitted and an error indication may be returned.



Only the system's database purge process may be



permitted to delete CRs with past EDTs.



E3: In Step 1, the requesting user is not from the



Control toll-free service provider entity or



Administration, or does not otherwise have update



permission for the CR, so the user is not authorized to



delete the record.



In all error cases, an appropriate error indication is



returned on the requesting interface and further



processing is stopped.









An example use case for Query/View the List of CRs for a given TFN is as follows:















Use Case ID
CR-UC-5


Use Case Name
Query/View the List of CRs for a Given TFN


Use Case
The user selects or specifies a TFN and


Description
retrieves a list of all CRs (regular or PRs) that



exist in the database for that TFN (aka CR



Status Query).


MFS Reference
MFS 15


Actor(s)
 User (toll-free service provider or administrator)



 System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions
In embodiments, the system verifies the


and
identity and permissions of the user


Pre-Conditions
or has established the necessary API



interface connectivity.


Post-Conditions
A list of CRs for the specified TFN is



returned to the user, with their effective



dates and times and CR status values. No



information is changed in the system.


Interface
 Human User Interface


Considerations
 API Interface (REQ/RSP-CRQ)


Primary Flow
1. The user specifies or selects the toll-free



 number for the CR list to be retrieved



 and submits the request to the system.



2. In embodiments, the system retrieves



 the information, generates the CR



 list, and presents it to the user. The



 response may include:



  the retrieved TFN



  the Control toll-free service provider for the TFN



  the CR list



 Within the CR list, individual CRs may be sorted



 in ascending order by effective date, i.e., with



 the oldest record at the top and



 later effective-dated/timed records. The list



 may include for each CR:



  a. The Effective Date and Time



  b. The CR Order Type



  c. The CR Status



  d. The CR Carrier-Approval Status



  e. Indicators conveying the presence of CR



   component data portions (CAD or



   PAD, CPR, and LAD)



  f. A link or other mechanism by which the



   user may select the individual CR



   for retrieval and/or



   subsequent actions. (HUI case only)



 Additional requirements concerning the



 CR list response may be specified



 in the functional requirements.


Alternate Flows
E1: At Step 1, no CRs exist in the database



for the specified TFN.



E2: At Step 1, embodiments of the system



determine the user is not authorized



to access the CR list for the TFN.



In either case an appropriate not-found or



error indication is returned on the user



interface and processing is stopped.









An example use case for Disconnect Toll-Free Service is as follows:















Use Case ID
CR-UC-6


Use Case Name
Disconnect Toll-Free Service


Use Case
The user establishes a future or immediate


Description
disconnect date for a currently working TFN



by populating the following Disconnect-



related parameters in a PENDING



disconnect CR with a future



effective date and time:



   Disconnect Referral Option



   End-Intercept Date



(This may be regarded as a special case of



CR-UC-3. Create a New (Future) CR (Update



Toll-Free Service), in which a CR for



a working or assigned number can be



created to populate the disconnect-related



parameters and becomes a “Disconnect



record.”)


MFS Reference
MFS 11; MFS 12


Actor(s)
  User (toll-free service provider



  or administrator)



  System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions
 In embodiments, the system has verified


and
 the identity and permissions of the user


Pre-Conditions
 or has established the necessary API



 interface connectivity.



 The current Number Status is WORKING



 or ASSIGNED, and there is either an



 ACTIVE CR or one or more future



 PENDING CRs for the TFN in the database.



 The user may be from the TFN's Control



 toll-free service provider entity or the



 administration, or may otherwise have



 update permission for the control toll-free



 service provider's CRs.



 In the ACTIVE CR or latest future CR,



 none of the disconnect-related parameters



 may be yet populated.


Post-Conditions
A CR for the TFN, and with the effective



date and time and with populated



disconnect-related CR parameters can be created



in embodiments of the system with an initial



status of PENDING. (At the effective date and



time, the CR status can become DISCONNECT.



At the End Intercept Date it can be deleted from



the SCPs and transition to CR status OLD in the



system.)


Interface
 Human User Interface


Considerations
 API interface (REQ/RSP-CRA or REQ/RSP-CRC)


Primary Flow
1. The user specifies or selects the TFN to be



 disconnected and the latest effective dated CR.



2. In embodiments, the system retrieves the CR and



 presents the CR view to the user. (HUI case only)



3. The user populates the effective date and



 time (either “now” or in the future) and



 the following disconnect-related parameters



 in the CR (assumed to be previously null or



 blank per pre-condition):



  Disconnect Referral Option is changed from



  blank (null/empty) to “Yes (with referral)”



  or “No (without referral)”



  The End-Intercept Date is populated



  and is greater than or equal to the



  effective date and time (when the End-



  Intercept Date is equal to the Effective



  Date the CR can be treated as an immediate



  disconnect without an intercept period.)



4. The user submits the CR update as a “disconnect



 request” with a future effective date and



 time or “now” for an immediate disconnect.



5. In embodiments, the system validates the TFN,



 user's toll-free service provider, and above



 Disconnect parameters, per procedures described in



 Section 4.5.2.1.8, and posts the validated CR to the



 database with an initial status of “PENDING.



Subsequent to this interaction:



 If the record is deemed valid at the



 intended effective date and time it goes



 active in the network with DISCONNECT



 status and applies the specified



 disconnect referral option,



 until the end-intercept date is reached.



 At the end intercept date, the CR is deleted



 from the SCPs. (If the End-Intercept



 Date is the same as the Effective Date



 and Time on the CR, the CR is deleted



 immediately from the SCP when the



 Effective Date and time is reached.)


Alternate Flows
E1: At Step 1, the user's toll-free service



provider does not match the Control toll-free



service provider entity for the TFN,



or does not otherwise have update permission,



such that access of the target CR is not



allowed to issue the disconnect request.



E2: At step 1, no active CR or future



CRs with the effective date



and time exist in the database for the TFN.



E3: At Step 5, the specified End-Intercept



Date is earlier than the current date or



more than <m> months later than the



effective date, and is considered invalid.



(The limit m is administrator-configurable



with a default of 4 months.)



In these cases an appropriate



error indication can be returned to



the user interface and further processing stops.









An example use case to Create a New Template Record is as follows:















Use Case ID
CR-UC-7


Use Case Name
Create a New Template Record (TR)


Use Case
The user creates a template record (TR) in


Description
embodiments of the system to establish or



update a routing template that may then



be referenced by multiple PRs,



either immediately, or at a future



effective date and time.


MFS Reference
MFS 14


Actor(s)
 User (toll-free service provider



 or administrator)



 System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions
 In embodiments, the system has verified


and
 the identity and permissions of the user


Pre-Conditions
 or has established the necessary API



 interface connectivity.



 No TR with the requested Template Name



 and Effective Date and Time yet exist.


Post-Conditions
A TR with the given Template Name and



with the current or future Effective Date and



Time is created and stored in embodiments of



the system with PENDING status for future



activation or SENDING status for



immediate activation in the network. (Its



subsequent state in embodiments of the system



can depend upon whether its validation



processing has completed successfully.)


Interface
 Human User Interface


Considerations
 API interface (REQ/RSP-TRC)


Primary Flow
1. The user enters the existing Template Name,



 a requested future Effective Date and



 Time (or NOW for an immediate activation),



 all mandatory parameters, and any optional



 parameters for the TR's TAD portion.



2. The user may also populate a LAD portion



 of the TR specifying record-specific labels



 for use in CPR decision and action nodes.



3. The user optionally populates a CPR portion



 to specify any complex call routing logic,



 including any LAD labels defined in the



 LAD portion for decision and action nodes.



 Note that all DTNs in the CPR may be



 either the TFN or the special argument



 “#DIAL” representing the TFN, i.e., the



 TR may specify turnaround routing per



 SCP limitations on the TR DTNs.



4. The user submits the completed TR,



 including all of its applicable component



 data portions to embodiments of the



 system for validation and processing.



5. In embodiments, the system validates



 that the CR is correct and complete,



 per TR Data Requirements specified in



 Sections 4.3.2.9 through 4.3.2.12, and



 per TR validations specified within



 Section 4.5.2.2. It generated a numeric



 Template ID and posts the validated



 TR to the database with



 an initial status of PENDING.


Alternate Flows
E1: In Step 1, the user does not have permission to



create a TR, and the request is rejected with an



error indication returned to the user.



E2: In Step 1, a CR with the same Template Name



and Effective Date and time already exists, so creation



of a TR with the same key data is not allowed, and



an error indication is returned to the user.



E3: In Step 5, the TR data in its TAD LAD,



or CPR portions may be invalid, missing,



inconsistent, or incomplete, embodiments of



the system rejects the TR as invalid. The TR



enters the INVALID state and is stored in the



database. It may be corrected (modified) and



resubmitted in a separate update request.



In all cases, further processing is stopped.









An example use case to Convert a Regular Customer Record to a Pointer Record is as follows:















Use Case ID
CR-UC-8


Use Case Name
Convert a Regular Customer Record



to a Pointer Record


Use Case
The user converts a regular CR to a


Description
Pointer Record


MFS Reference
MFS 16


Actor(s)
 User (toll-free service provider or administrator)



 System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions
 In embodiments, the system has verified the


and
 identity and permissions of the user.


Pre-Conditions
 The selected (source) regular CR already



 exists in the database. If it's Effective



 Date and Time (EDT) is not being



 changed for the PR being created (it is



 to be converted “in place”), then its EDT



 may be in the future and so it may not



 be an OLD, ACTIVE, SENDING, or



 DISCONNECT record. If the selected source



 regular CR has different Effective Date.



 A corresponding Template Record to be



 referenced by the PR already exists and



 is ACTIVE in the network and has the



 same toll-free service provider



 entity as the control toll-free



 service provider of the source regular CR.



 The user's toll-free service provider



 may be part of the Control toll-free service



 provider entity of the TFN for both



 the converted CR and the Template



 Record to be referenced in the PAD, or



 administration, or the user may otherwise



 have update permission for the control



 toll-free service provider's CRs.


Post-Conditions
The PR is created in PENDING status



and contains the subset of CAD parameter



values applicable to a PAD data portion of the



PR. The prior regular CR is either replaced



by the CR (if it has the same future EDT),



or is retained in the database unaffected.


Interface
 Human User Interface


Considerations
 API Interface (REQ-CRC)


Primary Flow
1. The user specifies or selects the TFN



 and Effective Date and Time of the existing



 regular CR to be converted to a PR, the



 Template Name of the Template Record



 to be referenced by the PR, and (optionally)



 a future Effective Date and Time for the PR.



 (If not specified, embodiments of the system



 may retain the future date and time of



 the source regular CR.)



2. The user submits the request for the



 conversion action.



3. In embodiments, the system initially



 validates that the requesting user is from the



 Control toll-free service provider of the



 TFN for the record being converted, or the user



 otherwise has update permission, that



 the regular CR exists in the database and that



 the referenced Template Record (TR) exists in



 the ACTIVE state in the database and its



 Control toll-free service provider entity



 code matches that of the CR being converted.



 If the source regular CR's EDT is in the



 past it ensures a user-entered EDT is specified



 and is in the future.



4. In embodiments, the system performs



 the conversion action. It copies applicable



 parameters from the source CR's CAD



 to the CR's PAD, referencing the indicated



 Template ID, and removes any CPR or



 LAD data portions. In embodiments, the system



 facilitates only the TFN or the special argument



 #DIAL on the Destination Telephone Number



 List on the CAD to be copied to the PAD, or if



 neither may be on the CAD, it can substitute



 the TFN for the DTNs on the Destination List.



5. In embodiments, the system validates the PR in



 combination with its referenced Template Record is



 correct and complete as of the Effective Date



 and Time, per CR Data Requirements



 and per CR Validation Requirements.



6. In embodiments, the system posts the PR



 to the database with an initial status



 of PENDING. The original regular CR



 if previously PENDING, no longer exists



 in the database.



Subsequent to this interaction,



the newly created PENDING PR is activated at



the new Effective Date and Time, replacing the



prior ACTIVE CR, which transitions to OLD status.


Alternate Flows
E1: In Step 1, the source CR does not exist,



so the record cannot be retrieved and converted.



A record not found indication or error is



returned to the user and processing stops.



E2: In Step 3, the initial validation conditions



may be not met, the conversion action is rejected,



an error response is returned to



the user, and processing stops.



E3: In Step 5, if the resulting PR/TR is found to



be invalid, an error indication is returned to the user.



In exception cases E2 and E3 above, the original



regular CR remains in the database and is not



removed/replaced by a valid PR.









There may be additional features the embodiments of the disclosed architecture may support such as the examples that follow.












Customer Record Creation/Updating New Features


Requirements-New Feature Set









NFS #
Function
Description





NFS 8
Change call
With the expected movement



routing
from a PSTN based telephone



anchoring from
routing to an IP based standard



PSTN to E64
sometime in the future, it is



URI standard
important to build the ability to




utilize an E64 URI routing platform




using SIP protocol into disclosed




embodiments while still supporting




the current PSTN routing




approach.


NFS 9
Dynamic
Create a decision tree to assist the toll-free



decision tree
provider in creating a complex



logic for
record by leading the user to



building
routing decisions based upon



complex
information already provided.



customer




records.



NFS 10
Default
Allow the toll-free Provider the



Customer
ability to create a default customer



Record
record that can be activated




against newly reserved numbers. This




functionality should provide




the user more capabilities than




they currently have with the




Template functionality.


NFS 11
Enhanced
Provide the toll-free provider



Route
additional decision points for routing



Management
decisions. Currently complex




routing decisions can be made on




the following data points:




  Originating State (STATE)




  Originating NPA (AREA CODE)




  Originating LATA (LATA)




  Originating POTS NXX (NXX)




  Originating POTS NPANXX (6-DIGIT#)




  Originating POTS number (10-DIGIT#)




  Specific date (DATE)




  Day(s) of the week (DAY)




  Time-of-day range (TIMES)




There is a lot of additional metadata




available to provide routing




instructions on, especially given




the future with IP routing.




These metadata points




can be defined at design.


NFS 12
Automated
The system may enable the transfer of call



Template Data
routing information in the same



Transfer
action as the TFN transfer if that




information is documented via a




Template when a toll-free provider




is transferring a number to a




different toll-free provider. Today,




this is a multi-step process.


NFS12A
Template
The user will have a simplified



Record
approach to the creation of



Wizard
complex Template records using a




Wizard like approach with “Suggestive”




intelligence from template repository.









Customer Record Administration: Record Processing/SCP Downloads












Requirements-Minimal Feature Set











Current





state




MFS #
or New
Function
Description





MFS
Current
Customer
In embodiments, the system may


18
state
Record
maintain internal business logic




Processing
for tracking CR status. See





the CRA Status and flow





in the Overview section.


MFS
Current
Download
Activation at EDT (Effective


19
state
Records to
Date & Time). A subset




SCPs
of the active CR's data





(defined in the TM-798 format)





applicable to toll-free database query





processing is then downloaded to the





applicable SCPs in the public network,





replacing (overwriting) any previous





SCP customer record in effect for that





TFN. Only one CR may be the active





CR in embodiments of the system





reflecting the current toll-free service





for a given TFN.


MFS
Current
Initial
When a SCP is added to the CCS


20
state
DB load
network, the CRs may be loaded in




to SCP
bulk as an “initial load.”


MFS
Current
Customer
A user may initiate the resend


21
state
Record
of a CR to all or some pertinent




Resend
SCPs in the CR's AOS (area of





service). CR resends can be initiated





by the CR's Control toll-free service





provider, the SCP O/O's for any





CRs at their SCPs, and administration,





subject to user security settings.









The Customer Record (CR) Status indicates the status of the Customer Record with respect to its validation in embodiments of the system and its activation status at the SCPs. The CR Status is automatically generated by the current system. Because these states, as used by the legacy system, may be well known to the user community and may be regarded as fundamental to CR processing, they may be preserved as much as possible in the next generation system.












Customer Record Status Definitions








Status
Definition





Saved
The record is stored in embodiments of the



system but is not yet validated, because it has not



yet been submitted for validation and



posting by the user after it was created



or modified. This state applies



to CRs that may not be completely



built or previously SAVED or



PENDING CRs that have been copied



and/or modified from another



CR but not submitted.


Pending
The record has passed all validations



and has a future Effective Date



and Time. A PENDING record can be



accessed and modified. Records



specified for immediate activation



(with an Effective Date and Time of



“now” may also pass through the



PENDING state before they may be



subject to activation processing and enter



the SENDING state.


Sending
The record is being sent to all pertinent



SCPs, but not all of those SCPs



have responded with an OK status,



meaning the CR may be activated



in none or some, but less than all SCPs.



Sending records cannot be modified.



(Any changes to the customer's service



for the toll-free number may be made by



creating a future customer record, or



“copying forward” the latest of the



SENDING or ACTIVE customer



records to a future effective date



and time and then modifying it.)



(When all the SCPs subsequently



respond with an OK acceptance



indication, the status can then transition



to ACTIVE or DISCONNECT.)


Active
The one record for the TFN that is



currently working in all pertinent



SCPs. Only one active record can



exist for a TFN at a given time. An



active record cannot be modified.



(Any changes to the customer's



service for the toll-free number may



be made by creating a customer



record, or “copying forward” the latest



of the SENDING or ACTIVE



customer records to a future effective



date and time and then



modifying it.)


Old
A record whose status was previously



ACTIVE, DISCONNECT, or



SENDING, but which has since been



replaced by another ACTIVE,



DISCONNECT, or SENDING record



with a later effective date and



time, or has since been deleted



at the SCPs due to service



disconnection. Previously DISCONNECT



records transition to OLD



after their Disconnect End Intercept Date



has been reached and they



may be deleted from the SCPs.



Previous ACTIVE records also



transition to OLD if they may be



immediately disconnected without



intercept and may be deleted from



the SCPs. OLD records cannot be



modified. They may be temporarily



maintained in the TFMP database



for reference or copying for service



rollback or recovery, and may be



periodically purged from the TFMP database.


Invalid
The record did not pass validations



after being submitted by the user



and its effective date and time has



not yet been reached. It remains in



the database but cannot be sent to



the SCPs if/when its effective date



and time may be reached. Invalid



records may be modified and



resubmitted.


Disconnect
Normal service for the TFN has been



discontinued and all callers may



be receiving disconnected number



or referral number announcements.



This state is reached when a PENDING



record with a populated



Disconnect Intercept Indicator reaches



its Effective Date and Time and



is then successfully activated at all



pertinent SCPs (The record in this



state has a specified Disconnect



Intercept End Date later than the



Effective Date and Time.) Only one



record for a given TFN can be in



the DISCONNECT state.


Much Check
A previously validated and pending



record may be revalidated as its



data may no longer be appropriate



since other pending CRs for the



TFN with earlier or later effective



dates and times have been defined



(inserted) in the activation sequence.


Failed
The record has reached its Effective



Date and Time, but has not been



successfully activated at any SCP



because it remained SAVED,



INVALID, MAY CHECK, or



PENDING without required carrier



approval at that time, or was in



the SENDING state and has been



rejected by all SCPs to which it was sent.


Hold
The record has been placed on hold



by request of the customer or the



Control toll-free service provider, as



indicated by the Hold Indicator in



its CAD or PAD portion set to “Yes.”



A CR in the HOLD state is



retained in the disclosed embodiment,



but is not released (sent) to the



SCPs at its Effective Date and Time,



even if it is otherwise valid and



approved. The HOLD status applies



to regular CRs and Pointer



Records, but not to Template Records.



HOLD status facilitates users to



indefinitely delay activation of a CR



if there is some problem with



other coordinated aspects of the



toll-free subscriber service, such as the



terminating lines or call centers not



being ready to accommodate the



service. CR database clean-up procedures



described in Section 4.14.2.4



can remove HOLD records from



embodiments of the system after a



suitable administrator-defined



interval (from 1-30 days) has passed



beyond their Effective Dates and



Times. Refer to that section for



details. (State transitions from



database clean-up procedures may be



not reflected in the mainline status



transition diagrams.)









With reference to FIGS. 41 and 42, customer record state diagrams for activation and output 4100, 4200, refer to the processes by which CRs can be translated and transmitted to the appropriate SCPs after they may be validated and receive any necessary carrier approvals through various nodes such as invalid, saved, hold, pending, and must check. This can occur when their Effective Dates and Times may be reached, or immediately in the case of CRs for which and Effective Date and Time of “now” has been specified by the user at input, and no carrier approvals may be required. Note that the standard processing of CR output (download) to SCPs is done via TM-798 data links.


In embodiments, the system may translate the information in the Customer record (either a CR, a TR (template record), or a PR (Pointer Record)) to the TM-798 format for transmission to the SCPs.


The CR SCP Resend function may be used to resend a single CR to specific SCPs and use the SCP's CR update confirmation responses to update the CR's activation status. At the end of the CR resend process for a CR, embodiments of the system may update the CR's activation status and time as maintained for each SCP on the CR's Active SCP list. An example use case is as follows:















Use Case ID
CR-UC-9


Use Case Name
Resend CR to SCP(s)


Use Case
A user requests that embodiments of the


Description
system resend a Customer Record (Regular



CR, PR, or TR) to Service Control



Points (SCPs). The request may be applied



to specific SCPs or all SCPs in the CR's Area



of Service (AOS). This capability is



often used to clear CR's “stuck” in



SENDING status due to problems at one



or more SCPs in the CR's AOS.


MFS Reference
MFS 21


Actor(s)
 User (toll-free service provider,



 SCP network administrator,



 network manager, or administrator)



 System (disclosed embodiment)


Functional
CR—Customer Record Administration


Category



Assumptions
 In embodiments, the system has verified


and
 the identity and permissions of the


Pre-Conditions
 user or has established the necessary API



 interface connectivity.



 The target CR exists in the database



 with status of SENDING, ACTIVE,



 DISCONNECT, or FAILED.


Post-Conditions
 A resend report is made available to the



 user regarding the results of the resend



 (update) action with respect to the



 requested SCP(s).



 Log entries of the resend results at each



 SCP may be recorded.



 The CR status may be updated for the



 SCP IDs on the CR's Active SCP List.


Interface
 Human User Interface


Considerations
 API interface (REQ/RSP-SCP)


Primary Flow
1. The user specifies or selects the TFN or



 Template Name of the CR for the resend request.



2. In embodiments, the system validates



 that the CR exists in the database in the



 ACTIVE, SENDING, DISCONNECT,



 or FAILED states, and that the



 user is generally authorized



 to perform the CR resend action.



3. In embodiments, the system retrieves



 the CR from the database, and determines



 the Control toll-free service provider and



 the SCPs in the CR AOS that may receive the



 resend. In embodiments, the system



 presents the list of SCPs defined in



 embodiments of the system to the user,



 with those SCPs from the CR's Active



 SCP list (for its Area of Service)



 identified, and with the CR's last known



 activation status at each SCP.



4. The user specifies or selects:



 a. SCP List-the list of 1 or more



  SCP IDs for the resend,



  or all SCPs in the CR's AOS



 b. Critical Indicator-Whether or not



  the request is to be processed by any



  SCPs in overload (deemed a “critical



  resend”).



5. In embodiments, the system validates



 that the user is authorized to request



 the re-send for the CR at the indicated



 SCPs (the Control toll-free service



 provider, an SCP administrator or



 network manager at the SCP O/O, or from



 administration sources). If a Template



 Record is being re-sent, embodiments of



 the system validates that the specified



 SCPs support template records.



6. In embodiments, the system confirms



 to the user that the resend request has



 been accepted and is being processed.



7. In embodiments, the system interacts



 with the SCPs via the TM-798 UPD-CPR



 and RSP-RCU messages to resend the



 CR to each SCP and logs the results.



8. In embodiments, the system updates



 the CR's activation status at each SCP



 and logs each SCP's resend result for the



 CR. It compiles the results for the TFN



 or Template Name across all target SCPs.



9. The results of the resend at each SCP



 may be presented or made available to the user.


Alternate Flows
E1: At step 1, embodiments of the system



determines that no CR corresponding to



the TFN or Template Name exists in the



database in the SENDING, ACTIVE,



DISCONNECT or FAILED states, or that



one exists but the user is not authorized



to initiate resends for it. An appropriate



not-found or error indication is



returned, and processing stops.



E2: At Step 5, embodiments of the system



determines the user is not authorized to



perform the resend to one or more of the



specified SCPs. An error indication



is returned with the SCP



IDs indicated, and processing stops.



E3: At Step 5 embodiments of the system



determines the user has requested to



resend a Template Record to an SCP that does



not support Template Records, and



an error indication is returned with the



SCP IDs indicated, and processing stops.



A1. In Step 7, one or more SCPs either



fail to respond to the CR update command,



and embodiments of the system times out



and stops waiting for the responses,



logs the non-responses, and completes



Steps 8 and 9 with the information available.









There may be a number of tasks where a system administrator enters values for configuration parameters that control an aspect of system functionality. A pre-condition is that the user is a system administrator with permissions to perform the specific administrative task.


For each administrative use case, the following sequence of steps applies:

    • a. Step 1: The user enters values;
    • b. Step 2: The system verifies the user input; and
    • c. Step 3: The system accepts the parameter values and notifies the user of success.


If the user input is not valid or some other condition prevents successful completion of the use case, embodiments of the system inform the user of an error.












Requirements-Minimal Feature Set











Current




MFS
state




#
or New
Function
Description





MFS
Current
Annual
Annual audit between system and SCP


22
state
Customer
using 798. Record Key audit only.




Record Audit
Compare keys. Resend CR gaps.


MFS
Current
SCP-SMS
A separate SCP-SMS Reverse Audit


23
state
Reverse
Audit process may input batch files of




process
CRs extracted from the individual SCPs,





compare them to those in the CR





database and note any discrepancies in





terms of the presence and Effective





Dates/Times of the CRs, and (as a user





option) verify the control toll-free





service provider.


MFS
Current
Carrier
As a carrier, I need to get paid every


25
state
Notification
time you dip against me. This relates to




and
inter-carrier compensation charges for




Approval
providing call routing services through





an SCP. The SCP provides a call





processing record for every call that





terminates to a toll-free number.





Usually, carriers through their LECs





handle all toll free call routing by





“dipping” an SCP. When a RespOrg





decides to route their calls through a





carrier, it is required that they (the





RespOrg) have a commercial agreement





with that carrier. This administrative





function allows a carrier to allow or





disallow RespOrgs to use their network





to deliver calls.


MFS
Current
CRA
In embodiments, the system can be


26
state
Logging
required to provide logging of detailed





CRA activity.









IntraLata (CIC 0110) Routing Support












Requirements-Minimal Feature Set











Current





state




MFS #
or New
Sub Function
Description





MFS
Current state
CIC 0110
IntraLATA routing support


27

Support









With reference to FIG. 43, the CIC 0110 validations 4300 from the perspectives of each of the involved service providers, including the Incumbent LEC (ILEC)/CCS Network Provider that operates the SSP, the terminating CCS network (the “Network Provider”), the ILEC or CLEC that has been assigned the NPA-NXX code and offers service to the terminating subscriber lines (the “Carrier”), and their relationship to the CR's toll-free service provider Control toll-free service provider, which may all be the same or different entities.


With reference to FIG. 44, the series of reference data lookups that may be performed to validate the use of CIC code OTC-0110 with specified POTS destination telephone numbers in the CPR may be depicted. Functional requirements for the specifics of validation processing then follow.















Use Case ID
CR-UC-10


Use Case Name
Notify Affected Carrier of CIC Routing or Toll-Free Service



Provider Change


Use Case Description
In embodiments, the system autonomously notifies a carrier's



external system that another toll-free service provider's CR



using its CICs has been pended in the database with a change



requiring the carrier's approval, or has been activated in the



network with a change requiring the carrier be notified. (The



notification action also applies to cancellations of prior requests



when subsequent CR changes or deletions result in a prior



reported change no longer being applicable.)


MFS Reference
MFS 25


Actor(s)
User (Carrier)



System (disclosed embodiment)


Functional Category
CR—Customer Record Administration


Assumptions and
In embodiments, the system has verified the identity and


Pre-Conditions
permissions of the user or has established the necessary API



interface connectivity.



The Carrier has established Carrier Notification and



Approval (CNA) controls for the CIC in question.


Post-Conditions
The notification is delivered to the carrier's external system or



user mailbox.


Interface
Human User Interface


Considerations
API interface (UNS-SNA)


Primary Flow
1. A CR with the carrier's CIC and presenting a change in



service of the type requiring approval by the carrier is



pended to the database, OR



A CR with the carrier's CIC and presenting a change of the



type requiring carrier notification is activated in the system.



2. An autonomous notification is generated and sent to the



Carrier system to notify the Carrier user about the service



change reflected in the CR update and when applicable,



requesting their review and approval of the change.









The Carrier notification function facilitates authorized carrier users to receive and review notifications about CR changes affecting their CICs. The Carrier Notification and Approval (CNA) functions allow telecom carriers to define business agreements with toll-free service providers, set up permissions for the use of their Carrier Identification Codes (CICs) in toll-free service CRs, receive notifications of when their CICs may be used or modified on CRs, and approve when their codes may be used on specific CR's controlled by other service providers.


In embodiments, the system can validate the CICs used in CRs to specify call routing, based on carrier permissions and restrictions specified in carrier and CNA reference data, generate notifications to the carriers, and correlate those against carrier approvals before the CRs containing the carrier's CICs may be activated.


The toll-free service providers' View of Carrier Approval Status facilitates toll-free service providers to query carrier approval status information for their CRs at both a summary level and a detailed level (per-carrier), when multiple carriers may be involved.


An example use case to notify an affected carrier of CIC routing or toll-free service provider change is as follows















Use Case ID
CR-UC-11


Use Case Name
Carrier Reviews Notifications


Use Case Description
A carrier selects, retrieves, and views a list of outstanding CNA



notifications and approval requests for their CICs resulting from



other service provider's CRs being pended or activated in the



system, and selects one for viewing and follow-on activity.


MFS Reference
MFS 25


Actor(s)
User (Carrier or administrator)



System (disclosed embodiment)


Functional Category
CR—Customer Record Administration


Assumptions and
In embodiments, the system has verified the identity and


Pre-Conditions
permissions of the user.



The Carrier has established Carrier Notification and



Approval (CNA) controls for their CICs.


Post-Conditions
A summary list of outstanding CNA notifications and approval



requests meeting the user's request criteria is returned/displayed,



from which one may be selected. No change is made to the



notification data.


Interface
Human User Interface


Considerations



Primary Flow
1. A carrier user enters or selects a CIC, an Effective Date



range, and Toll-Free NPA filter for the desired list of CIC



Routing or toll-free service provider Change notifications.



2. The user submits the request to the system.



3. In embodiments, the system validates that the user is from



the carrier entity that controls the CIC, or is from SMS



administration, and is authorized to access the notification



list.



4. In embodiments, the system retrieves and displays the



notification list, including for each notification:



CR's TFN or Template Name



CR's Effective Date and Time



The Notification Reason (the CR' s change condition)



The CR's Carrier Approval Status



An indication of whether the carrier's approval is



requested/required



A link or other mechanism by which the notifications



may be selected for subsequent action.



5. The user then selects an individual notification to view and



retrieves the notification details.



Additional information requirements regarding the detailed



notifications may be discussed in the functional requirements of



Section 4.6.2.4.



Subsequent to this interaction the user may conduct other follow-



on activity concerning the notification such as viewing relevant



portions of the CR, submitting an approval response, or deleting



the notification.


Alternate Flows
E1: In Step 3, embodiments of the system determine the user is



not authorized to access notifications for the selected CIC. An



error response is returned and processing stops.



E2: In Step 3, no notifications meeting the filter criteria may be



found in the system, and a not-found indication is returned to the



requesting user.









Carrier Submits Approval or Denial of CR Update















Use Case ID
CR-UC-12


Use Case Name
Carrier Submits Approval or Denial of CR Update


Use Case Description
A carrier selects a CR approval request concerning their CIC(s)



and submits the carrier's approval or denial for the CR.


MFS Reference
MFS 25


Actor(s)
User (Carrier or administrator)



System (disclosed embodiment)


Functional Category
CR—Customer Record Administration


Assumptions and
In embodiments, the system has verified the identity and


Pre-Conditions
permissions of the user or has established API interface



connectivity.



The Carrier has established Carrier Notification and



Approval (CNA) controls for their CICs.



CR approval requests for one or more of their CICs exist in



the database.


Post-Conditions
A status of “granted” or “denied” is assigned to the approval



request with respect to the carrier, and can be correlated to the



corresponding PENDING CR in the database.


Interface
Human User Interface


Considerations
API Interface (REPT/RSP-APR)


Primary Flow
1. A carrier user (or TFMP Administration user) searches (HUI



case only) for one or more CR approval requests, based on



one or more of the following search criteria:



CIC



TFN (or TF NPA, or TFN range), or Template Name



Effective Date and Time (EDT) or EDT range



Control toll-free service provider



Notification Time stamp



Current Request Approval Status (granted, denied,



undetermined)



2. In embodiments, the system responds with one or more



Approval Requests meeting the search criteria. (HUI case



only)



3. The user specifies or selects a specific approval request



(about a PENDING CR) to address.



4. In embodiments, the system validates that the user is from



the carrier entity that controls the CIC, or is from TFMP



administration, and is authorized to specify approvals for the



CIC.



5. The user specifies or selects the desired approval status for



the request (granted, denied), and if denied, the reason for the



denial (a 2 character alphabetic, carrier-specific code for the



reason).



6. The user submits the request to update the approval status.



7. In embodiments, the system responds, confirming the



specified status value for the approval request, and logs the



approval response action.


Alternate Flows
E1: In step 1, no requests match the search criteria, so a not-



found indication is returned to the user and processing stops.



E2: In step 4, an embodiment of the system determines the user



is not authorized to access/respond to the approval requests for



the selected CIC. An error response is returned to the user.


Use Case ID
CR-UC-13


Use Case Name
Notify Control toll-free service provider of Carrier Approval or



Denial


Use Case Description
In embodiments, the system autonomously notifies a Control



toll-free service provider user or external system that all carriers



requiring approval have granted approval requests for a pending



CR, or that one carrier has denied the request, so that the CR has



transitioned from the AWAIT carrier approval status to the



GRANTED or DENIED approval status (respectively).


MFS Reference
MFS 25


Actor(s)
User (toll-free service provider)



System (disclosed embodiment)


Functional Category
CR—Customer Record Administration


Assumptions and
In embodiments, the system has verified the identity and


Pre-Conditions
permissions of the user or has established the necessary API



interface connectivity.



The approval request(s) was/were previously generated by



embodiments of the system as a result of CR creation or



updates, combined with one or more carriers' CNA policies



with respect to the toll-free service provider.


Post-Conditions
The notification is delivered to the toll-free service provider's



external system or user mailbox.


Interface
Human User Interface


Considerations
API interface (UNS-ACT)


Primary Flow
1. The system, which tracks carrier responses to the approval



requests, determines that either the last outstanding approval



request for a given CIC on the CR has been granted, OR one



of one of more carriers requiring approval has denied



approval.



2. In embodiments, the system updates the CR's Carrier



Approval Status from AWAIT to GRANTED or DENIED,



respectively, and generates a notification of the event to the



CR's TOLL-FREE SERVICE PROVIDER. The notification



contains the following information about the CR:



The Control toll-free service provider



TFN or Template Name



Effective Date and Time



Date and time of receipt (denial or last grant)



Approval Indication (granted all carriers, denied by a



carrier)



Denial information (if denied by a carrier):



CIC



Reason code (2-character carrier-specific reason



code).


Alternate Flows
None identified.









In embodiments, the system can be required to provide various logs of detailed CRA activity in order to support a number of key reports. In embodiments, the system can also provide a variety of measurements of CRA activity and associated resource usage, both in aggregate for the system, and where attributable to the respective toll-free service providers whose CRs may be being processed.


There may be certain items that may be validated in embodiments of the system as a result of outside carriers or partner's rules. One such rule is:












Requirements—Minimal Feature Set











Current state




MFS #
or New
Sub Function
Description





MFS
Current state
Carrier business
AT&T accepts only turn-around


32

rules
records/validations.









A Mass Change is an event that requires embodiments of the system to perform a large volume of changes in a short period of time. Depending on the Mass Change event, it may be necessary to update system reference data and a large number of impacted AoS labels and customer records. In embodiments, the system thus provides functionality for management and administration of Mass Changes.


The setup of Mass Changes may, for example, be performed online and the execution of the job processing the Mass change is done in the background.












Customer Record Mass Changes MFS











Current





state or




MFS #
New
Sub Function
Description





MFS 28
Current
Owning toll-free
Convert all or subset of numbers



state
service provider give
and CRs from old toll-free




away all numbers to
service provider to new toll-free




another Provider
service provider




(Mass toll-free





service provider





Change)



MFS 29
Current
POTS NPA Changes
Updates CRs due to overlays.



state
(not TF)
While NPA Splits may be





unlikely to happen, support is





provided to CR updates based on





Overlays.


MFS 30
Current
1. CR updates from
Industry data changes such as



state
Industry Network
Overlays or Splits can cause CRs




data changes.
to be updated. Other industry




2. Toll-free service
data changes (reference data




provider driven
changes) can also cause CRs to




CR updates
require automatic updates.





(POTS NPA Changes) and (CR





updates due to industry data





changes).





Mass toll-free service provider





Changes, Mass Carrier Change,





Mass Disconnect & Spare.


MFS 31
Current
SCP Area of Service
A CCS Network consists of



state
Definition/Expansion
SCPs that provide routing





information for toll-free calls





originated from a defined area of





the POTS network, referred to as





the SCP Area of Service. When a





CCS Network is added or due to





changes in the operations of CCS





Networks, such as a merger or





expansion, it is necessary to





define or add to an SCP Area of





Service









This section has a sample of some of the many use cases that may be covered in this functionality. It does not represent every possible use case and should be but an example base for determining CRA functionality.


Example Set Criteria for a NPA Code Opening/Overlay Mass Change is as follows:















Use Case ID
CR-UC-14


Use Case Name
NPA Code Opening/Overlay Mass Change Setup


Use Case
Administrator prepares for and executes an upcoming NPA Code


Description
Opening/Overlay


MFS Reference
MFS 29


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional Category
CRA Mass Changes


Pre-Conditions and
The user has logged into the system.


Assumptions
In embodiments, the system has verified identity and



permissions of the specific user.


Post-Conditions
Criteria for an NPA Code Opening/Overlay Mass Change may



be set.


Interface
Human User Interface


Considerations



Primary Flow
Step 1 The user indicates the mass change is an NPA Code



Opening/Overlay and enters the following information:



New NPA Code



New NPA State



Existing NPAs to be overlaid



CCS Networks for New NPA



LATAs for New NPA



Step 2 The user enters the date the NPA code can be



operational (Open date) and the number of days in



advance for the beginning of Mass Change processing



(used to calculate Open-X date).



Step 3 In embodiments, the system verifies that the data entered



is valid and provides a response that the Mass Change



criteria have been accepted.



Step 4 An identifier for the mass change operation is



established and status is set to PENDING for the Mass



Change.


Alternate Flows
E1: At Step 1, embodiments of the system may notify the user if



any of the data entered is invalid, such as an incorrect state or



existing NPAs, CCS networks, or LATAs that may be not



operational in the indicated state.



E2: At Step 2, embodiments of the system may notifies the user



if the date information is not valid. The Open date and Open-X



date may occur after the current date.









Example Set Criteria for a mass carrier change is as follows:















Use Case ID
CR-UC-15


Use Case
Set Criteria for a Mass Carrier Change


Name



Use Case
Administrator sets up the criteria for a mass carrier


Description
change


MFS
MFS 28; MFS 29;


Reference



Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional
CRA Mass Changes


Category



Pre-Conditions
The user has logged into the system.


and
In embodiments, the system has verified identity


Assumptions
and permissions of the specific user



All reference data required to define a carrier has



been entered for the Change-to Carrier.


Post-
Criteria for a mass carrier change may be set.


Conditions



Interface
Human User Interface


Considerations



Primary Flow
Step 1 The User indicates the mass change is a mass



carrier change and enters the following information:



One or more change-from carriers



One change-to carrier for each change-from carrier



One or more toll-free service provider entities or



toll-free service provider units per change



from/change-to carrier (optional)



One or more LATAs per change from/change-to



carrier (optional)



Step 2 The user enters the date the carrier change



can be completed (carrier date) and a number of



days prior for when carrier changes can begin



(carrier-X date).



Step 3 In embodiments, the system verifies that the



data entered is valid and provides a response that the



mass change criteria have been accepted.



Step 4 An identifier for the mass change operation



is established and status is set to PENDING for



the Mass Change.


Alternate
E1: At Step 1, embodiments of the system notifies


Flows
the user if any of the data entered is invalid, such as



an invalid Carrier code. Toll-free service provider



entity or Unit, or LATA.



E2: At Step 2, embodiments of the system notifies



the user if the date information is not valid. The



Carrier and Carrier-X date may occur after the



current date.





Use Case ID
CR-UC-16


Use Case
Set Criteria for a Mass Toll-Free Service Provider


Name
Change


Use Case
Administrator sets up the criteria for a mass toll-free


Description
service provider change


MFS
MFS 28


Reference



Actor(s)
User (disclosed embodiment administrator



System (disclosed embodiment)


Functional
CRA Mass Changes


Category



Pre-Conditions
The user has logged into the system.


and
In embodiments, the system has verified identity and


Assumptions
permissions of the specific user.


Post-
Criteria for a mass toll-free service provider change


Conditions
may be set.


Interface
Human User Interface


Considerations



Primary Flow
Step 1 The user indicates the mass change is a mass



toll-free service provider Change and enters the



Change-from toll-free service provider entity or toll-



free service provider Unit and corresponding Change-



to toll-free service provider entity or toll-free service



provider Unit



Step 2 The user enters the date the toll-free service



provider Change can be completed (toll-free service



provider date) and a number of days prior for when



carrier changes can begin (toll-free service provider-



X date).



Step 3 In embodiments, the system verifies that the



data entered is valid and provides a response that



the Mass Change criteria have been accepted.



Step 4 An identifier for the mass change operation is


Alternate
established and status is set to PENDING for the


Flows
Mass Change.



E1: At Step 1, embodiments of the system notify the



user if any of the toll-free service provider entity or



toll-free service provider Units entered may be



invalid.



E2: At Step 2, embodiments of the system notify the



user if the date information is not valid. The toll-free



service provider date and toll-free service provider-X



date may occur after the current date.









In embodiments, the system may identify records impacted by a mass change. Using the mass change criteria, embodiments of the system can search for records that may be impacted by the mass change and determine if the record can be updated for the mass change information or if manual intervention is required. The identification process can be repeated after verification of the results and manual action has been taken for those records that cannot be updated automatically.


In embodiments, the system can identify and update records that are impacted by a mass change. Updated records may be assigned an appropriate effective date and time.


An example use case that updates customer records impacted by a mass change is as follows:















Use Case ID
CR-UC-17


Use Case Name
Update Customer Records Impacted by a Mass Change


Use Case
Administrator executes a system process to update the customer


Description
records that may be impacted by a mass change


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional Category
CRA mass changes


Pre-Conditions and
The user has logged into the system.


Assumptions
In embodiments, the system has verified identity and



permissions of the specific user.



Customer records impacted by the mass change have been



identified.


Post-Conditions
Customer records that may be impacted by a mass change may



be updated and assigned an effective date and time.


Interface
Human User Interface


Considerations



Primary Flow
Step 1 The user indicates the mass change for the customer



record update process, the date to begin download of



updated customer records and the number of customer



records to download each quarter hour. For an SCP Area



of Service Expansion, the user indicates if updated



customer records may be to be sent over the links to



SCPs (online update) or extracted to a file (offline



update).



Step 2 The user specifies a start date and time for the process



to begin (default is immediate).



Step 3 In embodiments, the system creates a version of Active,



Sending, and Disconnect impacted customer records



with the an effective date and a time calculated based on



the indicated download start date, number of records and



the indicated quarter hour quantity. Pending and Hold



impacted customer records may be updated with no



change to the effective date and time.



Step 4 In embodiments, the system provides an indication that



processing is completed and that the results (customer



records updated, customer records failed update) may be



available for review.


Alternate Flows
E1: At Step 1 and 2, embodiments of the system notify the user



if the mass change or the start date and time may be invalid.



E2: At Step 4 embodiments of the system notify the user if



processing cannot begin or ends before completion.









SCP administration and network management may be two important functions defined under SCP management. SCP administration functions in embodiments allow users to establish and modify SCP-related reference data in embodiments of the system and send messages to the SCP nodes and their Call Management Services Database (CMSDB) subsystems to manage data tables that reside there.


Network management functions for the toll-free Service involve the management of various parameters for automatic capabilities intended to monitor and control toll-free query traffic and calling volumes at the Service Control Points (SCPs), Service Switching Points (SSPs), terminating switches and terminating subscriber lines. When various call volume thresholds may be exceeded, the SCPs trigger Automatic Call Gapping (ACG) code controls at the originating SSPs.


The disclosed embodiment of the Network Management functions allow network managers to configure and adjust the relevant control parameters on SCP. Data collection at the SCPs can be configured through the disclosed embodiment to provide network managers with relevant surveillance information useful to monitor traffic and analyze problems, such as the detection of SCP overloads and excessive calling or excessive ineffective attempts to dialed codes.


The SCP Management (SCP-M) functions may be used by SCP administrators at the SCP Owner/Operator (SCP O/O) companies and by network managers for the SS7/CCS networks, which may be typically operated by the same SCP O/O entities or otherwise affiliated with them. SCP-M functions may interact directly with the SCPs via the SCP Interface as defined in TM-798. An example of these interactions is illustrated in FIG. 45.












Requirements—Minimal Feature Set











Current





state or




MFS #
New
Sub Function
Description





MFS 33
Current
SCP
The definition and configuration of



state
Administration
SCPs and related SCP information


MFS 34
Current
Master Number
In embodiments, the system may



state
List
maintain for each managed SCP a





list of toll-free NPAs, and for each





NPA-an effective dated list of their





contained NXXs for which toll-free





Customer Records (CRs) may be





loaded and for which toll-free data-





base queries may be received.


MFS 35
Current
SCP Mated
SCP's may be generally defined in



state
Pairs
mated pairs. In embodiments, the





system can need to keep track of





this relationship.


MFS 36
Current
798 Protocol
TM-798 Interface messaging, and



state

others can be used for communi-





cating and exchanging the messages





between the disclosed embodiment





and the SCP.


MFS 37
Current
Network
Network management is done by



state
Management
the SCP implementing overload





controls whenever call volume





thresholds may be exceeded. The





disclosed embodiment defines the





controls and sets thresholds. Data





collection at the SCPs can be





requested through disclosed





embodiment to provide network





managers with information to





analyze problems.









There may be additional features supported by the disclosed architecture such as the examples which follow:












SCP Management—New Feature Set









NFS #
Function
Description





NFS 13
Provide to the
Today, all information sent to an SCP is sent



SCPs the ability
via a push. In some cases the SCP requests



to pull call
this information, but they may wait till the



routing details
request is processed before receiving the



rather than only
information. In embodiments, the system



allowing a push
should allow an SCP to pull information




directly from the system. Controls may be




built into embodiments of the system to




only allow records that may be released by




the toll-free provider to be pulled.









SCP administration functions of the disclosed embodiment allow users to establish and modify SCP-related reference data in embodiments of the system and send messages to the SCP nodes.


The principal users of SCP-M functionality may be assumed to be SCP administrators at the SCP Owner Operator (SCP O/O) companies and network managers at Network Management Centers (NMCs) or Network Operations Center (NOCs) at the telecom network providers who operate the SS7/Common Channel Signaling (CCS) networks. Secondary users may be administrators, who have global privileges to access the data and facilitate administrative and control actions of the SCP administrators and network managers.


The current system SCP Administration supports the management of SCP data tables or similar data structures. Functionality provided by a current system may be supported in embodiments of a new system. Design of disclosed embodiments may vary. These may include the following:













Table
Description/Purpose







SCP ID Table
The SCP ID table defines SCPs managed by the disclosed



embodiment and key parameters associated with each


SCP Mated Pair
The SCP Mated Pair Table is used to define active/active highly


Table
available relationships between individual SCPs within the same


Active/Active
CCS network.


Configuration)



SSP Lists
For each CCS network, embodiments of the system can maintain



a list of SSPs that may route Toll-Free Database queries to an SCP.



This information is used to validate SSPs specified for SSP based



special studies.


Toll-Free NPA-
The SCP Toll-Free NPA-NXX List contains the toll-free NPAs


NXX Lists
and their NXXs belonging to the SCP in the user's CCS network.



This list specifies the domain of dialed codes whose customer



records may be loaded at that SCP and whose toll-free database



queries may be to be handled by that SCP. This is sometimes



referred to as the SCP's Master Number List.









A common practice among SCP owner-operators is the running of periodic (typically annual) batch audits of extracted files of SCP customer records against the database in order to detect outdated or missing SCP CRs. The process is known as a reverse audit, because it uses the extracted SCP records as a basis for the audit comparison instead of the database. The typical practice for each SCP O/O has been to periodically audit each toll-free NPA's range of CRs by extracting a SCP-generated CR audit file for that NPA.


The audit file is not a complete view of the CRs, but is rather an extracted listing of each loaded CR's Customer Record Number (CRN), i.e., the TFN or numeric Template ID in NPA-NXX-XXXX format, Effective Date and Time, and toll-free service provider ID. The audit file is then loaded to the TFMP administration. The reverse audit process then compares the records to the corresponding CRs. The discrepancies may then trigger CR resends to the target SCP via the TM-798 interface, or may be written to file for a subsequent batch resend.


The SCP Administration function supports actions performed by SCP administrators and disclosed embodiment administrators. The following may be sample use cases addressing SCPs, SCP mates, SSP lists and SCP-NPA NXX lists, among other administrative controls and limits for SCP Operations. These do not cover every possible action.


An example use case to define a SCP ID in the disclosed embodiment is as follows:















Use Case ID
SM-UC-1


Use Case Name
Define a SCP ID and its attributes within the disclosed



embodiment.


Use Case Description
The administrator enters the information required to create an



SCP into the disclosed embodiment.


MFS Reference
MFS 33


Actor(s)
User (administrator system)



System (disclosed embodiment)


Functional Category
SM-SCP Management.


Pre-
User has logged on to embodiments of the system and has


Conditions/Assumptions
permissions to perform the requested action.



The SCP ID has not been defined in the system.



The CCS Network Id has already been defined in the



system.


Post-Conditions
A SCP ID is defined in the system's database.


Interface Considerations
The user should be connected via a HUI (Human User



Interface) to access the system.


Primary Flow
1. The user enters the CCS Network ID, the parent object



for which the SCP ID is being defined.



2. The user enters the information related to data elements



to define a SCP ID:



Node Id



Template Record Indicator



3. The user submits all SCP information to the system.



4. In embodiments, the system validates the data elements



per data requirements and that the SCP ID has not already



been defined in the system.



5. In embodiments, the system validates the information



provided and interacts with the SCP



6. In embodiments, the system returns a confirmation



message to the user confirming creation of the SCP ID



in embodiments of the system


Alternate Flows
E1: At Step 1, if the CCS Network Id is not found,



embodiments of the system cannot allow the user to create



the SCP.



E2: At Step 4, if system validation fails, then embodiments



of the system cannot allow the user to create the SCP.



E4: At Step 5, if the SCP fails to interact with embodiments



of the system or does not accept the information, then



embodiments of the system cannot allow the user to create



the SCP.



In all cases, an error indication is returned to the user and



further processing stops.









An example use case to Update the SCP ID data is as follows:















Use Case ID
SM-UC-3


Use Case Name
Update the SCP ID data in the disclosed embodiment.


Use Case Description
The TFMP administrator can update the SCP ID data in the



disclosed embodiment.


MFS Reference
MFS 33; MFS 34


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional Category
SM-SCP Management.


Pre-
User has logged on to embodiments of the system and has


Conditions/Assumptions
permissions to perform the requested action



The SCP ID, for which the update is being made, has been



defined in the system.



The CCS Network ID has already been defined in the



system.



The user can only update the queue status (from Queue to



Not Queue) and Template Supported indicator in the



SCP.


Post-Conditions
A SCP ID data is updated in the system


Interface Considerations
The user should be connected via a HUI (Human User



Interface) to access the system.


Primary Flow
1. The user enters the SCP Id to retrieve the SCP ID data



from the system's database.



2. In embodiments, the system verifies if the user has



permission to manage the above SCP Id.



3. User modifies the SCP ID data and submits the SCP ID



information (Template Supported and Queue status) for



validation and processing.



4. System validates the data elements per data requirements



section and according to FR section.



5. In embodiments, the system returns a confirmation



message to the user confirming modifications of the SCP



ID data in the system.


Alternate Flows
E1: At Step 1, if the SCP ID does not match the system's



database, then embodiments of the system cannot allow the



user to retrieve/update the SCP ID data.



E2: At Step 2, if the SCP ID does not belong to the user's



CCS network, then embodiments of the system cannot allow



the user to retrieve the SCP ID data.



E3: At Step 3, if validation fails, then embodiments of the



system cannot allow the user to modify the SCP ID data.



In all the above cases, an error indication is returned to the



user and further processing is stopped.









Establish or Update SCP mated pair inside the disclosed embodiment is as follows:















Use Case ID
SM-UC-5


Use Case Name
Establish or Update SCP mated pair inside the disclosed



embodiment.


Use Case Description
The TFMP administrator or SCP administrator enters the



SCP IDs to establish a relationship between two SCPs as SCP



mates in the system.


MFS Reference
MFS 35


Actor(s)
User (SCP administrator or disclosed embodiment



administrator)



System (disclosed embodiment)


Functional Category
SM-SCP Management.


Pre-
The SCPs to be defined as a mated pair should belong to


Conditions/Assumptions
the user's CCS network.



The SCP IDs that may be mated should have been defined



in the SCP ID table.



The SCPs should not be a mated with any other SCPs.



User has logged on to embodiments of the system and has



permissions to perform the requested action.


Post-Conditions
The SCP Mate relationship is now established in the system


Interface Considerations
The user should be connected via a HUI (Human User



Interface) to access the system.


Primary Flow
1. User enters or selects an SCP ID and a second (different)



SCP ID for the SCP mate.



2. In embodiments, the system verifies that both SCP IDs



may be managed by the same user of a CCS Network.



3. The user requests the two SCPs be defined as mated pair.



4. In embodiments, the system validates the mated pairs.



5. The system updates the table identifying these two SCPs



as a mated pair.



6. The system returns a confirmation message to the user



noting the establishment the SCP mated pair in the



system.


Alternate Flows
E1: At step 1, if the entered SCP ID is not found in the table



and an error or not-found indication is returned.



E2: At Step 2, if the SCP ID does not belong to the user's



CCS network, then embodiments of the system cannot allow



the user to mate the pair.



E3: At Step 4, If either SCP ID is already mated to another



SCP ID or any other validations fail, then an error message is



returned to the user indicating the SCPID is already mated.



In all the above cases, an error indication is returned to the



user and further processing is stopped.









The disclosed embodiment may interface with all the SCPs using the TM-798 standard interface protocol. The embodiments of the disclosed architecture can maintain that interface standard as have each SCP change the interface may not be a viable approach.


The SCP interface is a dedicated Wide-Area Network (WAN) link supporting the establishment of TCP/IP socket connections between embodiments of the system and each SCP. In embodiments, the system may maintain a set of data related to the interface for each SCP, such as an IP address and TCP port number, as described by SR-4959, SCP-TFMP TCP/IP Interface Specification.


The embodiments of the disclosed architecture may need to translate the necessary information from its internal data stores into a standard interface for transmission to the SCPs.


Network management is performed automatically by the SCP implementing overload controls whenever call volume thresholds may be exceeded. The disclosed embodiment defines the controls and sets thresholds. Data collection at the SCPs can be requested through disclosed embodiment to provide network managers with information to analyze problems.


Mass Calling Thresholds may be used to provide the SCPs with surveillance and control thresholds for each of 15 destination threshold level classes defined by the disclosed embodiment. Each of these thresholds is expressed in terms of the number of call attempts during, for example, a 2.5-minute period.


The disclosed embodiment automatically assigns a threshold level class to a particular destination telephone number of a toll-free-number, based on the number of lines associated with it, as specified on the Customer Record (CR).


The SCP detects focused overloads by counting call attempts for each destination number and comparing the accumulated count to the surveillance and control thresholds for the threshold level class assigned to the destination number.


If the call attempts during an example 2.5-minute measurement period exceed the surveillance threshold for a destination telephone number, then the number is placed on a surveillance list.


A destination telephone number remains on the surveillance list until it either does not exceed its surveillance threshold during a full 2.5-minute measurement period or it exceeds its control threshold when it's moved to the control list.


An example use case to Change the Mass Calling Threshold Data is as follows:















Use Case ID
SM-UC-6


Use Case Name
Change the Mass Calling Threshold Data


Use Case Description
The administrator changes the default values of Mass Calling



Threshold Data like Surveillance Threshold, Control



Threshold and Initial Gap Interval in the CCS network of its



SCPs.


MFS Reference
MFS 37


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Functional Category
SM-SCP Management.


Pre-
The CCS Network ID has already been defined in the


Conditions/Assumptions
system.



User can update the threshold values even when the SCPs



may be overloaded.



User has logged on to embodiments of the system and has



permissions to perform the requested action.


Post-Conditions
The Mass Calling Threshold values may be updated.


Interface Considerations
The user should be connected via a HUI (Human User



Interface) to access the system.


Primary Flow
1. The user enters the CCS network ID, for which the



thresholds need to be defined.



2. In embodiments, the system verifies if the user has



permission to manage the above CCS network ID.



3. The user initiates to modify the Surveillance threshold



data of a CCS network.



4. In embodiments, the system checks if the surveillance



threshold values changed by the user for threshold levels



1 through 14 increases or remain the same with each



threshold level increase and may be greater than their



associated surveillance thresholds. Threshold level 15,



which is used for study purposes and tele voting, is



excluded from these cross field validations



5. The user now modifies the default Control threshold data.



6. In embodiments, the system checks if the control



threshold values changed by the user for threshold levels



1 through 14 increases or remain the same with each



threshold level increase and may be less than their



associated control thresholds. Threshold level 15, which



is used for study purposes, is excluded from these cross-



field validations.



7. The user may also enter a value as initial gap interval.



8. The user submits all these changes to the system.



9. In embodiments, the system validates the information



provided and interacts with all the SCPs.



10. In embodiments, the system sends these changes to all the



SCPs in the CCS network and returns a confirmation



message of the updated values.


Alternate Flows
E1: At Step 1, if the CCS Network ID is not found,



embodiments of the system cannot allow the user to modify



the threshold values.



E2: At Step 4, if system validation fails, then embodiments



of the system cannot allow the user to modify the threshold



values.



E3: At Step 6, if system validation fails, then embodiments



of the system cannot allow the user to modify the threshold



values.



E4: At Step 9, if system validation fails, then embodiments



of the system cannot allow the user to modify the threshold



values.



E5: At Step 10, if the SCP(s) fails to interact with



embodiments of the system or does not accept the



information, then embodiments of the system cannot allow



the user to modify the threshold values.



In all cases, an error indication is returned to the user and



further processing stops.









The Excessive Calling Controls may be used to set and change the calling thresholds for 6-digit and 10-digit vacant toll-free and out of area numbers. These excessive calling thresholds may be expressed in terms of the number of call attempts in a defined time interval (for e.g., 5 minute period). When the thresholds may be met, the numbers may be added to the control list and the calling rate is automatically limited by the SCP. In addition, a threshold is defined to automatically take these numbers off of the control list, when the calling rate decreases sufficiently.


The disclosed embodiment does not enforce the ACG (Automatic Call Gapping). A set of control parameter thresholds may be used to invoke the ACG. Once the thresholds may be reached, the ACG is triggered at the SCP-SSP level.















Use Case ID
SM-UC-7


Use Case Name
Changing Excessive Calling Controls


Use Case Description
The administrator or a network manager change the control



and decontrol threshold values for a 6-digit and 10-digit



vacant toll-free numbers.


Actor(s)
User (disclosed embodiment administrator/network



manager)



System (disclosed embodiment)


Functional Category
SM-SCP management.


Pre-
The SCP to be defined should belong to the user's CCS


Conditions/Assumptions
network.



User has logged on to embodiments of the system and has



permissions to perform the requested action.



User can override the threshold class assignments even



when the SCP is overloaded.


Post-Conditions
The desired controls of calling threshold for the vacant toll-



free number may be changed.


Interface Considerations
The user should be connected via a HUI (Human User



Interface) to access the system.


Primary Flow
1. The user enters the CCS network ID, for which the



 thresholds need to be defined.



2. In embodiments, the system verifies if the user has



 permission to manage the above CCS network.



3. The user enters the SCP ID to set the Excessive Calling



 Thresholds.



4. User enters the control and decontrol threshold values.



5. The user updates the entered values.



6. In embodiments, the system validates the information



 provided and interacts with all the SCPs.



7. In embodiments, the system sends the updated threshold



 values to the desired SCP and returns a confirmation



 message of the updated control thresholds.


Alternate Flows
E1: At Step 1, if the CCS Network ID is not found,



embodiments of the system cannot allow the user to modify



the threshold values for vacant toll-free numbers.



E2: At Step 2, if system validation fails, then embodiments



of the system cannot allow the user to modify the threshold



values for vacant toll-free numbers.



E3: At Step 3, if the SCP ID entered incorrect or does not



belongs to the CCS network, then embodiments of the system



cannot allow the user to modify the threshold values for



vacant toll-free numbers.



E4: At Step 6, if system validation fails, then embodiments



of the system cannot allow the user to modify the threshold



values for vacant toll-free numbers.



In all cases, an error indication is returned to the user and



further processing stops.









The Special Studies Request is done when a potential problem is suspected in the network and is done by sampling traffic to a specific number, Telecom Owner Operator Network or an SSP (Service Switching Point). A toll-free service provider, administrator, or a network manager can request an SCP owner operator for a special study into their SCP and they can either accept or reject the request to enable the study.


The study is conducted to allow a maximum of 100 calls in a maximum duration of 168 hours (7 days), which ever limit is reached first i.e., the collection of data can end when the specified number of call attempts have been monitored, or when the specified time limit is reached first.


The special study can be requested for a toll-free number, Destination Telephone Number, carrier, or for an SSP. A toll-free number or a Destination Telephone Number of either 6-digit (NPA-NXX) or a full 10-digit number (NPA-NXX-XXXX) can be requested for the study.


An example use case to Create a Special Study Request is as follows:















Use Case ID
SM-UC-8


Use Case Name
Create a Special Study Request


Use Case Description
The disclosed embodiment administrators or network



managers create a Special Study Request for one or more



SCPs


Actor(s)
User (disclosed embodiment administrator/network



manager)



System (disclosed embodiment)


Functional Category
SM-SCP management.


Pre-
The network manager creating the special study should


Conditions/Assumptions
belong to the same CCS Network as the SCPs at which



the study is requested.



User has logged on to embodiments of the system and has



permissions to perform the requested action.



The study is conducted to allow a maximum of 100 calls



in a maximum duration of 168 hours (7 days), which ever



limit is reached first i.e., the collection of data can end



when the specified number of call attempts have been



monitored, or when the specified time limit is reached



first.


Post-Conditions
The Special Study Request is created in the desired SCPs.


Interface Considerations
The user should be connected via a HUI (Human User



Interface) to access the system.


Primary Flow
1. The user enters the CCS network ID, for which the



 Special Study need to be defined.



2. In embodiments, the system verifies if the user has



 permission to manage the above CCS network Id.



3. The user enters the SCP ID for the Special Study.



4. In embodiments, the system verifies if the user has



 permission to manage the above SCP ID.



5. For one or more desired SCPs, the user requests a special



 study for a certain 10-digit or 6-digit toll-free or



 destination code, carrier, or SSP.



6. The user submits the request to the system.



7. In embodiments, the system validates the special study



 and interacts with the SCP.



8. In embodiments, the system accepts the information,



 activates the study at the SCPs, and returns a confirmation



 message to the user.



9. At the end of the special study, embodiments of the



 system sends the results of the special study to the user.


Alternate Flows
E1: At Step 1, if the CCS Network ID is not found,



embodiments of the system cannot allow the user to create a



special study.



E2: At Step 2, if system validation fails, then embodiments



of the system cannot allow the user to create a special study.



E3: At Step 4, if the SCP ID entered incorrect or does not



belong to the CCS network, then embodiments of the system



cannot allow the user to create a special study.



E4: At Step 8, If the Special Study limit maximum allowed



quantity for an SCP has been exceeded, embodiments of the



system rejects the request and indicates this to the User.



E5: At Step 8, if system validation fails, then embodiments



of the system cannot allow the user to create a special study.



In all cases, an error indication is returned to the user and



further processing stops.









In embodiments, the system is operable to generate a billing event record whenever an event occurs that results in a charge to toll-free service provider entity in control of a toll-free number. Billing event records may be collected and transferred to an external billing system. Currently, not all billable events result in a billing event record being generated by embodiments of the system and a manual Billing event record may be generated external to the current system. It may be desirable to automate the creation of as many of the billing event records as possible.


In embodiments, the system generates a record when an event related to a billable function occurs. The event record can provide the information needed to calculate a bill for the charges incurred by each organization that makes use of the embodiments of the disclosed architecture according to embodiments. The event record can include the identification of the user, the action performed, and the date and time of the occurrence.












Events Related to Billing Calculations per FCC Tariff










Supported Billing Calculation












Non-





Recurring
Monthly



Event
Charge
Charge*
Notes





Establishment
Charge per
Non-dedicated
Billing event data currently


of a system
Logon ID
access charge
provided by the TFMP Help


Logon ID


Desk/Data Center, no record





generated by disclosed





embodiment


Suspension of
None
Non-dedicated
Billing event data currently


System Access

access charge
provided by the TFMP Help





Desk/Data Center, no record





generated by disclosed





embodiment


Re-
Service
Non-dedicated
Billing event data currently


establishment
restoration
access charge
provided by the TFMP Help


of System
charge

Desk/Data Center, no record


Access


generated by disclosed





embodiment


Deletion of a
None
Non-dedicated
Billing event data currently


System Login

access charge
provided by the TFMP Help


ID


Desk/Data Center, no record





generated by disclosed





embodiment


Assignment of
Charge per
Non-dedicated
Billing event data currently


a Smart Card
Smart Card
access charge
provided by the TFMP Help


for System


Desk/Data Center, no record


Access


generated by disclosed





embodiment


Establishment
None
Dedicated
Billing event data currently


of a Dedicated

access charge
provided by the TFMP Help


Interface


Desk/Data Center, no record





generated by disclosed





embodiment


Deletion of a
None
Dedicated
Billing event data currently


Dedicated

access charge
provided by the TFMP Help


Interface


Desk/Data Center, no record





generated by disclosed





embodiment


Reservation of
None
Customer
Billing event record generated


a Number

Record Admin
by system




charge



Number Status
None
Customer
Billing event record generated


Changed to

Record Admin
by system


Spare

charge



Report Request
Charge per
None
Billing event data currently



report

provided by the TFMP Help





Desk/Data Center, no record





generated by disclosed





embodiment


Change of Toll-
Charge per
Customer
Billing event record generated


free Service
toll-free
Record Admin
by system


Provider for a
service
charge*



Number
provider





change per





number




Bulk Operation
Non-recurring
None
Billing event data currently


Request
charge per

provided by the TFMP Help



bulk operation

Desk/Data Center, no record





generated by disclosed





embodiment





NOTE:


A tariff may define dedication and non-dedicated access as follows: “Access to TFMP can be via non-dedicated or dedicated connections. Dedicated access requires use of a dedicated port on the disclosed embodiment on a full-time basis, other forms of access share ports and other access resources.”






The interface to the billing system should remain intact and require minimal changes to the current billing system to support disclosed embodiments. The current Billing system Interface format of the file and the records it contains is described in TM-NWT-021766, and TFMP-Bill/800 Interface Requirements.


A summary of the current Billing Event record data elements may be as follows:












Billing Event Record Data Elements









Billing Event
Data Element
Description and Usage





Toll-Free Number
Date and time of event



Billing Event
Controlling toll-free
Current toll-free service provider



service provider entity
entity associated with toll-free




number



Toll-free service
Current toll-free service provider



provider unit
Unit associated with toll-free




number



Responsible user login
Identifies user who initiated event,



ID
indication of “system” for system




initiated events



Toll-free number
Number involved in billing event



Toll-free number current
Status of toll-free number involved



status
in billing event



Toll-free number
If event involves a status change



previous status




Previous toll-free service
If event is toll-free service provider



provider entity
entity change



Previous toll-free service
If event is toll-free service provider



provider unit
Unit change


System Access
Date and time of event



Billing Event
Access type
Indicates the type of access




involved in the billing event—login




ID, dedicated, Smart Card



Toll-free service
Toll-free service provider entity



provider entity
involved in access event



Access action
Indicates action taken regarding the




access type—suspend, restore,




delete



Access identifier
Identifier for the access involved in




the billing event (i.e., login ID),




value of “All”, and others can be




used for suspend and restore actions


Report or Bulk
Date and time of event



Operation Event
Toll-free service
Toll-free service provider entity



provider entity
requesting report of bulk operation



Responsible user login
Identifies user who requested report



ID
or bulk operation



Report or operation
Report or bulk operation requested



requested









Billing Event records illustrate changes to toll-free service provider entity control of toll-free numbers that may be used to calculate charges to toll-free service provider Entities. On a periodic basis and in response to an on-demand request, embodiments of the system can compile a list of toll-free numbers with the controlling toll-free service provider entity, current status, and date the number entered that status and transfer the data to an external billing system. Only numbers with a controlling toll-free service provider entity may be included.


In one example, a system administrator can specify when billing audit data is to be collected and transferred. It is also possible to make an on-demand request for data to be collected and transferred as in the example use case as follows.















Use Case ID
BR-UC-1


Use Case Name
Schedule Periodic Billing Audit Data Collection and Transfer


Use Case
Administrator specifies the frequency for the collection of


Description
billing audit data and the timing for the data to be transferred.


Actor(s)
User (disclosed embodiment administrator)



System (disclosed embodiment)


Pre-Conditions and
The User has logged into the system.


Assumptions
In embodiments, the system has verified identity and



permissions of the specific user.


Post-Conditions
Billing audit data collection frequency and transfer time for



billing data may be set.


Interface
None identified


Considerations



Primary Flow
Step 1 The User enters the billing audit data collection



frequency and the corresponding transfer. Possible



values are:



None (audit data not collected)



Weekly with day of week and time of day for



collection and transfer'



Monthly with date of them month and time of day



for collection and transfer



Step 2 In embodiments, the system verifies that the data



entered is valid and provides a response that the



collection frequency and transfer time is accepted.


Alternate Flows
E1: At Step 2, embodiments of the system notify the user if



data entered is not correctly formatted.









Due to the localized nature of call routing prior to the introduction of centralized routing databases, the same toll-free number may need to be controlled by a different toll-free service provider and provide service to a different toll-free subscriber in different geographic regions. In some instances arrangements still exist where the same number supports different toll-free service in different U.S. states and different service in the U.S. and Canada and other jurisdictions. A number involved in this type of arrangement is referred to as a duplicate number. The terms toll-free number, toll-free system, toll-free telecommunications network, toll-free carrier, and related terms as used herein are not limited to the United States or North America, but have equivalents throughout the world in other political, geographic, and technological regions. The methods, systems and functionalities, as described herein, are applicable to and operable within such equivalent jurisdictions.


On a periodic basis, embodiments of the system can compile a list of duplicate numbers and transfer the data to an external billing system. The data consists of the toll-free number providing duplicate service, the toll-free service provider entity for the number, the current status of the number, and data related to the Customer Record for the number. The CR data includes the status of the CR and the effective date and time of the CR. For the current system, this also includes indications if the CR includes Call Processing Record (CPR) and Label Definition (LAD) structures. Additional data is included from remarks entered in the CR that indicates the actual toll-free service provider that controls the number for each area where service is provided.


In embodiments of the disclosed architecture a subset of the series of reports can be provided. The system will provide a warehouse of data for reporting and analytics. The warehouse will enable a user to pull either standard (aka canned) reports or to generate user specific reports. Listed below are a series of reports that the current TFMP system provides. As an example of what reporting may be required, is a high level description of the reporting of the disclosed embodiment provides the following types of reports:













Report Type
Description







On-demand Reports
The disclosed embodiment generates on-demand report when a



“system user” requests the report. The on-demand reports may



be not stored in the disclosed embodiment since they may be



created on user's request. Results of the on-demand reports may



be not stored in the disclosed embodiment


Scheduled Reports
The scheduled reports may be generated by the disclosed



embodiment operational personnel on scheduled basis (i.e.,



daily, weekly, monthly, etc.). A user can request a scheduled



report to get the most recently generated report by the disclosed



embodiment. Results of the scheduled reports may be stored in



the disclosed embodiment.


Exception Reports
Reports that may be automatically generated by the disclosed



embodiment when exclusive events occur either in the disclosed



embodiment or in an SCP. The exception reports may be sent to



the user's designated address information provided by the



“system user” to the disclosed embodiment.


Industry Reports
Reports required by the Industry:



Weekly Number Admin Report—Distributed to industry,



including FCC



Auto Return to Spare Report—Distributed to FCC monthly,



identifies TFNs in reserved status that have exceeded the 45



day limit and may be automatically returned to the spare



pool


Miscellaneous
Reports may be requested by the user himself through accessing


Reports
the database tables and extracting the information needed



through querying data









Most scheduled reports can also be accessed on-demand. The differences are how the report is kicked off and where the results of the report are sent/stored. The reports below are required at a minimum, but the Provider is expected to propose additional reports, for example:













Report type
Specific Reports







Network
Mass Calling Summary for Toll-Free Numbers Under


Management
Control report. This report is available on-demand.


Reports
Summary for Out of Area Toll-Free Numbers Under



Control report. This report is available on-demand.



Summary for Vacant Codes Under Control report. This



report is available on-demand.



Manual Control List report. This report is available on-



demand.



Special Studies List report. This report is available on-



demand.



Special Study Summary report. This report is available



on-demand.



POTS Number to Toll-Free Number Inquiry report.



This report is available on-demand.



SCP List report.



SSP List report.


SCP
Customer Record Execution Error Summary report.


Administration
Low Sample Space Summary report.


Reports
Misrouted Query Summary.



SCP Values Audit report.



SCP NPA-NXX List report.



SCP NPA-NXX List Audit report.



SCP Status report.



SCP Status Audit report.



TFMP SCP CR Confirmation.


Number
Approaching Due report.


Administration
Unavailable Numbers report.


Reports
Reserved Numbers report.



Assigned Numbers report.



Transitional Numbers report.



Number Administration Summary report.



Daily Log Number Administration report.



Daily Log Summary of Number Administration report.



TFMP Number Administration Confirmation report.


Customer
CAD Only report.


Record
CPR Only report.


Reports
LAD Only Report.



PAD Only Report.



TAD Only Report.



Whole Customer Record Report.



Whole Template Record Report.



Customer Record Audit Results report.



Customer Record Activation reports.



Area of Service Label List reports.



Deficient Customer Record report.



Destination NPA-NXX Report.



POTS to Toll-Free number Inquiry Report.



Sending Customer Record Report.



AOS Label to Toll-Free Number Inquiry (AIR).



Template Records List Report.



Pointer Records List report.



Daily Log of Customer Record report.



Daily Log Summary of Customer Record.



Validation Results report.



Affected CR By NPA-NXX-LATA Activity.



Failed CR By NPA-NXX-LATA Move report.



Directory Assistance NPA Selection List.



Carrier Information List.



CCS Network-State-NPA Report.



CCS Network-LATA Report.



Toll-free service provider List report.



Logon ID List report.



Telephone Company List report.


Carrier
Allowable CICs for CR Input & Approval report


Notification



and



Approval



Reports



Administration
Scheduled Activities report is an on-demand report.


Reports
NXX Percent Used report.



SCP-SMS Audit Results report.



Security User Data report.


Service
Past Due toll-free service provider Change Requests


Maintenance
report.


Reports
Denied toll-free service provider Change Requests



report.









The Exception reports may be automatically generated by embodiments of the system when exclusive events occur either in the disclosed embodiment or in an SCP. For example, the Misrouted Queries Exception Report is sent each time an SCP receives a call processing query for a toll-free number having NXX not in the SCP's database.













Report type
Specific Reports







Network Management
SCP Status Change report.


Exception Reports
Threshold Level Class Override report.



Failed Requests report.


SCP Administration
Customer Record Execution Error report.


Exception Reports
Low Sample Space Exception report.



Misrouted Query Exception report.


Customer Record
Customer Record Activation Failure report.


Exception Reports
CNA toll-free service provider Change



Notification to Involved Carriers report.


Security
Unsuccessful Logons.


Administration
Unsuccessful Password Change.


Exception Reports









The user can query the database tables and extract information, as mentioned in the following examples:

    • a. In embodiments, the system logs specific number administration events as history records e.g., status change and ownership changes. The users can access this data to create their own reports.
    • b. In embodiments, the system logs specific customer record events as history records e.g., status change and ownership changes. The users can access this data to create their own reports.
    • c. In embodiments, the system logs logon ID locking history that the administrator can access and query reports from.
    • d. In embodiments, the system logs specific template record events as history records e.g., status change and ownership changes. The users can access this data to create their own reports.


There may be additional features that the embodiments of the disclosed architecture may support such as the examples which follow:












Reporting—New Feature Set









NFS #
Function
Description





NFS 14
Toll-free
Currently, toll-free provider reporting data is not



Provider
available for up to 24 hours. The embodiments of



Dashboard
the disclosed architecture should provide to its




users the ability to obtain status information about




is numbers, number statuses, recent activity, and




other relevant information in near real time. This




should be done via a feature called the toll-free




provider dashboard.









The system will provide a platform for Analytics of TFMP data and usage. The Analytics platform should be flexible in providing some canned analytics as well as to allow the user to define and produce analytics on an ad hoc basis. The analytics should be able to be reports on current day actions as well as historical actions. Categories of analytic reports are:

    • a. Individual toll-free Provider specific information on usage, TFNs, activity
    • b. All or multiple selected toll-free providers information on usage, TFNs, activity
    • c. SCP activity
    • d. System performance information


In embodiments, the system is architected, designed, and implemented with security as a key attribute. The system shall ensure the confidentiality, integrity, and availability of information assets. Controls will be implemented that protect IP and data against unauthorized use, disclosure, transfer, modification, or destruction. Measures will be implemented such that legitimate users continue to have access to the system for the expected services levels. The security functionality will address two perspectives. One is the potential security threats and types of attacks that may be targeted at the system or service. The other is a framework for a systematic analysis of the measures available to protect the system or service from attack. One is the potential security threats and types of attacks that may be targeted at embodiments of the system or service. The other is a framework for a systematic analysis of the measures available to protect embodiments of the system or service from attack.


All aspects of a system, including the physical plant and facilities, operating system and application software, signaling interfaces and protocols, operations interfaces for configuration, surveillance, and administration, and data storage and processing functions, have security vulnerabilities that could potentially be exploited.


At a high-level, the security threats include: damage or destruction of information and/or other system or service resources, corruption or modification of information, illicit use, theft, or removal of information and/or other system or service resources, disclosure of information, and denial or interruption of services.


A security framework identifies the aspects of a system or service that require security and the methods available to address the security threats for each. From a security perspective, a system or service can be viewed as consisting of User, Control and Management planes. Each plane includes infrastructure, services, and application layers.


Security services provide capabilities to prevent attacks. At each plane and layer, one or more of the following example security services may be applicable:













Service
Description







Authentication
Authentication is used to validate the identity presented or



asserted by an entity attempting to initiate communications with a



system or service or identified as the source of data presented as



input to a system or service. Peer entity authentication occurs at



the initiation, or potentially during, communication between



entities. Authentication can be one-way or mutual. Data origin



authentication attempts to verify the source of data.


Access Control
Access control is used to protect against unauthorized access to



system resources, including functional components, stored



information, information flows, services, and applications. Role-



Based Access Control (RBAC) is a mechanism to provide



different levels of authorization based on the entity attempting to



gain access and the function or information to be accessed. RBAC



is configured based upon the designated role or job function of the



entity accessing the system


Data
Data confidentiality prevents unauthorized disclosure of data.


Confidentiality
Mechanisms for data confidentiality apply for data stored by a



system and data as it is being transferred from or to a system.



Confidentiality can apply for selected fields of data as well as



protect information that can be derived from observation of traffic



flows


Integrity
Data integrity focuses on modification, insertion, deletion, and



replay of data. Like confidentiality, data integrity can apply for



stored data, data as it is transferred, and for selected data elements



or fields. Data integrity mechanisms may include capabilities for



data recovery.


Non-repudiation &
Non-repudiation provides a means to verify the entity involved in


Logging
messages or data exchanges or responsible for activities



performed by the system. A receiver of data can be provided with



proof of origin of the message, while a sender can be provided



with proof of receipt. Audits and logs support non-repudiation for



access to embodiments of the system and actions taken by users.


Communication
Communication security ensures that information is exchanged


Security
only between authorized endpoints and is not diverted or



intercepted


Availability
Security measures associated with availability may be intended to



ensure there is no denial of authorized access to system



functionality and stored information due to events impacting the



system


Privacy
Sensitive information about a system and its users should be



protected. Privacy is concerned with protecting information so



that it cannot be gathered through network observation or other



means.









Requirements—Minimal Feature Set














Sub



MFS #
Function
Description







MFS
Authenti-
The system shall require authenticated identity to


39
cation &
allow access to the system.



Access
The system shall use role-based permissions to



Controls
control access to system functions and data.




The system shall support the modification of user




credentials via automated password reset as well as




Password reset from a system help desk.




The system will support user ID locking/unlocking




for reasons typically such as non-payment or 6




months of non-use.




The system shall allow an authorized TFMP




Administrator to perform the following functions:




Remove a lock from a specific user ID(s)




Manually lock a specific user ID(s)




Manually exempt a specific user ID(s) from




being automatically locked




The system shall automatically close user sessions




due to an extended period of inactivity. The system




will provide capability to configure the ‘inactive




time’ after which user sessions are closed.




The system shall support capabilities to detect,




provide notification and proactively manage a




potential DoS (Denial of Service) attack.




The system shall track login account type and




permissions by interface.


MFS
Data
The system shall restrict the access and display of


40
Confiden-
stored data to maintain data confidentiality based on



tiality,
authenticated and authorized identity.



Integrity
The system shall use firewalls and virus protection



and
software to protect against corrupt or malicious



Avail-
software.



ability
The system shall ensure information integrity,




accuracy and consistency is maintained over its life




cycle. Information cannot be modified in an




unauthorized or undetected manner.




The system shall be available when it is needed.




This means the system with its data, security controls




and communication channels must be functioning




correctly at all times as specified by the SLAs.


MFS
Commun-
The system shall provide for encryption for data


41
ication
transferred across interfaces that cross trust domain



Security
boundaries.




All sensitive information will be protected with




transmission encryption.


MFS
Non-
The system will generate a log message for actions


42
repudia-
taken by users that identify the user, the interface,



tion &
the action taken and parameters provided by the



Logging
user, and the date and time.




The system will log all potential, suspected or know




security incidents. The system must be able to




integrate with Incident management tools.


MFS
Password
The system shall allow for configurable password


43
policy
rules and will force users to change passwords



compli-
periodically and enforce minimum password



ance
strength requirements.




The system shall encrypt all passwords.


MFS
Role
Create, Manage, Assign roles to users including


44
Based
RO's, Carriers, SCP O/O, Ops.



Access
Permissions will be based upon Roles.



Control



MFS
Support
There is proprietary info per a tariff that needs to be


45
Tariff
maintained such as logon ID codes, list of customers,



Require-
CPRs information & other related information



ments
capable of being displayed in tabular form


MFS
Audit
The system shall maintain audit trail of all


56
require-
transactions that result in access, modification



ments
and/or deletion of information. The audit trail




should have the following minimum information




Type of event




Date time of event




Source of the event




Outcome of the event




Identity of user/subject associated with the event




Audit logs must be read-only and protected from




unauthorized access.


MFS
Physical
The system shall be housed in a secure facility


57
Security
with physical safeguards and access controls.




Unauthorized access to the facility housing the




system will not be permitted.


MFS
Vulner-
The system shall expect security patches (application


58
ability
and infrastructure software included) to be applied



Manage-
on a regular basis. And should be architected to



ment
minimize downtime during these events.




Application code will be regularly scanned with at




least one static code analysis tool to ensure good




security practices are being followed.




All assets will be regularly scanned to ensure no




malware or trojans are present.




A proactive threat management solution (e.g.: SIEM)




shall be implemented to identify threats and manage




compliance


MFS
Backup
The system shall be architected to continue


59
and
functioning even in case of a disaster at its primary



Disaster
site.



Recovery
The system and its data will be regularly stored at an




off-site location. Backup mechanism and procedures




should be developed, documented and implemented




as part of the solution.









There may be additional features the embodiments of the disclosed architecture may support such as the examples that follow:












system Security - New Feature Set









NFS #
Function
Description





NFS 15
Single Sign-
In embodiments, the system may authenticate the



on
source for all attempts to access embodiments of




the system via multi-factor authentication.




Methods include, but may be not limited to items




such as a certificate provided by a credentialing




authority, a login ID and password or other known




approaches.


NFS 16
Self-Serve
Provide the ability for self-service password resets



Password
and the ability to unlock logon IDs when all issues



Reset
with it have been resolved without Help desk




intervention.


NFS 17
Additional
Allow a toll-free provider the ability to identify a



User
“super user” ID for their organization and allow



Manage-
the super user additional capabilities in managing



ment
the users under this provider. These capabilities




could include, but may be not limited to:




Deactivating user IDs




Activating user IDs




Resetting passwords




Restricting access (i.e., can search, but not




reserve, cannot modify an existing record, can




only search and not create customer records,









Some primary functions provided by the embodiments of the disclosed architecture include the ability to search for and reserve toll-free numbers and provision customer records that may be uploaded to SCPs to enable toll-free service. This can be done via an online interface (HUI) as well as by a machine-to-machine (API) interface. These interfaces allow manual and mechanized access to embodiments of the system for these functions such as those that follow:














Requirements - Minimal Feature Set









MFS #
Sub Function
Description





MFS
Number
Online ability to provide all the user functionality


47
Admin-
described in the Number Administration section of



istration
this document.


MFS
Customer
Online ability to provide all the user functionality


48
Record
described in the Customer Record Administration




section of this document.


MFS
System
Online ability to provide all the user functionality


49
Admin-
needed to perform embodiments of the system



istration
administration functions of this system.


MFS
Reporting
Online ability to provide all the user functionality


50

described in the Reporting section of this




document.










Requirements - New Feature Set









MFS #
Sub Function
Description





NFS
Single Sign-
Allow the ability for a user to login once and have


19
on
access to any and all areas of the system that they




have permission to access without a separate




login.


NFS
Ease Of Use
The user and administrator interfaces should be


20

designed in such a way as to provide an easy and




intuitive interface for users. Considerations should




include, but are not limited to:




Prompts for entries




Intuitive defaults based upon user




characteristics.




Suggestive entries based upon previous user




actions.









The embodiments of the disclosed architecture may include a Web Services API for functionality supported in the Human User Interface (HUI).


The Human User Interface (HUI) provides user interface functions to the human users to access the system. The HUI may be accessed by many types of users. For example, a user can be administrator, a toll-free service provider user, SCP administrator, and network manager. Access to the HUI functions by a user can depend on the security permissions that have been assigned for the user by the administrator.


The HUI provides the following logical groups of functions which can be accessed by a user: User Profile and Security Administration; Number Administration Customer Record Administration; SCP Management; Reports; and Administration


The administrator and/or others may use the user profile and security administration functions provided by the HUI to protect embodiments of the system data from being viewed or updated/deleted by unauthorized users. The user profile and security administration grants permissions to different groups of users to access embodiments of the system to create, view, update and activate certain functions. The system can implement a role-based access control mechanism.


The HUI provides functions to perform number search, reserve or cancel reservation for one or more toll-free numbers, change parameters associated with already reserved numbers, and query numbers for determining the number status and other number administration parameters. The HUI interacts with the “Number Administration Requirements” functional area to perform the number administration functions.


The HUI interacts with the “Customer Record Administration” functional area to perform the functions described in this section.


The CAD function is used to enter the date and time for the toll-free number service, subscriber/customer information for the toll-free number, the Areas of Service (AOS) to be supported for the toll-free number, the carriers that, and others can be used to route calls to the toll-free number, and other associated service data for the toll-free number.


An example CAD can be associated with a Call Processing Record (CPR) for complex call routing data and can be associated with a Labels Definition (LAD) record for additional complex call routing data that is entered on the CPR.


The HUI interacts with the “SCP Management Requirements” functional area to perform the Service Control Point administration and network management functions.


The administrator or other toll-free service provider's users can request the Scheduled and On-demand reports via the Report Request function of the HUI. The HUI interacts with the “Reporting Requirements” functional area to perform RRR request.


The disclosed embodiment Administration functions of the HUI may be used for Bulletin Board Messages, System Processing Options (SPO) and Downtime/Default Effective Time for CR (DDT). An Administrative Console may facilitate the system administrators and Help Desk personnel administrative functions for managing the system.


There may be additional features the embodiments of the disclosed architecture may support such as the examples that follow:












Administration Features Requirements - New Feature Set









NFS #
Function
Description





NFS 18
Click to Chat
Enable end users to quickly contact a support




representative through the user interface. This




feature can provide an immediate channel to a




support representative.









The API interface 4600 operates as a liaison between the toll-free service provider client systems (CS) 4602 and the disclosed embodiment (disclosed embodiments), thereby providing a mechanism through which interactions between the client systems 4604 and embodiments of the architecture can take place. The API interface 4612 may, for example, be used by Customer Record Administration 4608 and Number Administration 4610 components of the disclosed embodiment on one end, and the toll-free service provider client systems on the other end. This interaction is schematically illustrated in FIG. 46.


It is expected that disclosed embodiments can define a REST/SOAP API for machine interfaces. There is a current Mechanized Generic Interface (MGI) interface that supports many of our customers today and the embodiments of the disclosed architecture according to embodiments. The MGI interface is being used across the network by all client systems and there has to be backward compatibility. The move from MGI to an API interface cannot be overnight and has to be phased accordingly. The MGI Interface specification is available in SR 4592 MGI Interface specification.


In embodiments, the system provided alerts for certain situations. These alerts can be in the form of emails or via a logon notification or a console alert. Examples of these alerts may include:


Requirements—Minimal Feature Set














MFS #
Sub Function
Description







MFS 51
API
The system may support notifications back to



notifications
the user when background functionality is




completed.


MFS 52
SCP queuing
If queue builds for a specific SCP toll-free




service providers cannot see the confirmation




of download and can tend to resend the CRs;




an alert is sent to notify the community that the




SCP is queuing. Not automated in current




system.


MFS 53
Report avail-
Notification to user that a report is available



ability



MFS 54
System outage
Inform users when embodiments of the system



notifications
can be down for scheduled maintenance.


MFS 55
New feature or
Let the users know that functionality is



functionality
available.



notification









This section provides a summary of characteristics of reference data. This need not define the absolute data needs, but can provide some insight into the data stored and used.


Reference Data may fall into the following categories:

    • a. Network Administration reference data—primarily used to construct and/or validate Customer Records
    • b. CCS Network Information is used to identify the CCS network served by the SCPs
    • c. LATA to CCS Network Mapping is used to determine which networks and their SCPs can receive customer records for a specified LATA as the area-of-service
    • d. NPA to CCS Network Mapping is used to determine which CCS networks and their SCPs can receive customer records for a specified NPA as the area-of-service
    • e. Network Allowed Carriers is used to identify a subset of CICs that may be supported by a CCS network
    • f. NPA-NXX to LATA Information is used as reference data of NPA-NXXs in LATAs and the association with an Operating Company Number (OCN) code, Company Code (CO), and Effective Date


General reference data about each telecommunications carrier that may be involved in carrying toll-free calls and might thus be an involved carrier included in the CRs of various toll-free service providers:

    • a. Carrier Information
    • b. Toll-free service providers and associated carriers
    • c. Carrier Agreements with Entities For CR Input
    • d. Entity Agreements with Carriers for CR Input


IntraLATA carrier management reference data—Used to support Local-Exchange Carriers (LECs) and other network service providers with the capability to control and/or manage the use of their networks for IntraLATA toll-free calls to a destination POTS number that terminates on their network include:

    • a. Carrier Operating Company Numbers
    • b. Network Provider-SCP Owner/Operator Company Codes
    • c. Network Provider-SCP Owner/Operator Carrier Agreements
    • d. Network Provider-SCP Owner/Operator IntraLATA Agreements
    • e. Network Provider-SCP Owner/Operator IntraLATA Exceptions
    • f. Carrier IntraLATA Agreements
    • g. Carrier IntraLATA Exceptions
    • h. Toll-free Service Providers Allowed Carriers
    • i. Toll-free Service Providers Disallowed Carriers
    • j. Non-Functional Requirements


In order to run a system, there is a need to understand the performance requirements of embodiments of the system and the processing throughput. This includes embodiments of the system availability needs as well as the capacity and performance requirements. The performance of the system must meet or exceed the performance of the existing legacy system for all parameters described in this section.


This section addresses the expected availability of the disclosed embodiment. The approach used for this section is based on industry standards related to availability.


This section establishes an understanding of terminology and establish context in this area in order to provide clear requirements regarding the reliability of the disclosed embodiment. A defined time period is needed to support an availability measurement. A typical calculation involves setting an availability objective or determining the actual availability of a system or service over a year. It may be necessary to identify exclusions from the time period, such as planned periods when it is known that embodiments of the system or service cannot be available. It can also be specified that unexpected circumstances that would impact availability, such as excessive demand, unusual operating conditions, or unexpected or disastrous events (e.g., earthquake, fire etc.) may be to be excluded from availability calculations.


Discussion related to availability often involves a number of 9s, i.e., “five 9s” availability. This refers to an availability objective or measurement of 99.999%. Applied for a year, this means the availability subject can provide the expected functionality across the given domain for 525594.744 minutes and therefore not be available to provide the expected functionality across the given domain for 5.256 minutes during the year.












Availability: Definition









Rating
UnPlanned
Planned





Very Good
Fewer than 61.32
Fewer than



hours* (99.3%)
200 hours


Outstanding
Fewer than 26.28
Fewer than



hours* (99.7%)
50 hours


Best in Class
Fewer than 4.38
Fewer than



hours* (99.95)
12 hours


Continuous Availability
Zero (100%)
Zero (100%)





By definition, continuous availability is 100% IT service uptime


Based on 24/365 or 8,760 hours/year scheduled uptime






When considering availability requirements, it is necessary to understand the functions it provides and its overall role in supporting toll-free service. Certain functions of the system, namely Number Administration, Customer Record Administration, and SCP Management, may be essential for supporting toll-free service. More specifically, the expected functions of embodiments of the system when it is available may be to:

    • a. Receive and process number search/reserve requests and customer record input and update requests;
    • b. Administer statuses for toll-free numbers and customer records based on user actions, effective dates and process rules applied by the system; and
    • c. Download customer record information to SCPs.
    • The disclosed embodiment may be considered an operations system. Unlike an SCP, it is not involved in real-time routing of toll-free calls. If this were not functioning, callers would still be able to make toll-free calls and the calls would be routed to the correct toll-free service subscriber. In embodiments, the system does, however, provide “real-time” services (such as toll-free number and customer record administration) to toll-free service providers. An additional consideration is that access to toll-free numbers may be provided to all users equally so that one toll-free service provider entity does not gain a competitive advantage over others for reserving desirable numbers. This underscores the importance of consistent availability across user interfaces.














Category
Service
Requirement







Avail-
Unscheduled downtime for
Best-in-class availability


ability
core functions and interfaces.
defined as 99.95% (fewer



Core functions are Number
than 262.8 minutes down



Administration, Customer
per year, measured



Record Administration, SCP
monthly)



Management and any support




functions that these core




functions depend on (i.e.,




Authentication &




Authorization)




Unscheduled downtime for all
Very good availability



non-core functions. Non-core
defined as 99.50% -



functions can be identified as
(fewer than 2620.8 minutes



any function not identified as
down per year, measured



a core function
monthly)



(i.e., Reports, Billing).




Scheduled downtime for all
Not to exceed on average



functions and interfaces
4 hours per month









In embodiments, the system may also allow time and processing for the loading of industry reference data during routine maintenance windows.


Business continuity encompasses the strategic and tactical capability of the organization to plan for and respond to incidents and business disruptions in order to continue business operations at an acceptable predefined level.


Disaster recovery capabilities include the strategies and plans for recovering and restoring the organizations technological infrastructure and capabilities after a major system failure.


It may be necessary to establish objectives for unusual external events like earthquake or fire and non-routine activities like major infrastructure upgrades or transitions to new platforms. Overall solution design, including operations processes and procedures, may be needed to maintain business continuity during unusual circumstances and recover from disasters. Solution design considerations for business continuity and disaster recovery include geographic redundancy for solution components, deployment of backup systems and capabilities, and selection of the sites where equipment and operating personnel may be located.


A pictorial view of a disaster recovery scenario is illustrated in FIG. 47 at 4700.














Category
Service
Requirement







Resiliency
System Recovery Time
Less than two



Objective (RTO) - Restore
(2) hours



after a disaster or major




disruption




System Recovery Point
15 minutes



Objective (RPO) - Maximum




tolerable period in which data




can be lost




Transaction error rate -
Less than



percentage of transactions that
0.001%



may be not successful for any




reason









In embodiments, the system can facilitate the required optimal use of disaster recovery sites and expenses such that analytics or other non-critical workloads can be run out of a warm/hot DR site, thus avoiding “Cold DR.” Redundant/disaster recovery site may be greater than 100 miles away (range listed in ISO 27001 as 30 to 100 miles)


Capacity planning involves a judgment regarding the anticipated usage of the functions of a system and a correlation to embodiments of the system resources needed to support the anticipated usage of a function. Based on the usage forecast, the quantity of each system resource needed to meet the demand is determined. Capacity is directly related to performance. If load or demand surpasses the level used to plan capacity, system resources can become overloaded and the ability of embodiments of the system to provide its intended function is likely to degrade. Once a system is operational, capacity management is a continuous operational process. Usage and performance may be monitored to recognize trends and capacity resource quantities may be adjusted accordingly. The objective is to maintain system performance and efficient use of resources as usage and demand change.


There may be a number of components that provide the resources needed to support the functionality provided by a system. Depending on embodiments of the system resource, capacity is expressed as a fixed size or quantity, or in terms of the demand, load, or usage the resource is expected to support. Capacity related to system usage is generally planned based on the average period of largest usage of the system, taking into account the cost of system resources, the probability of excessive usage beyond the average peak, and the impact of degraded performance when the anticipated peak is exceeded. For example, there may be three main areas for which the capacity may be considered as indicated in the following table:













system



Areas
Description







Process-
A system needs sufficient processing capacity to support


ing
usage of required functions. To quantify processing



capacity requirements, it is necessary to determine the



tasks that may be performed to support the functionality



provided by embodiments of the system and quantify the



relative processing capacity needed for each one. A



complicated task can use more processing resources as



compared to a simple task. Using forecasts of the volume



and frequency of each task, a determination can be made



regarding how much processing capacity is needed.


Memory
There may be a number of uses for system memory.



Memory is needed to support real-time system pro-



cessing, including storage for embodiments of the system



software. Additional memory is needed for storage of



data used by the system. Types of data used by a system



include:



Configuration data that facilitates users to access



embodiments of the system and controls how



embodiments of the system operate.



Functional data that is entered by users and manipulated



by the system.



Reference data that provides information used to support



each system function.



Historical data such as log files retained by the system.


Interfaces
Systems include interfaces for users to access the



functionality of embodiments of the system and for



embodiments of the system to exchange information with



other systems. It is important to understand the types



and quantity of interfaces a system is expected to



support to determine embodiments of the system



hardware and software resources required.









In order to understand the system capacity requirements some current metrics having to do with capacity and utilization are provided (FIGS. 48-51).


Capacity related to system usage is generally planned based on the average period of largest usage, taking into account the probability of excessive usage beyond the average peak, as well as the impact of degraded performance when the anticipated peak is exceeded. The following assumptions were made when developing the capacity and performance requirements. In embodiments, the performance of the system may meet or exceed the performance of the current system for parameters:

    • a. The initial processing capacity for the system can be engineered to include capacity for growth of 20% YOY.
    • b. The system must be able to deliver burstable capacity.
    • c. Assuming 7,988,500 usable toll-free numbers per NPA and 8 toll-free NPAs, the system must be engineered to maintain data for roughly 64 million usable toll-free numbers.
    • d. During peak usage periods, assume 25% of user logins are logged in.
    • e. It is assumed the system will have the capacity to support interfaces to 30 SCPs minimally.












Transaction Data - April 2015













Hourly
Peak
Peak Hour



Transaction Type
Average
Hour
Volume
















Number Search
2,234,000
22
5,700,000***



Number Reserve
13,900
23
  51,000***



Number Spare
3,500
23
  72,000***



Customer Record Updates
6,360
20
 31,600 







***Because a large volume of toll-free numbers are spared in hour 23, many toll-free



service providers execute automated scripts to search and reserve for numbers that have



just been spared.
























Capacity


Category
Service
Current
Requirement





Capacity
# Toll-Free Numbers
 40 million
 64 million



# Toll-Free Providers
450
600



# SCP
22
30



Owner/Operator





Interfaces





# Customer Records
128 million
192 million



# Online User
16,250 users
24,360 users



# Concurrent Online
 4,875 users
 6,090 users



User Sessions










Toll-free Number Capacity - Minimal Feature Set









MFS #
Function
Description





MFS 60
Toll-free
The volume of toll free numbers, currently at 40



Number
million, are growing by an average 180,000 per



Capacity
month. This growth will continue as the system




must be scaled to be able to be able to handle this




growth as an expected activity.















Average
Peak Hour




Volume
Volume


Category
Service Level
Requirement
Requirement





Performance
Search transactions
2.5 million per
6.0 million per



(all types)
hour
hour



Number
14,000 per hour
51,000 per



Reservation

hour



transactions





Number Spare
 3,500 per hour
72,000 per



transactions

hour



Customer Record
 6,500 per hour
31,500 per



Updates

hour



# SCP Updated
20/second
30/second



Customer Record





downloads










Capacity & Performance - New Feature Set









MFS #
Function
Description





NFS 21
Extreme system
In the event of an extreme system usage situation



usage situation
(i.e. NPA code opening) the system must be able




to quickly scale up to handle up to four times




(4X) the normal peak usage period.




To illustrate extreme usage, in once case during




the opening of toll-free NPA 844, a peak of 77,




000 transactions per minute were received.









Usage measurement and monitoring is required to provide fair and equal system access to all toll-free service providers. In order to do that, the system may measure, monitor, and alert the system usage for any instances where one provider's utilization is at a point where it is impacting the other provider's use of the system. The measurements must be on a toll-free service provider level.












Usage Measurement and Monitoring - Minimal Feature Set









MFS #
Function
Description





MFS 38
Usage
The system can must measure, monitor, and alert



Measurement
for any instances where one provider's utilization



&
is at a point where it is impacting the other



Monitoring
provider's use of the system. The measurements




must be on a on a toll-free service provider level




The alerting level should be a configurable




setting in the system.









Reference data may be required to represent routing and numbering in the POTS network and the service areas supported by SCP O/O networks. The information provides the relationships between SCP O/O CCS networks and the LATAs, NPAs and NPA-NXXs each network serves and is used to validate the information in customer records. There may be 8 CCS networks supported by the system.


There are 164 LATAs in the NANP, roughly 380 NPAs in use or planned for use for POTS call routing, and roughly 160,000 NPA-NXXs assigned to central offices for call routing.


The system can provide memory capacity for the reference data needed to capture the relationships between States, LATAs, NPAs, and NPA-NXXs required to represent the POTS network.


The system can provide memory capacity for the reference data required to represent the network relationships supported by each SCP O/O CCS network.


The system must also allow time and processing for the loading of industry reference data during routine maintenance windows.


In embodiments of the system, functional data is the data required by each function supported by the system. The system maintains functional data for each NPA-NXX within a toll-free NPA and each toll-free number with each NPA-NXX. Currently, the toll-free NPAs 800, 888, 877, 866, 855, and 844 are open and NPA 833 is anticipated to open in 2017, making a total of 7 toll-free NPAs. Note that 822 and 889 are also reserved as a potential future toll-free NPAs.


For each toll-free NPA, NXXs 000-199, 911, and 555 are not used. Additionally, in NXX 250, XXXX numbers 0000-1499 are not used. This results in 7,988,500 toll-free numbers per NPA. Assuming 8 toll-free NPA, the system will need to maintain data for roughly 64 million toll-free numbers.


In embodiments of the system, initial minimum memory capacity for the data required to support 64 million toll-free numbers. Toll-free service is enabled when a toll-free number is reserved by a toll-free service provider, a customer record is provisioned against the number, and information from the record is downloaded to SCPs. Numbers that are not currently controlled by a toll-free service provider (i.e., numbers in SPARE status) and numbers not available for toll-free service (i.e., numbers in UNAVAILABLE status) do not have customer records. Customer records are provisioned in advance of an effective date, and the system maintains current and pending customer records, so it is possible for multiple customer records to be associated with a number.


A percentage of toll-free numbers will be in SPARE status and therefore not have an associated customer record. Additionally, many working numbers have not had changes to the provided toll-free service and therefore have a single active customer record. However, some numbers may have an active and pending customer record, and old records are stored by the system for a period of time. For the purposes of capacity planning and to account for the differences in size between simple and complex customer records, it is assumed that there is an average of 2 customer records per toll-free number. Therefore, the system will need to maintain 128 million customer records.


The system can provide initial minimum memory capacity for the data required to support 128 million customer records.


During peak usage periods, 25% of user logins are logged into the system. The system must provide capacity for 16,250 login IDs and anticipating 30% peak concurrent usage, capacity for 4,875 concurrent HUI sessions. Note that not all users who are logged into the system will be actively and continuously sending requests to the system.


During a time of extreme usage, such as the opening of a new toll-free NPA, there will a significant increase in the number of concurrent sessions. In the event of an extreme system usage situation the system should be able to quickly scale up to handle up to four times (4×) the normal peak usage period.


Instantaneous response time is the time for a response when performing an action regarding objects on the screen, such as using a mouse to select on an on-screen object or drag a scroll bar.


When a human user takes an action related to an object on a screen, the system can provide an initial acknowledgment response in 0.1-0.2 seconds.


When a human user takes action to request an operation or execute a command requiring system process of the request, the system can provide a response in 0.5-1 second.


A feedback response provides information regarding the progress or completion of a requested action.


For transactions that take longer than 5 seconds—the system will provide the user feedback that the transaction has been accepted and that the response will be available at a later time.


In embodiments, the system can provide an API interface for machine-to-machine transaction processing. The system can provide resources to support having API connections from each toll-free Providers (number of expected providers defined above).


The system can minimally have the capacity to support interfaces to 30 SCPs at launch with the ability to add more as the number of users grow.


The table below presents example minimum data rates for the SCP interface as stated in Section 4.2.2 of TM-798. The performance of the system may meet or exceed the performance of the current system for all parameters described in this section.












Minimum Non-Peak Data Rates for


SCP Interface from TM-798










Transaction
Size/Data Rate







Customer Record
9.6 Kbytes/CR × 20 CR/sec



Updates
Or 192 Kbytes/sec




Or 1.536 megabits/sec



Other
88 Kbytes/hour










The system can provide the resources to support the data rate and message frequency for each SCP interface as specified.












SCP Data Rates - Minimal Feature Set









MFS #
Function
Description





MFS 46
SCP
The system must be able to process a minimum of



Data
1200 compounds per minute and a minimum of 20



Rates
customer record update (UPD-UCR) commands




per second. The typical, non-peak message




frequency is roughly 1 per second









There are four main areas of data integrity that may need to be addressed and monitored. They are:

    • a. Latency: The time between when information is expected and when it is readily available for use.
    • b. Accuracy: Data accuracy refers to the degree with which data correctly represents the “real-life” objects they are intended to represent.
    • c. Timeliness: Refers to the time expectation for accessibility and availability of information. Timeliness can be measured as the time between when information is expected and when it is readily available for use.
    • d. Consistency: Two data values drawn from separate data sets must not conflict with each other, although consistency does not necessarily imply correctness.


Acronyms & Glossary












Acronym
Meaning







ACG
Automatic Call Gapping


ACNA
Access Customer Name Abbreviation


AIN
Advanced Intelligent Network


AOS
Area of Service (of customer record or CCS network)


ASCII
American Standard Code for Information Interchange


ASLs
Area-of-Service Labels


ATIS
Alliance for Telecommunications Industry Solutions


BOC
Bell Operating Company


CAD
Customer Administrative Data (portion of Customer Record)


CAG
Carrier Agreements with Entities table


CAN
Customer Notification and Approval


CAT
Customer Acceptance Testing


CCP
Cost Causer Pays


CCI
(Mass) Carrier Change Information


CCS
Common Channel Signaling (is a standards terminology)


CIC
Carrier Identification Code (is an industry standard element)


CLLI
Common Language Location Identifier (is an industry standard



element)


CLEC
Competing Local Exchange Carrier


CMSDB
Call Management Services Data Base


CNA
Carrier Notification and Approval


CO
Company Code (defined by the TPM industry data)


CO
Central Office


CPR
Call Processing Record


CR
Customer Record


CRA
Customer Record Administration


CRA/CRR
Customer Record Audit/Resend


CRA&O
Customer Record Activation and Output


CRB
Customer Record Benchmarks


CRN
Customer Record Number


CRO
Customer Record Output (process of CRA)


CS
Client system


CSE
Carrier Security Information


CSV
Comma Separate Variable


CVER
Conversion Error


d/b/a
“Doing Business As” operating units of carriers


DDT
Down & Default Time


DoS
Denial of Service


DTN
Destination Telephone Number


E2E
End-to-end system Integration Testing


EAG
Entity Agreements with Carriers (for CR Input)


EAP
TFN Exceptions for Approvals (for CNA process)


ECC
Excessive Calling Controls


EDR
Event Data Record


EDT
Effective Date and Time


ED
End Intercept Date


ENA
Entity Notification and Approval Set-up


ENO
TFN Exceptions for Notifications (for CNA process)


ENO/EAP
Exception Notification and Approval (by Toll-Free Numbers)


FA
Final Acceptance


FCAPS
Fault, Configuration, Accounting, Performance and Security



management


FCC
Federal Communications Commission


FMO
Future Mode of Operation


FTP
File Transfer Protocol


GAN
M2M (MGI) Activation Notice Control table


GNA
Carrier General Notification and Approval Set-up


GUI
Graphical User Interface


HH:MM:SS
Hours, minutes, seconds


HPU
High Priority (CR) Updates


HTML
HyperText Markup Language


HUI
Human User Interface


IC
Inter-exchange Carrier


ICM
IntraLATA Carrier Management (CIC 0110 validations)


ID
Identification


ILEC
Incumbent Local Exchange Carrier


INWATS
Inward Wide Area Telephone Service


JOT
Inter-Operability Testing


IP
Internet Protocol


IPSec
Internet Protocol Security


KPI
Key Performance Indicators


LAD
Label Definitions


LAN
Local Area Network


LATA
Local Access and Transport Area


LECs
Local Exchange Carriers


LERG
Local Exchange Routing Guide


LSO
Local Serving Office


LT
Load Test


LUI
Locked and Inactive User IDs


M2M
Machine to Machine


MAS
Mass Calling Thresholds


MCC
Manual Control Request


MCP
Multi-Number Customer-to-Pointer Record Conversion


MGI
Mechanized Generic Interface


MHG
Multi-Line Hunt Group


MNA
Multi-Number Automation


MND
Multi-Dial Number Disconnect


MNL
Master Number List (supported TF NPANXX domain of an SCP)


MoP
Methods of Procedures


M&P
Methods and Procedures


MRO
Multi-Dial Number Resp Org Change


MRT
Migration Regression Test


MTBF
Mean Time Before Failure


MTTR
Mean Time To Repair


NA
Number Administration


NAC
Network Allowed Carriers table


NANP
North American Numbering Plan


NCA
Network Provider-SCP Owner/Operator Carrier Agreements table


NCC
Network Provider-SCP Owner/Operator Company Codes


NCN
NPA to CCS Network Mapping table


NDA
Non-Disclosure Agreement


NET
CCS Network Information table


NFY
Notify (CNA action indicator value)


NGN
Next Generation Networks


NLA
Network Provider-SCP Owner/Operator IntraLATA Agreements



table


NILE
Network Provider-SCP Owner/Operator IntraLATA Exceptions table


NMC
Network Management Center or


NMC
Network Management Class (a/k/a Threshold Level Class)


NOC
Network Operation Center


NOF
Carrier Notification


NON
No notification (CNA action indicator value)


NPA
Numbering Plan Area


NPANXX
The leading 6-digits of a 10-digit NANP telephone number


NRC
Network Management Report Control


NRL
Network Management Report Limits


NXL
NPA-NXX to LATA Information table


NXX
The 4th through 6th digits of a NANP Telephone number


OAM&P
Operations, Administration, Maintenance and Provisioning


OCN
Operating Company Numbers


OEI
Other External Interfaces


ORC
Resp Org Control


ORG
Resp Org Info


OSI
Open systems Interconnect


PAD
Pointer Administrative Data


PMO
Present Mode of Operation


POTS
Plain Old Telephone Service


PR
Pointer Record


PRC
SCP Report Control


PRL
SCP Exception Report Control


PSTN
Public Switched Telephone Network


RA
Require approval (CNA action indicator value)


RAC
Resp Org Allowed Carriers (reference data table)


RAO
Revenue Accounting Office


RAT
Revenue Assurance Test


RBAC
Role Based Access Control


RDC
Resp Org Disallowed Carriers (reference data table)


Resp Org
Responsible Organization


(RO)



RM
Removal of Invalid 6-Digits in AOS Labels


ROC
Resp Org Associated Carriers for View (reference data table)


ROI
(Mass) Resp Org Change Information (ROI)


ROP
Resp Org Profile


RRR
Report Request Reports


RSP-RCU
Response to Customer Record Update message



(SMS-SCP interface)


RSP-ROR
Response to Update Resp Org message (SMS-SCP interface)


RSS
Rich Site Summary


SAP/DAP
Summary and Detail of Carrier Approval Status


SCCP
Signaling Connection Control Part


SCP
Service Control Point


SCP-M
Service Control Point Management


SCP O/O
Service Control Point Owner/Operator


SEC/SUD
Security Control/Security User Data


SEP
Security Parameters


SFG
Simulated Facility Group


SID
SCP ID Definition


SLA
Service Level Agreement


SMS
Short Message Service


SMS/800
Service Management system/800


SPO
System Processing Options


SR
Special Report


SRC
SMS Administration Report Control


SS7
Signaling System 7


SSP
Service Switching Point


STD
Security Terminal Data


STN
Screening Telephone Number


STP
Signaling Transfer Point


SUP
Security User Data


TAD
Template Administrative Data (portion of a Template Record)


TAL
Template Allocation Limits


TCP
Transmission Control Protocol


TF
Toll Free


TFN
Toll-Free Number


TLC
Threshold Level Class


TM-798
The - SCP/CMSDB Interface Specification


TLS
Transport Layer Security


TPM
Terminating Point Master


TR
Template Record


TRA
Telecom Routing Administration


UAL
User Application Layer


UC
Use Case





Advanced Intelligent
Mechanism used with the Signaling system 7 to provide


Network (AIN)
advanced call routing and processing


Area of Service (AOS)
Area from which a toll-free number can receive calls


Billing
Capability of the system to provide information required to



calculate monthly bills


Carrier
Provider of telephone service, operator of a network that



processes telephone calls


Customer Record
Defines routing of calls to a toll-free number, provisioned



in the system and uploaded to SCPs


Customer Record
Supports entry and update of customer records associated


Administration
with a toll-free number


Local Access and
Geographic area of service for a local carrier


Transport Area (LATA)



Local Exchange
End-office switching system in the telephone company



network that provides service to telephone subscribers


Number Administration
Supports search, reserve, query and update of toll-free



numbers and maintains number statuses


North American
Standard that describes the format and use of telephone


Numbering Plan
numbers


(NANP)



Number portability
Ability to move the service associated with a telephone



number from one carrier to another


Query
Request for the system to provide information about a



number


Reporting
Capability of the system to provide data to users in the form



of reports


Resp Org/toll-free
User of the system to obtain control of toll-free numbers


Provider
and provision customer records, sells service to toll-free



subscribers


Search
Request for the system to find toll-free numbers that are not



controlled by a Resp Org


SCP Management
Supports management of SCPs via the system


Function



Service Switching Point
Local exchange switch supporting access to Signaling



System 7


Signaling system 7
Network architecture and protocol supporting out-of-band


(SS7)
signaling for call setup and feature control


Signaling Control Point
Database containing information used to route calls and


(SCP)
provide features


Service Control Point
Responsible for operation of SCPs


Owner/Operator (SCP



O/O)



Signaling Transfer Point
Routes Signaling System 7 messages


(STP)



Reserve
Request to take control of a toll-free number, number



becomes associated with a toll-free service provider


Tandem
Switching system that provides interworking between other



switching systems


Telephone number
Identifies telephone service and the unique network



resources dedicated to providing the service, format is



NPA-NXX-XXXX as described by the North American



Numbering Plan 9 NANP)


Toll-free service
Type of telephone service where calls are billed to the



terminating subscriber, not the caller


Toll-free subscriber
End-user for toll-free service, obtains service, including an



associated toll-free number, from a toll-free service



provider


User Interface Function
Supports mechanized access to the system via a machine-



to-machine interface and manual access via a human user



interface









The toll-free telecommunications ecosystem, similar to traditional mobile and landline networks, is evolving to employ greater usage of Internet Protocol (IP) communications. With this transformation, there exist opportunities to facilitate a delegated and managed network between toll-free service providers (referred to as Responsible Organizations or “ROs”) and extend it to their customers to create a peer-to-peer toll-free network for exchanging voice, text and data.


In embodiments of the present disclosure, a trusted peer-to-peer network is provided for toll-free communications (TFN-P2P) that allows carriers to engage in managed communication with each other directly to exchange toll-free communications traffic. The Toll-free Management Platform (TFMP) 100 and its central registry, as described herein, may facilitate the setup, establishment and approval (“trust”) for a peer-to-peer communication channel, and may manage authorization, validation and approval of the peer-to-peer toll-free communication process.


In embodiments, the TFMP 100 may include methods and systems for number administration 102, customer administration 104, call management services 108, texting services 110 and text registry, and a smart services registry 112, as described herein, for the management and operation of toll-free communications over IP. The TFMP may allow users to search for, receive recommendations for, and make reservations of toll-free numbers 114 to be implemented and utilized in IP-based toll-free communications. A user interface may allow activating a toll-free number, for example through a one-click activation function 118, as described herein. Users may access the TFMP to create and access existing templates 120 of toll-free call routing customer records, and utilize a routing tree engine 122 to create customized call routing trees for the toll-free numbers of interest to the user, where such call routing templates, call routing trees, and the like include IP-based communications options. The centralized TFMP 100 may provide routing information for toll-free calls. This information may be broadly referred to as call processing records (CPRs) and commonly referred to in the industry as customer records, as described herein.



FIG. 52 presents a simplified call flow diagram showing the relationship between the TFMP, Responsible Organizations, and SCPs. A toll-free call may be initiated by a call originator, which is then handled by a service provider network. The service provider network may communicate with an SCP in part to determine information relating to call control and call routing. The SCP may communicate with the TFMP for further information regarding number administration, such as that provided by responsible organizations in call processing records and customer records. The TFMP may return to the SCP data relating to route provisioning or other toll-free communication channel data to assist in routing the call to its termination point. In embodiments, the originator of toll-free calls (often a communication carrier) queries (also referred to as “dips,” as described herein) a network service control point (SCP) to determine the destination of the call. These SCPs are network resources that act as proxies to the number route information (customer records) from the TFMP. Customer records may be broadly grouped into two categories: 1) Direct Records. These are also referred to as turn around records. These are basic queries that map a toll-free number to a carrier identifier, usually referred to as a Carrier Identification Code (CIC Code), ans 2) Complex Records. These are more complex routing instructions that allow for toll-free subscribers and service providers to create a decision tree based on vertical features. Examples of vertical features include time of day routing, Numbering Plan Area codes (NPA) based restrictions, area of service filters and carrier diversity features. Carrier diversity features would include, for example, the ability to have different service providers service the call based on call origination area of service or the ability to switch service providers due to network service events like heavy call traffic, congestion, outage or disaster.


During a typical call flow, calls originate from a local exchange carrier (LEC) or a mobile network operator (MNO). As shown in FIG. 53, MNOs and LECs have networks established with national communication carriers (referred to as inter exchange carriers (iXCs)). iXCs act as a call facilitator to deliver calls to the destination network, or termination service provider, and the final call termination point. Since it becomes an arduous task for every LEC to have a cross connect with every destination network, the iXCs act as intermediaries or a façade for call delivery. However, with the merging of the software and communications industries and emerging IP communication landscape, ROs now have tools to work directly with each other, which were not available to them previously. The TFN P2P, as described herein, facilitates direct connectivity between ROs and extends the concept to connect ROs directly with their end customers, without compromising the integrity and trust of toll-free communications because it is managed and secured by the functionalities of the TFMP, as described herein.


In embodiments of the present disclosure, there are two main components of the TFN P2P. The first may be referred to as TFP Peer Management & Metadata Enrichment. This system may allow for adding additional metadata to current call processing records that tag numbers with the type of endpoint, and the support for direct connections. This information may be added to the CPRs for numbers as an optional parameter. The information that may be added may include, but is not limited to:

    • RO ID
    • Session Initiation Protocol/Internet Protocol Support (SIP/IP Support) Flag—A Boolean indicator that shows the terminating service provider and endpoint's ability to accept IP packets
    • SIP/IP Uniform Resource Locator (SIP/IP URI)—A E.164 or similar numbering plan compliant resource identifier for the terminating end point.
    • SIP/IP Name Authority Pointer (NAPTR)—Resource record in the DNS system that is used to map end point or service provider servers and user addresses.
    • Peer Dip Life
    • Peer Rating


In embodiments, the peer rating indicator may be calculated based on information provided by ROs including, but not limited to, an average cost factor, comparative peer performance, ease of connectivity, accounting reconciliation requirements and call quality. This information may be further enriched with TFMP performance data derived from, for example, trouble tickets and help desk information. Data obtained from public domain (e.g., BBB ratings, DUNS information, social media scores) may be added to the computation used to infer an overall peer rating. Additionally, a peer management and approval process may be provided that tracks, manages, approves and activates peers in the toll-free IP-based communications ecosystem.


In embodiments, a second component of the TFN P2P may include an Intelligent SCP. The Intelligent SCP, as used herein, may allow for a smart dip service. Smart dips may be structured as a series of sequential dips with increasing fidelity in the information provided relating to the terminating carrier. The originating carrier, can incrementally request for additional information from the TFMP, as shown in FIG. 54, based on their desire and confidence level in directly peering with the terminating carrier. This may result in a dip cycle such as the following:

    • Dip 1—Traditional Route: During the first dip, the SCP may return a CIC code or CPR associated with the request. It may also return a flag that informs originating carrier networks that there is a possibility for a direct connect. The originating carrier may then validate its possibility of a bilateral channel with the terminating carrier and initiate a second dip (referred to here as “Dip 2”).
    • Dip 2—Peer Meta Data: During the second dip, the smart SCP may provide the requestor with peer metadata that facilitates basic direct peering with the terminating service provider.
    • Dip 3—Peering Success Indicator: During the third dip, the smart SCP may provide an average cost and quality metric based on an algorithm for determining success probability that includes various factors including data obtained from the TFMP (type of connectivity supported, network based quality data, peer rating), historical information gathered from dips (Peer Meta data dip frequency and re-dips, dip1/dip2/dip3 ratios).


In embodiments, in order to preserve the integrity of toll-free numbers, a time to live parameter may be added to the peer metadata that indicates how long this dip is valid for direct connections. By analogy, this may be thought of as the “shelf life” of a given connection, during which time it is approved as having sufficient integrity for use in completing toll-free communications. Originator SCPs may enforce dip life and ensure that local cache busting occurs at the end of dip life. The SCPs may also ensure that data refreshes occur post dip life.


In embodiments of the present disclosure, the TFMP, as described herein, may provide a smart data sampling and aggregation device and aggregation cloud for toll-free call routing, or Self Learning Toll-free Aggregator (the “STFA”). The STFA may provide a non-blocking sampling of the network element exhaust data that includes logs and other metadata that is logged by Service Control Points in Service Provider Networks based at least in part on a machine learning and/or a self-throttling algorithm. Routing information for toll-free calls may be provided by the centralized TFMP, as described herein. This information may be broadly referred to as a call processing records (CPRs) and commonly referred to in the industry as customer records.



FIG. 52 presents a simplified call flow diagram showing the relationship between the TFMP, Responsible Organizations, and SCPs. A toll-free call may be initiated by a call originator, which is then handled by a service provider network. The service provider network communicates with an SCP in part to determine information relating to call control and call routing. The SCP may communicate with the TFMP for further information regarding number administration, such as that provided by responsible organizations in call processing records and customer records. The TFMP may return to the SCP data relating to route provisioning or other toll-free communication channel data to assist in routing the call to its termination point. In embodiments, the originator of toll-free calls (usually a communication carrier) queries (also referred to as “dips,” as described herein) a network service control point (SCP) to determine the destination of the call. These SCPs are network resources that act as proxies to the number route information (customer records) from the TFMP. During a typical call flow, calls originate from a local exchange carrier (LEC) or a mobile network operator (MNO). As shown in FIGS. 53 and 54, call flows are depicted included those in which MNOs and LECs have networks established with national communication carriers (referred to as inter exchange carriers (iXCs)). iXCs act as a call facilitator to deliver calls to the destination network, or termination service provider, and the final call termination point.


In embodiments, network SCPs may be optimized to provide fast response times for requests and may be central to call delivery and completion. Typically, SCPs produce passive logging information in a standard format similar to Call Data Records (CDR) that is stored either locally or in a remote log server and aggregated, primarily for billing and charge back purposes by SCP owner/operators. This data may be referred to as the SCP CDR exhaust feed and may include large data sets that typically contain:

    • Request information such as the originating Automatic Number Identification (ANI), the originating carrier, the request type, time stamps, and the like.
    • Response information such as a Carrier Identification Code and response status.


By analyzing SCP exhaust feeds, carriers and service providers may gain valuable insights about their network performance, call completion status and call origination metrics. Service providers may also gain insight to prevent toll-free fraud and malicious traffic pumping and fortify their network from threats. Due to the distributed nature of the SCP and fragmented network operations, SCPs often work in silos and are restricted to operate within the carrier network. However, further high service quality requirements, coupled with the large data sets, make it challenging to read, interpret and correlate SCP exhaust data in real time.


In embodiments of the present disclosure, the Smart Toll-Free Aggregation (STFA), as shown in FIG. 55, may provide a small footprint wiretap that is collocated within an SCP network. The STFA may acts as a data sniffer by sampling data that is spit out from the SCP data exhaust. Components of the STFA include, but are not limited to:

    • Smart Wiretap & data queue
    • Local Analytics Agent
    • Machine Learning Sampling Algorithm
    • Cloud aggregation network


In embodiments, the first three components may run locally in an SCP network and/or collocated with the SCP as shown in FIG. 55. In embodiments, the Smart Wiretap may act as an external interface for the SFTA. This component may either be integrated into the core libraries that make up an SCP or may be a device that is collocated with the SCP. It may consume SCP log messages (e.g., raw data) near real time, and stores this data within a distributed data queue. The Smart Wiretap may select log messages using selectors. These selectors may be dynamically created in real time by the Machine Learning Sampling Algorithm. In embodiments, a Local Analytics Agent (LAA) may be a consumer of the sampled wiretap data. Local analytics agents may perform stream pre-processing using advanced analytics functions like map/reduce techniques and correlation to group SCP dips by various dimensions, including, but not limited to, dimensions such as:

    • Aggregate dips by originating number
    • Aggregate dips by originating AOS
    • Aggregate dips by destination number
    • Aggregate dips by originating device type


The sampling algorithm may determine the type and frequency of summarization. Once the local summarization is complete, the machine learning algorithm may determine the time to live for sampled raw data. The Local Analytic Agent may store the summarization in a local store and/or compress and share anonymized/masked summary information with a cloud aggregation network.


In embodiments, the Machine Learning Sampling Algorithm (MLSA) and Local Store may perform real time computation to determine statistical sufficiency of incoming data and to forecast trends and patterns in analytic usage. The amount of data and level of sampling required for statistical significance may be determined by the MLSA using factors that include, but are not limited to:

    • Data Intelligence provided by the toll-free aggregation cloud.
    • Real time toll-free metrics: The MLSA may measure the network load and resource utilization and dynamically adjust the collection frequency and sampling rate by the LAAs.
    • Historical Toll-free Trending: The MLSA's local in-memory database may track a graph of various SCP activities, including but not limited to, call volume, traditional call volume spikes (e.g., April 30th), seasonality (e.g., the week of Christmas), customer events (e.g., toll-free NPA new code release), and throttle sampling to account, and adjust for spikes.


In embodiments, the toll-free aggregation cloud may act as a task manager for distributed LAAs in carrier SCP networks as well as an integrated intelligence and reporting platform. The toll-free aggregation cloud may be comprised of toll-free intelligence, and a reporting functionality for trend analysis and prediction, as shown in FIG. 56. The toll-free aggregation cloud may collect and share toll-free intelligence from a LAA network to ensure intelligent collection and collective sampling. Depending on data needs, sufficiency issues or user configuration, the toll-free aggregation cloud may throttle up collection for an individual SCP, a cluster of SCPs in a network or a network of SCPs within an area of service. The aggregation cloud may use a smart learning algorithm similar to the LAAs to plan for spikes and seasonality and ensure optimal sampling with no degradation in performance of the SCPs. In embodiments, the aggregation cloud may receive call path information from LAAs and provide further aggregation to determine trends and patterns for toll-free call volume. By leveraging statistical models, it may compute the statistical sufficiency of data received. Historical data may also be leveraged to predict additional trends. Post processing, indexing and visualization provide an interactive dashboard to customers, as described herein. The toll-free aggregation cloud may also provide real-time visibility into trends, problems, threats and abuse with up to the minute dashboards presented to users.


Referring to FIG. 57, in an example embodiment, a call may originate in the Carrier Network Local Exchange (“Carrier Infrastructure”). Calls may be handled by a carrier switching point (SSP), which identifies calls destined for a toll-free number for additional processing. For toll-free calls, the SSP queries the SCP to get call routing information. This information is called a customer record. The SCP may execute service logic and return information to route the call including carrier identification code (CIC), billing information and any special processing. After returning the information, the SCP forwards the SSP Query along with the SCP response to the Smart Wiretap for Sampling. The SSP may continue call processing and route the call to the carrier (identified by the CIC). Call routing and processing may resume, resulting in 8xx termination to the destination. A Smart Wiretap may receive the call for call information for processing. The Smart Wiretap may send call information to the Machine Learning and Sampling Algorithm (MLSA) to decide if the call information should be sampled, processed and stored. The MLSA may determine if the call should be sampled based on input received from, for example, network load and volume information received from the carrier infrastructure real-time, global SCP sampling needs and administrator configuration information received from the Toll-free Aggregation Cloud, and/or call data received from the Smart Wiretap. The MLSA may return sampling rate and configuration information along with response for call sampling. The Smart Wiretap may select call data for sampling if specified by the MLSA, or resume to standard call management and routing processes. The Smart Wiretap may store the raw data in a distributed highly available queue for processing. The Queue may work in a publish-subscribe model. Processing agents may subscribe to new messages for processing. On receipt of a new message, the first free analytics agent (LAA) may evaluate the message from the queue, process the data based on Map-Reduce techniques and create summarization information based on predetermined dimensions. For example, aggregating all calls by NPA (area code). Aggregated data may be periodically shared with the toll-free aggregation cloud for producing reports and creating trends.


The present disclosure provides a modernized service, or Toll-Free Data Distribution Hub (DDH) that enables a low-cost solution for distributing toll-free call routing information to network operators and other providers of call routing services, including telecommunications operators, carriers, networks and the like that are operating or providing services within a communications system other than a toll-free telecommunications system. Historically, toll-free routing data was distributed to Service Control Points (SCPs) that are controlled by SCP Owner/Operators. SCPs are costly to build and maintain and support an outdated network infrastructure. As a result of these factors, the number of SCP Owner/Operators has diminished, particularly over the past ten years. Toll-free numbers (TFNs) were introduced in the mid-1960s to allow called parties (businesses, primarily) to accept financial responsibility for long distance voice calls. Over the years, TFNs have become part of the corporate identity for many companies in conjunction with their web addresses, logos, and branding. Many value-added services have been developed using TFNs as a primary access method for users (i.e., conference calling) and marketers rely on TFNs to evaluate ad campaigns and track consumer behavior. In the past 50 years, TFNs have been used to facilitate voice-based communication and the number of Network Operators receiving a direct feed of authoritative toll-free routing data is swiftly declining due to a combination of the interface being technically outdated and costly. Network Operators are no longer investing in legacy network elements, instead focusing investment on next generation IP-based networks. Furthermore, while most other call routing is getting cheaper, toll-free call routing continues to be costly and Network Operators are looking for ways to reduce these transport costs.


In embodiments, the toll-free management platform (TFMP), as described herein, may be a distribution point for authoritative network routing information for toll-free phone calls. The TFMP may distribute toll-free routing data to SCPs in Service Provider networks (see FIG. 58). However, the amount of SCP Owner/Operators is dwindling, with only a limited number receiving authoritative toll-free routing information. There are multiple reasons why this number is rapidly decreasing. First, it is difficult to connect to a platform, such as the TFMP, for authoritative toll-free routing data. The connection may be a legacy, proprietary interface. Third party service offerings may be based on an SCP architecture, and many off-the-shelf offerings may be expensive and nearing end-of-life. Furthermore, there are increasingly fewer developers with prior experience with legacy interfaces, and carriers are reluctant to invest in legacy network elements. Not only is it technically difficult to build a SCP to a legacy interface, it is also costly from both a capital and operating expense perspective. Further, once the SCP has been built and certified, there are operating expenses that may include subscription fees, and maintenance and operating costs. Therefore, it doesn't make financial sense for the majority of Network Operators to receive a direct feed of authoritative toll-free routing data. Most rely on Routing as a Service (RaaS) providers who provide a query (or “dip”) service to provide toll-free routing information on a per call basis. For most Network Operators the per query cost is cheaper on an annualized basis as compared to the annual SCP operational cost.


Carrier networks are designed to terminate calls using the lowest cost and most efficient route available. However, to do so, the terminating (or receiving) carrier needs to be identified. Databases may not identify the terminating carrier, but instead provide the long distance carrier based on the caller's location. Toll-free numbers usually have at least two routes—the long distance network of the terminating carrier, and the long distance network of a partner carrier, typically either AT&T or Verizon (legacy MCI).


Consider an example of a San Diego-based consumer calling a toll-free number located in Tampa Bay. When the Network Operator in San Diego queries for the toll-free routing information, they will receive information indicating to send it to the long distance network of the terminating carrier. If the terminating carrier does not have a long-distance network in San Diego, the query will tell them to route it to a partner who has a long distance network with access in San Diego. Many of today's Network Operators either do not have long distance access networks or have only built these facilities where it makes the most economic sense. More often, they end up partnering with a Network Operator that can provide ubiquitous long distance access, typically AT&T or Verizon. Resp Orgs, CLECs, and Toll-Free Subscribers must rely on legacy networks to connect to each other. Due to the ubiquitous reach of their networks and their common carriage facilities, an estimated 70% to 80% of all toll-free calls are routed by legacy long distance providers like AT&T and MCI (now part of Verizon).


In embodiments of the present disclosure, a DDH is provided to modernize the distribution of toll-free routing information by translating a legacy interface to an open-standards based Application Programming Interface (API). In doing so, the TFMP may provide a toll-free data distribution service to a broader set of Network Operators at a fraction of the cost of owning and operating a SCP, and broaden distribution & availability of toll-free data, modernize access to toll-free routing information, make access to toll-free routing information less expensive, help Network Operators reduce the cost of toll-free calls, and provide the technology blueprint for the future of toll-free.


In embodiments, the DDH API may have a mechanism by which the data distribution subscriber can download a complete replica of a toll-free database and store it locally in their network. Once the data is loaded into their local data store, they may then utilize a local API client to communicate with the DDH API and pull down data updates in near-real time. The simplicity of the API may reduce the cost of obtaining authoritative toll-free routing data while shortening the implementation period from many months to weeks or even days. A reference code may be provided to help customers build an API client and drive early market adoption. 58ure 2 depicts the high level architecture.


In embodiments, the DDH may be enhanced to include a policy layer for alternate route provisioning, as well as an open-standards API for automated route provisioning. Data Distribution subscribers and Resp Orgs alike may provision alternate routing information, such as an IP route or alternate Carrier Identification Code (CIC), to improve the efficiency and lower costs of routing a call to a TFN. FIG. 60 shows the high level architecture corresponding to this functionality.


Having a local copy of an entire toll-free database may have several advantages over using a RaaS provider. Importantly, it can significantly reduce routing charges to toll-free numbers. Since the Resp Org ID is included in the local copy, carriers can often identify the terminating carrier and utilize the least cost route if one is available rather than using the legacy long distance route predetermined by the Resp Org. This can help lower the network cost of routing to Toll-Free Numbers. A local copy of toll-free routing information can also help improve the end-user experience. When a local copy of toll-free routing information resides inside a carrier's network, it significantly reduces call setup latency. By eliminating the need for an external query, or “dip”, call setup time is shorter thus improving end-user satisfaction. Disaster recovery may become much less impactful with a local data store. Should an outage occur, the carrier has a local copy that is still usable to route calls until the issue is resolved. Conversely, if a carrier is relying on a RaaS provider and they have an outage, calls are unable to be routed until the issue is resolved or a disaster recovery service is spun up.


In embodiments, the DDH channels of distribution may consist of Network Operators and RaaS providers. Network operators can access the data either directly from the TFMP, via Certified Distributors or via Certified Routing Database providers. RaaS providers can only access the data directly from the TFMP and are only permitted to distribute routing information via a query-based service. In an example embodiment, Network Operators may contract directly with the TFMP with a dedicated connection to the DDH API. In this setup, the Network Operator may be limited to replicating toll-free routing data within their own network only. There is no resale permitted, nor is a query service permitted. FIG. 61 depicts this distribution channel. Target markets for this channel may include, but are not limited to, current SCP Owner/Operators who are Network Operators, such as Sprint, AT&T, Verizon and CenturyLink.


In embodiments, Network Operators may also receive toll-free routing data through Certified Distributors. Certified distributors may have a centralized network appliance, through which they would distribute the Toll-Free routing data to satellite appliances deployed in the network of the Operators. The Certified Distributor may enter into a reseller licensing agreement with the TFMP, allowing them to distribute copies of the toll-free routing database to their customers. The Certified Distributor may be required to provide a revenue share/royalty fee to the TFMP for each connected customer. FIG. 62 depicts this distribution channel. The target market for this channel may be existing RaaS SCP Owner/Operators, for example TNS and Tel-Lingua. This model may enable toll-free data distribution through companies who offer routing databases and softswitches.


In embodiments, Network Operators may also access toll-free routing data via a Certified Routing Database. This channel may be similar to the Certified Distributor, except the Network Operator may contract with and be billed by the TFMP. The Routing Database Provider may “certify” their network appliance software with the DDH API. The network appliance may then be deployed in the Operator's network, and receive updates via a dedicated connection to the Toll-Free DDH API. FIG. 63 depicts this distribution channel.


In embodiments, RaaS providers offer a query-based, or dip, service to Network Operators. They currently serve the majority of Network Operators who do not own and operate a SCP. The RaaS model may be a premium service. FIG. 64 depicts this distribution channel. This model may apply to current RaaS providers such as TNS, Teliax, Sprint, AT&T, and Telus.


In embodiments, business analytics may also be included as part of the DDH service, including but not limited to providing LCR/peering recommendations based on call record analysis. This may provide intelligence that can be used to scale peering, improve routing, and prevent fraud. The API may also be used for other types of communications data. In an example, currently there is no central source of Caller ID or CNAM data for Toll-Free. By adding this data as a field in either the TFMP and/or the DDH, an authoritative source for toll-free CNAM may be provided. This authoritative data source may help reduce the spoofing of calls from toll-free numbers, and Resp Orgs may update what they want called parties to see when contacted by a toll-free subscriber, possibly including visual information such as logos and other branding elements.


In embodiments, the Data Distribution Hub may provide toll-free number call routing details to downstream customers. As toll-free number information changes, the data may be made available to downstream customers, in chronological order, via a First-In-First-Out (FIFO) queue that a customer accesses and depletes through a Data Distribution Hub API.


Referring to FIG. 65, the major architectural pieces of the Data Distribution Hub System are provided for reference. Note that throughout this document the terms toll-free number and call routing number (CRN) are used interchangeably.


Figure A depicts one embodiment of the major components of the Data Distribution Hub System: Service Control Point (SCP) API Manager, Data Distribution Hub, ApacheMQ, WSO2 (or other open source software, such as broker/message software), Web Browser, and the Databases. In embodiments, the Data Distribution Hub may technology that includes, but is not limited to:

    • Java
    • Spring Framework (JPA, Spring Security, Spring MVC)
    • Hibernate ORM
    • MySQL Database
    • Oracle Database
    • REST Based API
    • APIGateway for API traffic, throttling, denial of service, analytics
    • Application Monitoring
    • Development Environment & Tools
    • Robot Framework for test automation
    • Bitbucket Version Control
    • JIRA Agile
    • Sonarqube code analysis
    • Gradle Build Tool
    • Jenkins Continuous Integration



FIG. 66 depicts a simplified representation of the Data Distribution Hub System interfaces, placing the SCP and Data Distribution Hub components into a single “Data Distribution Hub System” (the dashed-box depicted, and depicting the interfaces into that system. The “Data Distribution Hub System” box may encompass many applications and hardware, including all of SCP and the Data Distribution Hub. The components surrounding the central box may be external systems that integrate with the system.


The Data Distribution Hub System may collect information from the TFMP, the API Manager, and Web Interface and provides the information to “downstream” Data Distribution Hub Customers. The TFMP interface may provide data (e.g., call routing information) to the Data Distribution Hub System. The Data Distribution Hub System may be a client of this interface. Using the TFMP interface, the Data Distribution Hub System may learn if a toll-free number is active and record the toll-free number's call processing record (CPR) in a database. One message type that may be conveyed on this interface, for the Data Distribution Hub System, is the UPD-UCR, which provides toll-free number “add/update” and “delete” information for the toll-free number and its CPR.


In embodiments, an API manager may be provided within the Data Distribution Hub System and provide a self-service API, usable by the front-end GUI. The Data Distribution Hub may access the API Manager to provide and retrieve customer information as needed.


In embodiments, a web browser interface may be provided for Data Distribution Hub users and administrators to perform configuration and monitoring tasks that cannot be handled by the Data Distribution Hub API. For example, the web browser interface may provide access to user profile information and other data. A web application may be provided, such as an application written using Javascript. In an example, when a user types the Data Distribution Hub URL into a browser, the browser may access the Data Distribution Hub system and download a combination of HTML, CSS, and JavaScript. Subsequent interactions by the user may result in REST based calls to the Data Distribution Hub backend to retrieve data needed to satisfy the customer action.


In embodiments, a Data Distribution Hub API may provide similar information as legacy systems to the downstream Data Distribution Hub customers using REST and JSON. The Data Distribution Hub API may provide messages such as adding, updating, and deleting toll-free numbers, and provide CPR information for each active toll-free number (aka CRN).


In embodiments, the Data Distribution Hub System may be composed of several virtual machines (VMs), as shown in FIG. 67.


SCP, the Data Distribution Hub, and the database servers may each be a virtual machine (VM) in a cloud deployed solution. High availability (HA) may include redundant VMs.


In embodiments, a database server may provide access to a database via a specific database API. In an example, Oracle may be used for SCP. MySQL may be used for the Data Distribution Hub. The pieces of the Data Distribution Hub System may access their respective database servers via configurable IP addresses and ports, so their final location may be flexible. Oracle and MySQL may be provided on individual, geographically redundant, VMs provided by the cloud for HA. Additionally, the architecture may allow for the use of Amazon RDS as a replacement for running Oracle and MySQL database servers on Data Distribution Hub VMs.


In embodiments, the SCP host may run on its own VM and communicate with the TFMP interface. A local copy of the downloaded data may be kept in an Oracle database, or some other database type. As toll-free numbers are added, modified, or deleted, events may be saved in a FIFO queue and consumed by the Data Distribution Hub so that it can maintain the state of the toll-free numbers for use by the downstream Data Distribution Hub customers (via the Data Distribution Hub API). The Data Distribution Hub may receive information from a SCP event queue, an API Manager (REST/JSON), and Web Browsers using HTTPS for customer configuration. The information (state) may be stored, for example, in a MySQL database on the database server. The messages downloaded by Data Distribution Hub customers may be stored in a single database table in the MySQL database along with an index into that table for each user. This may allow the Data Distribution Hub to save a single copy of data to support any number of users. Each user may maintain a pointer (index) to the last row in the table that they downloaded. As a client consumes messages, the last index read may be updated in the database.


In embodiments, the SCP software architecture, as described herein, may support the TFMP interface. An application on the Data Distribution Hub Server may access an Oracle or other database to drain SCP's event queue, one event at a time, in FIFO order. FIG. 68 depicts a simplified schematic of the SCP software components.


In embodiments, the SCP application may communicate with the TFMP following a specification. The application may populate the FIFO queue with the needed information for the Data Distribution Hub. FIFO Queues may be used to support communication between SCP and the Data Distribution Hub. A database FIFO queue may contain events destined for the Data Distribution Hub Server. For example, when a 798 UPD-UCR “delete” occurs, this event is communicated between SCP and Data Distribution Hub via this queue. As requests are processed, the results may be added to the SCP FIFO queue by the TFMP Interface application. The Data Distribution Hub may then read from the FIFO queue. The event may be removed from the FIFO queue when the Data Distribution Hub has confirmed receipt and storage of the event, one event at a time. This queue may be necessary when the Data Distribution Hub is down in that it may allow the TFMP Interface to acknowledge the UDP-UCR events (and other events) arriving and still queue the events for later transmission to the Data Distribution Hub once it is running again.



FIG. 69 depicts the major software components of the Data Distribution Hub Server, including the software that communicates with SCP, the API Manager, Web Browsers, and Data Distribution Hub customers via the Data Distribution Hub API.


The Data Distribution Hub may use an Apache Web Server and Spring/MVC and wait for HTTP requests to act upon.


In embodiments, a Data Distribution Hub Interface may run in java and exchange information with the Data Distribution Hub “add/delete business logic” regarding the state of toll-free numbers (including their call processing records, Resp Orgs, and secure hash algorithm-1 hashes). The Data Distribution Hub Interface may act as a client for queued events and periodically wake up (configurable in seconds) and inspect, for example, the Oracle FIFO queue. When there are events in the queue, the Data Distribution Hub Interface may send REST/JSON messages (such as an “add toll-free number”) to the Data Distribution Hub “add/delete business logic”, which is acting as the REST/JSON server. The Data Distribution Hub add/delete business logic may save the data (for example, in its MySQL database as well as in the API download queue) and send back a REST confirmation to the Data Distribution Hub Interface when its work is completed. In embodiments, the Data Distribution Hub Interface may not remove any data from the Oracle FIFO queue until the Data Distribution Hub add/delete business logic has confirmed that the event was successfully processed. If the message to the Data Distribution Hub add/delete business logic was not successfully processed, a failure reply may occur and/or no reply at all may be generated. In failure cases, the Data Distribution Hub Interface may leave the event in the Oracle FIFO queue and retry sending the event later. When a failure occurs, the Data Distribution Hub Interface may return to its “sleeping” mode and wait for the next cycle to try again, and keep trying and sleeping until it is successful. Once successful, the event may be removed from the Oracle FIFO queue and the Data Distribution Hub Interface may move to the next event. Each event may be processed completely, in order, to maintain the integrity of the MySQL database on the Data Distribution Hub host. Therefore, the Data Distribution Hub Interface may not continue (or skip events) when a failure occurs. The entire Oracle FIFO queue may be blocked until the failed event is successful. In embodiments, GUI business logic may store Data Distribution Hub customer information in a database, in the API Manager, and may support health, status, user profile, or maintenance logic.


In embodiments, the Data Distribution Hub add/delete business logic may process events received from the Data Distribution Hub interface (such as toll-free number “add” and “delete”). The events may ultimately result in queuing of information to be sent to Data Distribution Hub customers over the Data Distribution Hub Routing API. This component may use the MySQL database to save the state associated with the toll-free numbers, and use the MySQL database to store the resulting events in a single FIFO that is consumed independently for each downstream Data Distribution Hub API client.


In embodiments, Data Distribution Hub API business logic may access and transmit the FIFO queued events that resulted from the Data Distribution Hub business logic, as described herein, and read messages stored in the database table FIFO. The FIFO may reflect the results from the Data Distribution Hub add/delete business logic (e.g., information from SCP about toll-free numbers). The events may be read in order and provided to downstream Data Distribution Hub customers.


In embodiments, the Data Distribution Hub Routing API FIFO queue may have a producer (Data Distribution Hub add/delete business logic) and a consumer (Data Distribution Hub download business logic). A single queue may exist for API clients along with an index into the queue for each user. The queue may contain the events, in order, to be consumed by the Data Distribution Hub Customer. The events may be add (and update) and delete among potentially other events. As the add/delete requests are processed from SCP's FIFO queue, the results may be sent to an API client when the client issues an HTTP GET request to the Data Distribution Hub/download URL. Then, the download business logic may read events from the FIFO queue and provide the add/delete events to the associated downstream Data Distribution Hub customer. The “last message read” index may then be updated in the MySQL database for the specific API client.


In embodiments, an asynchronous process may run to remove messages that are older than a configurable date. This may prevent the database table/FIFO from growing too large and affecting performance. In an example, up to 45 days' worth of data (based on an expected load of 57,000 message a day) may be stored in a database table.


In embodiments, the Data Distribution Hub may use MySQL, or some other format, for storage of user and toll-free number data used by the applications. The MySQL database may provide a server, listening on a well-known port for incoming database clients. This may allow the server to be placed on any host to accommodate the HA architecture.


In embodiments, a front-end web application of the Data Distribution Hub may consist of CSS, HTML, and JavaScript. The web front end may be static content that includes JavaScript that runs in a client browser to perform REST based calls to the Data Distribution Hub back-end application. When a user accesses the login URL of the web front end, the user may be presented with an initial screen that allows the user to login or to sign up as a new customer. When a user attempts to login, they may be required to enter a username and password into fields on the screen and hit a login button. When the user presses the button, JavaScript logic embedded with the web page may capture the values from the username and password fields (as well as any additional fields included in the design) and pass them to the Data Distribution Hub using a “login” web service. If the user is successfully authenticated by the Data Distribution Hub, a web token may be returned to the web browser and the JavaScript logic may transition to the user profile page or any one of the “secured” screens that exist as part of the web application. When a new user attempts to sign up, they may be required to create a username and password and enter any relevant information required by this application. When the user presses the sign-up button (link), JavaScript logic embedded with the web page may capture the values and pass them to the Data Distribution Hub using a “sign up” web service. If the user is successfully added, a web token may be returned to the web browser and the JavaScript logic may transition to the user profile page or any one of the “secured” screens that exist as part of the web application like the login flow.


In embodiments, when a user successfully logs in to the Data Distribution Hub, they may be presented a token. Once the web browser has the token, it may be authorized to access any of the secured pages of the web application by providing the token in subsequent REST calls to the Data Distribution Hub. If a valid token is provided to any Data Distribution Hub server, the Data Distribution Hub server may process the REST call from the browser. This behavior may be sufficient to satisfy the requirements that the Data Distribution Hub application is stateless and allows for flexibility in the HA architecture. A token may be created as a JSON Web Token (JWT), an industry standard mechanism for token creation. The token may consist of a series of tags created by the Data Distribution Hub application that are used to encode information to uniquely identify the user and any other data that the application may require to operate. The tags may be hashed and signed with a secret known only to the Data Distribution Hub. This may protect against a user creating their own tokens and masquerading as another user. In addition, an expiration field may be embedded in the token to expire the token.


In embodiments, a High Availability architecture may be associated with the Data Distribution Hub and may include a primary site as well as a Disaster recovery site. This may include regionally redundant VMs provided by a cloud service for SCP and the Data Distribution Hub. This redundancy may allow for both HA and upgrades (to minimize downtime to achieve the 99.99% uptime requirement during upgrade). As an example, the Data Distribution Hub may be deployed using Amazon Web Services including EC2 and MySQL and Oracle RDS in a multi-AZ configuration. The Disaster recovery systems may run in a separate region as the primary systems.


In embodiments, the Data Distribution Hub Routing API may provide an efficient “audit” of toll-free number data. An audit may be forced by the Data Distribution Hub after a failover (or outage), if desired, for any customer, or it may come as part of the Data Distribution Hub Routing API. The audit may use message digests against the expected data to determine the accuracy of the Data Distribution Hub customer's local data store. The audit may use, for example, a recursive 10-prong-tree (a branch for each digit, ‘0’ . . . ‘9’) and message digests to identify and correct invalid toll-free number data.


In embodiments, VMs may run the Data Distribution Hub download business logic and access the customer API download queue in a MySQL database. These VMs may be deployed in an auto-scaling pool configuration, such as that provided by Amazon Web Services. As an example, a performance and scalability solution of the Data Distribution Hub may be:

    • 1. Many VMs may be deployed, each able to perform the Data Distribution Hub download business logic.
      • a. Each of these VMs may have an Apache web server ready to service the well-known Data Distribution Hub Routing API Port for inbound REST/JSON messages.
    • 2. The Data Distribution Hub Routing API load may be balanced across the set of VMs.
    • 3. Data may be stored in a centralized database that may be accessed by any Data Distribution Hub server.
    • 4. Since the Data Distribution Hub Routing API is stateless, the Data Distribution Hub download business logic running on any VM may access the database to retrieve Data Distribution Hub customer metadata, including the location (IP address/port) of any FIFO queue.


In summary, performance and scalability may be achieved via a stateless architecture that uses identical VMs as more customers sign up for the service. Each VM “type” may be generic to allow any number of them to be quickly brought online in a cloud environment. Automated scaling may also be applied to enable self-scaling: including dynamically adding and removing VMs based on offered load.



FIG. 70 shows the possible generalized interactions between SCP and the Data Distribution Hub Interface.


In embodiments, the Data Distribution Hub Interface application may be a REST/JSON client doing the following: It may periodically wake up (e.g., configurable in seconds, defaulting to one minute) and check for events in the Oracle FIFO queue. When the Data Distribution Hub Interface reads an “add” or “update” event from the SCP FIFO queue, it may translate them both to an “add” event for the JSON to send to the Data Distribution Hub. In an example, the Data Distribution Hub may not distinguish an Update Customer Record (UPD-UCR) from a Update Resp. Org (UPD-ROR) since they both show up as “add” events. An “add” event may also mean “replace if it already exists”. The reason a UPD-UCR and UPD-RORs may be treated the same is for simplicity of the downstream interfaces (both for the Data Distribution Hub server and the Data Distribution Hub clients). When the Data Distribution Hub Interface reads an “add” (or “update”) event from the queue, it may find the associated CPR hash for the toll-free number (CRN) from the CRN table. This hash may be sent as part of the “add” event to the Data Distribution Hub server. In an example, only the hash may be sent, and not the CPR—the Data Distribution Hub server may request the CPR specifically. When the Data Distribution Hub Interface reads a “delete” event from the queue, it may send the event to the Data Distribution Hub (there may be no need for a CPR hash in the “delete” case). When a successful response is received from the Data Distribution Hub server, the event may be removed from the queue. If a failure response (or no response) occurs, then the event may remain in the queue to be retransmitted when the Data Distribution Hub Interface tries again. In the Data Distribution Hub add/delete business logic, when it receives the “add” and “delete” events from SCP, the business logic may perform the following: 1) It may add the events to the API download shared queue, and 2) the MySQL tables may be updated to reflect the event. This database may mirror the SCP database. After the updates are committed (to the shared queue and DB) a successful response may be returned to the Data Distribution Hub Interface.


In embodiments, when the Data Distribution Hub add/delete business logic receives the “add” event from SCP, the hash may not be in the CPR table yet (on the first occurrence of the hash). When this happens, the Data Distribution Hub server may reply by rejecting the add and asking for the CPR to be included when the add is resent. When the Data Distribution Hub Interface receives the rejection, it may query the CPR from its CPR table and post a new “add” with both the hash and CPR. Since the CPR contains binary (non-printable) data, it may be encoded in, for example, base64 before it is transmitted within JSON. The Data Distribution Hub may also send a failure indication to Data Distribution Hub Interface to indicate a problem.


Tables associated with storage of CRNs and CPRs in a database may be stored on the Data Distribution Hub (in addition to SCP) to avoid a dependency on the SCP Oracle database, and to allow quick audits, and ease of new customer queue initialization. This may also allow SCP to be removed if a new interface is provided to the TFMP that the Data Distribution Hub can directly connect to.


In embodiments, information may be collected and stored that is related to tracking users (API Clients) that utilize the Data Distribution Hub service. The Data Distribution Hub may implement the pattern of a company, wherein multiple users may exist. Each user may be associated with an API client application and may be required to pass certification before the user will be able to access the production environment. To track company information, the Data Distribution Hub may implement a company database table. The Data Distribution Hub may also implement a user table. Each row in the company table may define a unique company and each user in the user table may contain a foreign key to exactly one row in the company table. Multiple users may map to a single company. A user status table may also exist that tracks information for a single user such as certification status and last audit/download time. Each row in the user status table may contain a foreign key to one row in the user table.


In embodiments, each Data Distribution Hub customer (aka client) may have a series of events to be downloaded that are identical events for all clients. Exceptions can be for queue initialization and CRN updates that result from an audit. Queues may be used to satisfy the clients' needs. While the Data Distribution Hub server may be using more than one queue, the client is unaware since the queues may be hidden from the client behind a single “logical” concept managed by the Data Distribution Hub API Business Logic. This means that as far as the client is concerned, events are being downloaded without any queue concept being required for the client to understand. FIG. 71 depicts this process for a single customer/client's sandbox or live data.



FIG. 72 depicts a time-oriented interaction of the entities that may be involved in a queue operation.


The methods and systems described herein may be deployed in part or in whole through a machine that executes computer software, program codes, and/or instructions on a processor. References to a “processor,” “processing unit,” “processing facility,” “microprocessor,” “co-processor” or the like are meant to also encompass more that one of such items being used together. The present invention may be implemented as a method on the machine, as a system or apparatus as part of or in relation to the machine, or as a computer program product embodied in a computer readable medium executing on one or more of the machines. The processor may be part of a server, client, network infrastructure, mobile computing platform, stationary computing platform, or other computing platform. A processor may be any kind of computational or processing device capable of executing program instructions, codes, binary instructions and the like. The processor may be or include a signal processor, digital processor, embedded processor, microprocessor or any variant such as a co-processor (math co-processor, graphic co-processor, communication co-processor and the like) and the like that may directly or indirectly facilitate execution of program code or program instructions stored thereon. In addition, the processor may enable execution of multiple programs, threads, and codes. The threads may be executed simultaneously to enhance the performance of the processor and to facilitate simultaneous operations of the application. By way of implementation, methods, program codes, program instructions and the like described herein may be implemented in one or more thread. The thread may spawn other threads that may have assigned priorities associated with them; the processor may execute these threads based on priority or any other order based on instructions provided in the program code. The processor may include memory that stores methods, codes, instructions and programs as described herein and elsewhere. The processor may access a storage medium through an interface that may store methods, codes, and instructions as described herein and elsewhere. The storage medium associated with the processor for storing methods, programs, codes, program instructions or other type of instructions capable of being executed by the computing or processing device may include but may not be limited to one or more of a CD-ROM, DVD, memory, hard disk, flash drive, RAM, ROM, cache and the like.


A processor may include one or more cores that may enhance speed and performance of a multiprocessor. In embodiments, the process may be a dual core processor, quad core processors, other chip-level multiprocessor and the like that combine two or more independent cores (called a die).


The methods and systems described herein may be deployed in part or in whole through a machine that executes computer software on a server, client, firewall, gateway, hub, router, or other such computer and/or networking hardware. The software program may be associated with a server that may include a file server, print server, domain server, internet server, intranet server and other variants such as secondary server, host server, distributed server and the like. The server may include one or more of memories, processors, computer readable media, storage media, ports (physical and virtual), communication devices, and interfaces capable of accessing other servers, clients, machines, and devices through a wired or a wireless medium, and the like. The methods, programs, or codes as described herein and elsewhere may be executed by the server. In addition, other devices required for execution of methods as described in this application may be considered as a part of the infrastructure associated with the server.


The server may provide an interface to other devices including, without limitation, clients, other servers, printers, database servers, print servers, file servers, communication servers, distributed servers and the like. Additionally, this coupling and/or connection may facilitate remote execution of program across the network. The networking of some or all of these devices may facilitate parallel processing of a program or method at one or more location without deviating from the scope of the invention. In addition, any of the devices attached to the server through an interface may include at least one storage medium capable of storing methods, programs, code and/or instructions. A central repository may provide program instructions to be executed on different devices. In this implementation, the remote repository may act as a storage medium for program code, instructions, and programs.


The software program may be associated with a client that may include a file client, print client, domain client, internet client, intranet client and other variants such as secondary client, host client, distributed client and the like. The client may include one or more of memories, processors, computer readable media, storage media, ports (physical and virtual), communication devices, and interfaces capable of accessing other clients, servers, machines, and devices through a wired or a wireless medium, and the like. The methods, programs, or codes as described herein and elsewhere may be executed by the client. In addition, other devices required for execution of methods as described in this application may be considered as a part of the infrastructure associated with the client.


The client may provide an interface to other devices including, without limitation, servers, other clients, printers, database servers, print servers, file servers, communication servers, distributed servers and the like. Additionally, this coupling and/or connection may facilitate remote execution of program across the network. The networking of some or all of these devices may facilitate parallel processing of a program or method at one or more location without deviating from the scope of the invention. In addition, any of the devices attached to the client through an interface may include at least one storage medium capable of storing methods, programs, applications, code and/or instructions. A central repository may provide program instructions to be executed on different devices. In this implementation, the remote repository may act as a storage medium for program code, instructions, and programs.


The methods and systems described herein may be deployed in part or in whole through network infrastructures. The network infrastructure may include elements such as computing devices, servers, routers, hubs, firewalls, clients, personal computers, communication devices, routing devices and other active and passive devices, modules and/or components as known in the art. The computing and/or non-computing device(s) associated with the network infrastructure may include, apart from other components, a storage medium such as flash memory, buffer, stack, RAM, ROM and the like. The processes, methods, program codes, instructions described herein and elsewhere may be executed by one or more of the network infrastructural elements.


The methods, program codes, and instructions described herein and elsewhere may be implemented on a cellular network having multiple cells. The cellular network may either be or include a frequency division multiple access (FDMA) network or a code division multiple access (CDMA) network. The cellular network may include mobile devices, cell sites, base stations, repeaters, antennas, towers, and the like. The cell network may be one or more of GSM, GPRS, 3G, EVDO, mesh, or other network types.


The methods, programs codes, and instructions described herein and elsewhere may be implemented on or through mobile devices. The mobile devices may include navigation devices, cell phones, mobile phones, mobile personal digital assistants, laptops, palmtops, netbooks, pagers, electronic books readers, music players and the like. These devices may include, apart from other components, a storage medium such as a flash memory, buffer, RAM, ROM and one or more computing devices. The computing devices associated with mobile devices may be enabled to execute program codes, methods, and instructions stored thereon. Alternatively, the mobile devices may be configured to execute instructions in collaboration with other devices. The mobile devices may communicate with base stations interfaced with servers and configured to execute program codes. The mobile devices may communicate on a peer-to-peer network, mesh network, or other communications network. The program code may be stored on the storage medium associated with the server and executed by a computing device embedded within the server. The base station may include a computing device and a storage medium. The storage device may store program codes and instructions executed by the computing devices associated with the base station.


The computer software, program codes, and/or instructions may be stored and/or accessed on machine readable media that may include: computer components, devices, and recording media that retain digital data used for computing for some interval of time; semiconductor storage known as random access memory (RAM); mass storage typically for more permanent storage, such as optical discs, forms of magnetic storage like hard disks, tapes, drums, cards and other types; processor registers, cache memory, volatile memory, non-volatile memory; optical storage such as CD, DVD; removable media such as flash memory (e.g. USB sticks or keys), floppy disks, magnetic tape, paper tape, punch cards, standalone RAM disks, Zip drives, removable mass storage, off-line, and the like; other computer memory such as dynamic memory, static memory, read/write storage, mutable storage, read only, random access, sequential access, location addressable, file addressable, content addressable, network attached storage, storage area network, bar codes, magnetic ink, and the like.


The methods and systems described herein may transform physical and/or or intangible items from one state to another. The methods and systems described herein may also transform data representing physical and/or intangible items from one state to another.


The elements described and depicted herein, including in flow charts and block diagrams throughout the figures, imply logical boundaries between the elements. However, according to software or hardware engineering practices, the depicted elements and the functions thereof may be implemented on machines through computer executable media having a processor capable of executing program instructions stored thereon as a monolithic software structure, as standalone software modules, or as modules that employ external routines, code, services, and so forth, or any combination of these, and all such implementations may be within the scope of the present disclosure. Examples of such machines may include, but may not be limited to, personal digital assistants, laptops, personal computers, mobile phones, other handheld computing devices, medical equipment, wired or wireless communication devices, transducers, chips, calculators, satellites, tablet PCs, electronic books, gadgets, electronic devices, devices having artificial intelligence, computing devices, networking equipment, servers, routers and the like. Furthermore, the elements depicted in the flow chart and block diagrams or any other logical component may be implemented on a machine capable of executing program instructions. Thus, while the foregoing drawings and descriptions set forth functional aspects of the disclosed systems, no particular arrangement of software for implementing these functional aspects should be inferred from these descriptions unless explicitly stated or otherwise clear from the context. Similarly, it will be appreciated that the various steps identified and described above may be varied, and that the order of steps may be adapted to particular applications of the techniques disclosed herein. All such variations and modifications are intended to fall within the scope of this disclosure. As such, the depiction and/or description of an order for various steps should not be understood to require a particular order of execution for those steps, unless required by a particular application, or explicitly stated or otherwise clear from the context.


The methods and/or processes described above, and steps thereof, may be realized in hardware, software or any combination of hardware and software suitable for a particular application. The hardware may include a general-purpose computer and/or dedicated computing device or specific computing device or particular aspect or component of a specific computing device. The processes may be realized in one or more microprocessors, microcontrollers, embedded microcontrollers, programmable digital signal processors or other programmable device, along with internal and/or external memory. The processes may also, or instead, be embodied in an application specific integrated circuit, a programmable gate array, programmable array logic, or any other device or combination of devices that may be configured to process electronic signals. It will further be appreciated that one or more of the processes may be realized as a computer executable code capable of being executed on a machine-readable medium.


The computer executable code may be created using a structured programming language such as C, an object oriented programming language such as C++, or any other high-level or low-level programming language (including assembly languages, hardware description languages, and database programming languages and technologies) that may be stored, compiled or interpreted to run on one of the above devices, as well as heterogeneous combinations of processors, processor architectures, or combinations of different hardware and software, or any other machine capable of executing program instructions.


Thus, in one aspect, each method described above and combinations thereof may be embodied in computer executable code that, when executing on one or more computing devices, performs the steps thereof. In another aspect, the methods may be embodied in systems that perform the steps thereof, and may be distributed across devices in a number of ways, or all of the functionality may be integrated into a dedicated, standalone device or other hardware. In another aspect, the means for performing the steps associated with the processes described above may include any of the hardware and/or software described above. All such permutations and combinations are intended to fall within the scope of the present disclosure.


While the invention has been disclosed in connection with the preferred embodiments shown and described in detail, various modifications and improvements thereon will become readily apparent to those skilled in the art. Accordingly, the spirit and scope of the present invention is not to be limited by the foregoing examples, but is to be understood in the broadest sense allowable by law.


All documents referenced herein are hereby incorporated by reference.

Claims
  • 1. A method comprising: receiving report data that relates to a usage of a telecommunications number and indicates that the telecommunications number is associated with fraudulent activity based at least in part on the usage;storing at least part of the report data in a database;associating the stored at least part of the report data with a record in the database corresponding to the telecommunications number;creating a metadata tag that is associated with the telecommunications number;identifying criteria of a customer-desired telecommunications number based at least in part on the metadata tag and at least one datum derived, at least in part, from an application of predictive analytics applied to a history of prior actions of a customer;associating at least one telecommunications number in a number inventory with at least one search parameter;searching the number inventory for one or more telecommunications numbers having one or more parameters matching the metadata tag to generate one or more search results; andperforming an action determined, at least in part, upon the application of predictive analytics applied to the history of prior actions of the customer.
  • 2. The method of claim 1 further comprising: providing one or more services for the telecommunications numbers via a telecommunications services management platform in electronic communication with the database;wherein the report data is received at the telecommunications services management platform.
  • 3. The method of claim 1, wherein the report data is generated by at least one of: a telephone service provider;a toll-free number operator; ora Responsible Organization (RespOrg).
  • 4. The method of claim 1 further comprising: sending an offer to the customer, wherein the offer includes a notification of available telecommunications numbers having parameters matching the metadata tag;identifying telecommunications numbers that are to become available;presenting the one or more search results at each future customer login;presenting the one or more search results to the customer on a recurring basis;presenting the one or more search results to the customer via email on a subscription basis; andautomatically reserving one or more numbers associated with the one or more search results;wherein:searching the number inventory for one or more telecommunications numbers matching keywords of a selected customer profile comprises at least one of searching a current responsible organization inventory or a list of upcoming available numbers; andthe offer facilitates automatically reserving the number.
  • 5. The method of claim 1 further comprising: receiving data relating to toll-free number call activity from a toll-free telecommunications system, wherein the data includes at least one of call duration or call count data;receiving third party data relating to macroeconomic activity;modeling at least one of call duration or call count data with the third party data to derive a macroeconomic trend;receiving a request from a client device to present the macroeconomic trend; andpresenting a representation of the macroeconomic trend to a user interface on the client device.
  • 6. The method of claim 5, wherein: the presentation of the macroeconomic trend is presented to the user interface in conjunction with a sponsored content;the third party data is at least one of: stock market data,Bloomberg data,government data, andsocial media data; anda temporal delay between a time of the request and the time of the presentation of long enough duration that the client device enters a sleep mode as regards to an interaction, and the client device is activated out of sleep mode upon the presentation.
CLAIM TO PRIORITY

This application is a Continuation of U.S. patent application Ser. No. 16/845,160, filed Apr. 10, 2020, which is a Continuation of U.S. patent application Ser. No. 16/523,268, filed Jul. 26, 2019 which is a Continuation of U.S. patent application Ser. No. 15/966,042, filed Apr. 30, 2018 which is a Continuation of U.S. patent application Ser. No. 15/448,687, filed Mar. 3, 2017 which claims the benefit of U.S. Provisional Application 62/410,176 filed Oct. 19, 2016, and is a Continuation-in-Part of U.S. patent application Ser. No. 14/984,358 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,400 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,436 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,520 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,565 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,604 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,659 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,698 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,768 filed Dec. 30, 2015, U.S. patent application Ser. No. 14/984,816 filed Dec. 30, 2015. U.S. patent application Ser. Nos. 14/984,358, 14/984,400, 14/984,436, 14/984,520, 14/984,565, 14/984,604, 14/984,659, 14/984,698, 14/984,768 and 14/984,816 are continuations of U.S. patent application Ser. No. 14/960,312 filed Dec. 4, 2015, which claims priority to U.S. Provisional Patent Application 62/088,406 filed Dec. 5, 2014, and U.S. Provisional Patent Application 62/172,791 filed Jun. 8, 2015. U.S. patent application Ser. No. 14/960,312 is also a Continuation-In-Part of U.S. patent application Ser. No. 14/928,575 filed Oct. 30, 2015, which claims priority to U.S. Provisional Patent Application 62/073,976 filed Nov. 1, 2014. Each of the above applications is hereby incorporated by reference in its entirety.

US Referenced Citations (127)
Number Name Date Kind
4611096 Asmuth et al. Sep 1986 A
5528672 Wert et al. Jun 1996 A
5586175 Hogan et al. Dec 1996 A
5950172 Klingman Sep 1999 A
6115462 Servi et al. Sep 2000 A
6137877 Robin et al. Oct 2000 A
6173279 Levin et al. Jan 2001 B1
6236851 Fougnies et al. May 2001 B1
6393283 Morgan May 2002 B1
6473500 Risafi et al. Oct 2002 B1
6574661 Delano et al. Jun 2003 B1
6654451 Ward et al. Nov 2003 B1
6763376 Devine et al. Jul 2004 B1
6947532 Marchand Sep 2005 B1
7072454 Ward Jul 2006 B1
7092888 McCarthy et al. Aug 2006 B1
7099453 Crockett et al. Aug 2006 B2
7225249 Barry et al. May 2007 B1
7236954 Marchand Jun 2007 B1
7298833 Klein et al. Nov 2007 B2
7302250 Chin Nov 2007 B2
7542553 Gurfein et al. Jun 2009 B2
7643627 Starling et al. Jan 2010 B2
3090648 Zoldi et al. Jan 2012 A1
8379531 Farris et al. Feb 2013 B2
8401161 Terpstra et al. Mar 2013 B2
8619961 Starling et al. Dec 2013 B2
3687789 Marascio et al. Apr 2014 A1
8831205 Wu et al. Sep 2014 B1
8917860 Duva et al. Dec 2014 B2
9531886 Wong et al. Dec 2016 B2
9549066 Sharma et al. Jan 2017 B2
9553997 Sharma et al. Jan 2017 B2
9571666 Sharma Feb 2017 B2
9571667 Kimmel Feb 2017 B2
9635191 Sharma et al. Apr 2017 B2
9654648 Sharma May 2017 B2
9654649 Sharma May 2017 B2
9716799 Sharma Jul 2017 B2
9800742 Sharma Oct 2017 B2
9807249 Aldworth Oct 2017 B2
9807251 Sharma et al. Oct 2017 B2
9872156 Aldworth Jan 2018 B2
9930189 Chauhan Mar 2018 B2
9992352 Sharma et al. Jun 2018 B2
10097698 Sharma et al. Oct 2018 B2
10165128 Sharma Dec 2018 B2
10306075 Sharma et al. May 2019 B2
10382631 Sharma et al. Aug 2019 B2
10477033 Chauhan Nov 2019 B2
10560583 Sharma Feb 2020 B2
10674009 Jakobsson Jun 2020 B1
10708443 Sharma et al. Jul 2020 B2
10742821 Chauhan Aug 2020 B2
10778852 Sharma et al. Sep 2020 B2
10791225 Sharma Sep 2020 B2
11039007 Karnas et al. Jun 2021 B2
11039021 Sharma et al. Jun 2021 B2
11128759 Aldworth Sep 2021 B2
11140525 Aldworth Oct 2021 B2
11178289 Sharma et al. Nov 2021 B2
11277524 Sharma et al. Mar 2022 B2
11349984 Karnas et al. May 2022 B2
20020186825 Marchand et al. Dec 2002 A1
20030048889 Marchead et al. Mar 2003 A1
20040213392 Crockett et al. Oct 2004 A1
20040240381 Clark et al. Dec 2004 A1
20050058270 Allen et al. Mar 2005 A1
20060062364 Crockett et al. Mar 2006 A1
20060093112 Book et al. May 2006 A1
20060115061 Wilson et al. Jun 2006 A1
20060121943 Zabawskyj et al. Jun 2006 A1
20080162556 McConnell Jul 2008 A1
20100158201 Vijay et al. Jun 2010 A1
20110069661 Waytena et al. Mar 2011 A1
20110249666 Holbrook et al. Oct 2011 A1
20120030293 Bobotek Feb 2012 A1
20120288078 Starling et al. Nov 2012 A1
20130070757 Elliott et al. Mar 2013 A1
20130094640 McClure Apr 2013 A1
20130101108 Leister et al. Apr 2013 A1
20130151314 Kugler et al. Jun 2013 A1
20130177142 Allen et al. Jul 2013 A1
20130195102 Kyle Aug 2013 A1
20140006218 Muthu Jan 2014 A1
20140074685 Dufresne Mar 2014 A1
20140307730 Friedman et al. Oct 2014 A1
20140337437 Peters et al. Nov 2014 A1
20160127539 Sharma May 2016 A1
20160127540 Sharma et al. May 2016 A1
20160127541 Sharma May 2016 A1
20160127548 Sharma May 2016 A1
20160127549 Sharma May 2016 A1
20160127552 Sharma et al. May 2016 A1
20160127562 Chauhan May 2016 A1
20160127566 Sharma et al. May 2016 A1
20160127567 Kimmel May 2016 A1
20160127569 Karnas et al. May 2016 A1
20160127808 Wong et al. May 2016 A1
20160191716 Sharma Jun 2016 A1
20160360038 Phelps et al. Dec 2016 A1
20170064523 Aldworth Mar 2017 A1
20170078495 Tschirhart Mar 2017 A1
20170085724 Sharma et al. Mar 2017 A1
20170094066 Sharma et al. Mar 2017 A1
20170180567 Sharma et al. Jun 2017 A1
20180020102 Aldworth Jan 2018 A1
20180027129 Sharma Jan 2018 A1
20180132073 Aldworth May 2018 A1
20180249016 Sharma et al. Aug 2018 A1
20190028595 Chauhan Jan 2019 A1
20190089844 Sharma et al. Mar 2019 A1
20190312979 Sharma Oct 2019 A1
20200021690 Sharma et al. Jan 2020 A1
20200028974 Chauhan Jan 2020 A1
20200053204 Karnas et al. Feb 2020 A1
20200076957 Sharma Mar 2020 A1
20200128134 Sharma et al. Apr 2020 A1
20200244814 Sharma et al. Jul 2020 A1
20200296224 Sharma et al. Sep 2020 A1
20200314248 Sharma et al. Oct 2020 A1
20200404463 Aldworth Dec 2020 A1
20210006946 Aldworth Jan 2021 A1
20210021970 Aldworth Jan 2021 A1
20210044703 Sharma et al. Feb 2021 A1
20210266400 Karnas et al. Aug 2021 A1
20210352478 Hauser et al. Nov 2021 A1
Foreign Referenced Citations (7)
Number Date Country
2965681 May 2016 CA
2959916 Apr 2018 CA
2967451 Jul 2020 CA
2000059197 Oct 2000 WO
2016070095 May 2016 WO
2016090338 Jun 2016 WO
2016090338 Mar 2017 WO
Non-Patent Literature Citations (6)
Entry
U.S. Appl. No. 16/108,409, filed Aug. 22, 2018, Abandoned, Sharma et al.
U.S. Appl. No. 17/072,388, filed Oct. 16, 2020, Pending, Sharma et al.
PCT/US2015/058401, “International Application Serial No. PCT/US2015/058401 International Search Report and Written Opinion dated Feb. 17, 2016”, Inc., 5 pages.
PCT/US2015/058401, “International Application Serial No. PCT/US2015/058401, International Preliminary Report on Patentability and Written Opinion dated May 11, 2017”, Somos, Inc., 7 Pages.
PCT/US2015/064135, “International Application Serial No. PCT/US2015/064135, International Preliminary Report on Patentability and Written Opinion dated Jun. 15, 2017”, Somos, Inc., 12 Pages.
PCT/US2015/064135, “International Application Serial No. PCT/US2015/064135, International Search Report and Written Opinion dated Mar. 31, 2016”, Somos, Inc., 15 pages.
Related Publications (1)
Number Date Country
20210037142 A1 Feb 2021 US
Provisional Applications (4)
Number Date Country
62410176 Oct 2016 US
62172791 Jun 2015 US
62088406 Dec 2014 US
62073976 Nov 2014 US
Continuations (14)
Number Date Country
Parent 16845160 Apr 2020 US
Child 17072412 US
Parent 16523268 Jul 2019 US
Child 16845160 US
Parent 15966042 Apr 2018 US
Child 16523268 US
Parent 15448687 Mar 2017 US
Child 15966042 US
Parent 14960312 Dec 2015 US
Child 14984768 US
Parent 14960312 Dec 2015 US
Child 14984604 US
Parent 14960312 Dec 2015 US
Child 14984659 US
Parent 14960312 Dec 2015 US
Child 14984358 US
Parent 14960312 Dec 2015 US
Child 14984400 US
Parent 14960312 Dec 2015 US
Child 14984698 US
Parent 14960312 Dec 2015 US
Child 14984436 US
Parent 14960312 Dec 2015 US
Child 14984816 US
Parent 14960312 Dec 2015 US
Child 14984520 US
Parent 14960312 Dec 2015 US
Child 14984565 US
Continuation in Parts (11)
Number Date Country
Parent 14984520 Dec 2015 US
Child 15448687 US
Parent 14984604 Dec 2015 US
Child 14984520 US
Parent 14984698 Dec 2015 US
Child 14984604 US
Parent 14984436 Dec 2015 US
Child 14984698 US
Parent 14984400 Dec 2015 US
Child 14984436 US
Parent 14984358 Dec 2015 US
Child 14984400 US
Parent 14984659 Dec 2015 US
Child 14984358 US
Parent 14984816 Dec 2015 US
Child 14984659 US
Parent 14984565 Dec 2015 US
Child 14984816 US
Parent 14984768 Dec 2015 US
Child 14984565 US
Parent 14928575 Oct 2015 US
Child 14960312 US