Method and apparatus for preventing user from going offline, electronic device and storage medium

By initiating a proxy response process to handle data requests during online billing system updates and performing version updates after message queue processing is complete, the issue of users going offline during online billing system upgrades is resolved, achieving seamless switching, improving system stability and user experience, and reducing revenue loss.

CN119011313BActive Publication Date: 2026-02-24ZUNYI BRANCH OF CHINA MOBILE GRP GUIZHOU COMPANY +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411233485.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-04
Publication Date
2026-02-24
Estimated Expiration
2044-09-04

AI Technical Summary

Technical Problem

When existing online billing systems are upgraded or maintained, all users will be switched to offline status, resulting in a decline in network performance indicators, a decrease in online rate, and revenue loss. Furthermore, the lack of a sound traffic diversion mechanism makes system upgrades highly risky.

Method used

When the online billing system is updated, a proxy response process is initiated to handle data requests. After the message queue is processed, the service process is stopped to perform the version update. A seamless switch to the updated online billing process is achieved through the DCC aggregation proxy.

Benefits of technology

It enables seamless switching of the online billing process, ensuring uninterrupted user service, improving system stability and reliability, reducing resource consumption and processing time, and avoiding traffic loss and revenue loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119011313B_ABST
    Figure CN119011313B_ABST
Patent Text Reader

Abstract

The present disclosure provides a method and device for preventing a user from going offline, an electronic device and a storage medium. Compared with the related art, the embodiments of the present disclosure can avoid the situation that all users go offline when the online charging process is updated by starting a proxy answering process and forwarding the data request to the process for answering processing. The user can maintain the online state and will not be affected by the update of the online charging process, thereby improving the user experience. When the data request processing in the message queue of the online charging process is completed, the service process is stopped for version update, and the updated online charging process is started. Finally, the data request is forwarded to the updated process. In this way, seamless switching of the online charging process can be realized, the service of the user can be ensured not to be interrupted, and the stability and reliability of the system can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of communication technology, and in particular to a method, apparatus, electronic device, and storage medium for preventing users from going offline. Background Technology

[0002] With the continuous development of the telecommunications industry, online billing systems play a crucial role in the business operations of telecommunications operators. However, existing online billing implementation solutions in the industry have many shortcomings.

[0003] Currently, the online billing deployment solution involves stopping the online billing process before deployment, causing all users to go offline. The online billing process is then restarted after the online billing system's database is updated, and users gradually migrate to the online billing system. However, this solution lacks a robust traffic offloading mechanism. This means that the online billing system needs to be restarted for routine software updates, tariff adjustments, and in-memory database startups and shutdowns. As a result, all online users are switched offline. If the network element does not have a kickback mechanism enabled, users will only become online again when in airplane mode or after a power cycle, severely impacting network performance indicators and uptime. Furthermore, since online and offline network elements are different network devices, the generated online and offline traffic call details are not synchronized during the online billing system's startup and shutdown process, leading to revenue losses for telecom operators. Taking a certain province as an example, each time a number is switched to offline mode, approximately 4.9MB of data is lost. The province has 10 million online 4G users, and each time the online system is started and stopped, it can result in a loss of up to 47TB of data. Based on the average unit price of mobile data services in the province of 0.004 yuan / MB, each start and stop of the online billing system will result in a loss of approximately 196,000 yuan in revenue, and the online billing system needs to be started and stopped about twice a month.

[0004] Furthermore, the existing solution lacks a robust traffic offloading mechanism, meaning that any failure during deployment could affect all online users and the online billing process, resulting in a high deployment risk. Additionally, the existing online billing system only supports the normal online billing process (pre-processing + billing). During system upgrades, both pre-processing and billing must be started and stopped simultaneously; subsequent message continuation cannot be achieved through a separate pre-processing response procedure. Summary of the Invention

[0005] This disclosure provides a method, apparatus, electronic device, and storage medium for preventing users from going offline. Its main purpose is to address the problem of online users going offline during online billing system upgrades.

[0006] According to a first aspect of this disclosure, a method for preventing a user from going offline is provided, comprising:

[0007] In response to the online billing process update instruction from the online billing system, the proxy response process is initiated, and the data request sent by the packet data gateway is forwarded to the proxy response process for response processing;

[0008] After the data request in the message queue of the online billing process is processed, the service process of the online billing process is stopped, the online billing process is updated, and the updated online billing process is started.

[0009] The data request sent by the packet data gateway is forwarded to the updated online billing process.

[0010] Optionally, the method further includes:

[0011] The proxy response call detail record (CDR) processing procedure is invoked, and the proxy response file generated by the proxy response process is used for billing processing.

[0012] Optionally, the step of invoking the proxy answering call detail record (CDR) processing procedure to perform billing processing on the proxy answering file generated by the proxy answering procedure includes:

[0013] Perform business analysis on the substitute response file;

[0014] Based on the business analysis results, the proxy response file is processed for pricing to obtain the billing information corresponding to the proxy response file.

[0015] Optionally, the step of responding to the online billing process update instruction from the online billing system, initiating a proxy response process, and forwarding the data request sent by the packet data gateway to the proxy response process for response processing includes:

[0016] Register the proxy response node of the proxy response process to the coordination and management service of the online billing system;

[0017] Monitor and obtain the first registration information generated when the proxy response node registers with the coordination management service;

[0018] After obtaining the first registration information, the data request is forwarded to the proxy response node for response processing, and a proxy response file is generated.

[0019] Optionally, monitoring and obtaining the first registration information generated by the proxy response node registering with the coordination management service includes:

[0020] Based on dynamic call control routing, the system receives the first registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the first registration information generated by the proxy answering node registration at preset time intervals.

[0021] Optionally, after updating the online billing process and starting the updated online billing process, the method further includes:

[0022] Register the upstream nodes in the updated online billing process to the coordination and management service;

[0023] Based on dynamic call control routing, the system monitors the registration information of the front-end node to the second registration information generated by the coordination and management service.

[0024] Optionally, forwarding the data request sent by the packet data gateway to the updated online billing process includes:

[0025] Based on the dynamic call control routing, the system receives the second registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the second registration information generated by the proxy answering node registration at preset time intervals.

[0026] After obtaining the second registration information, the data request is forwarded to the updated online billing process, and the proxy response process is stopped.

[0027] According to a second aspect of this disclosure, an apparatus for preventing a user from going offline is provided, comprising:

[0028] The proxy response unit is used to respond to the online billing process update instruction of the online billing system, start the proxy response process, and forward the data request sent by the packet data gateway to the proxy response process for response processing;

[0029] The update unit is used to stop the service process of the online billing process, update the version of the online billing process, and start the updated online billing process after the data request in the message queue of the online billing process is processed.

[0030] The forwarding unit is used to forward the data request sent by the packet data gateway to the updated online billing process.

[0031] Optionally, the device further includes:

[0032] The billing unit is used to invoke the proxy response call detail record processing flow and perform billing processing on the proxy response file generated by the proxy response flow response processing.

[0033] Optionally, the billing unit includes:

[0034] The analysis module is used to perform business analysis on the proxy response file;

[0035] The pricing module is used to process the pricing of the proxy response file based on the business analysis results, and obtain the billing information corresponding to the proxy response file.

[0036] Optionally, the substitute response unit includes:

[0037] The registration module is used to register the proxy response nodes of the proxy response process to the coordination and management service of the online billing system.

[0038] The first acquisition module is used to monitor and acquire the first registration information generated by the proxy response node when it registers with the coordination management service;

[0039] The response module is used to forward the data request to the proxy response node for response processing after obtaining the first registration information, and generate a proxy response file.

[0040] Optionally, the first acquisition module is further configured to:

[0041] Based on dynamic call control routing, the system receives the first registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the first registration information generated by the proxy answering node registration at preset time intervals.

[0042] Optionally, the device further includes:

[0043] The registration unit is used to register the upstream nodes in the updated online billing process to the coordination and management service after updating the version of the online billing process and starting the updated online billing process.

[0044] The monitoring unit is used to monitor the second registration information generated by the coordination and management service for the front-end node based on dynamic call control routing.

[0045] Optionally, the forwarding unit includes:

[0046] The second acquisition module is used to receive the second registration information generated by the proxy answering node registration in the coordination management service based on the dynamic call control routing, and to scan and acquire the second registration information generated by the proxy answering node registration at a preset time interval.

[0047] The forwarding module is used to forward the data request to the updated online billing process after obtaining the second registration information, and to stop the proxy response process.

[0048] According to a third aspect of this disclosure, an electronic device is provided, comprising:

[0049] At least one processor; and

[0050] A memory communicatively connected to the at least one processor; wherein,

[0051] The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method described in the first aspect above.

[0052] According to a fourth aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are configured to cause the computer to perform the method described in the first aspect above.

[0053] According to a fifth aspect of this disclosure, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the method described in the first aspect above.

[0054] This disclosure provides a method, apparatus, electronic device, and storage medium for preventing users from going offline. In response to an online billing process update command from an online billing system, a proxy response process is initiated, and data requests sent by a packet data gateway are forwarded to the proxy response process for response processing. After the data requests in the message queue of the online billing process are processed, the service process of the online billing process is stopped, the online billing process is updated, and the updated online billing process is started. The data requests sent by the packet data gateway are forwarded to the updated online billing process. Compared with related technologies, this disclosure, by initiating a proxy response process and forwarding data requests to it for response processing, avoids the situation where all users go offline during online billing process updates. Users can remain online and will not be affected by the online billing process update, thereby improving the user experience. After the data requests in the message queue of the online billing process are processed, the service process is stopped for version update, the updated online billing process is started, and finally, the data requests are forwarded to the updated process. This enables seamless switching of the online billing process, ensuring uninterrupted service for users and improving system stability and reliability; it avoids subsequent reconnection operations caused by users going offline, reducing system resource consumption and processing time, and improving overall system efficiency; and it avoids traffic and revenue losses due to user offline, protecting the operator's profits.

[0055] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description

[0056] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0057] Figure 1 A flowchart illustrating a method for preventing users from going offline, provided in an embodiment of this disclosure;

[0058] Figure 2 A flowchart illustrating another method for preventing users from going offline, provided in an embodiment of this disclosure;

[0059] Figure 3 This is a schematic diagram illustrating the process of a proxy response node registering with ZooKeeper, as provided in an embodiment of this disclosure.

[0060] Figure 4 A schematic diagram of a device for preventing users from going offline, provided in an embodiment of this disclosure;

[0061] Figure 5 A schematic diagram of another device for preventing users from going offline, provided in an embodiment of this disclosure;

[0062] Figure 6 A schematic block diagram of an example electronic device provided for embodiments of this disclosure. Detailed Implementation

[0063] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0064] The following description, with reference to the accompanying drawings, describes methods, apparatus, electronic devices, and storage media for preventing users from going offline according to embodiments of the present disclosure.

[0065] Figure 1 This is a flowchart illustrating a method for preventing users from going offline, as provided in an embodiment of this disclosure.

[0066] like Figure 1 As shown, the method includes the following steps:

[0067] Step 101: In response to the online billing process update instruction from the online billing system, initiate the proxy response process and forward the data request sent by the packet data gateway to the proxy response process for response processing.

[0068] In embodiments of this disclosure, in response to an online billing process update instruction received by the online billing system, the system first triggers a series of automated operations to ensure the continuity and stability of user services during the update process. Specifically, when it is necessary to update the online billing system's process, the system first initiates a pre-designed proxy response process. This process is initiated quickly and seamlessly, designed to take over the workload of the online billing process during the update, avoiding user service interruptions.

[0069] After the proxy response process is initiated, the DCC (Diameter Credit-Control) aggregation agent within the system will play a crucial role. Through its newly added DCC dynamic routing function, it will automatically forward data requests that should have been sent to the online billing process (these requests originate from the packet data gateway P-GW) to the newly initiated proxy response process for processing in real time. This forwarding process is transparent to the packet data gateway device, and neither the user nor the device needs to be aware of the switch in the background billing process, ensuring the continuity and stability of the user experience.

[0070] Upon receiving these forwarded data requests, the proxy response process will quickly process the response. This process includes, but is not limited to, decoding the request, session management (ensuring that consecutive requests from the same user can be handled), allocating temporary quotas, and encoding and generating a response message to be returned to the packet data gateway.

[0071] In this way, even if the online billing system is undergoing process updates, users' network services will not be affected, effectively avoiding the decline in network performance indicators, reduced online rates, and traffic loss caused by billing interface specification defects due to the complete conversion of online users to offline. Furthermore, the introduction of the proxy response process reduces the risk of system upgrades, because even if problems occur during the upgrade process, the proxy response process can ensure the continuity of user services until the online billing process returns to normal.

[0072] Step 102: After the data request in the message queue of the online billing process is processed, stop the service process of the online billing process, update the version of the online billing process, and start the updated online billing process.

[0073] In the embodiments of this disclosure, a dedicated message queue management mechanism exists within the online billing system to track and process data requests received from a packet data gateway (such as a P-GW). Upon receiving an online billing process update instruction, the system prioritizes ensuring that all data requests in the message queue of the online billing process are properly processed. This means that all pending user data traffic, session management, and other requests will be executed sequentially until the message queue is empty, indicating that there are no more tasks pending in the current online billing process.

[0074] After completing this step, the system will safely terminate the currently running online billing process. This process ensures a smooth transition and does not affect the integrity and accuracy of completed transactions. Terminating the service process involves critical operations such as resource reclamation and saving the current state to prepare for future version updates.

[0075] Next, the system will begin updating the online billing process. This step may include, but is not limited to, downloading the new version of the application code, updating configuration files, and applying necessary patches. During this process, the system will rigorously verify the completeness and consistency of the updated content to ensure the accuracy and stability of the new version. After the update is complete, the system will launch the updated online billing process. The launch process also includes a series of initialization and verification steps to ensure that the new version of the process can run smoothly and correctly process subsequent data requests. Once launched successfully, the system will use the DCC aggregation agent's automatic discovery and periodic scanning mechanism to ensure that data requests sent by the network element P-GW are automatically forwarded to the newly launched online billing process for processing, thereby achieving seamless switching and continuous availability of user services during the update process. This entire automated operation process is designed to minimize the impact of online billing system updates on user services, ensuring the operator's revenue security and the stable operation of the network.

[0076] Step 103: Forward the data request sent by the packet data gateway to the updated online billing process.

[0077] In the embodiments disclosed herein, after the online billing process is updated and successfully launched, the DCC (Diameter Credit-Control) aggregation agent plays a crucial role. The DCC aggregation agent, through its newly added DCC dynamic routing function, automatically scans and identifies the newly launched online billing process (i.e., the updated version of the process). At this point, the DCC aggregation agent automatically forwards data requests originally sent to the packet data gateway (such as a P-GW) to this newly launched online billing process for processing, according to the rules of dynamic routing. During this process, the DCC aggregation agent's automatic discovery and periodic scanning mechanism ensures the timeliness and accuracy of message forwarding, thereby achieving seamless switching of the online billing process and uninterrupted user service. Simultaneously, since the entire process is transparent to the packet data gateway, users and terminal devices will not perceive any service interruption, ensuring the stability of network services and the continuity of user experience.

[0078] This disclosure provides a method to prevent users from going offline. In response to an online billing process update command from an online billing system, a proxy response process is initiated, and data requests sent by a packet data gateway are forwarded to this proxy response process for response processing. After the data requests in the message queue of the online billing process are processed, the service process of the online billing process is stopped, the online billing process is updated, and the updated online billing process is started. The data requests sent by the packet data gateway are then forwarded to the updated online billing process. Compared with related technologies, this disclosure, by initiating a proxy response process and forwarding data requests to it for response processing, avoids the situation where all users go offline during an online billing process update. Users can remain online and are not affected by the online billing process update, thereby improving the user experience. After the data requests in the message queue of the online billing process are processed, the service process is stopped for a version update, the updated online billing process is started, and finally, the data requests are forwarded to the updated process. This enables seamless switching of the online billing process, ensuring uninterrupted service for users and improving system stability and reliability; it avoids subsequent reconnection operations caused by users going offline, reducing system resource consumption and processing time, and improving overall system efficiency; and it avoids traffic and revenue losses due to user offline, protecting the operator's profits.

[0079] To clearly illustrate the embodiments of this disclosure, this embodiment provides a flowchart of another method for preventing users from going offline.

[0080] like Figure 2 As shown, the method includes the following steps:

[0081] Step 201: Register the proxy response node of the proxy response process to the coordination and management service of the online billing system.

[0082] Specifically, in step 201, the proxy response process is designed to ensure that online users do not go offline during online billing system upgrades or restarts. To achieve this function, multiple independent proxy response nodes in the proxy response process (such as proxy response 1, proxy response 2, ..., proxy response n) need to submit their registration information to the coordination and management service of the online billing system after startup. In this embodiment, the coordination and management service refers to ZooKeeper. As a distributed coordination service, ZooKeeper can efficiently manage the registration information of these proxy response nodes, ensuring that the DCC aggregation broker can accurately identify and forward messages.

[0083] Specifically, when the proxy response process starts, it registers its internal proxy response node information (including IP address, port number, processing capacity, etc.) with ZooKeeper. The process of registering proxy response nodes with ZooKeeper is as follows: Figure 3 As shown, this process is completed automatically without human intervention, ensuring the system's automation and efficiency.

[0084] Step 202: Monitor and obtain the first registration information generated by the proxy response node registering with the coordination management service.

[0085] As one possible implementation of this disclosure, the monitoring and acquisition of the first registration information generated by the proxy answering node registering in the coordination management service includes: receiving the first registration information generated by the proxy answering node registration in the coordination management service based on dynamic call control routing, and scanning and acquiring the first registration information generated by the proxy answering node registration at preset time intervals.

[0086] Specifically, in step 202, to ensure that the DCC aggregation agent can forward the request messages of the network element P-GW to the newly started proxy response process in real time, the DCC dynamic routing mechanism needs to continuously monitor the registration information of the proxy response nodes in ZooKeeper. This process includes two main steps:

[0087] 1) Based on Dynamic Call Control (DCC) routing, receive the first registration information generated by the proxy answering nodes registered in the coordination management service (ZooKeeper): DCC dynamic routing adds an automatic discovery mechanism, that is, after an online process or proxy answering process is started, it will send its registration information to ZooKeeper. DCC dynamic routing receives the registration information of these proxy answering nodes, i.e., the first registration information, in real time by listening to the registration events of ZooKeeper.

[0088] 2) Scanning to obtain the first registration information generated by the proxy response node registration at preset time intervals: In addition to the automatic discovery mechanism, DCC dynamic routing also adds a timed scanning mechanism as a backup to the automatic discovery mechanism. Every preset time interval (e.g., 3 minutes, scan time is configurable), DCC dynamic routing automatically scans ZooKeeper to check for new proxy response node registration information. This step ensures that even if the automatic discovery mechanism fails, new registration information can be discovered and processed in a timely manner through timed scanning.

[0089] Step 203: After obtaining the first registration information, the data request is forwarded to the proxy response node for response processing, and a proxy response file is generated.

[0090] Specifically, in step 203, once the DCC dynamic routing obtains the first registration information of the proxy response node, it indicates that a new proxy response process has been initiated and is ready to receive messages. At this time, the DCC aggregation agent will forward the data requests sent by the network element P-GW to the newly initiated proxy response process based on this registration information. Each proxy response node in the proxy response process will process these request messages in parallel, allocate quotas and respond to the network element, and generate proxy response files. These proxy response files will be used in subsequent billing and pricing processes to ensure that the user's billing calculation is not affected by system upgrades or restarts.

[0091] Step 204: After the data request in the message queue of the online billing process is processed, stop the service process of the online billing process, update the version of the online billing process, and start the updated online billing process.

[0092] Specifically, in step 204, after all data request processing is completed in the message queue of the online billing process, the following steps are performed to ensure a smooth system transition:

[0093] 1) Stop the currently running online billing process. This step is to free up system resources in preparation for future version updates. Before stopping the service process, ensure that all pending messages have been properly processed to prevent data loss or service interruption.

[0094] 2) Update the online billing process. This includes deploying new application code, configuration files, or other necessary updates to the system. Version updates may be for fixing known bugs, improving system performance, or introducing new features.

[0095] 3) Start the updated online billing process. Immediately after completing the version update, start the new online billing process service. At this time, the new version of the online billing process will begin processing request messages from network components, ensuring normal system operation and unaffected user online status.

[0096] Through the above steps, the present invention can achieve a smooth upgrade and restart of the online billing process without interrupting service, thereby effectively avoiding the situation where online users go offline and reducing revenue loss and the impact on network performance indicators.

[0097] Step 205: Register the upstream nodes in the updated online billing process to the coordination and management service.

[0098] Specifically, in step 205, after the online billing process is updated and successfully started, the newly started online process automatically registers its internal front-end node information with the coordination and management service (such as ZooKeeper). Front-end nodes are multiple independent front-end processes within the online process, responsible for handling network element request messages forwarded by the DCC aggregation agent. Each front-end node can process messages independently, improving overall efficiency through parallel processing. This registration process ensures that the DCC aggregation agent can identify the latest online process, thereby enabling accurate message forwarding.

[0099] Step 206: Based on dynamic call control routing, monitor the second registration information generated by the coordination management service and registered by the front-end node.

[0100] Specifically, in step 206, DCC dynamic routing continuously monitors the registered front-end node information in the coordination and management service (such as ZooKeeper) through its built-in automatic discovery and periodic scanning mechanisms. Once a new front-end node is detected being registered, DCC dynamic routing considers the online process to have successfully started and be ready to receive messages. During this process, DCC dynamic routing receives online process registration messages from the coordination and management service in real time based on the automatic discovery mechanism; simultaneously, through a periodic scanning mechanism (such as scanning every 3 minutes, with configurable scanning time), it provides additional protection for the automatic discovery mechanism, ensuring that messages can be promptly discovered and forwarded to the latest online process under any circumstances. Once the second registration information generated by the front-end node registration is detected, DCC dynamic routing automatically forwards the request message from the network element P-GW to the newly started online process, achieving seamless message switching and maintaining the user's online status.

[0101] Step 207: Based on the dynamic call control routing, receive the second registration information generated by the proxy answering node registration in the coordination management service, and scan to obtain the second registration information generated by the proxy answering node registration at preset time intervals.

[0102] Specifically, in step 207, based on the Dynamic Call Control (DCC) routing, the DCC aggregation agent receives second registration information generated by the proxy answering node registration sent by the coordination management service (such as ZooKeeper). This automatic discovery mechanism ensures that the DCC aggregation agent can know the status of the newly started proxy answering process or online process in real time. Simultaneously, to increase system robustness, the DCC dynamic routing also performs periodic scans at preset time intervals (e.g., every 3 minutes, this time is configurable) to ensure that even if the automatic discovery mechanism fails to detect a newly registered process, the second registration information generated by the proxy answering node registration can be discovered and obtained in a timely manner through periodic scanning. This process ensures that the DCC aggregation agent can accurately forward the request messages from the network element P-GW to the newly started online process or proxy answering process, thereby achieving seamless switching of online users from offline to online and messages.

[0103] Step 208: After obtaining the second registration information, forward the data request to the updated online billing process and stop the proxy response process.

[0104] Specifically, in step 208, after the DCC aggregation agent successfully obtains the second registration information generated by the proxy response node registered by the coordination management service (such as ZooKeeper), this information indicates whether the most recently started and ready process is the proxy response process or the updated online billing process. Based on this information, the DCC dynamic routing intelligently forwards data requests (i.e., request messages from the network element P-GW) that should originally be sent to the online billing system to the updated online billing process. This forwarding process ensures that even if the online billing system is undergoing upgrades or maintenance, user requests will not be interrupted, thus achieving an offline experience for online users.

[0105] Simultaneously, once the online billing process is fully started and running stably, capable of handling all network element requests normally, the DCC aggregation agent will stop the previously initiated proxy response process according to the system configuration or instructions. This step marks the successful completion of the system go-live process, and the proxy response process, as a temporary transitional measure, ends its mission. In this way, the embodiments of this disclosure not only achieve a smooth transition for users during online billing system upgrades but also significantly reduce the decline in network performance indicators and revenue losses caused by system restarts or upgrades.

[0106] Step 209: Invoke the proxy answering call detail record processing flow and perform billing processing on the proxy answering file generated by the proxy answering flow.

[0107] As one possible implementation of this disclosure, the step of invoking the proxy response call detail record processing flow and performing billing processing on the proxy response file generated by the proxy response flow includes: performing business analysis on the proxy response file; and performing batch pricing processing on the proxy response file based on the business analysis results to obtain the billing information corresponding to the proxy response file.

[0108] Specifically, in step 209, the proxy response call detail record (CDR) processing flow periodically collects proxy response files generated by the proxy response process from a designated storage location (such as a file server or in-memory database). These files contain detailed information about all online request messages processed by the proxy response process. After collecting the proxy response files, the proxy response CDR processing flow performs business analysis on them. Business analysis mainly includes, but is not limited to, verifying message integrity, parsing message content, and determining user session information. This step ensures that subsequent billing processing can be based on accurate and complete data. After completing the business analysis, the proxy response CDR processing flow performs billing processing on the proxy response files based on the analysis results. This step mainly calculates the cost of each message in the proxy response file according to the telecom operator's billing policies, such as traffic unit price and preferential rules, ultimately obtaining the billing information for each user or each session. After billing processing, the proxy response CDR processing flow generates the final billing information. This information includes the user's consumption details, total cost, billing time, etc., and stores this information in a database or file system for use in subsequent financial settlement, user bill generation, and other processes. Finally, the proxy call detail record (CDR) processing flow will report the processing results to the system or other relevant processes to ensure the smooth operation of the entire online billing process. If any anomalies or errors are found during the billing process, the proxy CDR processing flow also needs to generate corresponding error reports or warning messages so that technical personnel can promptly investigate and resolve the issues.

[0109] Through the above steps, the proxy answering call detail record processing process can effectively process the proxy answering files generated by the proxy answering process for billing, ensuring the accuracy and efficiency of the telecom operator's online billing system.

[0110] It should be noted that the embodiments of this disclosure may include multiple steps. For ease of description, these steps are numbered, but these numbers are not a limitation on the execution time slots or execution order between the steps; these steps can be implemented in any order, and the embodiments of this disclosure do not limit this.

[0111] Corresponding to the aforementioned method for preventing users from going offline, this invention also proposes a device for preventing users from going offline. Since the device embodiments of this invention correspond to the aforementioned method embodiments, details not disclosed in the device embodiments can be referred to the aforementioned method embodiments, and will not be repeated here.

[0112] Figure 4 This is a schematic diagram of the structure of a device for preventing users from going offline, provided in an embodiment of this disclosure. Figure 4 As shown, it includes:

[0113] The substitute response unit 31 is used to respond to the online billing process update instruction of the online billing system, start the substitute response process, and forward the data request sent by the packet data gateway to the substitute response process for response processing;

[0114] The update unit 32 is used to stop the service process of the online billing process, update the version of the online billing process, and start the updated online billing process after the data request in the message queue of the online billing process is processed.

[0115] Forwarding unit 33 is used to forward the data request sent by the packet data gateway to the updated online billing process.

[0116] This disclosure provides a device to prevent users from going offline. In response to an online billing process update command from an online billing system, a proxy response process is initiated, and data requests sent by a packet data gateway are forwarded to this proxy response process for response processing. After the data requests in the message queue of the online billing process are processed, the service process of the online billing process is stopped, the online billing process is updated, and the updated online billing process is started. The data requests sent by the packet data gateway are then forwarded to the updated online billing process. Compared with related technologies, this disclosure, by initiating a proxy response process and forwarding data requests to it for response processing, avoids the situation where all users go offline during online billing process updates. Users can remain online and will not be affected by the online billing process update, thereby improving the user experience. After the data requests in the message queue of the online billing process are processed, the service process is stopped for version update, the updated online billing process is started, and finally, the data requests are forwarded to the updated process. This enables seamless switching of the online billing process, ensuring uninterrupted service for users and improving system stability and reliability; it avoids subsequent reconnection operations caused by users going offline, reducing system resource consumption and processing time, and improving overall system efficiency; and it avoids traffic and revenue losses due to user offline, protecting the operator's profits.

[0117] Furthermore, in one possible implementation of this embodiment, such as Figure 5 As shown, the device further includes:

[0118] Billing unit 34 is used to invoke the proxy response call detail record processing flow and perform billing processing on the proxy response file generated by the proxy response process.

[0119] Furthermore, in one possible implementation of this embodiment, such as Figure 5 As shown, the billing unit 34 includes:

[0120] Analysis module 341 is used to perform business analysis on the proxy response file;

[0121] The pricing module 342 is used to process the pricing of the proxy response file based on the business analysis results, and obtain the billing information corresponding to the proxy response file.

[0122] Furthermore, in one possible implementation of this embodiment, such as Figure 5 As shown, the substitute response unit 31 includes:

[0123] Registration module 311 is used to register the proxy response node of the proxy response process to the coordination and management service of the online billing system;

[0124] The first acquisition module 312 is used to monitor and acquire the first registration information generated by the proxy response node registering with the coordination management service;

[0125] The response module 313 is used to forward the data request to the proxy response node for response processing after obtaining the first registration information, and generate a proxy response file.

[0126] Furthermore, in one possible implementation of this embodiment, the first acquisition module 312 is further configured to:

[0127] Based on dynamic call control routing, the system receives the first registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the first registration information generated by the proxy answering node registration at preset time intervals.

[0128] Furthermore, in one possible implementation of this embodiment, such as Figure 5 As shown, the device further includes:

[0129] Registration unit 35 is used to register the front-end nodes in the updated online billing process to the coordination and management service after updating the version of the online billing process and starting the updated online billing process.

[0130] The monitoring unit 36 ​​is used to monitor the second registration information generated by the coordination management service based on the dynamic call control routing of the front-end node.

[0131] Furthermore, in one possible implementation of this embodiment, such as Figure 5 As shown, the forwarding unit 33 includes:

[0132] The second acquisition module 331 is used to receive the second registration information generated by the proxy answering node registration of the coordination management service based on the dynamic call control routing, and scan and acquire the second registration information generated by the proxy answering node registration at a preset time interval.

[0133] The forwarding module 332 is used to forward the data request to the updated online billing process after obtaining the second registration information, and to stop the proxy response process.

[0134] It should be noted that the foregoing explanation of the method embodiments also applies to the apparatus of this embodiment, and the principle is the same, so it is not limited in this embodiment.

[0135] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0136] Figure 6 A schematic block diagram of an example electronic device 400 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0137] like Figure 6 As shown, device 400 includes a computing unit 401, which can perform various appropriate actions and processes based on a computer program stored in ROM (Read-Only Memory) 402 or a computer program loaded from storage unit 408 into RAM (Random Access Memory) 403. RAM 403 may also store various programs and data required for the operation of device 400. The computing unit 401, ROM 402, and RAM 403 are interconnected via bus 404. I / O (Input / Output) interface 405 is also connected to bus 404.

[0138] Multiple components in device 400 are connected to I / O interface 405, including: input unit 406, such as keyboard, mouse, etc.; output unit 407, such as various types of monitors, speakers, etc.; storage unit 408, such as disk, optical disk, etc.; and communication unit 409, such as network card, modem, wireless transceiver, etc. Communication unit 409 allows device 400 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0139] The computing unit 401 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, CPUs (Central Processing Units), GPUs (Graphics Processing Units), various special-purpose AI (Artificial Intelligence) computing chips, various computing units running machine learning model algorithms, DSPs (Digital Signal Processors), and any suitable processor, controller, microcontroller, etc. The computing unit 401 performs the various methods and processes described above, such as methods to prevent a user from going offline. For example, in some embodiments, the method to prevent a user from going offline may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 408. In some embodiments, part or all of the computer program may be loaded and / or installed on device 400 via ROM 402 and / or communication unit 409. When the computer program is loaded into RAM 403 and executed by the computing unit 401, one or more steps of the methods described above may be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to perform the aforementioned method for preventing the user from going offline by any other suitable means (e.g., by means of firmware).

[0140] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, FPGAs (Field Programmable Gate Arrays), ASICs (Application-Specific Integrated Circuits), ASSPs (Application-Specific Standard Products), SOCs (System-on-Chips), CPLDs (Complex Programmable Logic Devices), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0141] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0142] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, RAM, ROM, EPROM (Electrically Programmable Read-Only Memory) or flash memory, optical fiber, CD-ROM (Compact Disc Read-Only Memory), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0143] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (Cathode-Ray Tube) or LCD (Liquid Crystal Display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0144] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include LANs (Local Area Networks), WANs (Wide Area Networks), the Internet, and blockchain networks.

[0145] Computer systems can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. A server can be a cloud server, also known as a cloud computing server or cloud host, a hosting product within the cloud computing service ecosystem, addressing the shortcomings of traditional physical hosts and VPS (Virtual Private Server, or simply "VPS") services, such as high management difficulty and weak business scalability. Servers can also be servers for distributed systems or servers incorporating blockchain technology.

[0146] It's important to note that artificial intelligence (AI) is the study of enabling computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, and planning). It encompasses both hardware and software technologies. AI hardware technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, and big data processing. AI software technologies primarily include computer vision, speech recognition, natural language processing, machine learning / deep learning, big data processing, and knowledge graph technologies.

[0147] The various numerical designations such as "first," "second," etc., used in this disclosure are merely for ease of description and are not intended to limit the scope of the embodiments of this disclosure, nor do they indicate a sequential order.

[0148] At least one of the features described in this disclosure can also be described as one or more, and multiple features can be two, three, four or more, and this disclosure does not impose any limitations. In the embodiments of this disclosure, for a technical feature, the technical features in that technical feature are distinguished by "first", "second", "third", "A", "B", "C" and "D", etc., and there is no sequential order or size order among the technical features described by "first", "second", "third", "A", "B", "C" and "D".

[0149] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0150] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A method for preventing users from going offline, characterized in that, include: In response to the online billing process update instruction from the online billing system, a proxy response process is initiated, and the data request sent by the packet data gateway is forwarded to the proxy response process for response processing; wherein, the proxy response process is used to take over the workload of the online billing process during the update period. After the data request in the message queue of the online billing process is processed, the service process of the online billing process is stopped, the online billing process is updated, and the updated online billing process is started. The data request sent by the packet data gateway is forwarded to the updated online billing process; The step of responding to the online billing process update instruction from the online billing system, initiating a proxy response process, and forwarding the data request sent by the packet data gateway to the proxy response process for response processing includes: Register the proxy response node of the proxy response process to the coordination and management service of the online billing system; Monitor and obtain the first registration information generated when the proxy response node registers with the coordination management service; After obtaining the first registration information, the data request is forwarded to the proxy response node for response processing, and a proxy response file is generated; The monitoring and acquisition of the first registration information generated by the proxy response node registering with the coordination management service includes: Based on dynamic call control routing, the system receives the first registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the first registration information generated by the proxy answering node registration at preset time intervals.

2. The method according to claim 1, characterized in that, The method further includes: The proxy response call detail record (CDR) processing procedure is invoked, and the proxy response file generated by the proxy response process is used for billing processing.

3. The method according to claim 2, characterized in that, The method of invoking the proxy response call detail record processing flow includes billing processing of the proxy response file generated by the proxy response process, including: Perform business analysis on the substitute response file; Based on the business analysis results, the proxy response file is processed for pricing to obtain the billing information corresponding to the proxy response file.

4. The method according to claim 1, characterized in that, After updating the online billing process and starting the updated online billing process, the method further includes: Register the upstream nodes in the updated online billing process to the coordination and management service; Based on dynamic call control routing, the system monitors the registration information of the front-end node to the second registration information generated by the coordination and management service.

5. The method according to claim 4, characterized in that, The step of forwarding the data request sent by the packet data gateway to the updated online billing process includes: Based on the dynamic call control routing, the system receives the second registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the second registration information generated by the proxy answering node registration at preset time intervals. After obtaining the second registration information, the data request is forwarded to the updated online billing process, and the proxy response process is stopped.

6. A device for preventing users from going offline, characterized in that, include: The substitute response unit is used to respond to the online billing process update instruction of the online billing system, start the substitute response process, and forward the data request sent by the packet data gateway to the substitute response process for response processing; wherein, the substitute response process is used to take over the workload of the online billing process during the update period. The update unit is used to stop the service process of the online billing process, update the version of the online billing process, and start the updated online billing process after the data request in the message queue of the online billing process is processed. The forwarding unit is used to forward the data request sent by the packet data gateway to the updated online billing process; The step of responding to the online billing process update instruction from the online billing system, initiating a proxy response process, and forwarding the data request sent by the packet data gateway to the proxy response process for response processing includes: Register the proxy response node of the proxy response process to the coordination and management service of the online billing system; Monitor and obtain the first registration information generated when the proxy response node registers with the coordination management service; After obtaining the first registration information, the data request is forwarded to the proxy response node for response processing, and a proxy response file is generated; The monitoring and acquisition of the first registration information generated by the proxy response node registering with the coordination management service includes: Based on dynamic call control routing, the system receives the first registration information generated by the proxy answering node registration in the coordination management service, and scans to obtain the first registration information generated by the proxy answering node registration at preset time intervals.

7. An electronic device, characterized in that, include: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-5.

8. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-5.

9. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Identification of timestamps for a partial CDR when failover occurs in an offline charging system

    CN104429053A

  • Software upgrade in a virtualized offline charging system

    CN109792393A