Prioritized call sessions

The call handling device efficiently manages concurrent call sessions by prioritizing critical calls using available session identifiers, addressing the limitations of conventional systems in handling multiple sessions and ensuring uninterrupted service for alarm systems.

CA2713046CActive Publication Date: 2026-07-07COMCAST CABLE COMM LLC

Patent Information

Authority / Receiving Office
CA · CA
Patent Type
Patents
Current Assignee / Owner
COMCAST CABLE COMM LLC
Filing Date
2010-08-16
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

Conventional alarm systems often seize an outgoing telephone line, disrupting existing calls, and existing call handling devices are limited in their ability to manage multiple concurrent sessions efficiently, particularly when prioritizing calls for critical devices like alarm systems.

Method used

A call handling device with multiple local network interfaces manages concurrent call sessions using call session identifiers, prioritizing calls for critical devices by establishing sessions with available identifiers and dropping existing sessions if necessary, while supporting various communication protocols and interfaces.

Benefits of technology

Ensures uninterrupted prioritization of critical calls, such as from alarm systems, by efficiently managing call sessions across different interfaces and protocols, minimizing disruptions to other ongoing calls.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

A local network call handling device is configured to establish multiple concurrent call sessions between local network end devices and an external network. When a prioritized end device attempts to establish a call session, the call handling device may initially determine if a first call session identifier is available. If so, the call session can be established using that first identifier. If the first identifier· is in use for a call session of another end device, the call handling device may either use a different call session identifier for the prioritized end device session or may drop a pre-existing call session to free an identifier for use in connection with the prioritized end device.
Need to check novelty before this filing date? Find Prior Art

Description

CA 02713046 2010-08-16 PRIORITIZED CALL SESSIONS BACKGROUND It is under some circumstances desirable to give a specific device prioritized use of an outgoing communication channel. One example is an alarm system in a residence or business. Alarm systems are often configured to generate an outgoing telephone call to an alarm monitoring company or other destination if a break-in, fire or other event triggers the alarm. Typically, such alarms and other devices in a premises are connected to a conventional analog telephone line using a RJ3 IX connector or through some other type of hardware-based line seizure device. If triggered, the alarm system can seize that telephone line and drop any other call that might currently be taking place. Although this arrangement has worked well, it is at best an incomplete solution in other communication environments. SUMMARY This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the invention. In at least some embodiments, a call handling device in a subscriber premises has multiple local network interfaces for communication with an alarm or other prioritized end device and with other end devices such as cordless handsets. The call handling device further includes an interface to an external network and is configured to establish multiple concurrent call sessions between the end devices and the external network. The call sessions could include voice calls, and may be established using multiple telephone numbers or other call session identifiers assigned to the call handling device or to a subscriber account with which the call handling device is associated. When the prioritized end device requests that a call session be established, the call handling device may initially determine if a first of the call session identifiers is available. If so, the requested call session can be established using that first identifier. If the first identifier is in use for a call session of another end device, the call - I - CA 02713046 2010-08-16 handling device may then determine if any of the other call session identifiers is available. If so, one of those other identifiers can be used to establish the call session for the prioritized end device. ff all of the other identifiers are in use for call sessions of other end devices, one of those call sessions can be dropped and the identifier previously used for the dropped session can be used to establish the requested call session for the prioritized end device. BRIEF DESCRIPTION OF THE DRAWINGS Some embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements. FIG. I is a diagram of an environment in which at least some embodiments may be implemented. FIG. 2. is a block diagram showing additional details of the call handling device in FIG. l. FIG. 3 is a flow chart showing operations performed by a processor, in a local call handling device according to some embodiments, in response to a request from an alann system to establish a call session. . FIGS. 4 and 5 are communication diagrams showing establishment of a call session • for an alarm system according to some embodiments. FIGS. 6A and 6B show operations of a processor, in a local call handling device according to some fu.rther embodiments, using SIP signaling. FIG. 7 is a flow chart showing operations performed by a processor, in a local call handling device according to some additional embodiments, in response to a request from an alarm system to establish a call session. -2- CA 02713046 2010-08-16 FIGS. 8A and 8B are flow charts showing operations performed by a processor in a local call handling device according to additional embodiments. FIG. 9 is a diagram of an environment in which at least some additional embodiments may be implemented, and showing a local call handling device according to certain additional embodiments. FIGS. l0A and 10B are flow charts showing operations performed by a processor in the local call handling device of FIG. 9, FIG. 11 is a diagram of an environment in which at least some additional embodiments may be implemented, and showing a local call handling device according to one such additional embodiment. DETAILED DESCRJPTION FIG. l is a diagram of an envirqnment in which at least some embodiments may be implemented. A local network 101 is situated in a subscriber premises 102. Local network 101 includes a call handling device 103, an alarm system 104 and a plurality of handset end devices 105-1 through 105-n. Call handling device 103, which is described in more detail below, may include components con6.gured to perform operations of an Embedded Media Tenninal Adapter (EMTA), an Embedded Digital Voice Adapter (EDVA) or another type of local communication gateway. Call handling device 103 communicates with alarm system 104 over a first analog interface 106A and with an analog telephone 107 over a second analog interface 106B. In particular, each of interfaces 106A and 106B pennits conventional analog telephony devices to communicate via call handling device 103. In the embodiment of FIGS. l and 2, each of interfaces I 06A and I 06B includes an RJ-11 connector and a SLIC (Subscriber Line Interface Circuit). The SLIC is connected to an analog-to-digital converter (ADC) within call - 3 - CA 02713046 2010-08-16 handling device I 03 that converts an analog input signal ( e.g., tones or other input from alarm system 104, a voice signal from an analog telephone) into digital samples prior to sending the input signal to the processor of call handling device l 03. In some embodiments, and as shown in broken lines, a RJ-31X connector 108 (or other type of line seizure device) can be used to connect alarm system I 04 and additional analog devices (e.g., another analog telephone 112) to interface 106A. In this manner, multiple devices can share analog interface 106A, but alarm system I 04 can (using RJ-31 X connector 108) seize interface l 06A from telephone 112 and other devices sharing interface 106A. Handset end devices 105-1 through 105-n communicate with call handling device 103 over DECT (Digital Enhanced Cordless Telephone) interface 109. Interface 109 includes a wireless transceiver that converts radio signals received from hand_sets I 05-1 through l 05-n into pulse-code modulated (PCM) signals and provides those signals to the processor of call handling device I 03. The transceiver similarly converts PCM signals received from that processor into radio communications to handsets l 05-1 through I 05-n. Call handling device l 03 also communicates with an external network 110 over a packet data interface I 11. In some embodiments, packet data interface 111 includes a coaxial cable connection over which data is carried according to one or more specifications of the Data Over Cable System Interface Specifications (DOCSIS). Call handling device l 03 establishes call sessions between end devices and external network 110. For example, a user of handset end device 105-1 may wish to establish a voice communication call session with a party at a remote device located in (or reachable through) external network 110. In response to user input, end device 105-1 transmits a signal to call handling device 103 indicating a request to establish the call session. Call handling device 103 then communicates with one or more elements in external network 110 that set up the call session with the called party. In some embodiments, the elements in external network 110 with which call handling device 103 communicates to establish call sessions include one or more Cable Modem Termination Systems (CMTS) and / or one or more Call Management Servers (CMS). In still other embodiments, the external network elements with which call handling device I 03 - 4 • CA 02713046 2010-08-16 communicates to establish call sessions may include one or more IP Multimedia Subsystem (IMS) elements. In a similar manner, a party using a device in external network 110 (or communicating through external network 110) may attempt to establish a call session with a user at premises I 02. Upon receiving communications over packet data interface 111 indicating the externally-initiated attempt to establish a call, call handling device I 03 / completes the call session by establishing communication with one or more end devices. In many cases, a call session may be a voice call session that will appear to the user as a conventional telephone call. For example, external network 110 may be the network of a Multiple Services Operator (MSO) providing cable television (CA TV) services, high-speed data services and / or Voice over Internet Protocol (VoIP) or other type of packet-based telephony services. Other types of call sessions may also be established through call handling device l 03, however. For example, some call sessions may involve transfer of data used to generate text, graphics or other visually-perceptible material on an end device. Some call sessions may be primarily one-way communication sessions (e.g., streaming audio or video). When establishing a call session, call handling device 103 associates the session with a call session identifier. A call session identifier can be a telephone number (TN) and / or may • include other data. In networks employing Network-based Call Signaling (NCS) call setup, an identifier may include a NCS ID that is mapped to a particular telephone number. In such a circumstance, the call session might appear to the user as though it were being carried over a telephone· "line" corresponding to that TN. However, the call session would actually comprise a collection of data packets that are identified by (or otherwise correspond to) the telephone number and / or other call session identifier. Other simultaneously occurring call sessions would then comprise other groups of data packets that correspond ~o different TNs (and / or other type of session identifiers). In the example of FIG. 1, the operator of network 110 has assigned N call session identifiers to the subscriber account associated with premises l 02. As used herein, a - 5 - CA 02713046 2010-08-16 "subscriber" is a person, corporation or other entity that has arranged to obtain access to, and one or more services from, network 110 and an "account" is a construct used to group various data items related to providing a subscriber with services in the network. In the current example, the operator of network l l 0 has established an account for premises 102 and associated that account and its assigned TNs with call handling device 103. This is only one example, however, and an account need not be assigned to a particular type of entity or be associated with a single premises or call handling device. When a call session is established, one of the TNs assigned to the premises I 02 account (or another call session identifier corresponding to one of the TNs) is used to identify data packets that are part of that call session. While that call session is ongoing, and in at least some embodiments (e.g., embodiments using NCS signaling), the same TN is not used in connection with other call sessions. If all of the call session identifiers are associated with ongoing call sessions when a user or device seeks to establish another call session, no identifier will be available. Until one of the session identifiers is freed ( e.g., by ending one of the ongoing call sessions), call handling device 103 will not establish a new call session. In theory, the number of concurrent call sessions conducted through a call handling device is only limited by the infonnation carrying capacity of the connection between a call handling device and an external network. As a practical matter, however, there are often other constraints on the number of concurrent sessions. For example, increasing the number of concurrent call sessions that can be accommodated increases the complexity of a call handling device. Increased complexity usually increases device cost. Accordingly, economic concerns may prevent building of call handling devices able to accommodate more than a few concurrent sessions. Regulatory concerns could also limit the number of concurrent sessions pennitted through a particular call handling device. In some embo~im~nts,. the number of call session identifiers assigned to an account may thus be different from the maximum number of concurrent call sessions. As but one example, the operator of network 110 may assign five call session identifiers to the premises 102 account (i.e., N=5), but call handling device 103 may only be able to accommodate four simultaneous call sessions (e.g., up to -6- CA 02713046 2010-08-16 three call sessions using interface 109 and a call session using one of interfaces l 06A and 1068). FIG. 2 is a block diagram showing additional details of call handling device 103 from FIG. I. A main processor 201 is configured to execute instructions so as to perform various operations as described herein, to perform various DOCSIS MAC and PHY (physical) layer operations, to perform call setup and other call handling procedures in accordance with·NCS protocols (as described in PACKETCABLE specifications available from Cable Television Laboratories, Inc. of Louisville, Colorado), and to control operation of other components of call handling device 103. Instructions executed by main processor 201 may be hard-wired logic gates and / or may be instructions read from memory 202. Main processor 20 l communicates with external network 110 across an interface 111 that includes a coaxial cable connector 203, a duplex filter 204, a wideband tuner 205 and an upstream communication amplifier 206. As indicated above, call handling device 103 communicates with alarm system 104 over analog interface 106A, with analog telephone I 07 over analog interface 106B, and with handsets 105-1 through 105-n over DECT interface 109. In some embodiments, call handling device I 03 may include additional interfaces that have hardware and / or firmware that facilitate communications with numerous other types of end devices. Such interfaces can include a USB interface, a MOCA (Multimedia Over Coax) interface, a 2.4 GHz WiFi interface, a 5 GHz WiFi interface, and / or an Ethernet interface. A power supply 207 and / or battery backup 208 provide electrical power. User input to call handling device I 03 may be provided from an end device over one of the aforementioned interfaces or via a separate collection of buttons or other controls in a console 209. In addition to NCS call setup and handling and other operations described herein, call handling device 103 could in some embodiments also be configured to act as a local gateway for other types of services received via interface 111 (e.g., CATV or other broadcast video programming; high speed data service, etc.). Processor 201 is configured to prioritize any communications through first analog interface l 06A. In this manner, a prioritized end device can be connected to interface I 06A - 7 - CA 02713046 2010-08-16 and be assured of the ability to establish a call session. Alann system I 04 is the prioritized end device in the present example, but this need not be the case. In at least some embodiments, processor 20 l associates both first analog interface l 06A and second analog interface 106B with a first NCS ID (or other call session identifier). Any of handset devices l 05-1 through l 05-n can initiate call sessions that use the first NCS ID, however. Those handsets may also initiate call sessions that use any of the other NCS IDs available to call handling device 103. Devices communicating through interface l 06B (telephone I 07) can initiate call sessions that use the first NCS ID, but cannot initiate call sessions using other NCS IDs. When alarm l 04 is triggered, however, any pre-existing call session over interface 106B will be dropped so that alarm system 104 can use the first NCS ID. If there is no preexisting call session over interface I 06B but the first NCS ID is being used in a call session for one of handsets l 05-1 through 105-n, processor 201 will attempt to find another NCS ID for use in the prioritized call session that alarm system 104 is initiating. If no other NCS IDs are free, processor 201 will drop the call session that is currently utilizing the first NCS ID and allow alarm 104 to use that NCS ID. FIG. 3 is a flow chart showing operations performed by processor 201 in response to a request from alarm system 104 to establish a call session. The algorithm of FIG. 3 assumes that each of the N TNs assigned to the premises 102 account by the operator of network 110 is mapped to a corresponding NCS ID. In particular, TNI is mapped to NCS IDI, 1N2 is mapped to NCS ID2, ... , and TNN is mapped to NCS ION. Moreover, NCS IDl (TN!) is associated with interfaces 106A and 106B. The algorithm of FIG. 3 further assumes that any of handsets I 05-1 through 105-n communicating through interface I 09 of call handling device 103 can use any of those NCS IDsrrNs that is not currently being used for a preexisting call session. In block 301, processor 201 receives a signa!indicating that a device communicating through analog interface I 06A is requesting that a call session be established. In response, processor 20 l proceeds to block 302 and determines if a first NCS lD (NCS ID 1) is currently in use for an ongoing call session. If not, processor 20 I proceeds on th~ "no" branch to block - 8 - CA 02713046 2010-08-16 303 and selects NCS ID l. Processor 201 then proceeds to block 313 and establishes a prioritized call session for the end device on interface l 06A using the selected NCS ID. As part of block 313, processor 201 may also disable interface 106B until the prioritized call session is completed. In this manner, a call session initiated by alarm system I 04 would not be interrupted if analog telephone 107 were to go off-hook during that prioritized call session. If in block 302 processor 201 determines that NCS ID l is currently in use, processor 20 l proceeds to block 304 on the "yes" branch and detennines if NCS ID I is in use for a call session involving a device communicating through second analog interface 106B. If so, processor 201 proceeds on the "yes" branch to block 310 (described below). If not, processor 201 proceeds on the "no" branch to block 306 and determines if there is another NCS ID assigned to the premises l 02 account that is not being used for an ongoing call session. If so, processor 201 proceeds to block 307 on the "yes" branch and selects one of the unused NCS IDs. Processor 20 l can make the selection in block 307 based on NCS ID ( e.g., select NCS ID2 if it is free, else select NCS ID3, etc.) or in some other manner. From block 307, processor 20 l proceeds to block 313 and establishes a prioritized call session for the end device on interface 106A using the selected NCS ID. Returning to block 306, processor 20 l proceeds on the "no" branch to block 310 if all other NCS IDs are in use for ongoing sessions. In block 310, processor 201 drops the session using NCS ID 1. If block 310 is reached from the "no" branch of block 306, a call session is not currently occurring through interface 106B, and identifiers NCS ID 1 through NCS ION are being used for call sessions by handsets communicating through interface 109. In such a case, the user(s) of handset(s) in the pre-existing NCS IDI call session will hear that session being interrupted, but pre-existing call sessions using other NCS IDs will not be affected. If block 31 O ~ii reached from the "yes" branch of block 304, the pre-existing NCS ID 1 call session could be occurring (a) solely over interface l 068, or (b) over both of interfaces I 06B and 109 ( e.g., a user of one of handsets l 05-1 through I 05-n may have bridged into a cat! session initially established over telephone I 07, or vice versa). In case (a) the user of telephone 107 will hear the pre-existing call session being interrupted, but any call sessions - 9 - CA 02713046 2010-08-16 through interface 109 using other NCS IDs will not be affected. In case (b), the user of telephone 107 and users ofhandset(s) bridged into the pre-existing NCS ID 1 call session will hear that session being interrupted, but any call sessions through interface 109 using other NCS IDs will not be affected. After dropping the pre-existing NCS ID I call session in block 310, processor 20 I proceeds to block 312 and selects NCS ID I. From block 312, processor 20 I proceeds to block 313 and establishes a prioritized call session for the end device on interface I 06B using the selected NCS ID. FIG. 4 is a communication diagram showing the establishing of a call session for alarm system 104 using an NCS JD other than NCS IDl. At line 4-1, handset device 105-1 sends a signal to call handling device 103 indicating a request to establish a call session using NCS ID 1. Call handling device l 03 then establishes that call session, as shown at lines 4-2 and 4-3. While that NCS IDl call session is ongoing, alarm system 104 is triggered and sends a signal to call handling device 103 indicating a request to establish a call session (line 4-4). Because the signal was received over interface 106A (FIG. 2), proce_ssor 201 of call handling device 103 initially associates the signal with NCS IDI (line 4-5). Upon determining that NCS ID I is in use for another call session, and upon determining that other call session does not involve interface I 06B, call handling devic.e l 03 selects another, unused, NCS ID (NCS ID2) at line 4-6. Using NCS ID2, call handling device 103 establishes a call session for alarm system 104 at lines 4-7 and 4-8. FIG. 5 is a communication diagram showing the establishing of a call session for alarm system 104 using NCS ID I. The example of FIG. 5 assumes that call handling device l 03 can establish up to three concurrent ?all sessions,• that the premises 102 account is. assigned TNI, TN2 and TN3 (NCS IDI, NCS ID2 and NCS lD3), and all NCS IDs are initially available. As shown by lines 5-1 through 5-3, lines 5-4 through 5-6, and lines 5-7 through 5-9, each of end devices l 05-1 through l 05-3 has sent a signal to call handling device 103 requesting establishment of a call session, with corresponding sessions being - IO - CA 02713046 2010-08-16 established using NCS IOI, NCS ID2 and NCS ID3. At line 5-10, and while call sessions using NCS ID l through NCS ID3 are ongoing, alann system I 04 is triggered and sends a signal to call handling device I 03 indicating a request to establish a call session. Because the signal was received over interface l 06A, processor 20 I of call handling device I 03 initially associates the signal with NCS lD l (line 5-l l ). At line 5-12, call handling device I 03 determines that NCS ID I is in use and that no other NCS IDs are available. Call handling device 103 drops the call session of end device l 05-1 using NCS ID 1 at lines 5-13 and 5-14. Using NCS lD l, call handling device l 03 establishes a call session for alarm system I 04 at lines 5-15 and 5-16. In other embodiments, a call handling device may be similar to call handling device l 03 of FIGS. l and 2, but instead be configured to perform call setup and other call handling procedures in accordance with Session Initiation Protocol (SIP). In at least some such embodiments, a unique SIP URI (unifonn resource identifier) is assigned to each end device (including the alarm system) and used when a call session is established. In some such embodiments, multiple end devices in a local network can participate in concurrent sessions using the same TN. In each of those sessions, the URI of each end device participating in the session is in,serted into the SIP "From" address field by the call handling device. Elements within the external network then set up the concurrent call sessions such that each is associated with the same TN. Thus, the alann system could participate in a first session using a particular TN (with the URI of the alann system in the SIP "From" address field) and other .end devices, , could participate in concurrent sessions using the same TN (with URis of the other devices inserted into the SIP "From" address fields in those other sessions). If the.. re is no limitation on the number of concurrent SIP call sessions that the call , .• handling de'lice in a local network could maintain (or if the maximum number of sessions has not been exceeded), and assuming that an alarm system is not sharing an analog interface with another end device that has an ongoing call session, there would be no need to drop a SIP session of one end device to establish a SIP session for the alarm system. If there is a limitation on the number of concurrent SIP sessions, however, the local call handling device - 11 - CA 02713046 2010-08-16 could be configured to perform operations such as are shown in FIG. 6A or 68. The operations of FIGS. 6A and 6B could be performed by a call handling device that is similar to call handling device 103 of FIGS. I and 2. Such a call handling device could have the same components shown in FJG. 2, except that that the processor of such a call handling device could be configured to execute (and / or the memory of such a device could store) instructions· for carrying out SIP-based operations such as shown in FIGS. 6A or 6B. Turning to FIG. 6A, the processor of the call handling device receives a signal in block 601 indicating a request by an end device on a prioritized interface to establish a SIP session. In response, the processor proceeds to block 602 and determines if the number of current SIP sessions exceeds a maximum. If not, the processor proceeds on the "no" branch to block 604 and allows the SIP session for the alarm system to be established. If the call handling device corresponds to an account that has multiple TNs, the call session established in block 604 can (based on the alann system URI in the SIP From field) be associated with a predetermined TN that is assigned to the alarm system. In this manner, the alarm monitoring company will receive caller identification data that corresponds to that predetermined TN. If the maximum number of SIP sessions are ongoing, the processor instead proceeds on the ''yes" branch to block 603 and drops one of those sessions. From block 603, the processor then proceeds to block 604 and allows the SIP session for the alarm system to be established using the URI of the alann system. Other call sessions may also be ongoing through other local communication interfaces of the call handling device, with such other call sessions using the same TN as the alarm system but involying devices having differentURls. In some additional embodiments employing a SIP-based call handling device, each of two analog interfaces such as interfaces 106A and 106B of FIG. I could be assigned the same SIP URI.· The call handling device could then be configured to prioritize a call session initiated over one of those analog interfaces so as to drop a pre-existing call session over the other of those analog interfaces. FIG. 6B is a flow chart showing operations by a processor in such an embodiment. In block 610, the processor of the call handling device receives a signal on a prioritized one of the two analog interfaces indicating a request to establish a SIP - 12 - CA 02713046 2010-08-16 session. The processor then determines in block 612 if there is a pre-existing call session over the other analog interface. If so, the processor proceeds to block 616 and drops the call session occurring over the other analog interface. From block 616 the processor proceeds to block 615 (described below). If in block 612 the processor determines there is no preexisting call session over the other analog interface, the processor proceeds to block 613 and determines if the number of current SIP sessions exceeds a maximum. If not, the processor proceeds on the "no" branch to block 615 and allows the SIP session to be established over the prioritized analog interface using the SIP URI assigned to the analog interfaces. If the call handling device corresponds to an account that has multiple TNs, and as indicated above in connection with FIG. 6A, the call session established in block 615 can be associated with a predetermined TN that is assigned to the alarm system. If the maximum number of SIP sessions are ongoing, the processor instead proceeds on the "yes" branch from block 613 to block 614 and drops one of those sessions. From block 614, the processor then proceeds to block 615 and allows the SIP session to be established over the prioritized interface using the SIP URI assigned to the analog interfaces. Other call sessions may also be ongoing through other local communication interfaces of the call handling device, with such other call sessions using the same TN as the alarm system but involving devices having different URis. Other embodiments include numerous variations on the devices and techniques described above. In some embodiments, for example, the local call handling device is configured to establish a call session for an alarm system using a specific TN (or a TN chosen from a few specified TNs) regardless of whether other 1Ns may be free. In some cases, for example, an alarm company with which an alarm system attempts to establish a call session may only recognize a specific TN (or a few specific TNs) as being associated with a particular premises. If another TN is used, the alarm company might be delayed in responding. FIG. 7 is a flow chart showing operations performed by a processor of a call handling device in some such embodiments. The operations of FIG. 7 could be performed by a call handling device that is similar to call handling device 103 of FIGS. l and 2. Such a call - 13 - CA 02713046 2010-08-16 handling device could have the same components shown in FIG. 2, except that the processor of such a call handling device could be configured to execute (and / or the memory of such a device could store) instructions for canying out operations such as shown in FIG. 7. The example of FIG. 7 assumes that the call handling device employs NCS signaling and can establish call sessions using NCS 101, NCS 102 and NCS 103, but that call sessions from the alann system must use NCS IDl or NCS 102. The example of FIG. 7 further assumes that three concurrent call sessions are allowed. In block 701, the processor receives a signal indicating that a device on a prioritized local interface (e.g., an interface such as interface l 06A in FIG. 2) is requesting that a call session be established. In response, the processor determines if either of NCS ID I or NCS ID2 is available. If so, the processor proceeds on the "yes" branch to block 706 and selects the first ofNCS ID! or NCS 102 that is available. The processor then proceeds to block 705 and establishes a call session for the device on the prioritized local interface using the selected NCS ID. If neither NCS ID! nor NCS ID2 is available in block 702, the processor proceeds on the "no" branch to block 703 and drops the call session of NCS ID 1. The processor then proceeds to block 704 and selects NCS ID l. The processor then proceeds to block 705 and establishes a call session for the device on the prioritized local interface using the selected NCS ID. FIG~. 8A and 8B show operations performed by a call handling device that is also similar to (and has the same components as) call handling device 103 of FIGS. 1 and 2, but in which the processor is configured to execute (and / or the memory stores) instructions for carrying out,operations such as shown in FIGS. 8A and 8B. That call handling device also includes a first analog interface (similar to interface 106A of FIGS. I and 2) that is prioritized ' . and connected to an alarm system, as well as a second analog interface (similar to analog interface I 06B of FIGS. I and 2) that is connected to an analog telephone. Beginning in block 801 of FIG. 8A, the processor receives-a signal indicating that a device communicating through the first (prioritized) analog interface is requesting that a call session be established. The processor proceeds to block 802 and determines if a call session identifier (NCS ID I), corresponding to a telephone number (TN l) associated with the two analog interfaces, is - 14 - CA 02713046 2010-08-16 available. If so, the processor proceeds on the "yes" branch to block 804 and establishes a call session using NCS ID 1 / TN l. While that call session is ongoing, the second (nonprioritized) analog interface is disabled and other devices (e.g., DECT handsets) communicating through other local communicati,)n interfaces cannot use NCS ID lffN I. If in block 802 the processor determines that NCS IOI is not available, the processor proceeds on the "no" branch to block 803 and drops the current call session using NCS IOI. That current call session may be occurring over the second (non-prioritized) analog interface, over another interface, or may be bridging the second analog interface and a DECT (or other) interface. The processor then proceeds to block 804 and establishes a call session over the prioritized analog interface using NCS ID 1. FIG. 8B shows operations performed by the processor of the same call handling device in response to input over the second (non-prioritized) analog interface. In block 850, the processor receives a signal from the non-prioritized analog interface indicating that a telephone or other device connected to that interface has gone off-hook. In block 851, the processor determines if the prioritized analog interface is in use. If so, the non-prioritized analog interface is disabled and the process ends on the "yes" branch. If the prioritized analog interface is not in use, the processor proceeds to block 852 and determines if NCS IDlfTNl is in use for a call session over one of the other local interfaces-. If so, the processor proceeds on the "yes" branch to block 853 and bridges the device connected to the nonprioritized analog interface into that pre-existing NCS IDlffNl call session. If NCS IDlfTNl is not in use, the processor proceeds on the "no" branch from block 852 to block 854. In block 854 the processor awaits further input (e.g., dialed numbers) and then establishes a call session using NCS ID 1. A call handling device operating as shown in FIGS. SA and 8B would be useful, e.g., in connection with alarm systems that require a specific NCS ID and / or TN so that an alarm monitoring facility will receive caller identification data associated with that specific NCS ID and / or TN. - 15 - CA 02713046 2010-08-16 FIG. 9 is a diagram of an environment in which at least some additional embodiments may be implemented, and showing a local call handling device 903 according to certain additional embodiments. Call handling device 903 is similat to call handling device 103 of FIGS. l and, except as described below, has components similar to those of call handling device 103. For example, device 903 includes a DECT interface 909 over which device 903 communicates with handsets 905-1 through 905-n and a packet data interface 91 I for communication with external network 910. Unlike call handling device 103, however, device 903 only has a single analog interface 906 connected to an alann system 904. Moreover, the processor of device 903 is configured to execute (and / or the memory stores) instructions for carrying out operations such as shown in FIGS. I OA or 1 OB. For example, FIG. l OA shows operations performed when device 903 is configured to always drop pre-existing call sessions using a specific identifier (NCS IDlrrNl) associated with interface 906 when alarm system 904 is triggered. Beginning in block I 00 I, the processor of device 903 receives a signal indicating the device on interface 906 is attempting to initiate a call session. In block l 002 the processor determines if NCS ID I is in use for a pre-existing call session. If not (i.e., NCS IDl is available), the processor continues to block I 004 and establishes a call session over interface 906 using NCS ID 1. If NCS ID I is not available, the processor proceeds from block 1002 on the "no" branch to block 1003 and drops the pre-existing call session using NCS IDI. The processor then proceeds to block 1004 and establishes a call session over interface 906 using NCS IDl. _1 FIG. 'IOB shows operations performed when device 903 is configured to only drop pre-existing ~all sessions using a specific identifier (NCS lD lrrNI) if no other identifiers are available. In block 1051 the processor receives a signal indicating the device on interface 906 is attempting to initiate a call session. In block 1052 the processor determines if NCS ID I is in use for a pre-existing call session. If not, the processor proceeds on the "no" branch to block 1053 and selects NCS IOI. The processor then proceeds to block 1058 and - establishes a call _session over interface 906 using the selected NCS ID (in this case, NCS ID 1 ). If in block I 052 the processor determines that NCS [D l is already in use, the process - 16- CA 02713046 2010-08-16 continues on the "yes" branch to block 1055 and determines if any other NCS £Os are free. If so, the processor continues to block l 054 and selects a free NCS ID, and then continues to block 1058. If in block 1055 the processor determines no other NCS ID is free, the processor continues to block I 056 and drops the pre-existing session using NCS ID l. The processor selects NCS IDl in block 1057 and then proceeds to block 1058. FIG. 11 is a diagram of an environment in which at least some additional embodiments may be implemented, and showing a local call handling 1103 device according to one such additional embodiment. Call handling device 1103 is similar to call handling device I 03 of FIGS. I and, except as described below, has components similar to those of call handling device l 03. For example, device 1103 includes a DECT interface 1109 over which device 1103 communicates with handsets 1105-1 through 1105-n and a packet data interface 1111 for communication with external network 1110. Device 1103 similarly has an analog interface 1106A connected to alarm system 1104. Unlike call handling device l 03, however, interface l 106B is an interface (e.g., an RJ14 interface) that can simultaneous allow separate call sessions over two separate lines 1121 and 1122. For example, first line 1122 could be connected to an analog telephone 1112 engaged in a call session using NCS IDlrrNl and second line 1121 could be connected to a fax machine 1107 engaged in a call session using NCS ID2rrN2. In some embodiments, the processor of device 1103 is configured to execute (and / or the memory of device 1103 stores) instructions that cause device 103 to associate a specific call identifier (NCS IDlrrNl) with interface 1106A and first line 1122 of interface I 106B. Interface I I 06A is then prioritized relative to that associated identifier and the first line of interface· 1106B in the same way that interface l 06A is prioritized relative to its associated identifier (NCS IDl) and interface 106B in the embodiment of FIGS. 1-3. A call session on the second line 1121 of interface 1106B would not be interrupted by triggering of alarm system 1104 because line 1121 is assigned an identifier (NCS ID2rrN2) other than the identifier (NCS IDlrrNI) associated with interface 1106A. Alternatively, interface 1106A could be prioritized relative to its associated identifier and the first line of interface 1106B in the same way that the first (prioritized) interf~ce in the - 17 - CA 02713046 2010-08-16 embodiment of FIGS. 8A and 8B is prioritized relative to NCS IOI and the second (nonprioritized) interface. In this alternate configuration, a call session on the second line 1121 of interface 1106B would also not be interrupted by triggering of alarm system 1104 because line 1121 is assigned an identifier (NCS ID2rrN2) other than the identifier (NCS IDirrNI) associated with interface 1106A. In some embodiments, one of the call handling devices described above may only be provisioned with a single telephone line (e.g., a single NCS ID / TN). For example, an operator of a network providing telecommunications services may charge a higher fee for additional call identifiers / TNs, and a subscriber may not wish to pay a fee for additional identifiers. Some such embodiments having two analog interfaces could operate in a manner similar to that described above in connection with FIGS. SA and SB. Some such embodiments having one analog interface could operate in a manner similar to that described above in connection with FIG. l0A. Certain embodiments may include a call handling device such as is described above, but that can be selectively provisioned so as to disable the prioritization of an analog interface. For example, call handling device 903 in some embodiments includes programming by which device can be selectively configured to disable an interface prioritization feature so as to not drop a pre-existing call session in response to an incoming signal on interface 906. Once device 903 is configured in this manner, device connected to interface 906 and attempting to establish a call session would not interrupt a pre-existing call session of a DECT handset using a NCS ID / TN associated with interface 906. If a preexisting call session is using the session identifier associated with interface 906, a telephone connected to interface 906 would simply bridge into that call session when that telephone goes off-hook. The ability to disable the prioritization feature would permit use of interface 906 for normal telephony devices in premises that do not have an alarm or otherwise do not need the p~i?ritization functionality. - 18 - CA 02713046 2010-08-16 Returning to FIG. 2, and as previously indicated, some embodiments may include a RJJ IX connector or other line seizure device that connects alarm system l 04 and another analog device such as telephone 112 to interface l 06A. As between alarm system I 04 and telephone 112, alarm system I 04 will have priority and be able to seize the connection to interface 106A from telephone 112. However, processor 201 will not differentiate between alarm system l 04 or telephone l I 2 when a signal requesting a call session is received over interface 106A. Accordingly, and assuming alarm system l 04 is not triggered, telephone 112 also has the power to initiate prioritized call sessions. Such an arrangement could be used, e.g., to create a "hotline" or other type of emergency communication system. The above discussion of FIGS. 1-7 describes prioritizing a call session over an analog interface l 06A relative to a call session over a second analog interface l 06B and / or relative to a call session over a DECT interface 109. In some embodiments, a call handling device may also be able to establish call sessions with end devices through USB, MoCA, WiFi, Ethernet and / or other types of interfaces. In some such embodiments, the processor may also be configured to prioritize a call session over one interface (e.g., analog interface 106A) relative to pre-existing call sessions over any of those other interfaces. Embodiments of the invention include a machine readable storage medium (e.g., a CD-ROM, CD-RW, DVD, floppy disc, FLASH memory, RAM, ROM, magnetic platters of a hard drive, etc.) storing machine readable instructions that, when executed by one or more processors, cause a call handling device or other device to carry out operations such as are described herein. As used herein (including the claims), a machine-readable storage medium is a physical structure that can be touched by a ·human. A modulated signal would not by itself constitute a machine-readable storage medium. Although some embodiments' have been described in the context of packet-based telephony services provided over a coaxial cable, the invention is not limfred in this regard. Otb.er embodiments include systems in which a gateway or other device located within a premises communicates with an external network over some other type of physical medium - 19 - CA 02713046 2010-08-16 (e.g., fiber optic cable, wireless transmission, twisted pair, etc.) using communications protocols other than those mentioned above. As but one example, a gateway or other device located at a subscriber premises in some embodiments could communicate with an external network using a Digital Subscriber Line (DSL) access network. In some such embodiments, the gateway is similar to that described above in connection with FIG. 2, but with interface 111 replaced with DSL interface hardware and with the processor configured to communicate using appropriate DSL access network protocol(s). As but another example, a gateway or other device located at a subscriber premises in other embodiments could communicate with an external network using a Fiber to the Home (FTIH) Passive Optical Network (PON) access network. A gateway in some such embodiments is also similar to that of FIG. 2, but with interface 111 replaced with PON interface hardware (or a connection to a separate Optical Network Tenninal (ONT)) and with the processor configured to communicate using appropriate access network protocol(s) (or communication protocol(s) for interfacing with an ONT). The foregoing description of embodiments has been presented for purposes of illustration and description. The foregoing description is not intended to be exhaustive or to limit embodiments of the present invention to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of various embodiments. Additional embodiments may not perform all operations, have all features, or possess all advantages described above. The embodiments discussed herein were chosen and described in order to explain the principles and the nature of various embodimenis and their practical application to enable orie skilled in the art to ~tilize the present invention in various embodiments and with various modifications as are suited to the particular u~e contemplated. The features of the embodime~ts described herein may be combined i~ all possible combinations of methods, apparatuses, modules, systems, and machine-readable storage media. Any and all permutations of features from above-described embodiments are the within the scope of the invention. - 20 •

Claims

CLAIMS:

1. A method comprising: receiving, from a prioritized device, a request to access a call connection; determining that the call connection is in use by a lower prioritized device; disconnecting the lower prioritized device from the call connection; connecting the prioritized device to the call connection; and denying a request for the call connection from a standard device having a lower priority than the lower prioritized device.

2. The method of claim 1, wherein the prioritized device is an alarm system, the lower prioritized device is a first telephone, and the standard device is a second telephone.

3. The method of any one of claims 1-2, further comprising se1zmg, from the lower prioritized device, the call connection.

4. The method of any one of claims 1-3, wherein the prioritized device and the lower prioritized device are in communication with a first interface, and wherein the standard device is in communication with a second interface.

5. The method of claim 4, wherein the first interface corresponds to a higher priority than the second interface.

6. The method of any one of claims 4-5, wherein the first interface comprises an analog interface and the second interface comprises an interface for packet-based communications.

7. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 1-6. - 21 - Date Re9ue / Date Received 2023-09-18 8. A system comprising: a device comprising: one or more processors, and memory storing instructions that, when executed by the one or more processors, cause the device to perform the method of any one of claims 1-6; and a prioritized device, wherein the prioritized device is configured to transmit the request to access the call connection.

9. A computer-readable medium storing computer executable instructions that, when executed, cause performance of the method of any one of claims 1-6.

10. A method comprising: receiving, from an alarm system, a request to access a call connection; determining that the call connection is in use by a first computing device; disconnecting the first computing device from the call connection; connecting the alarm system to the call connection; and denying a future request from a second computing device, having a priority different from the first computing device, for the call connection while the alarm system is connected to the call connection.

11. The method of claim 10, wherein the second computing device has a lower priority than the first computing device.

12. The method of any one of claims 10-11, wherein the first computing device has a lower priority than the alarm system.

13. The method of any one of claims 10-12, wherein the alarm system and the first computing device are in communication with a first interface, and wherein the second computing device is in communication with a second interface. - 22 - Date Re9ue / Date Received 2023-09-18 14. The method of any one of claims 10-13, wherein the alarm system and the first computing device are in communication with a first interface, the second computing device is in communication with a second interface, and the first interface corresponds to a higher priority than the second interface.

15. The method of claim 14, wherein the first interface comprises an analog interface and the second interface comprises a digital interface.

16. The method of any one of claims 10-15, further comprising: denying a future request from a third computing device having a lower priority than the alarm system.

17. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 10-16.

18. A system comprising: a device comprising: one or more processors, and memory storing instructions that, when executed by the one or more processors, cause the device to perform the method of any one of claims 10-16; and an alarm system, wherein the alarm system is configured to transmit the request to access the call connection.

19. A computer-readable medium storing computer executable instructions that, when executed, cause performance of the method of any one of claims 10-16.

20. A method comprising: receiving, from an alarm system, a request to access a call connection; - 23 - Date Re9ue / Date Received 2023-09-18 determining that the call connection ts m use by a first device usmg a first communication type; disconnecting the first device from the call connection; connecting the alarm system to the call connection; and denying a future request, for the call connection while the alarm system is connected to the call connection, from a second device using a second communication type.

21. The method of claim 20, wherein the second communication type has a lower priority than the first communication type.

22. The method of any one of claims 20-21, wherein the first communication type has a lower priority than a priority of the alarm system.

23. The method of any one of claims 20-22, wherein the alarm system and the first device are in communication with a first interface, and wherein the second device is in communication with a second interface.

24. The method of any one of claims 20-23, wherein the alarm system and the first device are in communication with a first interface, the second device is in communication with a second interface, and the first interface corresponds to a higher priority than the second interface.

25. The method of claim 24, wherein the first interface comprises an analog interface and the second interface comprises a second analog interface.

26. The method of any one of claims 20-25, further comprising: denying a future request from a third device that is associated with a communication type having a lower priority than a priority of the alarm system.

27. The method of claim 26, wherein the alarm system and the first device are in communication with a first interface, the second device is in communication with a second - 24- Date Re9ue / Date Received 2023-09-18 interface, the third device is in communication with a third interface, and the third interface has a lower priority than the first interface.

28. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 20-27.

29. A system comprising: a device comprising: one or more processors, and memory storing instructions that, when executed by the one or more processors, cause the device to perform the method of any one of claims 20-27; and an alarm system, wherein the alarm system is configured to transmit the request to access the call connection.

30. A computer-readable medium storing computer executable instructions that, when executed, cause performance of the method of any one of claims 20-27.

31. A method comprising: receiving, by a call handling device and from an alarm system, a request to establish a call connection, wherein: the call handling device communicates with the alarm system and a first computing device via a prioritized interface, the call handling device communicates with a second computing device via a nonprioritized interface, and the first computing device has a higher priority than the second computing device; dropping a pre-existing call connection used by the first computing device; and connecting the alarm system to the call connection. - 25 - Date Re9ue / Date Received 2023-09-18 32. The method of claim 31, wherein the alarm system has a higher priority than the first computing device.

33. The method of any one of claims 31-32, further comprising: denying a future request from the second computing device for the call connection while the alarm system is connected to the call connection.

34. The method of any one of claims 31-33, wherein the call handling device communicates with a third computing device via a local interface different from the prioritized interface and the non-prioritized interface.

35. The method of claim 34, wherein the third computing device comprises a handheld cordless phone.

36. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 31-35. 3 7. A system comprising: a device comprising: one or more processors, and memory storing instructions that, when executed by the one or more processors, cause the device to perform the method of any one of claims 31-35; and an alarm system, wherein the alarm system is configured to transmit the request to establish the call connection.

38. A computer-readable medium storing computer executable instructions that, when executed, cause performance of the method of any one of claims 31-35. - 26 - Date Re9ue / Date Received 2023-09-18 39. A method comprising: receiving, by a call handling device and from an alarm system via a line seizure device that is communicatively coupled to a first interface of the call handling device, a request to access a communication session; determining that the communication session is in use by a first computing device; disconnecting the first computing device from the communication session; connecting the alarm system to the communication session; and denying a future request from a second computing device that is communicatively coupled to a second interface of the call handling device and that has a priority different from the first computing device, for the communication session while the alarm system is connected to the communication session.

40. The method of claim 39, wherein the second computing device has a lower priority than the first computing device.

41. The method of any one of claims 39-40, wherein the first computing device has a lower priority than the alarm system.

42. The method of any one of claims 39-41, wherein the first interface has a higher priority than the second interface.

43. The method of claim 42, wherein the line seizure device comprises an analog interface and wherein the call handling device digitally prioritizes the first interface over the second interface.

44. The method of any one of claims 39-43, further comprising: denying a future request from a third computing device having a lower priority than the alarm system. - 27 - Date Re9ue / Date Received 2023-09-18 45. The method of claim 44, wherein the third computing device is in communication with a third interface of the call handling device, and the third interface has a lower priority than the first interface.

46. The method of any one of claims 39-45, wherein: the first computing device and the second computing device are telephones; the disconnecting the first computing device from the communication session and the connecting the alarm system to the communication session are based on the first computing device having a lower priority than the alarm system; and the denying the future request from the second computing device is based on the second computing device having a lower priority than the first computing device. 4 7. The method of any one of claims 39-46, wherein the first computing device is communicatively coupled to the first interface of the call handling device via the line seizure device.

48. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 39--47.

49. A system comprising: a device comprising: one or more processors, and memory storing instructions that, when executed by the one or more processors, cause the device to perform the method of any one of claims 39-47; and an alarm system, wherein the alarm system is configured to transmit the request to access the communication session.

50. A computer-readable medium storing computer executable instructions that, when executed, cause performance of the method of any one of claims 3 9-4 7. - 28 - Date Re9ue / Date Received 2023-09-18 51. A method comprising: receiving, by a call handling device and from an alarm device, a request to establish a communication session, wherein: a first interface communicatively couples the call handling device with a line seizure device that is communicatively coupled with: the alarm device, and a first computing device, a second interface communicatively couples the call handling device with a second computing device, the first computing device has a higher priority than the second computing device, and the alarm device has a higher priority than the first computing device; dropping a pre-existing communication session associated with the first interface and used by the first computing device; and establishing a new communication session via the first interface and for the alarm device.

52. The method of claim 51, wherein the first interface has a higher priority than the second interface.

53. The method of any one of claims 51-52, further comprising: denying a future request from the second computing device for the new communication session while the alarm device is connected to the new communication session.

54. The method of any one of claims 51-53, wherein a local interface, different from the first interface and the second interface, communicatively couples the call handling device and a third computing device.

55. The method of claim 54, wherein the third computing device comprises a handheld cordless phone. - 29 - Date Re9ue / Date Received 2023-09-18 56. An apparatus comprising: one or more processors; and memory storing computer-executable instructions that, when executed by the one or more processors, cause the apparatus to perform the method of any one of claims 51-55.

57. A system comprising: a device comprising: one or more processors, and memory storing instructions that, when executed by the one or more processors, cause the device to perform the method of any one of claims 51-55; and an alarm device, wherein the alarm device is configured to transmit the request to establish the communication session.

58. A computer-readable medium storing computer executable instructions that, when executed, cause performance of the method of any one of claims 51-55. - 30 - Date Re9ue / Date Received 2023-09-18