Call record processing method, device and equipment and storage medium

By identifying the center call detail record (CDR) point and calculating the reference speed in the DPI call detail record (CDR), and deleting abnormal CDRs, the problem of incorrect base station location in the DPI CDR was solved, and the accuracy of user location information was improved.

CN117915383BActive Publication Date: 2025-12-16CHINA UNITED NETWORK COMM GRP CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410075698.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-01-18
Publication Date
2025-12-16
Estimated Expiration
2044-01-18

AI Technical Summary

Technical Problem

In existing technologies, the accuracy of access base station cell location in DPI call detail records generated by deep packet inspection (DPI) systems can only be maintained at 95%-99%, resulting in a large number of erroneous location information and affecting the accuracy of user location information.

Method used

By acquiring the user's DPI call detail records, the central call detail record point is determined, and the reference speed is calculated based on the distance and time difference between the call detail record point and the central call detail record point. DPI call detail records that are too far away or have abnormal speeds are deleted to reduce erroneous base station cell locations.

Benefits of technology

It improves the accuracy of access base station cell location in DPI call detail records, reduces erroneous information, and enhances the accuracy of user location information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117915383B_ABST
    Figure CN117915383B_ABST
Patent Text Reader

Abstract

The application provides a call record processing method and device, equipment and storage medium, relates to the field of communication, and the method comprises the following steps: obtaining the call record state of a first user in a current collection period; obtaining a deep packet inspection (DPI) call record set of the first user in the current collection period with an abnormal state; determining a center call record point in the DPI call record point set according to the DPI call record point set; determining a first reference speed corresponding to each DPI call record according to the call record generation time of each DPI call record, the call record point corresponding to each DPI call record, the center call record generation time in the center call record point corresponding DPI call record, and the center call record point; and deleting the access base station cell position in the abnormal call record with a first reference speed greater than a speed threshold. If the speed corresponding to the DPI call record is greater than the maximum speed that can be reached by the user, the access base station cell position in the DPI call record is deleted, so that the DPI call record with an error access base station cell position is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of communication, and particularly relates to a call bill processing method and device, equipment and storage medium. BACKGROUND

[0002] In daily life, the position information of a user has wide application in many software, and the most typical scenarios are communication itinerary card and sending a message in a specific scenario. Especially for the communication itinerary card, the accuracy of the position information is very high.

[0003] At present, the access base station cell position of a user is obtained by a deep packet inspection (DPI) system to generate a DPI call bill, and the position information of the user is determined according to the position of the access base station cell. Since the accuracy of the access base station cell position in the DPI call bill can only be maintained at 95%-99%, a large number of DPI call bills with incorrect access base station cell positions will be generated due to the large user base. SUMMARY

[0004] Based on the above technical problem, the present application provides a call bill processing method, device, equipment and storage medium. The center call bill point can be taken as a reference, and the access base station cell position in the call bill corresponding to the call bill point far away from the center call bill point is deleted, so that the DPI call bill with incorrect access base station cell position is reduced.

[0005] In a first aspect, the present application provides a call bill processing method, which comprises:

[0006] acquiring a call status of the first user in a current collection period; the call status comprises a normal status or an abnormal status; if the call status is the abnormal status, acquiring a deep packet inspection (DPI) call set of the first user in the current collection period; the DPI call set comprises one or more DPI calls, and each DPI call corresponds to a call point, the call point being used to represent a location of an access base station cell in the corresponding DPI call; determining a center call point in the DPI call point set according to the DPI call point set; the call point set is composed of the call points corresponding to the one or more DPI calls respectively; determining a first reference speed corresponding to each of the one or more DPI calls according to a call generation time of each of the one or more DPI calls, the call point corresponding to each of the one or more DPI calls, a center call generation time in a center call corresponding to the center call point, and the center call point; the first reference speed is determined by a quotient of a first reference distance and a first reference time length; the first reference distance is a distance between the call point corresponding to each of the one or more DPI calls and the center call point; the first reference time length is a time length of a difference between the call generation time of each of the one or more DPI calls and the center call generation time; and deleting a location of an access base station cell in an abnormal call corresponding to the first reference speed greater than a speed threshold.

[0007] Optionally, the acquiring of the call status of the first user in the current collection period comprises:

[0008] acquiring a current DPI call of the first user collected currently and a historical DPI call of the first user collected last time; determining a current reference speed corresponding to the current DPI call according to a call generation time in the current DPI call, a current call point corresponding to the current DPI call, a call generation time in the historical DPI call, and a historical call point corresponding to the historical DPI call; the current reference speed is determined by a quotient of a current reference distance and a current reference time length; the current reference distance is a distance between the current DPI call point and the historical DPI call point; the current reference time length is a time length of a difference between the call generation time in the current DPI call and the call generation time in the historical DPI call; if the current reference speed is greater than a speed threshold, setting the call status of the current collection period to the abnormal status; if the current reference speed is less than or equal to the speed threshold, setting the call status of the current collection period to the normal status.

[0009] Optionally, the method further comprises: if the call status is the normal status, sending the DPI call set to a positioning database.

[0010] Optionally, the center billing point in the set of DP I billing points is determined according to the set of DP I billing points, including: calculating the sum of distances between each of the one or more billing points and the rest of the billing points; and selecting the billing point with the smallest sum of distances as the center billing point.

[0011] Optionally, before the sum of distances between the one or more billing points and the rest of the billing points in the set of DP I billing points is calculated according to the set of DP I billing points, the method further includes: determining the respective access base station cell positions of the one or more DP I bills according to the one or more DP I bills in the set of DP I bills; determining the respective billing points of the one or more DP I bills according to the respective access base station cell positions of the one or more DP I bills; and determining the set of DP I billing points according to the respective billing points of the one or more DP I bills.

[0012] Optionally, the position of the billing point is latitude and longitude, and the respective first reference speed of the one or more DP I bills is determined according to the respective billing points of the one or more DP I bills, the center billing point, the center billing generation time in the DP I bill corresponding to the center billing point, and the billing generation time in the respective DP I bill, including:

[0013] determining the difference in longitude and the difference in latitude between the respective billing points of the one or more DP I bills and the center billing point; determining the first reference distance according to the difference in longitude, the difference in latitude, and a preset conversion relationship between the respective billing points of the one or more DP I bills and the center billing point; determining the first reference time length according to the billing generation time in the respective DP I bill and the center billing generation time in the DP I bill corresponding to the center billing point; and determining the first reference speed according to the quotient of the first reference distance and the first reference time length.

[0014] Optionally, the conversion relationship includes: 1 degree = 111 kilometers, 1 minute = 1.85 kilometers, and 1 second = 31 meters.

[0015] The call processing method provided by the application can obtain a DPI call set in an abnormal state, determine a central call point in the DPI call point set, the central call point can represent a center of a range of activities of a first user in a current collection period, and the central call point is taken as a reference to calculate a first reference speed corresponding to each DPI call according to a distance between each call point corresponding to the DPI call and the central call point and a time difference between a call generation time of each DPI call and a central call generation time. If the first reference speed corresponding to a certain DPI call is too large and exceeds a preset speed threshold, it indicates that the certain DPI call is too far away from the center of the range of activities and deviates from a reasonable range of activities of the first user in the current collection period, so that the certain DPI call can be confirmed as an abnormal call, and a position of accessing a base station cell in the abnormal call is deleted, thereby reducing the DPI call with an error position of accessing the base station cell.

[0016] In a second aspect, the application provides a call processing device, which comprises an acquisition module and a processing module.

[0017] The acquisition module is configured to acquire a call state of a first user in a current collection period; the call state comprises a normal state or an abnormal state.

[0018] The processing module is configured to, if the call state is the abnormal state, acquire a deep packet inspection (DPI) call set of the first user in the current collection period; the DPI call set comprises one or more DPI calls, each DPI call corresponds to a call point, and the call point is used to represent a position of accessing a base station cell in the corresponding DPI call; determine a central call point in the DPI call point set according to the DPI call point set; the call point set is composed of the call points corresponding to the one or more DPI calls; determine a first reference speed corresponding to each of the one or more DPI calls according to a call generation time of each of the one or more DPI calls, the call point corresponding to each of the one or more DPI calls, a central call generation time in the central call point corresponding to the DPI call, and the central call point; the first reference speed is determined by a quotient of a first reference distance and a first reference time length; the first reference distance is a distance between the call point corresponding to each of the one or more DPI calls and the central call point; the first reference time length is a time difference between the call generation time of each of the one or more DPI calls and the central call generation time; and delete the position of accessing the base station cell in an abnormal call if there is the abnormal call corresponding to the first reference speed greater than a speed threshold.

[0019] Optionally, the acquisition module is specifically configured to acquire a current DPI call of the first user collected currently and a historical DPI call collected last time on the current DPI call.

[0020] The processing module is specifically used to determine the current reference speed corresponding to the current DPI call detail record (CDR) based on the CDR generation time in the current DPI CDR, the current CDR point corresponding to the current DPI CDR, the CDR generation time in the historical DPI CDR, and the historical CDR point corresponding to the historical DPI CDR. The current reference speed is determined by the quotient of the current reference distance and the current reference duration. The current reference distance is the distance between the current DPI CDR point and the historical DPI CDR point. The current reference distance is the duration difference between the CDR generation time in the current DPI CDR and the CDR generation time in the historical DPI CDR. If the current reference speed is greater than the speed threshold, the CDR status of the current collection period is set to an abnormal state. If the current reference speed is less than or equal to the speed threshold, the CDR status of the current collection period is set to an abnormal state.

[0021] Optionally, the processing module is also configured to send the DPI call detail record set to the location database if the call detail record status is normal.

[0022] Optionally, the processing module is specifically used to calculate the sum of distances between each of the one or more call detail records (CDRs) and the remaining CDRs; and to select the CDR with the smallest sum of distances as the center CDR.

[0023] Optionally, the processing module is further configured to determine the location of the access base station cell corresponding to each of the one or more DPI call detail records based on the one or more DPI call detail records in the DPI call detail record set; determine the call detail record point corresponding to each of the one or more DPI call detail records based on the location of the access base station cell corresponding to each of the one or more DPI call detail records; and determine the DPI call detail record point set based on the call detail record points corresponding to each of the one or more DPI call detail records.

[0024] Optionally, the processing module is specifically used to determine the difference in longitude and latitude between the corresponding call detail records (CDRs) and the central CDR for one or more DPI call detail records; determine a first reference distance based on the difference in longitude and latitude between the corresponding CDRs and the central CDR for one or more DPI call detail records and a preset conversion relationship; determine a first reference duration based on the CDR generation time of each of the one or more DPI call detail records and the central CDR generation time of the DPI call detail record corresponding to the central CDR for ...

[0025] Optionally, the conversion relationships include: 1 degree = 111 kilometers, 1 minute = 1.85 kilometers, 1 second = 31 meters.

[0026] Thirdly, this application provides a computer program product that, when run on a computer, causes the computer to perform the steps of the related method described in the first aspect, so as to implement the method described in the first aspect.

[0027] In a fourth aspect, the present application provides an electronic device, comprising: a processor and a memory; the memory stores instructions executable by the processor; the processor is configured to execute the instructions, so that the electronic device implements the method of the first aspect.

[0028] In a fifth aspect, the present application provides a computer-readable storage medium, comprising: computer software instructions; when the computer software instructions run in an electronic device, the electronic device implements the method of the first aspect.

[0029] The advantages of the second aspect to the fifth aspect are as described in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0030] In order to more clearly illustrate the technical solutions of the embodiments of the present application or the prior art, the drawings needed in the embodiment or prior art description will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present application, and those skilled in the art can obtain other drawings according to these drawings without creative labor.

[0031] Figure 1 The composition schematic diagram of the call processing system provided by the embodiment of the present application is shown in the figure;

[0032] Figure 2 The composition schematic diagram of the electronic device provided by the embodiment of the present application is shown in the figure;

[0033] Figure 3 The flowchart of the call processing method provided by the embodiment of the present application is shown in the figure;

[0034] Figure 4 Another flowchart of the call processing method provided by the embodiment of the present application is shown in the figure;

[0035] Figure 5 Another flowchart of the call processing method provided by the embodiment of the present application is shown in the figure;

[0036] Figure 6 Another flowchart of the call processing method provided by the embodiment of the present application is shown in the figure;

[0037] Figure 7 Another flowchart of the call processing method provided by the embodiment of the present application is shown in the figure;

[0038] Figure 8 Another flowchart of the call processing method provided by the embodiment of the present application is shown in the figure;

[0039] Figure 9Another flow diagram of the call processing method provided by the embodiment of the present application is shown in FIG. 6.

[0040] Figure 10 A component diagram of the call processing device provided by the embodiment of the present application is shown in FIG. 7. DETAILED DESCRIPTION

[0041] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, but not all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.

[0042] It should be noted that the words such as "exemplarily" or "for example" in the embodiments of the present application are used to represent as an example, illustration or description. Any embodiment or design scheme described as "exemplarily" or "for example" in the embodiments of the present application should not be interpreted as more preferred or more advantageous than other embodiments or design schemes. In fact, the words such as "exemplarily" or "for example" are intended to present the related concept in a specific way.

[0043] In order to clearly describe the technical solutions in the embodiments of the present application, in the embodiments of the present application, the words "first", "second" and the like are used to distinguish the same items or similar items with basically the same function and effect, and those skilled in the art can understand that the words "first", "second" and the like are not used to limit the quantity and execution order.

[0044] In daily life, the location information of a user has a wide range of applications in many software, and the most typical scenarios are communication itinerary cards and sending messages in specific scenarios. Especially for communication itinerary cards, the accuracy of location information is very high.

[0045] Most of the current software obtains the access base station cell location of a user through a call generated by a deep packet inspection (DPI) system. The DPI system can collect the original data stream generated in the online process of the user, generate a DPI call according to the original data stream of the user, store the DPI call in a positioning database, and the software (for example, software itinerary card) requiring user location information can obtain the DPI call of the user in the positioning database, and obtain the location information of the user at each time according to the location of the access base station cell in the DPI call.

[0046] Since the accuracy of the location of the access base station cell in the DPI bill generated by the DPI system can only be maintained at 95%-99%, a large number of access base station cell location errors in the DPI bill will be generated due to the large user base. According to 10 million users in a province, at least 100,000 users will have the access base station cell location filled in error.

[0047] The following will be described with reference to the accompanying drawings.

[0048] Figure 1 The constituent schematic diagram of the bill processing system provided by the embodiment of the present application is shown in the figure. Figure 1 As shown in the figure, the system comprises: a data source device 100, a bill processing device 200, a positioning database 300, and a positioning system 400. The data source device 100 and the bill processing device 200 can be connected through a wired network or a wireless network, the bill processing device 200 and the positioning database 300 can be connected through a wired network or a wireless network, and the positioning system 400 and the positioning database 300 can be connected through a wired network or a wireless network.

[0049] The data source device 100 can be used to obtain the original data stream generated in the user's online process and send the original data stream to the bill processing device 200. The original data stream includes the location information of the user's access base station cell, such as the geographical location and the latitude and longitude coordinates, and the generation time of the original data stream.

[0050] The data source device 100 can be a network device capable of obtaining the original data stream in the process of the user using the network. For example, the network device can be a router, a switch, etc.

[0051] The bill processing device 200 can obtain the original data stream sent by the data source device 100 and convert the original data stream into a DPI bill. The bill processing device 200 can judge the bill state of the period according to the DPI bill of the bill file in the period, delete the DPI bill in the first reference speed greater than the speed threshold in the period in the abnormal state, and the specific bill processing process can refer to the bill processing method provided by the following method embodiment. Here, it will not be described again.

[0052] The bill processing device 200 can be a DPI gateway or a DPI server, etc.

[0053] The positioning database 300 can be used to receive and store the processed DPI bill sent by the bill processing device 200.

[0054] The positioning database device 300 can be a computer or a server, etc. with computing processing function.

[0055] The server can be a single server or a server cluster formed by multiple servers. In some embodiments, the server cluster can also be a distributed cluster. Optionally, the server can be implemented on a cloud platform, for example, the cloud platform can include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, or any combination thereof.

[0056] The positioning system 400 can be a background server of the software described above that needs user location information.

[0057] The positioning system 400 can be used to obtain the DPI call record of the user from the positioning database 300, and determine the location information of the user according to the access base station cell location in the DPI call record of the user. The specific process can be described in the following embodiments, which will not be described here.

[0058] The execution subject of the call record processing method provided in the embodiments of the present application is a call record processing device. As described above, the following will be introduced by taking the call record processing device 200 as an example of an electronic device.

[0059] Figure 2 The electronic device provided in the embodiments of the present application is shown in the composition diagram. As shown in the figure, the electronic device can include a processor 10, a memory 20, a communication line 30, a communication interface 40, and an input / output interface 50. Figure 2

[0060] The processor 10, the memory 20, the communication interface 40, and the input / output interface 50 can be connected through the communication line 30.

[0061] The processor 10 is configured to execute instructions stored in the memory 20 to implement the call record processing method provided in the embodiments of the present application. The processor 10 can be a CPU, a general-purpose processor, a network processor (NP), a digital signal processing (DSP), a microprocessor, a micro control unit (MCU) / single chip microcomputer / single-chip microcomputer, a programmable logic device (PLD), or any combination thereof. The processor 10 can also be any other device with processing function, such as a circuit, a device, or a software module, which is not limited in the embodiments of the present application. In an example, the processor 10 can include one or more CPUs, for example Figure 2 ​CPU0 and CPU1 in FIG. 1. As an optional implementation, the electronic device can include multiple processors, for example, in addition to the processor 10, the processor 60 Figure 2 in FIG. 1 is exemplified by a dashed line.

[0062] The memory 20 is configured to store instructions. For example, the instructions can be a computer program. Optionally, the memory 20 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions, or a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, a magneto-optical disk, a magnetic disk storage or other magnetic storage devices, etc. The embodiments of the present application do not limit the memory 20.

[0063] It should be noted that the memory 20 can exist independently of the processor 10, or can be integrated with the processor 10. The memory 20 can be located in the electronic device, or can be located outside the electronic device. The embodiments of the present application do not limit the memory 20.

[0064] The communication line 30 is configured to transmit information between components included in the electronic device.

[0065] The communication interface 40 is configured to communicate with other devices (for example, the data source device 100 described above) or other communication networks. The other communication networks can be an Ethernet, a radio access network (RAN), a wireless local area network (WLAN), etc. The communication interface 40 can be a module, a circuit, a transceiver, or any device capable of communication.

[0066] The input / output interface 50 is configured to realize human-computer interaction between the user and the electronic device. For example, to realize action interaction or information interaction between the user and the electronic device.

[0067] Exemplarily, the input / output interface 50 can be a mouse, a keyboard, a display screen, or a touch display screen, etc. Through the mouse, the keyboard, the display screen, or the touch display screen, etc., the action interaction or the information interaction between the user and the electronic device can be realized.

[0068] It should be noted that, Figure 2 The structure shown in the above embodiments does not constitute a limitation on the electronic device, except Figure 2 In addition to the components shown in the figure, the electronic device can include more or fewer components than those shown, or a combination of some components, or a different arrangement of components.

[0069] The following describes the call processing method provided by the embodiments of the present application.

[0070] Figure 3 The flowchart of the call processing method provided by the embodiments of the present application is shown in the figure. Figure 3 The method includes S101 to S105.

[0071] S101, the electronic device acquires the call state of the first user in the current collection period.

[0072] The call state includes a normal state or an abnormal state.

[0073] Optionally, the time T of the current collection period can be preset in the electronic device by the technician, for example, T can be set as the maximum delay time of the call allowed by the database of the DPI system, and the present application does not limit this.

[0074] Optionally, the electronic device can set the time length T in the timer, and after starting the timer, when the timer reaches the time length T, the call state of the period is acquired.

[0075] In one possible implementation, the electronic device can receive the call state of the current collection period set by the technician.

[0076] In another possible implementation, the electronic device can also determine the call state of the current collection period according to the reference speed between the DPI call generated by the adjacent two times. In this case, Figure 4 Another flowchart of the call processing method provided by the embodiments of the present application is shown in the figure. Figure 4 The above S101 can specifically include S1011 to S1014.

[0077] S1011, the electronic device acquires the current DPI call of the first user collected at present and the historical DPI call collected last time on the current DPI call.

[0078] Optionally, each international mobile subscriber identification number (IMSI) can uniquely identify a user in a mobile network, and the electronic device can obtain the DPI bill of the first user by using the IMSI of the first user. For example, the electronic device can obtain a plurality of DPI bills, and then select all the DPI bills of the first user from the plurality of DPI bills according to the IMSI of the first user. After obtaining all the DPI bills of the first user, the current DPI bill of the first user and the historical DPI bill collected last time are determined.

[0079] In S1012, the electronic device determines a current reference speed corresponding to the current DPI bill according to a bill generation time in the current DPI bill, a current bill point corresponding to the current DPI bill, a bill generation time in the historical DPI bill, and a historical bill point corresponding to the historical DPI bill.

[0080] Optionally, the current reference speed is determined by a quotient of a current reference distance and a current reference time length. The current reference distance is a distance between the current DPI bill point and the historical DPI bill point. The current reference time length is a time length of a difference between the bill generation time in the current DPI bill and the bill generation time in the historical DPI bill.

[0081] Optionally, the electronic device can calculate the current reference speed according to the following formula (1):

[0082]

[0083] Optionally, the current reference speed is determined by a quotient of a current reference distance and a current reference time length. The current reference distance is a distance between the current DPI bill point and the historical DPI bill point. The current reference time length is a time length of a difference between the bill generation time in the current DPI bill and the bill generation time in the historical DPI bill.

[0084] In S1013, if the current reference speed is greater than a speed threshold, the electronic device sets a bill state of the current collection period to an abnormal state.

[0085] Optionally, the speed threshold can be preset in the electronic device by a technician. For example, the speed threshold can be set to 400 kilometers per hour, which is the fastest speed of a high-speed rail. The present application does not limit this.

[0086] Optionally, if the bill state of the bill is the abnormal state, the electronic device can directly cache the current DPI bill and the DPI bills collected subsequently until the end of the current collection period.

[0087] Optionally, the current reference speed is determined by a quotient of a current reference distance and a current reference time length. The current reference distance is a distance between the current DPI bill point and the historical DPI bill point. The current reference time length is a time length of a difference between the bill generation time in the current DPI bill and the bill generation time in the historical DPI bill.

[0088] S1014, if the current reference speed is less than or equal to the speed threshold, the electronic device sets the state of the call record of the current collection period to the normal state.

[0089] Optionally, if the state of the call record is the normal state, the electronic device can directly send the set of DPI call records to the positioning database.

[0090] S102, if the state of the call record is the abnormal state, the electronic device acquires a set of deep packet inspection (DPI) call records of the first user in the current collection period.

[0091] The set of DPI call records includes one or more DPI call records, and the DPI call record refers to a data service identification result table, which records data generated by the user in the process of online, including user behavior data (such as the time when the call record is generated, the behavior duration), network quality data, terminal state data (such as the access base station cell of the terminal), and traffic detail data, etc. Each DPI call record in the set of DPI call records corresponds to a call record point, and the call record point is used to represent the location of the access base station cell in the corresponding DPI call record.

[0092] Optionally, as described above, if the state of the call record is the abnormal state, the electronic device can directly cache the current DPI call record and the DPI call record collected subsequently, and in this case, the electronic device can specifically acquire the set of DPI call records of the first user in the current collection period from the aforementioned cache.

[0093] S103, the electronic device determines a central call record point in the set of call record points according to the set of DPI call record points.

[0094] The set of call record points is composed of one or more call record points corresponding to the respective DPI call records.

[0095] In one possible implementation, the electronic device can select the call record point with the smallest sum of distances between the call record point and the remaining call record points as the central call record point. In this case, Figure 5 Another flowchart of the call record processing method provided by the embodiments of the present application is shown in FIG. 6. As shown in FIG. 6, the above S103 can specifically include S1031-S1032. Figure 5

[0096] S1031, the electronic device calculates the sum of distances between each call record point in the one or more call record points and the remaining call record points.

[0097] S1032, the electronic device selects the call record point with the smallest sum of distances as the central call record point.

[0098] ​In another possible implementation, the electronic device can first determine a geometric center of one or more of the DPI slip points in the set of DPI slips, and then select as the central slip point the slip point closest to the geometric center.

[0099] Optionally, taking a two-dimensional coordinate system as an example, the electronic device can first calculate the horizontal coordinate and the vertical coordinate of the geometric center, then calculate the distance between each slip point and the geometric center according to the horizontal coordinate and the vertical coordinate of the geometric center, and finally select as the central slip point the slip point with the smallest distance to the geometric center.

[0100] Optionally, the electronic device can calculate the horizontal coordinate of the geometric center according to the following formula (2):

[0101]

[0102] where x is the horizontal coordinate of the geometric center, A ix is the horizontal coordinate of the i th slip point.

[0103] Optionally, the electronic device can calculate the vertical coordinate of the geometric center according to the following formula (3):

[0104]

[0105] where y is the vertical coordinate of the geometric center, A iy is the vertical coordinate of the i th slip point.

[0106] Optionally, after determining the geometric center, the electronic device can calculate the distance between each slip point and the geometric center according to the following formula (4):

[0107]

[0108] where s i is the distance between the i th slip point and the geometric center.

[0109] Optionally, before determining the central slip point, the electronic device can also determine the set of DPI slip points according to the set of DPI slips. In this case, Figure 6 is another flowchart of a slip processing method provided by an embodiment of the present application. As Figure 6 shown, before S1031, the method can further include S201 to S203.

[0110] S201, the electronic device determines the respective access base station cell positions of one or more DPI slips in the set of DPI slips.

[0111] The access base station cell is a wireless area controlled by the base station accessed by the DPI slip.

[0112] S202, the electronic device determines, according to the location of the access base station cell corresponding to each of the one or more DPI call records, a call record point corresponding to each of the one or more DPI call records.

[0113] S203, the electronic device determines, according to the call record points corresponding to the one or more DPI call records, a set of DPI call record points.

[0114] S104, the electronic device determines, according to the time of generation of each of the one or more DPI call records, the call record point corresponding to each of the one or more DPI call records, the time of generation of the central call record in the central call record point corresponding to the DPI call record, and the central call record point, a first reference speed corresponding to each of the one or more DPI call records.

[0115] The first reference speed is determined by the quotient of the first reference distance and the first reference time length. The first reference distance is the distance between the call record point corresponding to each of the one or more DPI call records and the central call record point. The first reference time length is the time length of the difference between the time of generation of each of the one or more DPI call records and the time of generation of the central call record.

[0116] Optionally, the electronic device can calculate the first reference time length according to the following formula (5):

[0117] T i = |T ni -T0|i = 0, 1, 2, 3, … n Formula (5)

[0118] Wherein, T i is the first reference time length of the i-th DPI call record, T ni is the time of generation of the i-th DPI call record, and T0 is the time of generation of the central call record point.

[0119] Optionally, when the location of the call record point is latitude and longitude, the electronic device can calculate the first reference speed corresponding to the DPI call record according to the latitude and longitude corresponding to the DPI call record and the central call record point and the first reference time length, and according to the first reference time length and the first reference distance. In this case, Figure 7 is another flowchart of the call record processing method provided by the embodiments of the present application. As shown in Figure 7 S104 can specifically include S1041 to S1044.

[0120] S1041, the electronic device determines the difference in longitude and the difference in latitude between the call record point corresponding to each of the one or more DPI call records and the central call record point.

[0121] S1042, the electronic device determines the first reference distance according to a difference in longitude, a difference in latitude, and a preset conversion relationship between the respective call record points of the one or more DPI call records and the central call record point.

[0122] The conversion relationship can include: 1 degree = 111 kilometers, 1 minute = 1.85 kilometers, and 1 second = 31 meters.

[0123] Alternatively, the electronic device can obtain the difference in longitude and the difference in latitude between the respective call record points of the one or more DPI call records and the central call record point, multiply the degrees, minutes, and seconds corresponding to the difference in longitude and the difference in latitude by the lengths corresponding to the degrees, minutes, and seconds in the conversion relationship, respectively, to obtain distances corresponding to the difference in longitude and the difference in latitude, and use the Pythagorean theorem to calculate the first reference distance as the hypotenuse, using the distances corresponding to the difference in longitude and the difference in latitude as the two right-angle sides of the plane right triangle.

[0124] For example, taking the unit of distance as kilometers, 1 degree = 111 kilometers, 1 minute = 1.85 kilometers, and 1 second = 0.031 kilometers, the degrees, minutes, and seconds of the latitude of the i-th call record point are A i °B i ′C i ″, and the degrees, minutes, and seconds of the central call record point are A0°B0′C0″. The electronic device can calculate the distance in latitude between the i-th call record point and the central call record point according to the following formula (6):

[0125] D i = 111 * |A i °-A0°| + 1.85 * |B i ′-B0′| + 0.031 * |C i ″-C0″| Formula (6)

[0126] where D i is the distance in latitude between the i-th call record point and the central call record point.

[0127] The degrees, minutes, and seconds of the longitude of the i-th call record point are H i °E i ′F i ″, and the degrees, minutes, and seconds of the longitude of the central call record point are H0°E0′F0″. The electronic device can calculate the distance in longitude between the i-th call record point and the central call record point according to the following formula (7):

[0128] L i = 111 * |H i °-H0°| + 1.85 * |E i ′-E0′| + 0.031 * |F i ″-F0″| Formula (7)

[0129] where Li is the distance between the i th bill point and the center bill point in longitude.

[0130] The electronic device can calculate the first reference distance of the i th bill point according to the following formula (8) :

[0131]

[0132] wherein S i is the first reference distance between the i th bill point and the center bill point.

[0133] S1043, the electronic device determines the first reference time length according to the respective bill generation time of each of the one or more DPI bills and the center bill generation time of the center bill point corresponding to the DPI bill.

[0134] S1044, the electronic device determines the first reference speed according to the quotient of the first reference distance and the first reference time length.

[0135] Alternatively, the electronic device can calculate the first reference speed of the i th DPI bill according to the following formula (9) :

[0136]

[0137] wherein V i is the first reference speed of the i th DPI bill, T i is the first reference time length of the i th DPI bill.

[0138] S105, if there is an abnormal bill corresponding to the first reference speed greater than the speed threshold, the electronic device deletes the position of the access base station cell in the abnormal bill.

[0139] The bill processing method provided by the embodiments of the present application can obtain a set of DPI bills in an abnormal state, determine a center bill point in the set of DPI bill points, the center bill point can represent the center of the activity range of the first user in the current collection period, take the center bill point as a reference, calculate the first reference speed corresponding to the DPI bill according to the distance between the bill point corresponding to each DPI bill and the center bill point and the time length difference between the bill generation time of each DPI bill and the center bill generation time, if the first reference speed corresponding to a certain DPI bill is too large and exceeds the preset speed threshold, it indicates that the DPI bill is too far away from the center of the activity range and deviates from the reasonable activity range of the first user in the current collection period, so that the DPI bill can be confirmed as an abnormal bill, and the position of the access base station cell in the abnormal bill is deleted, thereby reducing the DPI bills with incorrect access base station cell positions.

[0140] Based on the understanding of the above embodiments, Figure 8This is another flowchart illustrating the call detail record (CDR) processing method provided in this application. Figure 8 As shown, the call detail record (CDR) processing method includes: streaming DPI CDRs according to IMSI, grouping DPI CDRs with the same IMSI into one category, determining whether the period in which the DPI CDR file is located is in an abnormal state. If the period is in an abnormal state, the DPI CDR is cached. If the period is not in an abnormal state, it is determined whether the speed corresponding to the DPI CDR file and the historical DPI CDR file exceeds a speed threshold. If it exceeds the speed threshold, the period is placed in an abnormal state. If it does not exceed the speed threshold, the DPI CDR is sent to the location database. The specific implementation can be referred to the above embodiment, and will not be repeated here.

[0141] Based on the understanding of the above embodiments, Figure 9 This is another flowchart illustrating the call detail record (CDR) processing method provided in this application. Figure 9 As shown, the call detail record (CDR) processing method includes: after the current collection period ends, determining whether the CDR status of the current collection period is abnormal; if the CDR status of the current collection period is abnormal, calculating the sum of the distances between each DPI CDR and the corresponding CDR points of other DPI CDRs within the current collection period; obtaining the center CDR point through the sum of the distances between each DPI CDR and the corresponding CDR points of other DPI CDRs; clearing the access base station cell location of DPI CDRs whose distance from the center CDR point exceeds the distance limit; and sending the CDR files of the current collection period to the location database. The specific implementation can be referred to the above embodiment, and will not be repeated here.

[0142] The foregoing primarily describes the solutions provided by the embodiments of this application from a methodological perspective. To achieve the aforementioned functions, it includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, in conjunction with the units and algorithm steps of the various examples described in the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0143] In an exemplary embodiment, this application also provides a call detail record (CDR) processing device, which can be applied to the aforementioned CDR processing device 200. Figure 10 This is a schematic diagram illustrating the composition of the call detail record (CDR) processing device provided in an embodiment of this application. Figure 10As shown, the apparatus can comprise an acquisition module 601 and a processing module 602. The acquisition module 601 is configured to acquire a call log state of a first user in a current collection period; the call log state comprises a normal state or an abnormal state.

[0144] The processing module 602 is configured to, if the call log state is the abnormal state, acquire a deep packet inspection (DPI) call log set of the first user in the current collection period; the DPI call log set comprises one or more DPI call logs, each of which corresponds to a call log point, the call log point being used to represent a location of an access base station cell in the corresponding DPI call log; determine a center call log point in the DPI call log point set according to the DPI call log point set; the call log point set is composed of the call log points corresponding to the one or more DPI call logs respectively; determine a first reference speed corresponding to each of the one or more DPI call logs according to a call generation time of each of the one or more DPI call logs, the call log point corresponding to each of the one or more DPI call logs, a center call generation time in the DPI call log corresponding to the center call log point, and the center call log point; the first reference speed is determined by a quotient of a first reference distance and a first reference time length; the first reference distance is a distance between the call log point corresponding to each of the one or more DPI call logs and the center call log point; the first reference time length is a time length of a difference between the call generation time of each of the one or more DPI call logs and the center call generation time; and delete the location of the access base station cell in the abnormal call log if there is an abnormal call log corresponding to the first reference speed greater than a speed threshold.

[0145] In some possible embodiments, the acquisition module 601 is specifically configured to acquire a current DPI call log of the first user collected currently and a historical DPI call log collected last time on the current DPI call log; and the processing module 602 is specifically configured to determine a current reference speed corresponding to the current DPI call log according to a call generation time in the current DPI call log, a current call log point corresponding to the current DPI call log, a call generation time in the historical DPI call log, and a historical call log point corresponding to the historical DPI call log; the current reference speed is determined by a quotient of a current reference distance and a current reference time length; the current reference distance is a distance between the current DPI call log point and the historical DPI call log point; the current reference time length is a time length of a difference between the call generation time in the current DPI call log and the call generation time in the historical DPI call log; and the call log state of the current collection period is set to the abnormal state if the current reference speed is greater than a speed threshold; or the call log state of the current collection period is set to the normal state if the current reference speed is less than or equal to the speed threshold.

[0146] In other possible embodiments, the processing module 602 is further configured to, if the call log state is the normal state, send the DPI call log set to a positioning database.

[0147] In some possible embodiments, the processing module 602 is specifically configured to calculate the sum of distances between each of the one or more bill points and the rest of the bill points; and select the bill point with the minimum sum of distances as the central bill point.

[0148] In some possible embodiments, the processing module 602 is further configured to determine the respective access base station cell locations of the one or more DPI bills according to the one or more DPI bills in the set of DPI bills; determine the respective bill points of the one or more DPI bills according to the respective access base station cell locations of the one or more DPI bills; and determine the set of DPI bill points according to the respective bill points of the one or more DPI bills.

[0149] In some possible embodiments, the processing module 602 is specifically configured to determine the difference in longitude and the difference in latitude between the respective bill points of the one or more DPI bills and the central bill point; determine the first reference distance according to the difference in longitude, the difference in latitude between the respective bill points of the one or more DPI bills and the central bill point, and a preset conversion relationship; determine the first reference time length according to the respective bill generation time of the one or more DPI bills and the central bill generation time of the central bill in the DPI bills corresponding to the central bill point; and determine the first reference speed according to the quotient of the first reference distance and the first reference time length.

[0150] In some possible embodiments, the conversion relationship includes: 1 degree = 111 kilometers, 1 minute = 1.85 kilometers, and 1 second = 31 meters.

[0151] In exemplary embodiments, the embodiments of the present application further provide a computer readable storage medium including software instructions, which, when executed on an electronic device, cause the electronic device to perform any of the methods provided in the above embodiments.

[0152] In the above embodiments, all or part of the embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments can be implemented in the form of a computer program product. The computer program product includes one or more computer-executable instructions. When the computer-executable instructions are loaded and executed on a computer, all or part of the processes or functions according to the embodiments of the present application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer-executable instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer-executable instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) mode. The computer-readable storage medium can be any available medium that can be accessed by a computer or include one or more data storage devices such as servers, data centers, etc. that can be integrated with the medium. The available medium can be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)), etc.

[0153] Although the present application is described herein in conjunction with various embodiments, it is understood that other variations of the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed application, from an inspection of the drawings, the disclosure, and the appended claims. The word "comprising" does not exclude other components or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. A single processor or other unit can fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to an advantage.

[0154] Although the present application is described herein in conjunction with various embodiments, it is understood that other variations of the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed application, from an inspection of the drawings, the disclosure, and the appended claims. The word "comprising" does not exclude other components or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. A single processor or other unit can fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to an advantage.

[0155] The above merely provides the specific implementation of the present application, but the protection scope of the present application is not limited to this. Any change or replacement within the technical scope disclosed by the present application should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method of processing a telephone bill, characterized by, The method comprises: acquiring a call status of a first user in a current collection period; the call status comprises a normal status or an abnormal status; if the call status is the abnormal status, acquiring a deep packet inspection (DPI) call set of the first user in the current collection period; the DPI call set comprises one or more DPI calls, each of which corresponds to a call point used to represent a location of a cell of an access base station in the corresponding DPI call; determining a central call point in the DPI call point set according to the DPI call point set; the call point set is composed of the call points corresponding to the one or more DPI calls respectively; determining a first reference speed corresponding to each of the one or more DPI calls according to a call generation time of each of the one or more DPI calls, the call point corresponding to each of the one or more DPI calls, a central call generation time in a central call corresponding to the central call point, and the central call point; the first reference speed is determined by a quotient of a first reference distance and a first reference time length; the first reference distance is a distance between the call point corresponding to each of the one or more DPI calls and the central call point; the first reference time length is a time length of a difference between the call generation time of each of the one or more DPI calls and the central call generation time; if there is an abnormal call corresponding to a first reference speed greater than a speed threshold, deleting a location of a cell of an access base station in the abnormal call; the acquiring of the call status of the first user in the current collection period comprises: acquiring a current DPI call of the first user collected currently and a historical DPI call of the first user collected last time; determining a current reference speed corresponding to the current DPI call according to a call generation time in the current DPI call, a current call point corresponding to the current DPI call, a call generation time in the historical DPI call, and a historical call point corresponding to the historical DPI call; the current reference speed is determined by a quotient of a current reference distance and a current reference time length; the current reference distance is a distance between the current DPI call point and the historical DPI call point; the current reference time length is a time length of a difference between the call generation time in the current DPI call and the call generation time in the historical DPI call; if the current reference speed is greater than the speed threshold, setting the call status of the current collection period to the abnormal status; if the current reference speed is less than or equal to the speed threshold, setting the call status of the current collection period to the normal status.

2. The method of claim 1, wherein, The method further comprises: if the call status is the normal status, sending the DPI call set to a positioning database.

3. The method of claim 1, wherein, The determining of the central call point in the DPI call point set according to the DPI call point set comprises: calculating a sum of distances between each of the one or more call points and the rest of the call points; selecting the call point with the smallest sum of distances as the central call point.

4. The method of claim 3, wherein, Before the calculating the sum of distances between each of the one or more bill points and the rest of the bill points, the method further comprises: determining, according to one or more of the DPI bills in the set of DPI bills, respective access base station cell locations corresponding to the one or more of the DPI bills; determining, according to the respective access base station cell locations corresponding to the one or more of the DPI bills, respective bill points corresponding to the one or more of the DPI bills; determining, according to the respective bill points corresponding to the one or more of the DPI bills, the set of DPI bill points.

5. The method of claim 4, wherein, The position of the bill point is longitude and latitude, and the determining, according to the respective bill in the one or more of the DPI bills, the respective bill point corresponding to the one or more of the DPI bills, the center bill generation time in the center bill corresponding to the DPI bill of the center bill point, and the center bill point, the first reference speed corresponding to the one or more of the DPI bills comprises: determining the difference between the longitude and the difference between the latitude between the respective bill point corresponding to the one or more of the DPI bills and the center bill point; determining the first reference distance according to the difference between the longitude and the difference between the latitude between the respective bill point corresponding to the one or more of the DPI bills and the center bill point, and the preset conversion relationship; determining the first reference time according to the respective bill generation time in the one or more of the DPI bills and the center bill generation time in the center bill corresponding to the DPI bill of the center bill point; determining the first reference speed according to the quotient of the first reference distance and the first reference time.

6. The method of claim 5, wherein, The conversion relationship comprises: 1 degree = 111 kilometers, 1 minute = 1.85 kilometers, and 1 second = 31 meters.

7. A call slip processing apparatus, characterized by comprising: The device comprises an acquisition module and a processing module. The acquisition module is configured to acquire a bill state of a first user in a current collection period; the bill state comprises a normal state or an abnormal state. The processing module is configured to: if the bill status is the abnormal status, acquire a deep packet inspection (DPI) bill set of the first user in the current collection period; the DPI bill set includes one or more DPI bills, and each DPI bill corresponds to a bill point, which is used to represent a location of an access base station cell in the corresponding DPI bill; determine a center bill point in the DPI bill point set according to the DPI bill point set; the DPI bill point set is composed of the bill points corresponding to the one or more DPI bills; determine a first reference speed corresponding to each of the one or more DPI bills according to a bill generation time of each of the one or more DPI bills, the bill point corresponding to each of the one or more DPI bills, a center bill generation time in a center bill corresponding to the center bill point, and the center bill point; the first reference speed is determined by a quotient of a first reference distance and a first reference time length; the first reference distance is a distance between the bill point corresponding to each of the one or more DPI bills and the center bill point; the first reference time length is a time length of a difference between the bill generation time of each of the one or more DPI bills and the center bill generation time; and if there is an abnormal bill corresponding to a first reference speed greater than a speed threshold, delete the location of the access base station cell in the abnormal bill. The processing module is specifically configured to: acquire a current DPI bill of a first user collected currently and a historical DPI bill of the first user collected last time on the current DPI bill; determine a current reference speed corresponding to the current DPI bill according to a bill generation time in the current DPI bill, a current bill point corresponding to the current DPI bill, a bill generation time in the historical DPI bill, and a historical bill point corresponding to the historical DPI bill; the current reference speed is determined by a quotient of a current reference distance and a current reference time length; the current reference distance is a distance between the current DPI bill point and the historical DPI bill point; the current reference time length is a time length of a difference between the bill generation time in the current DPI bill and the bill generation time in the historical DPI bill; if the current reference speed is greater than the speed threshold, set a bill status of the current collection period to the abnormal status; and if the current reference speed is less than or equal to the speed threshold, set the bill status of the current collection period to the normal status.

8. An electronic device, comprising: The electronic device includes a processor and a memory; The memory stores instructions executable by the processor; The processor is configured to execute the instructions, so that the electronic device implements the method in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer readable storage medium includes computer software instructions; When the computer software instructions run in the electronic device, the electronic device implements the method in any one of claims 1-6.

Citation Information

Patent Citations

  • User geographic position feature extraction method and system based on DPI data

    CN108520028A

  • DPI-based NB-IoT terminal fault positioning method and device

    CN111030876A