Call information conversion device, call information conversion program, and call information conversion method
The call information conversion device addresses the issue of missing or duplicated sequence numbers in CDRs by determining continuity and discarding duplicates, thereby preventing double billing and ensuring accurate conversion for billing operations.
Patent Information
- Application Number
- JP2024022237
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-16
- Publication Date
- 2025-08-28
AI Technical Summary
Existing methods for determining the continuity of sequence numbers in call detail records (CDRs) fail to identify missing or duplicated numbers, leading to potential double billing issues.
A call information conversion device and method that includes a determination means to check for missing or duplicated identifiers in sequence numbers using management information, discarding duplicates, and converting only valid CDRs into a billing format.
Enables accurate determination of missing or duplicated CDRs, preventing double billing and ensuring correct conversion for billing operations.
Smart Images

Figure 2025125942000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a call information conversion device, a call information conversion program, and a call information conversion method, and can be applied to, for example, a call information conversion device that receives a CDR (Call Detail Record) containing call history information from a call processing device, converts the received CDR, and outputs it to the outside. [Background technology]
[0002] Conventionally, in various telephone services, including IP telephone services, information regarding calls between a calling telephone terminal and a called telephone terminal is stored in a storage device connected to a call processing device, for example, a CDR (see, for example, Patent Document 1).
[0003] In systems that provide telephone services, CDRs are typically transmitted from a call processing device (CDR storage device) to a device that handles billing operations, via a call information conversion device that converts the CDR into a format for billing operations.
[0004] In the above system, in order to check the chronological continuity of the CDRs received by the call information conversion device, the sending side (for example, the call processing device) may assign sequential numbers to file names and data.
[0005] The receiving side (e.g., a call information conversion device) may use this sequence number to determine continuity depending on its operational policy. In this case, continuity is determined by whether the number is the next number after the stored sequence number.
[0006] When there is an upper limit to the number of consecutive numbers, the continuity can generally be determined by using cosets (for example, the following equation (1)). New=(Num-Min+1)mod(Max-Min+1)+Min …(1)
[0007] In the above formula (1), New is the next serial number to be received, Num is the currently received serial number, Max is the upper limit of the serial number, and Min is the lower limit of the serial number.
[0008] If the numbers are consecutive, the above formula (1) is satisfied, whereas if the numbers are not consecutive, the above formula (1) is not satisfied. [Prior art documents] [Patent documents]
[0009] [Patent Document 1] Japanese Patent Application Publication No. 2017-076932 Summary of the Invention [Problem to be solved by the invention]
[0010] However, the above-described method for determining continuity cannot determine whether a sequence number is missing or duplicated when the sequence number has an upper limit.
[0011] In a system that provides telephone services, a call information conversion device receives CDRs containing call history information from a call processing device, converts the received CDRs, and transmits them to a device that handles billing operations.If duplicate CDRs occur, the duplicate CDRs must not be converted to prevent double billing.
[0012] Furthermore, since the call information conversion device must convert the next CDR received in a missing state, the system operation must differ depending on whether the CDR is missing or duplicated.
[0013] Therefore, there is a demand for a call information conversion device, a call information conversion program, and a call information conversion method that can determine whether a sequence number is missing or duplicated when checking the chronological continuity of received CDRs using the sequence number. [Means for solving the problem]
[0014] The first call information conversion device of the present invention is characterized by having (1) a call information acquisition means for acquiring call information that is information related to call processing of a communication terminal and includes an identifier to which a consecutive number is assigned; (2) a determination means for determining the continuity of identifiers, including whether or not there are missing or duplicated identifiers, based on the identifier of the call information acquired by the call information acquisition means and management information that manages the identifier information of the call information received in the past; (3) a discarding means for discarding the call information that is determined by the determination means to have a duplicated identifier; and (4) a call information conversion means for converting the call information for which the determination means has confirmed the continuity of the identifier or the call information that is determined to have a missing identifier into a format for billing.
[0015] The second call information conversion program of the present invention is characterized in that it causes a computer to function as: (1) a call information acquisition means for acquiring call information, which is information regarding call processing of a communication terminal and includes an identifier to which a consecutive number is assigned; (2) a determination means for determining the continuity of identifiers, including whether or not there are missing or duplicated identifiers, based on the identifier of the call information acquired by the call information acquisition means and management information that manages the identifier information of the call information received in the past; (3) a discarding means for discarding the call information determined by the determination means to have a duplicated identifier; and (4) a call information conversion means for converting the call information for which the determination means has confirmed the continuity of the identifier or the call information determined to have a missing identifier into a format for billing.
[0016] The third invention is a call information conversion method used in a call information conversion device, characterized in that (1) a call information acquisition means acquires call information, which is information regarding call processing of a communication terminal and includes an identifier to which a consecutive number is assigned; (2) a determination means determines the continuity of the identifier, including whether or not there is a missing or duplicated identifier, based on the identifier of the call information acquired by the call information acquisition means and management information that manages the information of the identifier of the call information received in the past; (3) a discarding means discards the call information determined by the determination means to have a duplicated identifier; and (4) a call information conversion means converts the call information for which the determination means has confirmed the continuity of the identifier or the call information determined to have a missing identifier into a format for billing. [Effects of the Invention]
[0017] According to the present invention, when checking the chronological continuity of received CDRs using the sequence numbers, it is possible to determine whether the sequence numbers are missing or duplicated. [Brief explanation of the drawings]
[0018] [Figure 1] 1 is an overall configuration diagram showing the overall configuration of a CDR conversion system according to an embodiment. [Figure 2] 10 is an explanatory diagram showing the transition of serial number management information when a CDR file is received according to an embodiment. FIG. [Figure 3] 10 is an explanatory diagram showing the transition of serial number management information when a CDR file is received according to date and time processing according to an embodiment. FIG. [Figure 4] 10 is a flowchart showing a characteristic operation of the CDR conversion device according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0019] (A) Main embodiment DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an embodiment of a call information conversion device, a call information conversion program, and a call information conversion method according to the present invention will be described in detail with reference to the drawings.
[0020] (A-1) Configuration of the embodiment <Overall structure> FIG. 1 is a diagram showing the overall configuration of a CDR conversion system according to an embodiment.
[0021] 1, a CDR conversion system 1 according to this embodiment includes a call processing device 10, a CDR conversion device 20, and a billing device 30. The devices are connected to each other via, for example, an IP (Internet Protocol) network.
[0022] The call processing device 10 performs call control for establishing a call between a calling telephone terminal and a called telephone terminal (not shown) in accordance with a communication protocol related to call processing (hereinafter also referred to as a "call control protocol"). The call control protocol is, for example, SIP (Session Initiation Protocol). Furthermore, call information (CDR) between telephone terminals is stored in an internal storage of the call processing device 10 or externally (for example, a server (not shown) that stores CDRs).
[0023] The call processing device 10 creates a CDR file F in which multiple CDRs are stored at a predetermined timing (for example, periodically every few minutes, or when a certain number of CDRs have been accumulated). At this time, the call processing device 10 assigns a consecutive number to the file name of the CDR file F (or the internal data of the file) each time it creates the CDR file F. The number of digits in the assigned consecutive number is not particularly limited, but there may be an upper limit.
[0024] The call processing device 10 transmits the created CDR file F to the CDR conversion device 20. The file format of the CDR file F is not particularly limited and may be, for example, a csv (comma separated values) format or a text format. If necessary, the CDR file F may be subjected to data compression using any compression method.
[0025] When the CDR conversion device 20 receives the CDR file F, it determines whether there are any deficiencies or duplicates in the continuity of the CDR file F, and based on the result of the determination, performs a format conversion on the CDR file F. The CDR conversion device 20 transmits the CDR file F after the format conversion to the charging device 30 used by the department responsible for the charging operation.
[0026] The charging device 30 performs a charging process using the received CDR file F that has been format-converted.
[0027] <Detailed Configuration of CDR Conversion Device> In FIG. 1, the internal configuration of the CDR conversion device according to the embodiment is also shown. In FIG. 1, the CDR conversion device 20 includes a communication interface unit 21, a control unit 22, and a storage unit 23.
[0028] Except for the hardware communication interface, the CDR conversion device 20 may also be realized by installing a program on a computer. Even in this case, the functional configuration can be shown as in FIG. 1.
[0029] The communication interface unit 21 is connected to an IP network (not shown) and exchanges data with the call processing device 10 and the charging device 30. The communication interface unit 21 provides the CDR file F received from the call processing device 10 to the control unit 22. Further, when the communication interface unit 21 receives a transmission instruction for the converted CDR file F from the control unit 22, it transmits the converted CDR file F to the charging device 30. <00001The missing / duplication determination unit 221 is a functional unit that checks the sequence numbers assigned to the file names of the CDR files F received via the communication interface unit 21 and determines the validity of the sequence numbers (that the CDR files F were received in order), including any missing or duplicated files. The missing / duplication determination unit 221 determines the validity of the sequence numbers using sequence number management information T that manages the sequence numbers, which will be described later. Further details of the missing / duplication determination unit 221 will be described in the section on operation.
[0032] The format conversion unit 222 converts the CDR file F, whose serial number has been determined to be valid by the missing / duplication determination unit 221, into a predetermined format (a format including information necessary for billing operations).
[0033] The sequence number management unit 223 updates the sequence number management information T at a predetermined timing (when receiving the CDR file F or at each date and time). Specific details and methods of updating will be described later.
[0034] The storage unit 23 stores programs executed by the control unit 22, data (serial number management information T), and the like, and is configured by, for example, a RAM.
[0035] <Detailed configuration of sequential number management information> 2 is an explanatory diagram showing the transition of sequence number management information when a CDR file is received according to the embodiment. Hereinafter, the sequence number assigned to the CDR file F received from the call processing device 10 will be referred to as the "received sequence number."
[0036] FIG. 2(A) shows the initial state of the serial number management information T (in other words, the data format).
[0037] The serial number management information T manages the reception serial numbers within a specified period (in this embodiment, three days), and for example, as shown in Figure 2(A), has a "latest serial number" that stores the latest reception serial number (the newest number among the reception serial numbers), a "0 days ago serial number" that stores the reception serial number for the current day (0 days ago), a "1 day ago serial number" that stores the reception serial number from one day ago, a "1 day ago serial number" that stores the reception serial number from two days ago, and an "oldest serial number" that stores the oldest reception serial number (three days ago in this embodiment).
[0038] In Figure 2, the period for determining duplication is three days, so the sequence number management information T holds the "latest sequence number," "0 day ago sequence number," "1 day ago sequence number," "2 days ago sequence number," and "oldest sequence number" as elements, but these elements will increase or decrease depending on the period for determining duplication. In other words, if the period for determining duplication is n days, the sequence number management information T will hold the "latest sequence number," "0 day ago sequence number," "n-1 day ago sequence number (1≦n)," and "oldest sequence number" as elements.
[0039] From the initial state of Figure 2(A), for example, when the call processing device 10 receives a CDR file F with the file name 1001000.csv, the serial number management unit 223 will set the received serial number of 1001000 to the "latest serial number" of the serial number management information T, as shown in Figure 2(B).
[0040] Furthermore, if a reception sequential number is not set in the "0 days ago sequential number," the sequential number management unit 223 will set the reception sequential number in the "0 days ago sequential number." In this case, since a reception sequential number is not set in the "0 days ago sequential number," the reception sequential number of 1001000 will be set in the "0 days ago sequential number," as shown in FIG. 2(B).
[0041] Continuing from the state shown in Figure 2(B), for example, when the call processing device 10 receives a CDR file F with the file name 1001001.csv, the sequential number management unit 223 will set (update) the received sequential number of 1001001 to the "latest sequential number" of the sequential number management information T, as shown in Figure 2(C).
[0042] However, since the reception sequence number has already been set in the "0 days ago sequence number," the sequence number management unit 223 does not set the reception sequence number 1001001 in the "0 days ago sequence number."
[0043] Next, the transition of the serial number management information due to date and time processing will be explained with reference to FIG.
[0044] 3(A) shows an example in which a received sequential number of 1005000 is set as the "latest sequential number" of the sequential number management information T, a received sequential number of 1001000 is set as the "0 days ago sequential number," and no received sequential numbers are set for other elements. Once a day, the sequential number management unit 223 performs a process of setting the "2 days ago sequential number" to the "oldest sequential number," the "1 day ago sequential number" to the "2 days ago sequential number," the "0 days ago sequential number" to the "1 day ago sequential number," and the "latest sequential number" to the "0 days ago sequential number."
[0045] For example, when date and time processing is performed from the state shown in Figure 3(A), the sequential number management unit 223 will set the "sequential number 0 days ago" of 1001000 to the "sequential number 1 day ago" and set the "latest sequential number" of 1005000 to the "sequential number 0 days ago" as shown in Figure 3(B).
[0046] FIG. 3(C) shows an example of sequence number management information T in which CDR files F with reception sequence numbers 1005001 to 1015000 are received from the state of FIG. 3(B) and date and time processing is performed twice.
[0047] (A-2) Operation of the embodiment Next, the operation of the CDR conversion system 1 according to the embodiment having the above configuration will be described.
[0048] 4 is a flowchart showing a characteristic operation (determining whether a sequence number is normal / missing / duplicate) of the CDR conversion device according to the embodiment. In the flowchart of FIG. 4, Num is the received sequence number, New is the latest sequence number, Old is the oldest sequence number, Max is the upper limit of the sequence number, and Min is the lower limit of the sequence number.
[0049] 4 also shows a specific example of sequential number management information T based on the received sequential number (transition of sequential number management information between normal, missing, and duplicate). It is assumed that the sequential number management information T before the start of the flowchart is in the state of sequential number management information T0 (latest sequential number: 1015000, oldest sequential number (3 days ago): 1001000).
[0050] <Step S101> When the communication interface unit 21 of the CDR conversion device 20 receives the CDR file F from the call processing device 10, it provides the CDR file F to the control unit 22 (loss / duplication determination unit 221).
[0051] <Step S102> The missing / duplication determination unit 221 uses the above formula (1) to determine the continuity of the numbers (received consecutive numbers) assigned to the received CDR files F. If the above formula (1) is satisfied, the missing / duplication determination unit 221 determines (judges) that the files are normal and proceeds to step S103, whereas if the above formula (1) is not satisfied, the unit 221 proceeds to step S104.
[0052] <Step S103> If it is determined in step S102 that the above-mentioned formula (1) is satisfied, the serial number management unit 223 updates the latest serial number in the serial number management information T.
[0053] For example, if the received sequential number is 1015001, it is a consecutive number and is therefore determined to be normal by the missing / duplication determination unit 221, and the sequential number management unit 223 updates the latest sequential number in the sequential number management information T0 with the received sequential number (1015001) (resulting in the state of sequential number management information T1).
[0054] In this normal case, the CDR file F is not discarded but is subjected to format conversion by the format conversion unit 222.
[0055] <Step S104> On the other hand, if it is determined in step S102 that the above formula (1) does not hold, the missing / duplication determination unit 221 compares the values of the oldest consecutive number (Old) and the latest consecutive number (New). This is because, since consecutive numbers have an upper limit, the latest consecutive number may be equal to or smaller than the oldest consecutive number, and the method of determining whether there is missing or duplication differs depending on the evaluation result, as in steps S105 and S107 described below.
[0056] If the oldest consecutive number (Old) is equal to or less than the newest consecutive number (New), the missing / overlapping determination unit 221 proceeds to step S105, and if the oldest consecutive number (Old) is not equal to or less than the newest consecutive number (New), the missing / overlapping determination unit 221 proceeds to step S106.
[0057] <Step S105> If it is determined in step S104 above that the oldest consecutive number (Old) is equal to or less than the newest consecutive number (New), the missing / duplication determination unit 221 determines whether the received consecutive number (Num) is equal to or greater than the oldest consecutive number (Old) and equal to or less than the newest consecutive number (New).
[0058] If the result of the determination is affirmative (Yes), the missing / duplication determination unit 221 determines that the reception sequence number is a duplicate and proceeds to step S106. On the other hand, if the result of the determination is negative (No), the missing / duplication determination unit 221 determines that the reception sequence number is missing and proceeds to step S108.
[0059] <Step S106> If the determination result of the above-mentioned step S105 (or step S107 described later) is affirmative (Yes), the missing / duplication determination unit 221 discards the received CDR file F. In this case, the sequence number management unit 223 does not update the latest sequence number in the sequence number management information T.
[0060] In this example, the reception sequence numbers between 1001000 and 1015000 are considered duplicates.
[0061] <Step S107> On the other hand, if it is determined in step S104 above that the oldest consecutive number (Old) is not less than the latest consecutive number (New), the missing / overlapping determination unit 221 determines whether the received consecutive number (Num) is greater than the oldest consecutive number (Old) and less than the consecutive number upper limit value (Max), or whether the received consecutive number (Num) is greater than the consecutive number lower limit value (Min) and less than the latest consecutive number (New).
[0062] If the result of the determination is affirmative (Yes), the missing / duplication determination unit 221 determines that the reception sequence number is a duplicate and proceeds to step S106. On the other hand, if the result of the determination is negative (No), the missing / duplication determination unit 221 determines that the reception sequence number is a missing number and proceeds to step S108.
[0063] <Step S108> If the determination result in step S105 or S107 is negative (No), the serial number management unit 223 updates the latest serial number in the serial number management information T.
[0064] For example, if the received sequence number is 1015100, it is determined to be missing and the latest sequence number is updated with the received sequence number (sequence number management information T2). In this example, if the received sequence number is other than 1001000 to 1015000 and other than 1015001, that is, if it is between 1015002 and 1000999, it is determined to be missing.
[0065] In the case of this loss, the CDR file F is not discarded but is subjected to format conversion by the format conversion unit 222.
[0066] <Supplementary explanation> If the oldest consecutive number is not set in the consecutive number management information T, the consecutive number from two days ago and the latest consecutive number are used to determine whether there is a missing or duplicated number. Similarly, if the consecutive number from two days ago is not set, the consecutive number from one day ago and the latest consecutive number are used to determine whether there is a missing or duplicated number. If the consecutive number from one day ago is not set, the consecutive number from zero days ago and the latest consecutive number are used to determine whether there is a missing or duplicated number.
[0067] (A-3) Effects of the embodiment According to the present invention, the following effects are achieved.
[0068] The CDR conversion device 20 can determine whether the consecutive numbers assigned to the CDR file F sent from the call processing device 10 are missing or duplicated by setting a period for determination and using consecutive number management information T that manages consecutive numbers. By being able to determine whether there is a missing number, it is possible to convert necessary CDRs that are not consecutive numbers without discarding them. In addition, by being able to determine whether there is a duplication, it is possible to discard the CDR and prevent double charging at the forwarding destination.
[0069] Furthermore, by managing the received serial numbers using only the minimum number of elements as elements of the serial number management information T, it is possible to save system resources (memory, etc.).
[0070] (B) Other embodiments Although various modified embodiments have been mentioned in the above-described embodiment, the present invention can also be applied to the following modified embodiments.
[0071] (B-1) In the above embodiment, the received sequential numbers are managed using the sequential number management information T. However, as a modification, in a device with sufficient memory capacity, the received sequential numbers may be stored sequentially in a buffer (memory) instead of managing the received sequential numbers using the sequential number management information T. In this case, the oldest data in the buffer becomes the oldest sequential number, and the newest data in the buffer becomes the newest sequential number.
[0072] (B-2) In the above embodiment, an example was shown in which the present invention is applied to a device that converts CDRs, but the use of the present invention is not limited to this and can be applied to devices that check the continuity of various numbers. [Explanation of symbols]
[0073] 1...CDR conversion system, 10...call processing device, 20...CDR conversion device, 21...face unit, 22...control unit, 23...memory unit, 30...billing device, 221...duplicate determination unit, 222...format conversion unit, 223...sequential number management unit, F...CDR file, T(T0-T2)...sequential number management information.
Claims
1. A call information acquisition means for acquiring call information that is information about call processing of a communication terminal and includes an identifier to which a serial number is assigned; a determination means for determining the continuity of the identifiers, including the presence or absence of missing or duplicated identifiers, based on the identifiers of the call information acquired by the call information acquisition means and management information for managing information on the identifiers of the call information received in the past; a discarding means for discarding the call information determined by the determining means to contain a duplicate identifier; a call information conversion means for converting the call information for which the determination means has confirmed that the identifier is continuous or the call information for which the determination means has determined that the identifier is missing into a format for billing; A call information conversion device comprising:
2. Computer, A call information acquisition means for acquiring call information that is information about call processing of a communication terminal and includes an identifier to which a serial number is assigned; a determination means for determining the continuity of the identifiers, including the presence or absence of missing or duplicated identifiers, based on the identifiers of the call information acquired by the call information acquisition means and management information for managing information on the identifiers of the call information received in the past; a discarding means for discarding the call information determined by the determining means to contain a duplicate identifier; a call information conversion means for converting the call information for which the determination means has confirmed that the identifier is continuous or the call information for which the determination means has determined that the identifier is missing into a format for billing; A call information conversion program characterized by functioning as follows.
3. A call information conversion method used in a call information conversion device, comprising: The call information acquisition means acquires call information that is information related to call processing of the communication terminal and includes an identifier to which a serial number is assigned; The determination means determines the continuity of the identifiers, including whether or not there are missing or duplicated identifiers, based on the identifiers of the call information acquired by the call information acquisition means and management information that manages information on the identifiers of the call information previously received; The discarding means discards the call information determined by the determining means to contain a duplicate identifier, The call information conversion means converts the call information for which the determination means has confirmed the continuity of the identifier or the call information for which the determination means has determined that the identifier is missing into a format for billing. A call information conversion method comprising:
Citation Information
Patent Citations
Communication device, communication program, communication method, and communication system
JP2017076932A