Method and system for dynamically allocating logical identities in a communication device

By aggregating logical identifier pools and configuring physical ports in the voice server, and dynamically binding logical identifiers and physical ports, the problems of wasted number resources and rigid functions in POL devices are solved, achieving efficient resource utilization and flexible management.

CN121508773BActive Publication Date: 2026-07-21FIBERHOME TELECOMMUNICATION TECHNOLOGIES CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
FIBERHOME TELECOMMUNICATION TECHNOLOGIES CO LTD
Filing Date
2025-11-28
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

In existing technologies, the static and fixed binding relationship between the physical voice user interface circuit module and telephone numbers in POL devices or similar multi-port voice gateway devices leads to a waste of number resources and rigid functions, making it impossible to achieve flexible allocation on demand.

Method used

The voice server aggregates multiple logical identifiers into a logical identifier pool and configures call initiation or reception capabilities for each physical port. Through an event-triggered real-time dynamic scheduling strategy, logical identifiers and physical ports are dynamically bound to establish a call, and logical identifiers are reclaimed after the call ends.

Benefits of technology

It achieves virtualization and centralized management of logical identifiers, improves resource utilization and system concurrency capacity, ensures reliable reset of resource status, supports flexible network deployment and management, and enhances user experience and system stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121508773B_ABST
    Figure CN121508773B_ABST
Patent Text Reader

Abstract

The application discloses a method and system for dynamically allocating logical identifiers in a communication device. The method comprises: gathering a plurality of registered logical identifiers into a logical identifier pool; configuring each physical port of the communication device with a call initiation or reception capability; in response to a call establishment request, dynamically determining a logical identifier and a physical port from the logical identifier pool and the physical port, and temporarily associating the logical identifier and the physical port to establish a call; and disassociating the logical identifier and the physical port and recycling the logical identifier into the pool after the call ends. By gathering the logical identifier pool, configuring the physical port capability, and dynamically binding the logical identifier and the physical port, the logical identifier and the physical port are decoupled, the problems of number resource waste, business function rigidity and call missed call in the traditional fixed binding mode are solved, and the resource utilization, system flexibility and communication reliability are significantly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication network technology, specifically to a method and system for dynamically allocating logical identifiers in a communication device. Background Technology

[0002] In traditional POL devices or similar multi-port voice gateway devices, each physical voice user interface circuit module port is typically statically and permanently bound to a specific telephone number. This one-to-one binding relationship has significant limitations: First, it consumes a large amount of telephone number resources, as each FXS port, regardless of its usage frequency, must exclusively occupy a number, resulting in a waste of number resources; second, it is functionally rigid, as a port cannot be flexibly used as a caller or callee according to actual needs. For example, it is impossible to allow a group of ports to share a single number to answer incoming calls to avoid missing calls, nor can multiple outgoing call ports take turns using a small number of numbers for outgoing calls.

[0003] In existing technologies, dynamic binding between tasks, service personnel numbers, and customer numbers is achieved based on SMS notifications and application layer logic. Its core is to protect privacy and manage tasks, but it does not involve the decoupling and dynamic allocation of physical voice ports and telephone number resources. Therefore, it cannot solve the technical problem of flexibly allocating physical port resources and logical number resources at the POL device level.

[0004] Therefore, there is an urgent need in this field for a technical solution that can dynamically and on-demand bind physical voice ports and telephone number resources at the underlying level of communication devices. Summary of the Invention

[0005] This application provides a method and system for dynamically allocating logical identifiers in a communication device, which can solve the technical problems of wasted telephone number resources and fixed voice port functions in the prior art.

[0006] In a first aspect, embodiments of this application provide a method for dynamically allocating logical identifiers in a communication device, comprising: Multiple logical identifiers registered in the voice server are aggregated into a logical identifier pool, and each physical port of the communication device is configured with call initiation capability or call reception capability. In response to a call establishment request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device; the determined logical identifier and physical port are temporarily associated to establish a call. After the call ends, the temporary association is terminated, and the logical identifier used in the call is returned to the logical identifier pool.

[0007] Preferably, when the call establishment request is an outgoing call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device, specifically including the following steps: Check whether the physical port where the user went off-hook has the capability to initiate a call; If so, the physical port where the user went off-hook event occurred will be used as the target physical port, and then an idle logical identifier will be selected from the logical identifier pool. Otherwise, a message will appear indicating that dialing is temporarily unavailable.

[0008] Preferably, selecting an idle logical identifier from the logical identifier pool specifically includes: Check if there are any free logical identifiers in the logical identifier pool; If so, send available logical identifier information to the outgoing user equipment connected to the target physical port; receive a selection response from the outgoing user equipment; and determine an idle logical identifier based on the selection response. Otherwise, a message will appear indicating that dialing is temporarily unavailable.

[0009] Preferably, when the call establishment request is an incoming call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device, specifically including the following steps: Obtain the specific logical identifier pointed to by the incoming call request; Detect whether there is an idle physical port; an idle physical port has call receiving capability and is used to receive specific logical identifiers; If a free physical port exists, a ringing signal is sent to all free physical ports; otherwise, the user is prompted to call back later. Obtain the response to the ringing signal and determine the target physical port based on the response.

[0010] Preferably, determining the target physical port based on the response to the ringing signal specifically includes the following steps: Obtain the off-hook time information of physical ports with call receiving capabilities; Based on the off-hook time information, the physical port that is the first to be off-hook is taken as the target physical port.

[0011] Preferably, after determining the target physical port based on the response to the ringing signal, the method further includes: stopping the sending of ringing signals to all idle physical ports that have call receiving capabilities.

[0012] Preferably, each physical port of the communication device is configured with call initiation capability or call reception capability, specifically including: The multiple physical ports are divided into a call initiation port group and a call receiving port group; The logical identifier pool is divided into a first logical identifier set and a second logical identifier set; The call initiation port group is configured to have call initiation capability and is configured to allow the use of the first logical identifier set; The call receiving port group is configured to have call receiving capability and is configured to allow the use of a second logical identifier set.

[0013] Preferably, when the call establishment request is an incoming call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device, specifically including the following steps: Obtain the second logical identifier set pointed to by the incoming call request; Check if there are any idle logical identifiers in the second set of logical identifiers, and whether there are any idle physical ports; If an idle logical identifier exists and an idle physical port exists, a ringing signal is sent to all idle physical ports that have call receiving capabilities; otherwise, the user is prompted to call later. The target physical port is determined based on the response to the ringing signal, and an idle logical identifier is determined from the idle logical identifiers based on the selection response from the incoming user equipment.

[0014] Preferably, the logical identifier includes a telephone number, and the communication device includes a POL device.

[0015] Secondly, embodiments of this application provide a dynamic allocation logical identifier system in a communication device, comprising: The resource pooling management module is used to aggregate multiple logical identifiers that have been registered in the voice server into a logical identifier pool; The port capability configuration module is used to configure call initiation capability or call reception capability for each physical port of the communication device. The association control module is used to, in response to a call establishment request, determine a logical identifier and a physical port from the logical identifier pool and multiple physical ports of the communication device; and temporarily associate the determined logical identifier and physical port to establish a call. The resource recycling module is used to release the temporary association after the call ends and recycle the logical identifier used in the call to the logical identifier pool.

[0016] The beneficial effects of the technical solutions provided in this application include: Multiple logical identifiers registered in the voice server are aggregated into a logical identifier pool. This step technically achieves the virtualization and centralized management of logical identifiers, elevating the number to a system-level, independent, schedulable resource. This breaks the physical coupling between the number and the port, laying the data structure foundation for subsequent dynamic scheduling.

[0017] Configuring call initiation or call reception capabilities for each physical port of a communication device introduces software-defined capability attributes to the physical ports. While the physical ports are essentially the same, they are assigned different logical roles through configuration. This allows a physical device to be logically divided into multiple functionally heterogeneous virtual groups (such as outgoing call groups and incoming call groups), greatly improving the flexibility of network deployment and management.

[0018] In response to a call establishment request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device. The determined logical identifier and physical port are temporarily associated to establish the call. This step introduces an event-triggered real-time dynamic scheduling strategy, realizing time allocation for communication connections. Only when a call is established does the system dynamically calculate and bind the optimal "port-identifier" pair based on real-time status (such as port idle status and number pool status) and a preset strategy. This not only achieves statistical resource reuse, greatly improving resource utilization and system concurrency capacity, but also provides fine-grained control capabilities at the session level.

[0019] After the call ends, the temporary association is terminated and the resource is returned to the logical identifier pool, establishing a complete closed loop for resource lifecycle management. This ensures the reliable reset and timely release of resource status, prevents resource locking and leakage, and guarantees that the idle state of the logical identifier pool is real and reliable.

[0020] This transforms communication equipment from a static, pre-configured architecture to a dynamic, on-demand responsive architecture, thereby improving resource utilization and business flexibility. Attached Figure Description

[0021] Figure 1 This is a general flowchart of the method for dynamically allocating logical identifiers in a communication device according to an embodiment of this application; Figure 2 This is a flowchart of the initialization phase in the embodiments of this application; Figure 3 This is a flowchart illustrating the call establishment process in the embodiments of this application. Figure 4 A flowchart illustrating the establishment of the first type of called party in the embodiments of this application; Figure 5 This is a flowchart illustrating the establishment of a called party in the second form of the embodiments of this application. Detailed Implementation

[0022] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present application.

[0023] First, some of the technical terms used in this application will be explained to help those skilled in the art understand this application.

[0024] POL device: A voice gateway device for Passive Optical LAN that supports multiple telephone port access.

[0025] FXS port: Voice User Interface, typically connected to a regular telephone for analog telephone communication.

[0026] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0027] Firstly, reference Figure 1 As shown in the figure, this application provides a method for dynamically allocating logical identifiers in a communication device, which includes: Step 100: Collect the multiple logical identifiers that have been registered in the voice server into a logical identifier pool, and configure call initiation capability or call reception capability for each physical port of the communication device. Step 200: In response to the call establishment request, determine a logical identifier and a physical port from the logical identifier pool and multiple physical ports of the communication device; temporarily associate the determined logical identifier and physical port to establish a call; Step 300: After the call ends, disconnect the temporary association and return the logical identifier used in the call to the logical identifier pool.

[0028] Logical identifiers include any identifier used for communication addressing, such as telephone numbers, extension numbers, SIP URIs, and IP addresses. Communication equipment includes POL devices and devices with similar functions, such as IADs, IP-PBXs, and voice gateways. Physical ports are voice ports or FXS ports.

[0029] Multiple logical identifiers registered in the voice server are aggregated into a logical identifier pool. This step technically achieves the virtualization and centralized management of logical identifiers. In the traditional model, numbers are scattered and bound to various ports as device attributes. This application elevates numbers to a system-level, independent, and schedulable resource by establishing a logical identifier pool. This breaks the physical coupling between numbers and ports, laying the data structure foundation for subsequent dynamic scheduling. The direct technical effect is that the system obtains a global, unified view of numbers, making on-demand allocation technically possible.

[0030] Configuring call initiation or call reception capabilities for each physical port of a communication device introduces software-defined capability attributes to the physical ports. While the physical ports are identical at the hardware level, this software configuration assigns them different logical roles. This allows a physical device to be logically divided into multiple functionally heterogeneous virtual groups (such as outgoing call groups and incoming call groups), greatly improving the flexibility of network deployment and management.

[0031] In response to a call establishment request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device. The determined logical identifier and physical port are temporarily associated to establish the call. This step introduces an event-triggered real-time dynamic scheduling strategy, enabling time-based allocation of communication connections. Only during each call establishment process does the system dynamically calculate and bind the optimal "port-identifier" pair based on real-time status (such as port availability and number pool status) and a preset strategy. This not only achieves statistical resource reuse, greatly improving resource utilization and system concurrency capacity, but also provides fine-grained control capabilities at the session level.

[0032] After the call ends, the temporary association is terminated and the resource is returned to the logical identifier pool, establishing a complete closed loop for resource lifecycle management. This ensures reliable reset and timely release of resource states, prevents resource locking and leakage, and guarantees that the idle state of the logical identifier pool is real and reliable. This ensures that the scheduler's subsequent allocation decisions are always based on accurate resource information, guaranteeing the long-term stability and reliability of the entire dynamic allocation system.

[0033] This transforms communication equipment from a static, pre-configured architecture to a dynamic, on-demand responsive architecture, thereby improving resource utilization and business flexibility.

[0034] In some embodiments, reference is made to Figure 3 As shown, in step 200, when the call establishment request is an outgoing call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device. Specifically, this includes the following steps: Step 200-11: Check whether the physical port where the user picked up the phone has the ability to initiate a call; Step 200-12: If yes, then the physical port where the user off-hook event occurred is taken as the target physical port, and then an idle logical identifier is selected from the logical identifier pool. Step 200-13: Otherwise, a message will appear indicating that dialing is temporarily unavailable.

[0035] In the traditional model, users use their fixed number immediately upon picking up the phone, without any capability verification step. However, in this embodiment, a capability authentication and control step is added at the beginning of the outbound call process. This enables real-time verification and precise control of caller privileges; the system can automatically block outbound call requests from unauthorized ports, preventing resource abuse and unauthorized access. Simultaneously, it clarifies a simplified rule that the target port is uniquely determined by the event source in the caller scenario. This makes the decision-making logic for dynamic scheduling clear and explicit, reduces system complexity, and improves the efficiency and determinism of caller connection establishment.

[0036] In addition, clear user guidance is provided. When the port does not have the ability to make calls, the system will promptly prompt that dialing is temporarily unavailable. This avoids users waiting for a long time or not responding, improves the user experience, and makes the whole system more robust in the face of abnormal situations.

[0037] Furthermore, in step 200-12, an idle logical identifier is selected from the logical identifier pool, specifically including: Step 200-1201: Check if there are any free logical identifiers in the logical identifier pool; Steps 200-1202: If yes, send available logical identifier information to the outgoing user equipment connected to the target physical port; receive the selection response from the outgoing user equipment; determine an idle logical identifier based on the selection response; of course, other strategies can also be used to select an idle logical identifier, such as automatically selecting an idle logical identifier from the logical identifier pool after a preset time. Step 200-1203: Otherwise, a message will appear indicating that dialing is temporarily unavailable, and the same steps as step 200-13 will be executed.

[0038] The above includes step 200-14 after step 200-12: temporarily associating a determined logical identifier with a physical port to establish a call.

[0039] First, it empowers users with a sense of participation and control, allowing them to choose the most suitable number from the system's list of available numbers based on the actual needs of the current call. This makes the call strategy more user-friendly and precise. Second, this interactive selection mechanism avoids number allocation conflicts from the outset. The system displays available numbers, and the user's selection is immediately bound, ensuring the uniqueness and certainty of the allocation result and avoiding the competitive conditions caused by multiple ports vying for the same number. Finally, without sacrificing its core advantages of automation, it introduces crucial human-computer interaction, making the entire dynamic allocation system both intelligent and controllable, especially suitable for professional scenarios such as customer service and sales that require flexible number strategies.

[0040] By combining the system's centralized scheduling capabilities with users' on-site decision-making needs, the system is responsible for providing a real-time, available list of resources, while users make the final selection based on the logical identifiers required. This avoids the complex synchronization problem of multiple ports competing for the same resource within the system, thereby improving the overall stability and response efficiency of the system.

[0041] In some embodiments, step 200 refers to Figure 4 As shown, when a call setup request is an incoming call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device. Specifically, this includes the following steps: Steps 200-21: Obtain the specific logical identifier pointed to by the incoming call request; check whether the specific logical identifier pointed to by the incoming call request is idle; Step 200-22: When a specific logical identifier is not idle, prompt the user to call later if busy; Step 200-23: When the specific logical identifier is idle, check whether there is an idle physical port; the idle physical port has call receiving capability and is used to receive the specific logical identifier; Step 200-24: If there are any idle physical ports, send a ringing signal to all idle physical ports; Step 200-25: Otherwise, prompt the user to call back later if busy; Steps 200-26: Obtain the response to the ringing signal and determine the target physical port based on the response.

[0042] The above includes step 200-27 after step 200-26: temporarily associating a determined logical identifier with a physical port to establish a call.

[0043] In this implementation, firstly, a one-to-many mapping of called numbers is achieved. By checking all idle and capable physical ports and simultaneously ringing them, an incoming call can be answered by multiple ports at the same time. This significantly improves call connection rates and ensures that important inbound communications (such as customer complaints and business inquiries) are not missed. Secondly, it no longer simply forwards calls to a fixed endpoint, but dynamically constructs an answering group based on the real-time status of the port (whether it is idle) and its capacity configuration (whether the number is allowed to answer). Thirdly, this process provides a foundation for a fair competition mechanism for responding to off-hook events first, ensuring a rapid response to inbound requests and improving the overall service quality and reliability of the communication system.

[0044] In some embodiments, steps 200-26, determining the target physical port based on the response to the ringing signal, specifically include the following steps: Obtain the off-hook time information of physical ports with call receiving capabilities; Based on the off-hook time information, the physical port that is the first to be off-hook is taken as the target physical port.

[0045] This embodiment, firstly, ensures timely call response. The rule incentivizes port users to respond quickly to ringing, as the first person to act gains the right to speak, naturally shortening the average call response time and improving the caller's experience. Secondly, it is a decentralized and efficient decision-making mechanism. The system does not require complex priority calculations or manual assignment; it only needs to compare off-hook timestamps to automatically and quickly complete port selection. Finally, it embodies the principle of fairness, ensuring all allowed ports have an equal opportunity to answer, entirely dependent on the user's reaction speed. This avoids internal management conflicts and represents a technical solution that achieves the optimal balance between efficiency and fairness.

[0046] In some embodiments, steps 200-26, after determining the target physical port based on the response to the ringing signal, further include: stopping the sending of ringing signals to all idle physical ports that have call receiving capabilities.

[0047] This eliminates redundant operations and interference within the system. Once the target port is determined, the system immediately notifies other ports to stop ringing, thus preventing invalid ringing signals from continuing to occupy system signaling resources and the processing capacity of port devices.

[0048] In some embodiments, reference is made to Figure 2 As shown, in step 100, multiple logical identifiers registered in the voice server are aggregated into a logical identifier pool, and call initiation capability or call reception capability is configured for each physical port of the communication device, specifically including: Step 100-10: Register all logical identifiers with the voice server; Step 100-11: Record the successfully registered logical identifier into the logical identifier pool; Step 100-12: Divide multiple physical ports into a call initiation port group and a call receiving port group; Steps 100-13: Divide the logical identifier pool into a first logical identifier set and a second logical identifier set; Steps 100-14: The call initiation port group is configured to have call initiation capability and to allow the use of the first logical identifier set; the call receiving port group is configured to have call receiving capability and to allow the use of the second logical identifier set.

[0049] In this embodiment, firstly, precise division of business functions is achieved. By dividing into "call initiation port groups" and "call receiving port groups," enterprises can physically or logically separate outbound marketing teams and customer service teams, ensuring dedicated roles and avoiding mutual interference of business traffic, thus improving work efficiency and professionalism. Secondly, strategic allocation of number resources is achieved. Different logical identifier sets are configured for different groups (even if there is overlap), allowing outbound and called numbers to be managed separately. For example, the marketing group uses one set of numbers to initiate outbound calls, while customer call-back complaint hotlines are answered by another set of numbers from the customer service group, achieving functional division of numbers. Thirdly, strong manageability and scalability are provided. Administrators can perform batch configuration and policy adjustments on a group basis, greatly simplifying operational complexity. When business needs change, only group policies need to be adjusted, enabling the system to flexibly adapt to the dynamic development of enterprise business.

[0050] In some embodiments, reference is made to Figure 5 As shown, when a call setup request is an incoming call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device. Specifically, this includes the following steps: Steps 200-31: Obtain the second logical identifier set pointed to by the incoming call request; that is, confirm whether the incoming call request points to the logical identifier subset corresponding to consultation or the logical identifier subset corresponding to complaint; Steps 200-32: Check whether there are any idle logical identifiers in the second logical identifier set, and whether there are any idle physical ports; Steps 200-33: If an idle logical identifier exists and an idle physical port exists, send a ringing signal to all idle physical ports that have call receiving capabilities; otherwise, prompt the user to call later if busy. Steps 200-34: Determine the target physical port based on the response to the ringing signal, and determine an idle logical identifier from the idle logical identifiers based on the selection response from the incoming user equipment.

[0051] Steps 200-35: Bind the determined logical flag to the off-hook port, set the off-hook port to occupied state, and establish a call.

[0052] In this embodiment, based on the established division of business functions, the sharing and dynamic selection of the called number pool are further realized, enhancing the flexibility and automation of processing. It addresses the complex routing problem when an incoming call request is not directed to a single number, but rather allows any number in a number pool to answer.

[0053] First, it improves the redundancy and reliability of called services. A call can be answered by a "set of numbers" instead of a single number. As long as any available number and port exist in the set, the call can be responded to, greatly improving service availability. Second, it introduces a secondary interaction mechanism to improve accuracy. After the target port is determined by ringing, the logical identifier to be used is finally determined through a "selection response from the incoming user's device." This can be used to handle scenarios such as IVR (Interactive Voice Response) menu selections requiring different skill groups or different numbers to answer, making routing more intelligent and accurate. Finally, it extends call routing and number allocation from a one-step process to a two-step process: first routing to the person (port), then determining the identity (number). This decoupling provides great flexibility in business orchestration, supporting very complex call center applications.

[0054] Specific practical use cases For example, a company's customer service center has 10 customer service workstations (this is the voice port of the POL device), and each workstation has a telephone.

[0055] Traditional model: Each workstation applies for a different external phone number (e.g., 1001 to 1010). The result is: If a customer wants to file a complaint (incoming call), they must remember a specific number (e.g., 1005) and call workstation number 5. If workstation number 5 is busy or unattended, the customer will not be able to get through, resulting in a missed call.

[0056] When the company conducts product follow-ups (outbound calls), each workstation can only use its own fixed number to make these calls. This wastes number resources, and customers experience a poor experience seeing a bunch of different numbers calling.

[0057] This application plan: The company has only applied for 3 publicly disclosed phone numbers (e.g., 400-111, 400-112, 400-113). These 3 numbers form a "shared number pool".

[0058] Now, let's simulate the entire workflow: Step 1: System Initialization The company completed the paperwork for these three numbers (400-111, 400-112, 400-113) and informed the telephone exchange that these were the only numbers they would be using. This involved running common voice protocols in NGN voice networks, such as SIP / H.248, and registering all phone numbers with the voice server. Then, each voice port was configured to have calling and receiving capabilities. Finally, the phone numbers that could be assigned to each voice port were configured.

[0059] Then, the company assigned tasks to these 10 workstations: Workstations 1-5: Answer telephone only (dedicated to handling customer complaints).

[0060] Workstations 6-10: Only for making phone calls (specifically for product promotion).

[0061] This means setting the calling / receiving capability for each voice port.

[0062] Step 2: Call Answering Process (Incoming Call Process) A customer called the company's complaint hotline 400-111.

[0063] The company's switchboard (POL equipment) received an incoming call. The switchboard detected that this number was for handling complaints, so it immediately checked all the telephone-only workstations (numbers 1-5) to see which one was currently available.

[0064] Then, the switchboard simultaneously rings all the phones at workstations 1-5, meaning all authorized ports ring at the same time.

[0065] Customer service representative #3 answered the phone first, and the switchboard immediately transferred the call to representative #3. At the same time, it told the other ringing phones (#1, #2, #4, #5) to stop ringing, as someone had answered. This is how a stop-ring signal is sent to the other phones.

[0066] Customer service representative #3 started a call with the customer. In this call, workstation #3 represents the number 400-111.

[0067] After the call ended, customer service representative number 3 hung up. The number 400-111 was then released back into the shared number pool, awaiting its next use. This is called unbinding after a call ends, and the number's status is set to idle.

[0068] The advantage of doing this is that you will never miss a complaint call; as long as one customer service representative is available, the call will be answered. Alternatively, in the second step, a customer can dial 400-111 and be told that representative number 3 is currently on another call, 400-112 is available, and representative number 4 is available. In this case, the customer can immediately choose to speak with representative number 4 via 400-112.

[0069] Step 3: Calling Process (Outbound Call Process) Customer service representative #8 (salesperson) wanted to make a follow-up call to a customer, so he picked up the phone. The switchboard's POL system recognized that workstation #8 was a "call-only" operator and allowed him to make the call.

[0070] The switchboard operator checked the shared number pool and found that 400-112 and 400-113 were currently available.

[0071] The switchboard operator tells customer service representative number 8 via automated message: "The available sales numbers are 400-112 and 400-113. Please press 1 to select 400-112 and press 2 to select 400-113." This is the automated message informing the user of available numbers.

[0072] Customer service representative #8 pressed "1" and selected 400-112.

[0073] The switchboard immediately assigned the number 400-112 to workstation number 8 temporarily. This is how the number was bound to the workstation for this call.

[0074] Now, when customer service number 8 dials, the caller ID will show 400-112.

[0075] After the call ends, customer service representative #8 hangs up. The number 400-112 is then released back into the pool, and customer service representatives #6 or #9 can use it next. This is called unbinding after a call ends.

[0076] The advantages of doing this are: a limited number of numbers (e.g., 3) can be used in rotation by all outbound customer service representatives (e.g., 5 people), which greatly saves number resources, and customers see a unified company sales number.

[0077] The company's telephone system was upgraded from a fixed seat and fixed extension model to an intelligent model with shared workstations and a flexible switchboard.

[0078] For inbound calls (answering calls): the process has changed from "one number to one person" to "one number to a group of people", with a 100% answer rate.

[0079] For outbound calls: the system has changed from "one person, one fixed number" to "multiple people sharing several numbers", maximizing number utilization.

[0080] It allows for a clear division of labor, with some calls dedicated to handling complaints and others to sales calls, ensuring no interference. Furthermore, when the communication device is acting as the called party, all physical ports can ring simultaneously, preventing missed calls. When the communication device is acting as the caller, users can choose available phone numbers; users can reuse limited phone number resources, and all phone ports can operate normally.

[0081] Secondly, a dynamic allocation logical identifier system for a communication device is provided, comprising: The resource pooling management module is used to aggregate multiple logical identifiers that have been registered in the voice server into a logical identifier pool; The port capability configuration module is used to configure the call initiation capability or call reception capability for each physical port of the communication device. The association control module is used to, in response to a call establishment request, determine a logical identifier and a physical port from the logical identifier pool and multiple physical ports of the communication device; and temporarily associate the determined logical identifier and physical port to establish a call. The resource recycling module is used to release the temporary association after the call ends and recycle the logical identifier used in the call to the logical identifier pool.

[0082] The functional implementation of each module in the dynamic allocation logical identifier system of the above-mentioned communication equipment corresponds to each step in the embodiment of the dynamic allocation logical identifier method in the above-mentioned communication equipment, and its functions and implementation process will not be described in detail here.

[0083] Thirdly, embodiments of this application also provide a computer-readable storage medium.

[0084] The present application stores a program for dynamically allocating logical identifiers in a communication device on a computer-readable storage medium, wherein when the program for dynamically allocating logical identifiers in a communication device is executed by a processor, it implements the steps of the method for dynamically allocating logical identifiers in a communication device as described above.

[0085] The method implemented when the dynamic allocation logic identifier program in the communication device is executed can be referred to in the various embodiments of the dynamic allocation logic identifier method in the communication device of this application, and will not be repeated here.

[0086] It should be noted that the sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0087] The terms "comprising" and "having," and any variations thereof, in the specification, claims, and accompanying drawings of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus. The terms "first," "second," and "third," etc., are used to distinguish different objects, etc., and do not indicate a sequence, nor do they limit "first," "second," and "third" to different types.

[0088] In the description of the embodiments of this application, terms such as "exemplary," "for example," or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplary," "for example," or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary," "for example," or "for instance" is intended to present the relevant concepts in a concrete manner.

[0089] In the description of the embodiments of this application, unless otherwise stated, " / " means "or". For example, A / B can mean A or B. The "and / or" in the text is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, and B exists alone. In addition, in the description of the embodiments of this application, "multiple" means two or more.

[0090] In some processes described in the embodiments of this application, multiple operations or steps are included in a specific order. However, it should be understood that these operations or steps may not be executed in the order they appear in the embodiments of this application, or they may be executed in parallel. The sequence number of the operation is only used to distinguish different operations, and the sequence number itself does not represent any execution order. In addition, these processes may include more or fewer operations, and these operations or steps may be executed sequentially or in parallel, and these operations or steps may be combined.

[0091] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes several instructions to cause a terminal device to execute the methods described in the various embodiments of this application.

[0092] The above are merely preferred embodiments of this application and do not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of this application.

Claims

1. A method for dynamically allocating logical identifiers in a communication device, characterized in that, It includes: Multiple logical identifiers registered in the voice server are aggregated into a logical identifier pool, and each physical port of the communication device is configured with call initiation capability or call reception capability. In response to a call establishment request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device; A logical identifier is temporarily associated with a physical port to establish a call; After the call ends, the temporary association is terminated, and the logical identifier used in the call is returned to the logical identifier pool.

2. The method for dynamically allocating logical identifiers in a communication device as described in claim 1, characterized in that: When the call setup request is an outgoing call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device, specifically including the following steps: Check whether the physical port where the user went off-hook has the capability to initiate a call; If so, the physical port where the user went off-hook event occurred will be used as the target physical port, and then an idle logical identifier will be selected from the logical identifier pool. Otherwise, a message will appear indicating that dialing is temporarily unavailable.

3. The method for dynamically allocating logical identifiers in a communication device as described in claim 2, characterized in that, Selecting an idle logical identifier from the logical identifier pool specifically includes: Check if there are any free logical identifiers in the logical identifier pool; If so, send available logical identifier information to the outgoing user equipment connected to the target physical port; receive a selection response from the outgoing user equipment; and determine an idle logical identifier based on the selection response. Otherwise, a message will appear indicating that dialing is temporarily unavailable.

4. The method for dynamically allocating logical identifiers in a communication device as described in claim 1, characterized in that: When the call setup request is an incoming call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device, specifically including the following steps: Obtain the specific logical identifier pointed to by the incoming call request; Detect whether there is an idle physical port; an idle physical port has call receiving capability and is used to receive specific logical identifiers; If a free physical port exists, a ringing signal is sent to all free physical ports; otherwise, the user is prompted to call back later. Obtain the response to the ringing signal and determine the target physical port based on the response.

5. The method for dynamically allocating logical identifiers in a communication device as described in claim 4, characterized in that, The target physical port is determined based on the response to the ringing signal, specifically including the following steps: Obtain the off-hook time information of physical ports with call receiving capabilities; Based on the off-hook time information, the physical port that is the first to be off-hook is taken as the target physical port.

6. The method for dynamically allocating logical identifiers in a communication device as described in claim 5, characterized in that: After determining the target physical port based on the response to the ringing signal, the method also includes: stopping the sending of ringing signals to all idle physical ports that have call receiving capabilities.

7. The method for dynamically allocating logical identifiers in a communication device as described in claim 1, characterized in that: Configure call initiation or call reception capabilities for each physical port of the communication device, specifically including: The multiple physical ports are divided into a call initiation port group and a call receiving port group; The logical identifier pool is divided into a first logical identifier set and a second logical identifier set; The call initiation port group is configured to have call initiation capability and is configured to allow the use of the first logical identifier set; The call receiving port group is configured to have call receiving capability and is configured to allow the use of a second logical identifier set.

8. The method for dynamically allocating logical identifiers in a communication device as described in claim 7, characterized in that: When the call setup request is an incoming call request, a logical identifier and a physical port are determined from the logical identifier pool and multiple physical ports of the communication device, specifically including the following steps: Obtain the second logical identifier set pointed to by the incoming call request; Check if there are any idle logical identifiers in the second set of logical identifiers, and whether there are any idle physical ports; If an idle logical identifier exists and an idle physical port exists, a ringing signal is sent to all idle physical ports that have call receiving capabilities; otherwise, the user is prompted to call later. The target physical port is determined based on the response to the ringing signal, and an idle logical identifier is determined from the idle logical identifiers based on the selection response from the incoming user equipment.

9. The method for dynamically allocating logical identifiers in a communication device as described in claim 1, characterized in that: The logical identifier includes a telephone number, and the communication device includes a POL device.

10. A dynamic allocation logical identifier system in a communication device, characterized in that, It includes: The resource pooling management module is used to aggregate multiple logical identifiers that have been registered in the voice server into a logical identifier pool; The port capability configuration module is used to configure call initiation capability or call reception capability for each physical port of the communication device. The association control module is used to, in response to a call establishment request, determine a logical identifier and a physical port from the logical identifier pool and multiple physical ports of the communication device; and temporarily associate the determined logical identifier and physical port to establish a call. The resource recycling module is used to release the temporary association after the call ends and recycle the logical identifier used in the call to the logical identifier pool.