Notes on Customer Record Commands
- The CPR is considered as a large binary field, i.e. there is a $ sign plus 4 bytes for the CPR length at the beginning of the field.
- On all decision nodes (except the PERCENT node), the last branch is converted to an OTHER branch.
- For efficiency reasons, TFNRegistry™ (tfnregistry.somos.com) attempts to reduce the size of complex records by pruning (i.e., removing) information that is not needed at a Service Control Point (SCP) network. Pruning applies to user created complex records only under certain conditions. In some cases the "other" branch is included even though it might not be needed. TFNRegistry does not prune user created simple records (a record containing one interlata carrier, a record containing a POTS destination number with one intralata and one interlata carrier, or a record containing a turnaround and a POTS destination number with one intralata and one interlata carrier). Turnaround records (i.e., those records with no POTS destination numbers) that have CPRs would therefore get pruned. Specifically, the TFNRegistry will prune all unnecessary branches and values from the NPA, LATA, 6-DIGIT, 10-DIGIT nodes. Pruning is performed on an SCP owning entity basis, i.e. all SCPs in the same Region will have the same CPRs.
NOTE: Pruning was used by TFNRegistry in the past when each SCP served a different geographical “area-of-service”. It’s no longer applicable to most SCPs.
NOTE: If the CPR entered by the customer indicates that the call has to be routed to a POTS number specified in the customer record, then the POTS number should be returned to the switch.
4. The time range in the time node is inclusive of the range starting value and exclusive of the range ending value. For example, the time range of 8:00am - 5:00pm means from 8:00:00am to 4:59:59pm. The range for day & date nodes is inclusive of the start and end values. For example MON-FRI means from 00:00 Monday to 23:59:59 Friday.
Range values are only allowed for Day of Year, Day of Week, Time of Day decision nodes.
5. In the range for time, day, date nodes, the ending value of the range has to be greater than the starting value.
6. The Set Routing 10 Digits (TEL# node) will not be included if the TEL# = Dialed Number.
7. The LSO node is generated for CPR path which contains a POTS destination number and which has a Foreign Serving Office (FSO) entered in the Customer Administrative Data (CAD) record for that destination number. Otherwise, LSO node is not to be generated.
8. The daylight savings time (DST) indicator in a time related CPR decision node (DOY, DOW, TIM) indicates whether the CPR specified time is to be interpreted as daylight time or standard time during the Congressionally mandated daylight saving time period. Outside of this daylight saving time period, the DST indicator has no meaning and all time is standard time. Call processing must check: if it is in DST period and CPR node says to use DST then adjust standard SCP time (data) plus one hour before executing a time-related CPR node. CPR time conversions are necessary whenever CPR node time zones differ from the standard SCP time zone.
9. The Action Node’s child node will be assumed to be the node immediately following itself. An End-of-Branch node will be added to the end of each branch.
10. Template Feature: Issue 22 and higher of this specification supports the Template
Feature. The Template Feature means customer records (CRs) can be built using a common routing tree (called a common "Routing Template", also called a template record) that can Call Processing Record Specification be used by multiple dial numbers. The dial number information and customer-specific information are stored on a Pointer Record.
11. Pointer Record: If a Customer Record’s (CR’s) CPR field contains a Template Node, that means the CR is a Pointer Record that points to a routing Template Record. For Pointer Records, the NMC node and the Template node must be in the CPR. When a CR contains a Template Node, the only other node that is allowed in that CR is the NMC node. An NMC node is required on every Pointer Record. Pointer records can only contain the following 3 nodes: Template Node, NMC Node, and End-of-Branch Node.
12. NMC Node: The NMC node will be sent by TFNRegistry for each CPR branch for regular CRs. However, for Pointer records, because Templates only have one destination # (the turnaround #, which is the toll-free Dial#), the Pointer record's routing tree will always have the same NMC value for every routing branch. Therefore, TFNRegistry will only send 1 NMC node in a Pointer record.
13. Routing Number: In any CPR (regular Customer Record, Pointer record, or Template
record), if there is no set routing number Action Node yet there is a CIC node, then the SCP should default the routing number to the toll-free dial number (Dial#).
14. Template Record: A Template Record’s CRN field will begin with a ’0’ in the first digit to identify the record as a Template, as opposed to a Dialed Number. The Template ID of a Template Record is a 10-digit value that is sent in the CRN field. The CRN field of a Template record can have NPA = 000 through 099, NXX = 000 through 999, and last 4 digits = 0000 through 9999. Set Template will never be used in a Template CRN.
15. When a CR contains a Template Node, then the Dialed Number is sent by TFNRegistry in a Pointer Record that points to a Template CRN. A Template Node is a type of Action Node.
16. A Pointer Record’s CRN field contains a toll-free number.
17. A regular CR (also known as a traditional CR) CRN field contains a toll-free number.
Regular CRs never contain a Template Node.
18. Multiple Pointer Records can point to the same Template CRN.
19. Order of Action Nodes: There is no fixed order in which TFNRegistry sends the Action Nodes to the SCPs. Therefore, the SCPs need to be able to handle the Action Nodes in any order sent by TFNRegistry. In general, the NMC Node will get sent before the Template Node.