Abstract: The present disclosure discloses a system (108) and a method for processing call detail records (CDR) data in real time. The system (108) receives one or more CDR data corresponding to telecommunication exchanges between computing devices via a network (106). The one or more CDR data may be pre-processed and is converted to a data interchange format that is useable by a processing engine(s) (208) of the system (108). The system (108) may determine the thresholds for KPIs based on the pre-processed CDR. The system (108) analyses the one or more CDR data based on the KPIs and generates one or more recommendations for raising the KPIs for the one or more entities in the network (106). The system (108) may use an artificial intelligence engine for anomaly detection, forecasting, and improving customer experience while stabilizing the network (106) by triggering execution of auto-corrective instructions. FIGURE 3
FORM 2
THE PATENTS ACT, 1970 (39 of 1970) THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
(See section 10; rule 13)
TITLE OF THE INVENTION
SYSTEM AND METHOD FOR PROCESSING CALL DETAIL RECORDS IN REAL TIME
APPLICANT
JIO PLATFORMS LIMITED
of Office-101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad -
380006, Gujarat, India; Nationality : India
The following specification particularly describes
the invention and the manner in which
it is to be performed
RESERVATION OF RIGHTS
[0001] A portion of the disclosure of this patent document contains material, which is subject to intellectual property rights such as, but are not limited to, copyright, design, trademark, Integrated Circuit (IC) layout design, and/or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (hereinafter referred as owner). The owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all rights whatsoever. All rights to such intellectual property are fully reserved by the owner.
FIELD OF DISCLOSURE
[0002] The embodiments of the present disclosure generally relate to
communication networks. In particular, the present disclosure relates to a system and method for processing call detail records in real time.
BACKGROUND OF DISCLOSURE
[0003] The following description of related art is intended to provide
background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of prior art.
[0004] Call detail records (CDR) include start time, duration, end time, time
to connection, success of the call, failures of the call, parties to the call, location of parties, unique identifiers of devices of the parties, and other details associated with a call, text messages or any telecommunication exchanges between two or more entities over a network. CDRs are generated when the telecommunication exchange is ended, either successfully or otherwise.
[0005] In traditional systems, the CDRs are generated and stored in a
database, from which it may be retrieved for analysis, forecasting, or load management. However, storing and subsequently retrieving the CDR from database consumes a significant amount of time (typically taking greater than about 20 mins). Further, the volume, variety and velocity of CDR data further exacerbates the time complexities associated with recording, storing, accessing and processing of said data. The time complexities of existing solutions make them unviable for real time applications, such as load balancing, forecasting failures, and the like.
[0006] There is, therefore, a need in the art to provide a method and a system
that can overcome the shortcomings of the existing prior arts.
OBJECTS OF THE PRESENT DISCLOSURE
[0007] Some of the objects of the present disclosure, which at least one
embodiment herein satisfies are as listed herein below.
[0008] An object of the present disclosure is to provide a system and a
method for processing call detail records in real time.
[0009] Another object of the present disclosure is to provide a system and a
method that determines thresholds of key performance indicators (KPIs) of networks based on the call detail records in real time.
[0010] Another object of the present disclosure is to provide a system and a
method that forecasts demand requirements based on the call detail records.
[0011] Another object of the present disclosure is to provide a system and a
method that provides one or more recommendations for load balancing based on the call detail records.
[0012] Another object of the present disclosure is to provide a system and a
method that processes the call details and generates thresholds for KPIs based on contextual information.
SUMMARY OF THE PRESENT DISCLOSURE
[0013] The present disclosure discloses a system for processing call detail
records (CDR) in real time. The system comprises a processor and a processing engine coupled to the processor. The processing engine is configured to obtain CDR data from a network function such as a telephone exchange for being pre-processed. The CDR data is indicative of a data record that includes information about calls made through a telecommunication service such as a phone service. The processing engine is further configured to provide the pre-processed CDR data as an input to a machine learning (ML) model to dynamically obtain one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks. The one or more KPIs are indicative of performance of a network from the plurality of networks. The processing engine is further configured to compare the pre-processed data with the one or more thresholds for the one or more KPIs. Based on the comparison, the processing engine is configured to generate one or more recommendations.
[0014] In an embodiment, the one or more recommendations comprises
triggering execution of pre-defined instructions.
[0015] In an embodiment, to pre-process the CDR data, the processing
engine is configured to clean the CDR data. Further, the processing engine is to impute missing values in the CDR data and enrich the CDR data. The processing engine is further configured to convert the CDR data into a Data Interchange Format.
[0016] In an embodiment, the CDR data comprises a start time, duration, an
end time, a time to connection, success of a call, failure of the call, parties to the call, location of UEs, unique identifiers of UEs, and other details associated with the call, text messages or any telecommunication exchanges between two or more entities over a network.
[0017] In an embodiment, the processing engine is further configured to
process the analyzed CDR data to detect anomalies in health and performance of one or more network elements.
[0018] In an embodiment, the processing engine is further configured to
store the analyzed CDR data in a database.
[0019] In an embodiment, to dynamically obtain the thresholds, the
processing engine is configured to raise the threshold of the one or more KPIs associated with load balancing for a first base station, if the one or more CDR data indicates that a first base station in a first geographical region is receiving an increasing number of call requests compared to a second geographical region.
[0020] The present disclosure also discloses a method for processing call
detail records (CDR) in real time. The method comprises pre-processing CDR data received from a network function such as a telephone exchange. The CDR data is indicative of a data record that includes information about calls made through a telecommunication service such as a phone service. The method further includes providing the pre-processed CDR data as an input to a machine learning (ML) model to dynamically determine one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks. The one or more KPIs are indicative of performance of a network from the plurality of networks. The method also includes comparing the pre-processed data with the one or more thresholds for the one or more KPIs. Based on the comparison, generating one or more recommendations.
[0021] In an embodiment, generating the one or more recommendations
comprises triggering execution of pre-defined instructions.
[0022] In an embodiment, pre-processing the CDR data comprises cleaning
the CDR data. Further, the pre-processing the CDR data comprises imputing missing values in the CDR data and enriching the CDR data. The pre-processing the CDR data further comprises converting the CDR data into a Data Interchange Format.
[0023] In an embodiment, the method further comprises processing the
analyzed CDR data to detect anomalies in health and performance of one or more network elements.
[0024] In an embodiment, the method further comprises storing the
analyzed CDR data in a database.
[0025] The present disclosure discloses a user equipment (UE) for
processing call detail records (CDR) in real time. The UE comprises a processor configured to obtain CDR data, from a network function such as a telephone exchange, for being pre-processed. The CDR data is indicative of a data record that includes information about calls made through a telecommunication service such as a phone service. The processor is further configured to provide the pre-processed CDR data as an input to a machine learning (ML) model to dynamically obtain one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks. The one or more KPIs are indicative of performance of a network from the plurality of networks. In addition, the processor is configured to compare the pre-processed data with the one or more thresholds for the one or more KPIs. Based on the comparison, the processor is configured to generate one or more recommendations.
[0026] The present disclosure discloses a computer program product
comprising a non-transitory computer-readable medium comprising instructions that, when executed by one or more processors, cause the one or more processors to obtain CDR data from a network function such as a telephone exchange for being pre-processed. The CDR data is indicative of a data record that includes information about calls made through a telecommunication service such as a phone service. The instructions cause the one or more processors to provide the pre-processed CDR data as an input to a machine learning (ML) model to dynamically obtain one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks. The one or more KPIs are indicative of performance of a network from the plurality of networks. The instructions further cause the one or more processors to compare the pre-processed data with the one or more thresholds for the one or more KPIs. Based on the comparison, the instructions further cause the one or more processors to generate one or more recommendations.
BRIEF DESCRIPTION OF DRAWINGS
[0027] The accompanying drawings, which are incorporated herein, and
constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes the disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0028] FIG. 1 illustrates an exemplary architecture for processing call detail
records (CDR) in real time, in accordance with embodiments of the present disclosure.
[0029] FIG. 2 illustrates a block diagram of the proposed system, in
accordance with embodiments of the present disclosure.
[0030] FIG. 3 illustrates a block diagram for interaction between the
processing engine(s), in accordance with embodiments of the present disclosure.
[0031] FIG. 4 illustrates a sequence diagram for processing CDR records in
real time, in accordance with embodiments of the present disclosure.
[0032] FIG. 5 illustrates an exemplary computer system in which or with
which embodiments of the present disclosure may be implemented.
[0033] FIG. 6 illustrates an exemplary flowchart for processing call detail
records (CDR) in real time, in accordance with embodiments of the present disclosure.
[0034] The foregoing shall be more apparent from the following more
detailed description of the disclosure.
LIST OF REFERENCE NUMERALS
100 – Network Architecture
102-1, 102-2…102-N – Users
104-1, 104-2…104-N – User Equipments
106- Network
108 –System
110 –Entity
202 – Processor(s)
204 – Memory
206 –Interface(s)
208 – Processing Engine
210 - Database
212 – Data Normalization Engine
214 – Streaming Engine
216 – Artificial Intelligence (AI) Engine
218 – Other Units
300 – Block Diagram
400 – Sequence Diagram
510 – External Storage Device
520 – Bus
530 – Main Memory
540 – Read-Only Memory
550 – Mass Storage Device
560 – Communication Port
570 – Processor
DETAILED DESCRIPTION OF DISCLOSURE
[0035] In the following description, for the purposes of explanation, various
specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific
details. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not address all of the problems discussed above or might address only some of the problems discussed above. Some of the problems discussed above might not be 5 fully addressed by any of the features described herein. Example embodiments of the present disclosure are described below, as illustrated in various drawings in which like reference numerals refer to the same parts throughout the different drawings.
[0036] The ensuing description provides exemplary embodiments only, and
10 is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope 15 of the disclosure as set forth.
[0037] Specific details are given in the following description to provide a
thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other 20 components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.
[0038] Also, it is noted that individual embodiments may be described as a
25 process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process is terminated when its operations are completed but could have additional 30 steps not included in a figure. A process may correspond to a method, a function, a
9
procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination can correspond to a return of the function to the calling function or the main function.
[0039] The word “exemplary” and/or “demonstrative” is used herein to
5 mean serving as an example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed herein is not limited by such examples. In addition, any aspect or design described herein as “exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary structures and techniques 10 known to those of ordinary skill in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising” as an open transition word without precluding any additional or other elements.
15 [0040] Reference throughout this specification to “one embodiment” or “an
embodiment” or “an instance” or “one instance” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Thus, the appearances of the phrases “in one embodiment” or “in an embodiment” in various places throughout
20 this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0041] The terminology used herein is for the purpose of describing
particular embodiments only and is not intended to be limiting of the disclosure. As
25 used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one
30 or more other features, integers, steps, operations, elements, components, and/or
10
groups thereof. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items. It should be noted that the terms “mobile device”, “user equipment”, “user device”, “communication device”, “device” and similar terms are used interchangeably for the purpose of describing 5 the invention. These terms are not intended to limit the scope of the invention or imply any specific functionality or limitations on the described embodiments. The use of these terms is solely for convenience and clarity of description. The invention is not limited to any particular type of device or equipment, and it should be understood that other equivalent terms or variations thereof may be used 10 interchangeably without departing from the scope of the invention as defined herein.
[0042] As used herein, an “electronic device”, or “portable electronic
device”, or “user device” or “communication device” or “user equipment” or “device” refers to any electrical, electronic, electromechanical, and computing
15 device. The user device is capable of receiving and/or transmitting one or parameters, performing function/s, communicating with other user devices, and transmitting data to the other user devices. The user equipment may have a processor, a display, a memory, a battery, and an input-means such as a hard keypad and/or a soft keypad. The user equipment may be capable of operating on any radio
20 access technology including but not limited to IP-enabled communication, Zig Bee, Bluetooth, Bluetooth Low Energy, Near Field Communication, Z-Wave, Wi-Fi, Wi-Fi direct, etc. For instance, the user equipment may include, but not limited to, a mobile phone, smartphone, virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant,
25 tablet computer, mainframe computer, or any other device as may be obvious to a person skilled in the art for implementation of the features of the present disclosure.
[0043] Further, the user device may also comprise a “processor” or
“processing unit” includes processing unit, wherein processor refers to any logic
circuitry for processing instructions. The processor may be a general-purpose
30 processor, a special purpose processor, a conventional processor, a digital signal
11
processor, a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, 5 input/output processing, and/or any other functionality that enables the working of the system according to the present disclosure. More specifically, the processor is a hardware processor.
[0044] As portable electronic devices and wireless technologies continue to
improve and grow in popularity, the advancing wireless technologies for data
10 transfer are also expected to evolve and replace the older generations of technologies. In the field of wireless data communications, the dynamic advancement of various generations of cellular technology are also seen. The development, in this respect, has been incremental in the order of second generation (2G), third generation (3G), fourth generation (4G), and now fifth generation (5G),
15 and more such generations are expected to continue in the forthcoming time.
[0045] While considerable emphasis has been placed herein on the
components and component parts of the preferred embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the 20 disclosure. These and other changes in the preferred embodiment as well as other embodiments of the disclosure will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter is to be interpreted merely as illustrative of the disclosure and not as a limitation.
25 [0046] In an aspect, the present disclosure relates to a system and a method
for processing call detail records (CDR) data in real time. The system receives one or more CDR data corresponding to telecommunication exchanges between two or more computing devices via a network. The system processes the one or more CDR data. In an embodiment, the one or more CDR data may be pre-processed such that
30 said CDR data is converted to a data interchange format that is useable by one or
12
more engines of the system. The system may determine the thresholds or ranges for one or more KPIs based on the one or more pre-processed CDR. The system analyses the one or more CDR data based on the one or more KPIs and generates one or more recommendations for raising the KPIs for the one or more entities in 5 the network. The system may store the one or more analysed CDR data in a database. The system may use an Artificial Intelligence (AI) engine for anomaly detection, forecasting, and improving customer experience while stabilizing the network by triggering execution of predefined auto-corrective processor-executable instructions.
10 [0047] The various embodiments throughout the disclosure will be
explained in more detail with reference to FIGS. 1-5.
[0048] Referring to FIG. 1, the network architecture (100) may include one
or more computing devices or user equipments (104-1, 104-2…104-N) associated with one or more users (102-1, 102-2…102-N) in an environment. A person of
15 ordinary skill in the art will understand that one or more users (102-1, 102-2…102-N) may be individually referred to as the user (102) and collectively referred to as the users (102). Similarly, a person of ordinary skill in the art will understand that one or more user equipments (104-1, 104-2…104-N) may be individually referred to as the user equipment (104) and collectively referred to as the user equipment
20 (104). A person of ordinary skill in the art will appreciate that the terms “computing device(s)” and “user equipment” may be used interchangeably throughout the disclosure. Although three user equipments (104) are depicted in FIG. 1, however any number of the user equipments (104) may be included without departing from the scope of the ongoing description.
25 [0049] In an embodiment, the user equipment (104) may include smart
devices operating in a smart environment, for example, an Internet of Things (IoT) system. In such an embodiment, the user equipment (104) may include, but is not limited to, smart phones, smart watches, smart sensors (e.g., mechanical, thermal, electrical, magnetic, etc.), networked appliances, networked peripheral devices,
30 networked lighting system, communication devices, networked vehicle accessories,
13
networked vehicular devices, smart accessories, tablets, smart television (TV), computers, smart security system, smart home system, other devices for monitoring or interacting with or for the users (102) and/or entities, or any combination thereof. A person of ordinary skill in the art will appreciate that the user equipment (104) 5 may include, but is not limited to, intelligent, multi-sensing, network-connected devices, that can integrate seamlessly with each other and/or with a central server or a cloud-computing system or any other device that is network-connected.
[0050] In an embodiment, the user equipment (104) may include, but is not
limited to, a handheld wireless communication device (e.g., a mobile phone, a smart
10 phone, a phablet device, and so on), a wearable computer device(e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with
15 wireless communication capabilities, and the like. In an embodiment, the user equipment (104) may include, but is not limited to, any electrical, electronic, electro-mechanical, or an equipment, or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet
20 computer, mainframe computer, or any other computing device, wherein the user equipment (104) may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as a camera, an audio aid, a microphone, a keyboard, and input devices for receiving input from the user (102) or the entity such as touch pad, touch enabled screen, electronic pen, and the like.
25 A person of ordinary skill in the art will appreciate that the user equipment (104) may not be restricted to the mentioned devices and various other devices may be used.
[0051] Referring to FIG. 1, the user equipment (104) may communicate
with a system (108), for example, discloses a system for processing call detail
30 records (CDR) data in real time, through a network (106). In an embodiment, the
14
network (106) may include at least one of a Fifth Generation (5G) network, 6G network, or the like. The network (106) may enable the user equipment (104) to communicate with other devices in the network architecture (100) and/or with the system (108). The network (106) may include a wireless card or some other 5 transceiver connection to facilitate this communication. In another embodiment, the network (106) may be implemented as, or include any of a variety of different communication technologies such as a wide area network (WAN), a local area network (LAN), a wireless network, a mobile network, a Virtual Private Network (VPN), the Internet, the Public Switched Telephone Network (PSTN), or the like.
10 [0052] In accordance with embodiments of the present disclosure, the
system (108) may be designed and configured for processing CDRs in real time. In an embodiment, the system (108) may be configured to determine thresholds ranges associated with KPIs of performance of the network (106) in real-time. In an embodiment, the system (108) is configured to obtain CDR data from
15 telecommunication exchanges between two or more computing devices (104) via the network (106). In an example, the CDR data is indicative of a data record that includes information about calls made through a telecommunication service such as a phone service. The system (108) may provide the pre-processed CDR data as an input to a machine learning (ML) model to dynamically obtain thresholds for
20 one or more key performance indicators (KPIs) of a plurality of networks. The AI engine analyses the CDRs important attributes like call durations, caller/callee information, timestamp, location, call type (voice, video and messaging) etc. and the AI engine applies the advanced model which were trained using the key attribute of CDR like call duration, timestamp etc. on live CDR data to provide the thresholds
25 for the one or more KPIs. The one or more KPIs are indicative of any indicators of performance of a network from the plurality of networks. The system (108) may compare the pre-processed data with the thresholds for the one or more KPIs. Based on the comparison, the system (108) may generate one or more recommendations.
[0053] FIG. 2 illustrates a block diagram (200) of the proposed system
30 (108), in accordance with embodiments of the present disclosure.
15
[0054] In an aspect, the system (108) may include one or more processor(s)
(202). The one or more processor(s) (202) may be implemented as one or more microprocessors, microcomputers, microcontrollers, edge or fog microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any 5 devices that process data based on operational instructions. Among other capabilities, the one or more processor(s) (202) may be configured to fetch and execute computer-readable instructions stored in a memory (204) of the system (108). The memory (204) may be configured to store one or more computer-readable instructions or routines in a non-transitory computer readable storage 10 medium, which may be fetched and executed to create or share data packets over a network service. The memory (204) may comprise any non-transitory storage device including, for example, volatile memory such as Random Access Memory (RAM), or non-volatile memory such as Erasable Programmable Read-Only Memory (EPROM), flash memory, and the like.
15 [0055] Referring to FIG. 2, the system (108) may include an interface(s)
(206). The interface(s) (206) may include a variety of interfaces, for example, interfaces for data input and output devices, referred to as I/O devices, storage devices, and the like. The interface(s) (206) may facilitate communication to/from the system (108). The interface(s) (206) may also provide a communication
20 pathway for one or more components of the system (108). Examples of such components include, but are not limited to, processing unit/engine(s) (208) and a database (210).
[0056] In an embodiment, the processing unit/engine(s) (208) may be
implemented as a combination of hardware and programming (for example,
25 programmable instructions) to implement one or more functionalities of the processing engine(s) (208). In examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing engine(s) (208) may be processor-executable instructions stored on a non-transitory machine-readable storage
30 medium and the hardware for the processing engine(s) (208) may comprise a
16
processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s) (208). In such examples, the system (108) may include the 5 machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to the system (108) and the processing resource. In other examples, the processing engine(s) (208) may be implemented by electronic circuitry.
10 [0057] In an embodiment, the database (210) includes data that may be
either stored or generated as a result of functionalities implemented by any of the components of the processor (202) or the processing engines (208). In an embodiment, the database (210) may be separate from the system (108). In an embodiment, the database (210) may be indicative of including, but not limited to,
15 a relational database, a distributed database, a cloud-based database, or the like.
[0058] In an exemplary embodiment, the processing engine (208) may
include one or more engines selected from any of a data normalization engine (212), a streaming engine (214), an artificial intelligence (AI) engine (216), and other engines (218) having functions that may include, but are not limited to, testing, 20 storage, and peripheral functions, such as wireless communication unit for remote operation, audio unit for alerts and the like.
[0059] In an embodiment, the data normalization engine (212) may be
configured to receive the one or more CDR data. In an embodiment, the CDR data may include, but not be limited to, start time, duration, end time, time to connection,
25 success of the call, failures of the call, parties to the call, location of parties, unique identifiers of devices of the parties, and other details associated with a call, text messages or any telecommunication exchanges between two or more entities over a network. In an example, the CDR data is indicative of a data record that includes details of a telecommunication transactions associated with the UE. In an
30 embodiment, the one or more CDR data may be collected by the network (106)
17
when the one or more computing devices (104) engage in any telecommunication exchange. In an embodiment, telecommunication exchanges may include, but not be limited to, text messages, phone calls, multimedia messaging, and the like.
[0060] In an embodiment, the data normalization engine (212) pre-
5 processes the one or more CDR data. In an embodiment, the data normalization engine (212) may clean, impute missing values and enrich the CDR data for analysis. In an embodiment, on pre-processing, the CDR data may be converted into a data interchange format that may be usable by any of the processing engine(s) (208) associated with the system (108). In an embodiment, the data interchange 10 format may include, but not be limited to, JavaScript Object Notation (JSON), Comma Separated Values (CSV) formats, eXtensible Markup Language (XML) or any combination thereof. In an embodiment, the data normalization engine (212) may transmit the pre-processed CDR data to the streaming engine (214).
[0061] In an embodiment, the streaming engine (214) may receive and
15 redirect the pre-processed CDR data to the AI engine (216). In an embodiment, the AI engine (216) may be indicative of a pretrained machine learning model, expert system, or the like, but not limited to the same, that uses the one or more pre-processed CDR data as input features and returns thresholds for one or more KPIs. The AI engine analyses the CDRs important attributes like call durations,
20 caller/callee information, timestamp, location, call type (voice, video and messaging) etc. and the AI engine applies the advanced model which were trained using the key attribute of CDR like call duration, timestamp etc. on live CDR data to provide the thresholds for the one or more KPIs. For example, the pre-processed CDR data may be provided as an input to a machine learning (ML) model to
25 dynamically obtain thresholds for one or more key performance indicators (KPIs) of a plurality of networks. In an embodiment, the one or more KPIs may be indicative any indicators of performance of the network. In an example, the KPI may be indicative of call success ratio, which indicates the number of calls being handled by a base station of a cellular network. In such examples, if the one or more
30 CDR data indicates that a first base station in a first geographical region is receiving
18
an increasing number of call requests compared to a second geographical region, the AI engine (216) may raise the threshold of the KPI associated with load balancing for the first base station such that the performance of the first base station is lowered. For example, if the number of call requests on the first base station 5 increases beyond a threshold value, then the number of the resources for handling the call decreases, thereby lowers the performance of the first base station. In such examples, the streaming engine (214) may transmit the CDR data to a load balancer such that call traffic is appropriately diverted.
[0062] In an embodiment, the AI engine (216) is further configured to
10 transmit the one or more KPIs to the streaming engine (214). In an embodiment, the streaming engine (214) analyse the pre-processed CDR data based on the one or more KPIs received from the AI engine (216). In an embodiment, the streaming engine (214) may generate one or more recommendations based on the analysis and transmit said one or more recommendations to other engines (218) of the system
15 (108). In an embodiment, the one or more recommendations may include triggering execution of predefined auto-corrective processor-executable instructions. The predefined auto-corrective processor-executable instructions are the instructions which automatically remove the anomaly in the CDRs. For example, the anomaly may be related to call durations, caller/callee information, timestamp, location, call
20 type (voice, video and messaging) which is automatically corrected based on the predefined instructions. In an embodiment, the other engines (218) may include the load balancer. In an embodiment, the streaming engine (214) may also transmit the CDR data to the data normalization engine (212) for further processing and enrichment. In an embodiment, the data normalization engine (212) may process
25 the analyzed CDR data for detecting anomalies in health and performance of one or more network elements. Additionally, the streaming engine (214) may also be communicatively coupled to the database (210) for storing the pre-processed CDR data and the thresholds determined for the one or more KPIs.
[0063] FIG. 3 illustrates a block diagram (300) for interaction between the
30 processing engine(s) (208), in accordance with embodiments of the present
19
disclosure. As shown, the data normalization engine (212) may be configured to receive and preprocess the CDR data and transmit said pre-processed data to the streaming engine (214). In an embodiment, the streaming engine (214) may be configured to transmit the pre-processed CDR data to the AI engine (216). In an 5 embodiment, the AI engine (216) may use the CDR data as parameters to dynamically determine thresholds for the one or more KPIs. The AI engine analyses the CDRs important attributes like call durations, caller/callee information, timestamp, location, call type (voice, video and messaging) etc. and the AI engine applies the advanced model which were trained using the key attribute of CDR like
10 call duration, timestamp etc. on live CDR data to provide the thresholds for the one or more KPIs. The streaming engine (214) may analyze the one or more CDR data with the thresholds determined for each of the one or more KPIs, as determined by the AI engine (216). In an embodiment, the streaming engine (214) may be configured to transmit the analyzed CDR to a user interface associated with the one
15 or more computing devices (104). Further, the CDR data may also be transmitted to the data normalization engine (212) for further processing and enrichment. Additionally, the streaming engine (214) may also be communicatively coupled to the database (210) for storing the pre-processed CDR data and the thresholds determined for the one or more KPIs.
20 [0064] FIG. 4 illustrates a sequence diagram (400) for processing CDR
records in real time, in accordance with embodiments of the present disclosure.
[0065] In aspects, the processor (202) performs preprocessing of the one or
more CDR data in normalization layer (404). Further, in step (422) the pre-processed CDR data is sent to the streaming engine (406). In step (424), the data
25 is sent to the AI/ML layer (408) for finding the anomaly. AI/ML models are applied on the data to analyze and identify trends. In step (426), the analyzed data is received at the streaming engine (406). In step (428), the CDR analyzed data is sent to a load balancer (410). In step (430), the analyzed CDR is sent to a user interface (412) and displayed at the user interface (412). In step (432), the analyzed
30 CDR data is received in real time at the normalization layer (404). At the
20
normalization layer (404), the analysed trend data is received. In step (434), the analyzed CDR data is stored database for further use.
[0066] FIG. 5 illustrates an exemplary computer system (500) in which or
with which embodiments of the present disclosure may be implemented.
[0067] As shown in FIG. 5, the computer system (500) may include an
external storage device (510), a bus (520), a main memory (530), a read only memory (540), a mass storage device (550), a communication port (560), and a processor (570). A person skilled in the art will appreciate that the computer system (500) may include more than one processor (570) and communication ports (560). Processor (570) may include various modules associated with embodiments of the present disclosure.
[0068] In an embodiment, the communication port (560) may be any of an
RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port (560) may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system (500) connects.
[0069] In an embodiment, the memory (530) may be Random Access
Memory (RAM), or any other dynamic storage device commonly known in the art. Read-only memory (540) may be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or Basic Input/Output System (BIOS) instructions for the processor (570).
[0070] In an embodiment, the mass storage (550) may be any current or
future mass storage solution, which may be used to store information and/or instructions. Exemplary mass storage solutions include, but are not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces), one or more optical
discs, Redundant Array of Independent Disks (RAID) storage, e.g., an array of disks (e.g., SATA arrays).
[0071] In an embodiment, the bus (520) communicatively couples the
processor(s) (570) with the other memory, storage and communication blocks. The bus (520) may be, e.g., a Peripheral Component Interconnect (PCI)/PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), Universal Serial Bus (USB) or the like, for connecting expansion cards, drives and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor (570) to the computer system (500).
[0072] Optionally, operator and administrative interfaces, e.g., a display,
keyboard, joystick, and a cursor control device, may also be coupled to the bus (520) to support direct operator interaction with the computer system (500). Other operator and administrative interfaces may be provided through network connections connected through the communication port (560). Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system (500) limit the scope of the present disclosure.
[0073] FIG. 6 illustrates an exemplary method (600) for processing call
detail records (CDR) in real time, in accordance with embodiments of the present disclosure. The method (600) includes at step (602), pre-processing CDR data received from a network function such as a telephone exchange. The CDR data is indicative of a data record that includes information about calls made through a telecommunication service such as a phone service. In an example, the processing engine (208) may pre-process the CDR data. Further, the method (600) includes at step (604), providing the pre-processed CDR data as an input to a machine learning (ML) model to dynamically determine one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks. The one or more KPIs are indicative of performance of a network from the plurality of networks. In an example, the processing engine (208) may provide the pre-processed CDR data as the input to the ML model.
[0074] In addition, the method (600) includes at step (606) comparing the
pre-processed data with the one or more thresholds for the one or more KPIs. In an example, the processing engine (208) may compare the pre-processed data with the one or more thresholds. The method (600) also includes at step (608) generating one or more recommendations based on the comparison. In an example, the processing engine (208) may generate the one or more recommendations.
[0075] While considerable emphasis has been placed herein on the preferred
embodiments, it will be appreciated that many embodiments can be made and that many changes can be made in the preferred embodiments without departing from the principles of the disclosure. These and other changes in the preferred embodiments of the disclosure will be apparent to those skilled in the art from the disclosure herein, whereby it is to be distinctly understood that the foregoing descriptive matter to be implemented merely as illustrative of the disclosure and not as limitation.
ADVANTAGES OF THE PRESENT DISCLOSURE
[0076] The present disclosure provides a system and a method for
processing call detail records in real time.
[0077] The present disclosure provides a system and a method that
determines thresholds of key performance indicators (KPIs) of networks based on the call detail records in real time.
[0078] The present disclosure provides a system and a method that forecasts
demand requirements based on the call detail records.
[0079] The present disclosure provides a system and a method that provides
one or more recommendations for load balancing based on the call detail records.
[0080] The present disclosure provides a system and a method that
processes the call details and generates thresholds for KPIs based on contextual information.
We claim:
1. A system (108) for processing call detail records (CDR) in real time, the system
comprising:
a processor (202); and
a processing engine (208), coupled to the processor (202), to:
obtain CDR data, from a network function, for being pre-processed, wherein the CDR data is indicative of a data record that includes information about calls made through a telecommunication service;
provide the pre-processed CDR data as an input to a machine learning (ML) model to dynamically obtain one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks, wherein the one or more KPIs are indicative of performance of a network from the plurality of networks;
compare the pre-processed data with the one or more thresholds for the one or more KPIs; and
based on the comparison, generate one or more recommendations.
2. The system (108) as claimed in claim 1, wherein the one or more
recommendations comprises triggering execution of pre-defined instructions.
3. The system (108) as claimed in claim 1, wherein to pre-process the CDR data,
the processing engine (208) is configured to:
clean the CDR data;
impute missing values in the CDR data;
enrich the CDR data; and
convert the CDR data into a Data Interchange Format.
4. The system (108) as claimed in claim 1, wherein the CDR data comprises a start
time, duration, an end time, a time to connection, success of a call, failure of the
call, parties to the call, location of UEs (104), unique identifiers of UEs (104), and other details associated with the call, text messages or any telecommunication exchanges between two or more entities over a network (106).
5. The system (108) as claimed in claim 1, wherein the processing engine (208) is
further configured to:
process the analyzed CDR data to detect anomalies in health and performance of one or more network elements.
6. The system (108) as claimed in any of the preceding claims, wherein the
processing engine (208) is further configured to:
store the analyzed CDR data in a database (210).
7. The system (108) as claimed in claim 1, wherein to dynamically obtain the
thresholds, the processing engine (208) is configured to:
raise the threshold of the one or more KPIs associated with load balancing for the first base station, if the one or more CDR data indicates that a first base station in a first geographical region is receiving an increasing number of call requests compared to a second geographical region.
8. A method (600) for processing call detail records (CDR) in real time, the method
(600) comprising:
pre-processing, by a processing engine (208), CDR data received from a network function, wherein the CDR data is indicative of a data record that includes information about calls made through a telecommunication service;
providing, by the processing engine (208), the pre-processed CDR data as an input to a machine learning (ML) model to dynamically determine one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks, wherein the one or more KPIs are indicative of performance of a network from the plurality of networks;
comparing, by the processing engine (208), the pre-processed data with the one or more thresholds for the one or more KPIs; and
based on the comparison, generating, by the processing engine (208), one or more recommendations.
9. The method as claimed in claim 8, wherein generating the one or more
recommendations comprises:
triggering, by the processing engine (208), execution of pre-defined instructions.
10. The method as claimed in claim 8, wherein pre-processing the CDR data
comprises:
cleaning, by the processing engine (208), the CDR data; imputing, by the processing engine (208), missing values in the CDR data; enriching, by the processing engine (208), the CDR data; and converting, by the processing engine (208), the CDR data into Data Interchange Format.
11. The method as claimed in any of the preceding claims, the method further
comprising:
processing, by the processing engine (208), the analyzed CDR data to detect anomalies in health and performance of one or more network elements; and
storing, by the processing engine (208), the analyzed CDR data in a database (210).
12. A user equipment (UE) (102) for processing call detail records (CDR) in real
time, the UE (102) comprising:
a processor configured to:
obtain CDR data, from a network function, for being pre-processed, wherein the CDR data is indicative of a data record that includes information about calls made through a telecommunication service;
provide the pre-processed CDR data as an input to a machine learning (ML) model to dynamically obtain one or more thresholds for one or more key performance indicators (KPIs) of a plurality of networks, wherein the one
or more KPIs are indicative of performance of a network from the plurality of networks;
compare the pre-processed data with the one or more thresholds for the one or more KPIs; and
based on the comparison, generate one or more recommendations.
| # | Name | Date |
|---|---|---|
| 1 | 202321047357-STATEMENT OF UNDERTAKING (FORM 3) [13-07-2023(online)].pdf | 2023-07-13 |
| 2 | 202321047357-PROVISIONAL SPECIFICATION [13-07-2023(online)].pdf | 2023-07-13 |
| 3 | 202321047357-FORM 1 [13-07-2023(online)].pdf | 2023-07-13 |
| 4 | 202321047357-DRAWINGS [13-07-2023(online)].pdf | 2023-07-13 |
| 5 | 202321047357-DECLARATION OF INVENTORSHIP (FORM 5) [13-07-2023(online)].pdf | 2023-07-13 |
| 6 | 202321047357-FORM-26 [13-09-2023(online)].pdf | 2023-09-13 |
| 7 | 202321047357-POA [29-05-2024(online)].pdf | 2024-05-29 |
| 8 | 202321047357-FORM 13 [29-05-2024(online)].pdf | 2024-05-29 |
| 9 | 202321047357-AMENDED DOCUMENTS [29-05-2024(online)].pdf | 2024-05-29 |
| 10 | 202321047357-Request Letter-Correspondence [03-06-2024(online)].pdf | 2024-06-03 |
| 11 | 202321047357-Power of Attorney [03-06-2024(online)].pdf | 2024-06-03 |
| 12 | 202321047357-Covering Letter [03-06-2024(online)].pdf | 2024-06-03 |
| 13 | 202321047357-ENDORSEMENT BY INVENTORS [28-06-2024(online)].pdf | 2024-06-28 |
| 14 | 202321047357-DRAWING [28-06-2024(online)].pdf | 2024-06-28 |
| 15 | 202321047357-CORRESPONDENCE-OTHERS [28-06-2024(online)].pdf | 2024-06-28 |
| 16 | 202321047357-COMPLETE SPECIFICATION [28-06-2024(online)].pdf | 2024-06-28 |
| 17 | 202321047357-ORIGINAL UR 6(1A) FORM 26-270624.pdf | 2024-07-01 |
| 18 | 202321047357-CORRESPONDENCE(IPO)-(WIPO DAS)-12-07-2024.pdf | 2024-07-12 |
| 19 | 202321047357-FORM 18 [26-09-2024(online)].pdf | 2024-09-26 |
| 20 | Abstract.jpg | 2024-10-14 |
| 21 | 202321047357-FORM 3 [04-11-2024(online)].pdf | 2024-11-04 |