Patent Description:
A Public Safety Answering Point (PSAP) is a call center where emergency calls are received from distressed users. A worker at the call center who receives an emergency call is known as a call-taker. The job of a call-taker is to receive the emergency call, and quickly identify the caller's situation and location among other things and input this information into a CAD (Computer Aided Dispatch) system. Another worker at the call center is known as a dispatcher. The dispatcher reads the information entered the CAD system by the call-taker, and then broadcasts the call (over police radio) to an officer or field security personnel who is best suited to respond to the emergency of the caller. The call-taker and/or the dispatcher may need to make several decisions in a short time span, to be able to get the best match of the field security personnel directed to the caller. These field security personnel are known as First Responders (FRs). Generally, when an emergency call is received on the PSAP, the caller may be in urgent need of help. For example, if there is an accident situation or a medical emergency. And in such cases, the response time by the PSAP and the FRs is a crucial factor in saving lives.

<CIT> discloses a method and system for tracking and communicating with responders in the event of an emergency situation. An emergency server coupled to a wireless telecommunications network receives a notification of an emergency situation, establishes a first geofence around a location of the emergency situation, determines a set of candidate responders registered to an area associated with the location, transmits a request for user equipment (UE) locations of the set of candidate responders to a location server and receives a response, determines which UEs of candidate responders are within an area bounded by the geofence, and transmits messages soliciting responders to the UEs.

<CIT> discloses an emergency response system for receiving emergency calls, capturing caller locations, and dynamically improving reported emergency caller locations, e.g. by correcting reported locations using "ground truth" test data to compensate for known location reporting device inaccuracies. It also discloses geofencing to determine emergency service providers jurisdictions, and to enable the system to process emergency calls accordingly.

<CIT> discloses a method that includes: determining a location of a mobile computing device using GPS, Wi-Fi, beacon signals or other radio frequency data; identifying a plurality of candidate responders; selecting a particular candidate responder based on one or more of: user location, responder location, responder ratings, responder skills/training, type of situation, and a predefined list of responders; and initiating a two-way video chat session between the mobile computing device and the particular candidate responder over a network connection.

<CIT> discloses a smart phone app system for use by emergency responders. The system includes a server for processing and sending an alert signal indicating details of an emergency event to be displayed on an emergency responder's smart phone and displaying input buttons for allowing the emergency responder to provide a response signal indicating that they are responding or they are not responding by touching one of the input buttons. A map to the station or emergency site can be automatically displayed on the emergency responder's smart phone or other device and a list of other responders can be displayed with direct text or other communication being available to the other responders.

The present invention is provided in accordance with the subject matter of independent claims <NUM>, <NUM> and <NUM>. Further embodiments of the invention are provided in accordance with the subject matter defined by dependent claims <NUM>-<NUM>, <NUM>-<NUM> and <NUM>, respectively.

A first example of the present invention provides a method providing: capturing, by a capture device, an audio and location data each associated with an emergency call; refining, by the capture device, the location data to provide a refined location data, wherein the refined location data comprises one or more street addresses; correlating, by the capture device, the refined location data of the emergency call with a geofenced location of one or more computing devices of one or more first responders, FRs, wherein the geofenced location is specified by the one or more FRs for their own area of coverage, thereby limiting emergency calls only to the area they are interested in, and wherein correlating comprises determining by the capture device whether the refined location data of the emergency call is within a predetermined distance threshold from the geofenced location of one or more computing devices of the one or more FRs for the correlation; transmitting, by the capture device, a first signal to the one or more computing devices of one or more FRs based on the correlation, wherein the transmitted signal comprises at least a portion of the captured audio and the refined location data; receiving, by the capture device, an accept signal from the one or more computing devices of one or more FRs; and transmitting, by the capture device, a second signal to the one or more computing devices of one or more FRs based on the received accept signal, wherein the second signal comprises at least one of: an emergency response data, an Automatic Location Identification, ALI, data, and a global positioning system, GPS, data relating to the captured audio and the refined location data.

Additional method examples may include measuring, by the one or more computing devices of one or more FRs the actual time spent in monitoring of the emergency call by the one or more computing devices of one or more FRs and transmitting this measurement to the capture device for reporting and statistical analysis.

Additional method examples may include: receiving, by the one or more computing devices of the one or more FRs the first signal and sending, by the one or more computing devices of the one or more FRs, the accept signal to the capture device.

Additional method examples may include: monitoring duplicate calls associated with the emergency call.

Additional method examples may include: displaying, on a graphical user interface (GUI) of the one or more computing devices of the one or more FRs, one or more maps comprising at least one of a location history associated with the emergency call and a current location associated with the emergency call.

Additional method examples may include: providing, by a drone device, a geofencing range associated with the geofenced location of one or more computing devices of one or more first responders (FRs).

Additional method examples may include: determining the location associated with the emergency call based on the GPS location associated with a callback to the emergency number.

A second example of the present invention provides an apparatus comprising: at least one memory; at least one processor configured to execute instructions stored in the at least one memory in order to: capture, by a capture device, an audio and location data associated with an emergency call; refine, by the capture device, the location data to provide a refined location data, wherein the refined location data comprises one or more street addresses; correlate, by the capture device, the refined location data of the emergency call with a geofenced location of one or more computing devices of one or more first responders, FRs, wherein the geofenced location is specified by the one or more FRs for their own area of coverage, thereby limiting emergency calls only to the area they are interested in, and wherein to correlate, the processor is configured to: determine by the capture device whether the refined location data of the emergency call is within a predetermined distance threshold from the geofenced location of one or more computing devices of one or more FRs for the correlation; transmit, by the capture device, a first signal to the one or more computing devices of one or more FRs based on the correlation, wherein the transmitted signal comprises at least a portion of the captured audio and the refined location data; receive, by the capture device, an accept signal from the one or more computing devices of one or more FRs; and transmit, by the capture device, a second signal to the one or more computing devices of one or more FRs based on the received accept signal, wherein the second signal comprises at least one of: an emergency response data, and Automatic Location Identification, ALI data, and a global positioning system, GPS, data relating to the captured audio and the refined location data.

A third example of the present invention provides a computer programmable product comprising a non-transitory computer readable medium having stored thereon computer executable instruction which when executed by one or more processors, cause the one or more processors to carry out operations, the operations comprising: capturing, by a capture device, an audio and location data associated with an emergency call; refining, by the capture device, the location data to provide a refined location data, wherein the refined location data comprises one or more street addresses; correlating, by the capture device, the refined location data of the emergency call with a geofenced location of one or more computing devices of one or more first responders, FRs, wherein the geofenced location is specified by the one or more FRs for their own area of coverage, thereby limiting emergency calls only to the area they are interested in, and wherein correlating comprises determining by the capture device whether the refined location data of the emergency call is within a predetermined distance threshold from the geofenced location of one or more computing devices of one or more FRs for the correlation; transmitting, by the capture device, a first signal to the one or more computing devices of one or more FRs based on the correlation, wherein the transmitted signal comprises at least a portion of the captured audio and the refined location data; receiving, by the capture device, an accept signal from the one or more computing devices of one or more FRs; transmitting, by the capture device, a second signal to the one or more computing devices of one or more FRs based on the received accept signal, wherein the second signal comprises emergency response data, Automatic Location Identification, ALI, data , global positioning system, GPS, data relating to the captured audio and the refined location data, or a combination thereof.

The various embodiments of the present emergency response systems now will be discussed in detail with an emphasis on highlighting the advantageous features. These embodiments depict the novel and non-obvious emergency response mechanisms in accordance with systems shown in the accompanying drawings, which are for illustrative purposes only. These drawings include the following figures, in which like numerals indicate like parts:.

The following detailed description describes the present embodiments with reference to the drawings. In the drawings, reference numbers label elements of the present embodiments. These reference numbers are reproduced below in connection with the discussion of the corresponding drawing features.

The described technology concerns one or more methods, systems, apparatuses, and mediums storing processor-executable process steps to live stream emergency call data to first responders (FRs) in the field. In some embodiments, an FR can listen to a <NUM> emergency call in real time or live by providing the FR with all the details available to the PSAP call-taker and/or the dispatcher. Furthermore, other information would become available to the FR that would otherwise be unavailable to the FR in the field, such as tone of voice, sense of urgency, background noise, and other details the that the <NUM> call-taker and dispatcher may not have the time or the ability to relay to FRs in the field. This accessibility of the FRs in the field to the live <NUM> call may provide for eliminating the delay and/or decay of critical information relating to the callers and thereby significantly improving the response times and performance of the FRs in the field when responding to emergency calls or other similar urgent situations. The improvement in response times might make a difference that is lifesaving in some situations, for example, accidents, thefts, criminal attacks, terrorist attacks, and the like.

In some embodiments, programmable circuitry programmed or configured by software and/or firmware, or entirely by special-purpose circuitry, or in a combination of such forms may be provided to implement the various methods and systems disclosed herein. Such special-purpose circuitry (if any) can be in the form of, for example, one or more application-specific integrated circuits (ASICs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), and the like.

<FIG> and the following description provide a brief, general description of a suitable computing environment in which various embodiments of the present invention may be implemented. Although not required, various embodiments of the present invention may be described herein in the general context of computer-executable instructions, such as routines executed by a general- or special-purpose data processing device (e.g., a server or client computer). In some embodiments, the computer-executable instructions may be stored or distributed on tangible computer-readable media, including magnetically or optically readable computer discs, hard-wired or preprogrammed chips (e.g., EEPROM semiconductor chips), nanotechnology memory, biological memory, or other data storage media. Alternatively, computer-implemented instructions, data structures, screen displays, and other data related to the invention may be distributed over the Internet or other networks (including wireless networks) on a propagated signal on a propagation medium (e.g., an electromagnetic wave, a sound wave, etc.) over a period of time. In some implementations, the data may be provided on any analog or digital network (e.g., packet-switched, circuit-switched, or other scheme).

Many embodiments provide distributed computing environments where tasks or modules are performed by remote processing devices, which are linked through a communications network, such as a Local Area Network ("LAN"), Wide Area Network ("WAN"), or the Internet. In a distributed computing environment, program modules or subroutines may be in both local and remote memory storage devices. Those skilled in the relevant art will recognize that portions of the present invention may reside on a server computer, while corresponding portions may reside on a client computer (e.g., PC, mobile computer, tablet, or smart phone). In some embodiments, data structures and transmission of data particular to aspects of the invention are also encompassed within the scope of the described embodiments.

<FIG> illustrates a high-level block diagram of a system for transmitting emergency call data to one or more FRs in the field, in accordance with an embodiment of the invention. The emergency call data may comprise emergency call data that is live-streamed to the one or more FRs in the field. The system <NUM> may include an FR vehicle <NUM>, one or more FRs <NUM> (also referred to as FR <NUM> hereinafter), and a computing device <NUM> associated with the FR <NUM>. In one embodiment, the computing device <NUM> may be an in-vehicle device, a tablet, a laptop, or a mobile device, such as a smartphone. In one embodiment, the computing device <NUM> may be magnetically mounted to the dashboard of the FR vehicle <NUM>. In another embodiment, the computing device <NUM> may be integrated directly into the dashboard of the FR vehicle <NUM>.

The system <NUM> may further include a Public Safety Answering Point (PSAP) <NUM>, such as a call center responsible for answering calls to an emergency telephone number, such as <NUM>, and radio dispatching of emergency information to one or more FRs in the field. The PSAP <NUM> may include a capture device <NUM> and a control server <NUM>. In one embodiment, a trained operator located at the PSAP <NUM> may be responsible for receiving and dispatching emergency services. The trained operator may be an emergency call taker responsible for taking and directing emergency calls.

The FR vehicle <NUM> may be located within a geofence location <NUM>. In an embodiment, a geofence is a location-based service in which an application or other software that supports a global positioning system (GPS), Bluetooth, Wi-Fi, or cellular data may trigger a pre-programmed action when a mobile device or RFID tag enters or exits a virtual boundary set up around a geographical location, such as a virtual boundary around the FR vehicle <NUM>. In one embodiment, the capture device <NUM> may configure the geofence location <NUM> around the FR vehicle <NUM> based on GPS data received from the computing device <NUM> at the capture device <NUM>. In one embodiment, the geofence location <NUM> may be configured to allow for tracking of the FR vehicle <NUM>.

When an emergency call, such as a <NUM> call, is transmitted to the PSAP <NUM>, the capture device <NUM> captures the audio as well as location data associated with the emergency call. Further, the capture device refines the location data by identifying more precise information about the location data. The more precise information may be identified by sending queries related to more information about location data to third party service providers, like RapidSOS® and ArcGIS®. For example, by querying the third-party data clearing house like RapidSOS® and third party geocoding service like ArcGIS®, the location data may be refined with more rich information about street addresses. This refined location data further helps to increase the accuracy of service provided by the PSAP <NUM> and specifically the control server <NUM>. The control server <NUM> then correlates the refined incoming call information with the geofenced locations of all FRs, such as the geofence location <NUM> of the FR <NUM>. The correlation is done based on the geofenced location <NUM> of the computing device <NUM> of the FR <NUM>, as the computing device, <NUM> is configured for capturing location data, such as GPS data, of the FR <NUM>. In an embodiment, as a part of ensuring that the system does not interfere with other existing applications that the FR <NUM> may be using, additional capabilities may be added to a GPS proxy to allow for multiple applications to receive GPS signals from one source. The system <NUM> may query a local server URL hosted by the GPS proxy application which can read a more accurate location from a GPS receiver to provide the location of the FR <NUM> and their own geofenced location <NUM>. The control server <NUM> then directs the captured audio to an application (e.g. application <NUM> of <FIG> described below) associated with the computing device <NUM> of the FR <NUM>, allowing the FR <NUM> to listen to the call in real-time. The control server <NUM> may also transmit the location data to a mapping function of the application associated with the computing device <NUM> of the FR <NUM>. In one embodiment, the control server <NUM> may also transmit the location data to be displayed as a table on a user interface of the computing device <NUM> (e.g., user interface <NUM> described in <FIG> and <FIG>).

In an embodiment, the system <NUM> may be configured to track usage reports associated with the use of the system <NUM>, such as the usage data of the application <NUM> installed on the computing. In the usage report, the control server <NUM> may store a log of users using the application (e.g. application <NUM> of <FIG> described below) as a database and store it in form of a. csv file in the control server <NUM>. In another embodiment, the file may be stored in form of any other known format such as a. pdf file, Word, or Excel. The usage report may be used later for purpose of statistical analysis such as to determine the areas or regions where the number of accident cases is high. The usage report may also be used for collecting the information related to weather or reason for accidents in some embodiments. The usage report may be used later to measure improvements in emergency response time.

In one embodiment, the usage report may also include information about actual time spent by the FR <NUM> or their computing device <NUM>, in monitoring the emergency call. The monitoring may be done either by the capture device <NUM>, or by the computing device <NUM>, or both. This information in the usage report may be transmitted to the capture device <NUM>, and further used for statistical analysis of call related data.

In one embodiment, if more than more one person is monitoring <NUM> calls at PSAP <NUM>, then it may result in two calls from the same caller. For example, one is a training call-taker, and one is the usual call-taker or dispatcher. And in such cases, the call may be processed on more than one channel. Therefore, there is a need to filter and eliminate duplicate calls. In this case, the control server <NUM> may check the caller id for both the calls and consider the second call as duplicate if the caller ID for both the call are same, and thereby eliminate the duplicate call.

In an embodiment, the call-taker or dispatcher, using the system <NUM>, at the PSAP <NUM> may view the location of the caller on the map for their own calls only while eliminating other calls. The dispatchers may also see the various units in the area and can make an appropriate decision on whom to dispatch the call to.

In an embodiment, the capture device <NUM> may screen all the incoming emergency calls and their associated metadata. The screening may be done to filter the emergency call metadata and select only emergency calls of interest or relevance to the FR <NUM>. Thus, based on the preference set by the computing device <NUM> of the FR <NUM>, only emergency call of interest may be sent to the computing device <NUM> of the FR <NUM>. Such filtering helps to reduce distractions and cognitive load experienced by the FR <NUM>.

In an embodiment, the system <NUM> may be configured to perform local storage of all the calling numbers from which the FR <NUM> received the call for a time period of <NUM> mins. In an embodiment, the time period may vary and may be <NUM> minutes, or <NUM> hours depending on the different conditions and if multiple calls are within the geofence location <NUM> of the FR <NUM>, all calls are displayed on the mapping function. The time period for viewing the calls may be configurable and can be set to any value as per user and/or dispatcher preference and requirement, without deviating from the scope of the invention.

In some embodiments, when a caller calls on a <NUM> emergency number, the live streaming of data is triggered based on their Automatic Location Identification (ALI) data. The ALI data comprises data related to the caller's location/address, telephone number, and/or some supplementary emergency data. This data is generally stored in an Enhanced <NUM>-<NUM>-<NUM> database and can be retrieved in case of emergency calls by the caller's calling service provider. But sometimes the call abruptly hangs up because of one reason or the other. And if the call-taker or dispatcher calls back on the number, then it may become difficult to determine the location of the caller as the outgoing call is not associated with any location or GPS data for live streaming. The present disclosure provides an advantage over known solutions by storing the GPS information associated with the incoming calls in the control server 112th. And when the call-taker or dispatcher calls back on the number associated with the incoming call on <NUM> emergency number or PSAP, it may use the GPS information and location data associated with the previous incoming call to decide the live streaming of data.

In an embodiment, the system <NUM> may have the ability to adjust the initial playback rate of the call so that it may be played faster in the beginning to catch up with any delay before the call is played by a user, such as the FR <NUM>. For example, if the user is listening to another call before switching to the current call, they can increase the rate of the current call to compensate for the time lag due to attending of the previous call. In a similar way, normal playback rate of the call may also adjustable if needed. This also compensates for the delay between the actual call start and the arrival and correlation of location data. In some embodiments, the FR <NUM> can access all the features of the system <NUM> described above, by using the computing device <NUM>.

<FIG> illustrates a high-level block diagram and process of a computing system, such as system <NUM> or computing device <NUM>, for implementing live streaming emergency dispatch data to one or more FRs in the field, in accordance with an embodiment of the invention. Embodiments of the system may be implemented in different computing environments. The computer system <NUM> includes one or more processors <NUM>, and can further include an electronic display device <NUM> (e.g., for displaying graphics, text, and other data), a main memory <NUM> (e.g., random access memory (RAM)), storage device <NUM>, a removable storage device <NUM> (e.g., removable storage drive, a removable memory module, a magnetic tape drive, an optical disk drive, a computer readable medium having stored therein computer software and/or data), user interface device <NUM> (e.g., keyboard, touch screen, keypad, pointing device), and a communication interface <NUM> (e.g., cellular radio, modem, a network interface (such as an Ethernet card), a communications port, or a PCMCIA slot and card). The communication interface <NUM> allows software and data to be transferred between the computer system and external devices. The system further includes a communications infrastructure <NUM> (e.g., a communications bus, cross-over bar, or network) to which the devices/modules are connected as shown.

The processor <NUM> may be embodied in several different ways. For example, the processor <NUM> may be embodied as one or more of various hardware processing means such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing element with or without an accompanying DSP, or various other processing circuitry including integrated circuits such as, for example, an ASIC (application specific integrated circuit), an FPGA (field programmable gate array), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, or the like. As such, in some embodiments, the processor <NUM> may include one or more processing cores configured to perform independently. A multi-core processor may enable multiprocessing within a single physical package. Additionally, or alternatively, the processor <NUM> may include one or more processors configured in tandem via the bus to enable independent execution of instructions, pipelining and/or multithreading.

In some embodiments, the processor <NUM> may be configured to provide Internet-of-Things (IoT) related capabilities to the users of the system <NUM>, where the users may be in a vehicle, in a public area, on a highway, or walking and the like. The IoT related capabilities may in turn be used to provide real time updates to the FRs users to take pro-active decision for helping the users. The system <NUM> may be accessed using the communication interface <NUM>.

In an embodiment, the Information transferred via communications infrastructure <NUM> may be in the form of signals such as electronic, electromagnetic, optical, or other signals capable of being received by communications interface <NUM>, via a communication link <NUM> that carries signals and may be implemented using wire or cable, fiber optics, a phone line, a cellular/mobile phone link, an radio frequency (RF) link, and/or other communication channels. Computer program instructions representing the block diagram and/or flowcharts herein may be loaded onto a computer, programmable data processing apparatus, or processing devices to cause a series of operations performed thereon to produce a computer implemented process.

Embodiments have been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments. Each block of such illustrations/diagrams, or combinations thereof, can be implemented by computer program instructions. The computer program instructions when provided to a processor produce a machine, such that the instructions, which execute via the processor, create means for implementing the functions/operations specified in the flowchart and/or block diagram. Each block in the flowchart/block diagrams may represent a hardware and/or software module or logic, implementing embodiments. In alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures, concurrently, etc..

In an embodiment, the computer programs (i.e., computer control logic) are stored in main memory and/or secondary memory. The Computer programs may also be received via a communications interface <NUM>. Such computer programs, when executed, enable the computer system to perform the features of the embodiments as discussed herein. In particular, the computer programs, when executed, enable the processor and/or multi-core processor to perform the features of the computer system. Such computer programs represent controllers of the computer system.

<FIG> illustrates a block diagram and process of an exemplary system for live streaming emergency call data to one or more FRs in the field, in accordance with an embodiment of the invention. The system <NUM> includes one or more client devices <NUM> such as consumer electronics devices, connected to one or more server computing systems <NUM>. A server <NUM> includes a bus <NUM> or other communication mechanism for communicating information, and a processor (CPU) <NUM> coupled with the bus <NUM> for processing information. The server <NUM> also includes a main memory <NUM>, such as a random access memory (RAM) or other dynamic storage device, coupled to the bus <NUM> for storing information and instructions to be executed by the processor <NUM>. The main memory <NUM> also may be used for storing temporary variables or other intermediate information during execution or instructions to be executed by the processor <NUM>. The server computer system <NUM> further includes a read only memory (ROM) <NUM> or other static storage device coupled to the bus <NUM> for storing static information and instructions for the processor <NUM>. A storage device <NUM>, such as a solid state drive, magnetic disk or optical disk, is provided and coupled to the bus <NUM> for storing information and instructions. The bus <NUM> may contain, for example, sixty-four address lines for addressing video memory or main memory <NUM>. The bus <NUM> can also include, for example, a <NUM>-bit or <NUM>-bit data bus for transferring data between and among the components, such as the CPU <NUM>, the main memory <NUM>, video memory and the storage <NUM>. Alternatively, multiplex data/address lines may be used instead of separate data and address lines.

The server <NUM> may be coupled via the bus <NUM> to a display <NUM> for displaying information to a computer user. An input device <NUM>, including alphanumeric and other keys, is coupled to the bus <NUM> for communicating information and command selections to the processor <NUM>. Another type or user input device comprises cursor control <NUM>, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to the processor <NUM> and for controlling cursor movement on the display <NUM>.

According to one embodiment, the functions are performed by the processor <NUM> executing one or more sequences of one or more instructions contained in the main memory <NUM>. Such instructions may be read into the main memory <NUM> from another computer-readable medium, such as the storage device <NUM>. Execution of the sequences of instructions contained in the main memory <NUM> causes the processor <NUM> to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in the main memory <NUM>. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the embodiments. Thus, embodiments are not limited to any specific combination of hardware circuitry and software.

The terms "computer program medium," "computer usable medium," "computer readable medium", and "computer program product," are used to generally refer to media such as main memory, secondary memory, removable storage drive, a hard disk installed in hard disk drive, and signals. These computer program products are means for providing software to the computer system. The computer readable medium allows the computer system to read data, instructions, messages or message packets, and other computer readable information from the computer readable medium. The computer readable medium, for example, may include non-volatile memory, such as a floppy disk, ROM, flash memory, disk drive memory, a CD-ROM, and other permanent storage. It is useful, for example, for transporting information, such as data and computer instructions, between computer systems. Furthermore, the computer readable medium may comprise computer readable information in a transitory state medium such as a network link and/or a network interface, including a wired network or a wireless network that allow a computer to read such computer readable information. The computer programs (also called computer control logic) are stored in main memory and/or secondary memory. Computer programs may also be received via a communications interface. Such computer programs, when executed, enable the computer system to perform the features of the embodiments as discussed herein. In particular, the computer programs, when executed, enable the processor multi-core processor to perform the features of the computer system. Accordingly, such computer programs represent controllers of the computer system.

Generally, the term "computer-readable medium" as used herein refers to any medium that participated in providing instructions to the processor <NUM> for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such as the storage device <NUM>. Volatile media includes dynamic memory, such as the main memory <NUM>. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise the bus <NUM>. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.

In various embodiments, common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.

In some embodiments, various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to the processor <NUM> for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. A modem local to the server <NUM> can receive the data on the telephone line and use an infrared transmitter to convert the data to an infrared signal. An infrared detector coupled to the bus <NUM> can receive the data carried in the infrared signal and place the data on the bus <NUM>. The bus <NUM> carries the data to the main memory <NUM>, from which the processor <NUM> retrieves and executes the instructions. The instructions received from the main memory <NUM> may optionally be stored on the storage device <NUM> either before or after execution by the processor <NUM>.

In some embodiments, the server <NUM> (which may be equivalent to the control server <NUM> discussed in conjunction with <FIG>) also includes a communication interface <NUM> coupled to the bus <NUM>. The communication interface <NUM> provides a two-way data communication coupling to a network link <NUM> that is connected to the worldwide packet data communication network now commonly referred to as the Internet <NUM>. The Internet <NUM> uses electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on the network link <NUM> and through the communication interface <NUM>, which carry the digital data to and from the server <NUM>, are exemplary forms or carrier waves transporting the information.

In another embodiment of the server <NUM>, interface <NUM> is connected to a network <NUM> via a communication link <NUM>. For example, the communication interface <NUM> may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line, which can comprise part of the network link <NUM>. As another example, the communication interface <NUM> may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. In any such implementation, the communication interface <NUM> sends and receives electrical electromagnetic or optical signals that carry digital data streams representing various types of information.

The network link <NUM> typically provides data communication through one or more networks to other data devices. For example, the network link <NUM> may provide a connection through the local network <NUM> to a host computer <NUM> or to data equipment operated by an Internet Service Provider (ISP). The ISP in turn provides data communication services through the Internet <NUM>. The local network <NUM> and the Internet <NUM> both use electrical, electromagnetic or optical signals that carry digital data streams. An optional virtual private network (VPN) extends a private network across a public network, enabling a user to send and receive data across shared or public networks. The signals through the various networks and the signals on the network link <NUM> and through the communication interface <NUM>, which carry the digital data to and from the server <NUM>, are exemplary forms or carrier waves transporting the information.

In various embodiments, the server <NUM> can send/receive messages and data, including e-mail, program code, through the network, the network link <NUM> and the communication interface <NUM>. Further, the communication interface <NUM> can comprise a USB/Tuner and the network link <NUM> may be an antenna or cable for connecting the server <NUM> to a cable provider, satellite provider or other terrestrial transmission system for receiving messages, data and program code from another source.

The example versions of the embodiments described herein may be implemented as logical operations in a distributed processing system such as the system <NUM> including the servers <NUM>. The logical operations of the embodiments may be implemented as a sequence of steps executing in the server <NUM>, and as interconnected machine modules within the system <NUM>. The implementation is a matter of choice and can depend on performance of the system <NUM> implementing the embodiments. As such, the logical operations constituting said example versions of the embodiments are referred to for e.g., as operations, steps or modules.

Similar to a server <NUM> described above, a client device <NUM> can include a processor, memory, storage device, display, input device and communication interface (e.g., e-mail interface) for connecting the client device to the Internet <NUM>, the ISP, or LAN <NUM>, for communication with the servers <NUM>.

The system <NUM> may further include computers (e.g., personal computers, computing nodes) <NUM> operating in the same manner as client devices <NUM>, where a user can utilize one or more computers <NUM> to manage data in the server <NUM>.

<FIG> illustrates an example top-level functional block diagram <NUM> of a computing device <NUM> embodiment for live streaming emergency call data to one or more FRs in the field, in accordance with an embodiment of the invention. The computing device <NUM> may be equivalent to the computing device <NUM> or the capture device <NUM> discussed in conjunction with <FIG>. The computing device <NUM> comprises a processor <NUM>, such as a central processing unit (CPU), addressable memory <NUM>, an external device interface <NUM>, e.g., an optional universal serial bus port and related processing, and/or an Ethernet port and related processing, and an optional user interface <NUM>, e.g., an array of status lights and one or more toggle switches, and/or a display, and/or a keyboard and/or a pointer-mouse system and/or a touch screen.

Optionally, the addressable memory may include any type of computer-readable media that can store data accessible by the computing device <NUM>, such as magnetic hard and floppy disk drives, optical disk drives, magnetic cassettes, tape drives, flash memory cards, digital video disks (DVDs), Bernoulli cartridges, RAMs, ROMs, smart cards, etc. Indeed, any medium for storing or transmitting computer-readable instructions and data may be employed, including a connection port to or node on a network, such as a LAN, WAN, or the Internet.

These elements may be in communication with one another via a data bus <NUM>. In some embodiments, via an operating system <NUM> such as one supporting a web browser <NUM> and applications <NUM>, the processor <NUM> may be configured to execute steps of a process establishing a communication channel and processing according to the embodiments described above.

In an embodiment, the application <NUM> may have a plurality of features for better FR experience. The application <NUM> may provide for allowing the FR, such as FR <NUM> to rewind and re-listen to the received live-streamed emergency call for better understanding when call the quality of the received emergency call is poor.

In another embodiment, the application <NUM> may also provide for allowing FRs to listen to an emergency call in parallel with call-takers at the PSAP <NUM>, thereby reducing the chances of misunderstanding what a caller is saying. The application <NUM> may have a plurality of features such as the application <NUM> may provide customizable shortcuts such as play/pause, mute/unmute, forward/rewind, increase/decrease monitoring radius, dismiss or bypass a call, that are customized by the FR <NUM>. In one embodiment, the FR <NUM> may have the option of listening to the call, muting the call, or closing the call by using the application <NUM> on their computing device <NUM>.

<FIG> illustrates the plurality of graphical user interfaces (GUIs) of the application associated with the computing system for live streaming emergency call data to first responders in the field, in accordance with an embodiment of the invention. The plurality of GUIs may be like the user interface <NUM> discussed in conjunction with <FIG> and may be accessed by the one or more FRs in the field, using their computing device <NUM>. As shown in <FIG>, in the exemplary user interface 500a, the FR <NUM> may be able to see the location of the <NUM> call on user interface <NUM> of computing device <NUM> in relationship to the FR's <NUM> current position on a map. For example, when the caller is moving, the application <NUM> may also display location history and the current location of the caller on the computing device <NUM> (like computing device <NUM>). The application may also display the map or route followed by the caller relative to the location of FR vehicle <NUM> having the computing device <NUM>. This may enable the one or more FRs to view the information of the route followed by the caller and take an appropriate route to reach them at the earliest in some exemplary situations, like when the caller itself is not stationary. For example, if a caller has experienced a vehicle failure and needs assistance in stopping the vehicle, the FR <NUM> who is within the geofenced location <NUM> associated with the call, can view how the caller is moving, and choose an appropriate route to reach them.

In another embodiment, the application <NUM> may have the GUI 500b as shown in <FIG>. The GUI 500b shows that the application <NUM> is responsive and adjustable by design, according to the type of computing device of the FR <NUM>. The GUI 500b may change based on the type of device being used as the computing device <NUM>. For example, a notification alert on mobile is different than a notification alert on a laptop. Thus, the present invention provides an advantage over known solutions by providing an adjustable GUI to the FR <NUM> based on different types of computing devices.

In an embodiment, the application <NUM> may be installed as a Native client application according to the type of computing device <NUM> of the FR <NUM>, The native client application <NUM> may be a wrapper to a browser-based application. It can be configured to launch on the favorite browser of the user, such as the FR <NUM>.

<FIG> shows an exemplary GUI 500c in which the application <NUM> may be configured to display a list of all calls received during a preconfigured time period, such as during the past one hour (a period that is configurable). The data of all calls is maintained and displayed in the form of a dropdown list. The application <NUM> may be configured to display on the GUI 500d, callerID data, location data, and links to display emergency response data, such as RapidSOS® data associated with the caller, when the FR <NUM> selects any call from the dropdown list. In some embodiments, the dropdown list can be used by the FR <NUM> for callback purposes if the caller abruptly hangs the call.

<FIG> shows an exemplary GUI 500d, displaying a plurality of notifications that may be added to allow for background operation of the application <NUM> on the computing device <NUM> of the FR <NUM>. This may allow the FR <NUM> to keep carrying on with other tasks or accessing other applications on their computing device <NUM>, while the application <NUM> runs in the background. Whenever any live emergency call and its associated data is received, a notification is shown to the FR <NUM>, who may choose to accept or dismiss the call. Thus, the application <NUM> will still provide alerts to the FR <NUM>, even though it is not actively opened on their computing device <NUM>. The provision of the plurality of notifications is adaptable as the instances of the application <NUM> grow onto different platforms. For example, the types of notifications may be adaptable based on the platform or the type and capabilities of the computing device <NUM>. The types of notifications may include such as push notifications, emails, SMS, in-app messages, and the like, provided to users on various devices including but not limited to desktops, phones, tablets, and the like. Thus, the system <NUM> and the application <NUM> to provide live streaming of emergency data to the one or more FRs <NUM> as disclosed herein, and supported by the GUI 500d may provide a better, more responsive, easily accessible, more friendly interface to the one or more FRs <NUM>, as compared to other known solutions in the art, which specifically lack such responsiveness and ease of access.

In another embodiment, <FIG> illustrates an exemplary GUI 500e of, the application <NUM> that may help boost the sound levels of audio associated with incoming emergency calls. The GUI 500d can be helpful when there is too much ambient noise in an environment where the FR <NUM> is attending the call. By boosting the audio level of the call, the FR <NUM> may be able to listen in to the caller more clearly and understand their state in a better and clear manner to take the next action.

In another embodiment, <FIG> illustrates an exemplary GUI 500f that is configured to display location-related data and location data for incoming emergency calls. As illustrated in the GUI 500f, a map display may include a main map 500f1 and a secondary map 500f2. The main map 500f1 may display the locations of other users who are logged into the application and continuously refresh their locations to ensure that the latest locations of the various users may be seen on the map. The main map 500f1 may be configured to display the location of the FR <NUM> who is listening to the call by showing the unit ID of the FR <NUM>. In some embodiments, the FR <NUM> who is listening to the call is shown by a different color on the main map 500f1.

In another embodiment, <FIG> illustrates an exemplary GUI <NUM> showing two maps, a main map 500g1 and a secondary map 500g2. The main map 500g1 may display all on-going calls while the secondary map 500g2 may display the location of the current call or any call from history. The main map 500g1 can be moved to the top or right of the page and can also be hidden if needed. In an embodiment, the secondary map 500g2 is used to display the zoomed-in location of the current call or any selected call from history. In an embodiment, the secondary map 500g2 may provide the route followed and more details associated with the caller. The secondary map 500g2 may be on the left side. This map 500g2 may provide more details about the location of the caller. The secondary map 500g2 may also point to a custom map URL that may be provided to display additional information like house numbers, better images, etc. In an embodiment, the application <NUM> also has the option to hide the main map 500g1 and only see the secondary map 500g2. In an embodiment, the FR <NUM> may also add custom overlays on the map to display additional information which is entirely customizable by the FR <NUM>. In another embodiment, <FIG> illustrates an exemplary GUI <NUM> to enable the setting of a geofence location. As shown in <FIG>, the geofence can be specified for the entire application <NUM>, and thus for the FR <NUM>, by utilizing polygons covering the area from where the FR <NUM> desires to receive the calls. In an embodiment, the FRs may also specify a geofence for their own area of coverage thereby limiting calls only to the area they are interested in. For example, GUI 500h1 shows setting up of a polygon as the geofence or geofence location <NUM> for the entire application <NUM>. GUI 500h2 shows setting up of another polygon as the geofence or the geofence location <NUM> by the FR <NUM> based on defining their own area of coverage, thereby limiting calls only to the area they are interested in.

Additionally, the FRs may have the ability to customize color and opacity of geofence to make it easier to visualize calls inside/outside of the geofence. In various embodiments, calls markers are colored differently based on whether they are in or out of the geofence. In an embodiment, when geofencing is enabled, the FR <NUM> can choose to either hide calls outside their specified geofence location <NUM> or merely show them or stream them automatically. "Or" logic is established that allows a call outside the geofence but within a distance threshold, so that even though the caller is outside of the geofence location <NUM> area, but is still within the threshold distance from the geofence location <NUM>, and so the emergency call is streamed to the FR <NUM> who has configured their UI, such as GUI 500h2, for receiving those calls. For example, the emergency call within a certain distance of a school (for example <NUM> miles) will be pushed to FR within a configurable distance (for example <NUM> miles) from the school. The pushed calls will be streamed regardless of any filtering configured in the UI by the corresponding FR.

In another embodiment, <FIG> illustrates an exemplary GUI 500i in which locations of all active users of the application <NUM> are displayed. The GUI 500i may be configured to display and continuously refresh the locations of other users who are logged into the application.

In another embodiment, <FIG> illustrates an exemplary GUI 500J which provides two options to a user, a first option 500j1 to turn on a fixed location, and a second option 500j2 to turn on automatic location. In an embodiment, the FR <NUM> may have the option to set the user's location to a fixed location on the map. This may be helpful if there is an issue in determining the exact location of the FR by all other available means. One can revert to an automatic location once GPS location determination is working again properly.

In an embodiment, the user can set a unit ID in the application <NUM> which allows other users to know who is listening to the calls and where they are located on the map. The Unit Id helps in the identification of the FRs who listening to a call and are available for dispatch. <FIG> illustrates a block diagram of a process <NUM> for live streaming emergency call data to one or more FRs in the field, in accordance with an embodiment of the invention. The system <NUM> provides for collecting data from various sources while monitoring <NUM> calls for correlation and filtering of location data and other emergency response data, such as RapidSOS® data. In turn, raw audio streams and other data may be relayed to FRs nearest the call in real-time. In an embodiment, the user, the caller, or the calling party may be used interchangeably to mean the same, without deviating from the scope of the invention.

In one embodiment, a capture device <NUM> (equivalent to capture device <NUM>), such as a computing device at a call center of the PSAP, captures audio data and location data associated with an incoming call. The location data may include the ALI data for the incoming emergency call. The location data is further refined, for example by querying third party databases like RapidSOS® and ArcGIS®, and includes additional information including the street address. The capture device forwards the captured data to a control server <NUM> (equivalent to control server <NUM>). The control server <NUM> is also configured to receive regular location updates <NUM> from a web app <NUM> (equivalent to application <NUM>), which may be running on the computing device <NUM> of one or more FRs <NUM> in the field. These regular location updates may include data about geofenced location <NUM> of the one or more computing devices <NUM> of one or more FRs <NUM> in the field.

The control server <NUM> of the capture device <NUM> is configured to correlate the refined location data of the incoming emergency call with the geofenced location <NUM> and at <NUM>, determine a streaming destination. The streaming destination may be the location associated with the one or more computing devices/ web app <NUM> of the one or more FRs <NUM>, which are within the geofenced location <NUM>.

Thus, after the correlation, the control server <NUM> of the capture device <NUM> is configured to transmit a first signal <NUM> to the one or more computing devices/ web app <NUM>, in the form of a stream of data comprising a portion of captured audio and corresponding refined location data, such as ALI or GPS data, of the incoming emergency call.

At <NUM>, after receiving the first signal, the one or more computing devices/ web app <NUM>, may be configured to choose one to accept or not accept the first signal <NUM>. If the one or more computing devices/ web app <NUM> accepts the first signal <NUM>, it sends an accept signal <NUM> to the control server <NUM> of the capture device <NUM>. The control server <NUM> of the capture device <NUM> in turn, transmits a second signal <NUM> to the one or more computing devices/ web app <NUM>, which comprises a plurality of data related to the incoming emergency call. In some embodiments, the data related to the incoming emergency call (also referred to as the emergency call metadata) may be first screened, such as by the capture device <NUM> or the one or more computing devices /web app <NUM>, to filter the emergency call metadata to select only emergency calls of interest or relevance to the one or more computing devices. Web app <NUM> of one or more FRs <NUM>. This data may include, for example, emergency response data derived from RapidSOS® data, ALI data, and GPS data related to the captured audio and corresponding location data. After this, at <NUM>, the process may end with the one or more computing devices/ web app <NUM> taking appropriate action based on the received data.

In some embodiments, the geofence, such as geofence <NUM> around the FR's <NUM> current location is configurable by the control server <NUM> by a certain distance from the location of the FR <NUM> or the one or more computing devices/ web app <NUM>. In one embodiment, the distance is a radial distance from the location of the FR <NUM>. Other geofence <NUM> configurations are possible and contemplated, such as a rectangular-shaped geofence, a square-shaped geofence, and the like. The location information of the FR <NUM> is periodically transmitted to the control server <NUM> via signal <NUM>, so long as the FR <NUM> stays logged into the application <NUM> on the computing device <NUM>.

In one embodiment, the capture device <NUM> may determine both the calling (and the called) party associated with each incoming call to the PSAP <NUM>. The calling and the called party may be determined through a Session Initiation Protocol (SIP). The SIP may be a signaling protocol used for initiating, maintaining, modifying, and terminating the real-time sessions that may involve video, voice, messaging, and other communications applications between two or more endpoints on, for instance, Internet Protocol (IP) networks. The capture device <NUM> may further determine the call circuit or "trunk" utilizing the SIP. In one embodiment, the capture device <NUM> may determine the caller GPS location utilizing Automatic Location Identification (ALI) data and RapidSOS® data. In one embodiment, ALI may be an enhanced electronic location system that automatically relays a caller's address when they call into the PSAP <NUM>, whether they call from a mobile device or a landline.

In an embodiment, the RapidSOS® data may be configured in the control server <NUM>, a third-party application, or on the user interface of the computing device <NUM>. In another embodiment, RapidSOS® may link data from the calling party to the PSAP <NUM> and the FR <NUM>. The RapidSOS® feature may provide more precise and accurate GPS coordinates of the calling party and display the same in the user interface of the computing device <NUM>. The RapidSOS® may provide live updates when the caller is moving, and the call is in progress. In an embodiment, if RapidSOS® integration is enabled, the data available for any given call from RapidSOS® and is displayed to the user on demand. The RapidSOS® data may also contain medical data as well. The medical data may be used while in an emergency to know the medical history of the user.

The capture device <NUM> may transmit the signal <NUM> of the ALI data to the control server <NUM>. The control server <NUM> may then determine <NUM> where the ALI data is to be transmitted. More specifically, the control server <NUM> may determine which FR (or FRs) within a geofenced area is to receive the real-time ALI data, where the geofenced area is determined by the control server <NUM>. Furthermore, the control server <NUM> may determine the caller street address utilizing the ALI. The control server <NUM> may determine more precise street address by means of additional queries to an ArcGIS-like geocoding service
When the <NUM> call arrives at the PSAP <NUM>, the capture device <NUM> captures the audio as well as location data associated with the call. The control server <NUM> correlates the incoming call information with the geofenced locations of all FRs, such as geofence <NUM> associated with the FR <NUM>. The control server <NUM> then transmits the first signal <NUM> of the captured audio to the FR's <NUM> application on the computing device <NUM> so that the FR <NUM> may hear the call as it occurs in real-time. If the FR <NUM> accepts the incoming streaming data, an accept signal <NUM> is sent from the computing device <NUM> to the control server <NUM>. After that, the second signal <NUM> which includes at least one of the ALI data and the GPS data of the emergency location, and the first signal <NUM> of the captured audio data are transmitted to the FR <NUM> based on the FR <NUM> determining whether or not to accept <NUM> the incoming streaming data.

In one embodiment, the GPS data of the second signal <NUM> sent by the control server <NUM> may be sent to a mapping function of the application associated with the computing device <NUM>. In one embodiment, the application provides for filtering out non-emergency calls to reduce distractions to FRs. More specifically, the application may filter calls based on a "Called Number", a "Calling Number", and a "Trunk" obtained by the control server <NUM>. To allow direct <NUM> calls, the application may verify that the Trunk is designated as a "<NUM>" trunk and that the Called Number is a <NUM> service.

In some embodiments, to allow for dropped <NUM> calls with a callback, the application <NUM> may store the Calling Number of <NUM> calls and the application may then allow calls to that Called Number. Such rules prevent ordinary or "Administrative" calls from being offered to the FRs6.

If the FR <NUM> no longer needs to receive streaming data from the control server <NUM>, the FR <NUM> may transmit the signal <NUM> from the computing device or application <NUM> to the control server <NUM> to end the process.

<FIG> illustrates a schematic of an alternative system for live streaming emergency call data to first responders in the field, in accordance with an embodiment of the invention. The features of system <NUM> are retained throughout, with the system <NUM> further including a drone <NUM> associated with a geofence <NUM> of <FIG>. More specifically, a Drone as First Responder (DFR) program may provide for setting the geofencing range. In one embodiment, the drone <NUM> may be associated with a remote site <NUM>. The remote site <NUM> may have a controller <NUM> that may set the geofence <NUM>. The geofence <NUM> size set by the controller <NUM> is to be the maximum distance that the drone <NUM> may travel. For example, the drone <NUM> may travel a maximum distance "d". In one embodiment, the maximum distance is three nautical miles. In another embodiment, the maximum distance is greater than three miles. In yet another embodiment, the maximum distance is less than three miles. That distance "d" and the location of the remote site <NUM> may be determined by the capture device <NUM> based on a signal transmitted by the controller <NUM>. Meanwhile, the FRs <NUM> are periodically transmitting the FR's location data to the control server <NUM>. The control server <NUM> may then determine which FRs are within the geofence range <NUM> set by the drone's <NUM> maximum travel distance "d". The control server may then proceed to transmitting signal <NUM> of the captured emergency call audio to the FR's application on the computing device <NUM> so that the FR, such as FR <NUM> may hear the call as it occurs in real-time.

In an embodiment, the system <NUM> may launch the drone <NUM> to a specific location for a specific call. This feature may reduce the time spent in manually specifying the location of the call. Also, the system <NUM> may display the footage in the application <NUM>.

In an embodiment, the system <NUM> may select a call for dynamic routing. Driving directions may be shown from the FR's <NUM> current location to the caller's current location and they will be dynamically updated as the locations change. In an embodiment, the system <NUM> may mark that the FR <NUM> is responding to a call. This may be displayed on the map by displaying the units in a different color and/or shape.

In one embodiment, the system <NUM> may display the drone <NUM> as a First Responder (DFR) position if the drone <NUM> had been launched. The FR <NUM> may be able to click on the drone's <NUM> position pin on the map to open an additional window that would show the video being captured by the drone <NUM>. The FR <NUM> may not have control over the drone <NUM>, however they would only be getting the video stream as it occurs.

In one embodiment, some additional controls and functionality may be provided to allow the FR <NUM> to view the video only if they were stationary, to prevent distraction while driving.

In one embodiment, the drone <NUM> may be able to provide streaming of information about the emergency call, such as in the form of a streaming video or image application, to the FR <NUM>.

<FIG> illustrates a flow diagram of working of the system <NUM> for live streaming emergency call data to first responders in the field, in accordance with an embodiment of the invention. It will be understood that each block of the flow diagram of the method <NUM> may be implemented by various means, such as hardware, firmware, processor, circuitry, and/or other communication devices associated with the execution of software including one or more computer program instructions. For example, one or more of the procedures described above may be embodied by computer program instructions. In this regard, the computer program instructions which embody the procedures described above may be stored by a memory of the system, employing an embodiment of the present invention and executed by a processor. As will be appreciated, any such computer program instructions may be loaded onto a computer or other programmable apparatus (for example, hardware) to produce a machine, such that the resulting computer or other programmable apparatus implements the functions specified in the flow diagram blocks. These computer program instructions may also be stored in a computer-readable memory that may direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture the execution of which implements the function specified in the flowchart blocks. The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide operations for implementing the functions specified in the flow diagram blocks.

Accordingly, blocks of the flow diagram support combinations of means for performing the specified functions and combinations of operations for performing the specified functions for performing the specified functions. It will also be understood that one or more blocks of the flow diagram, and combinations of blocks in the flow diagram, may be implemented by special purpose hardware-based computer systems which perform the specified functions, or combinations of special purpose hardware and computer instructions.

At step <NUM>, the system <NUM> may receive an emergency call on PSAP. The emergency call may be associated with any person in need of help. That may be related to medical help, or domestic help, accident-related help, and the like. At step <NUM>, after receiving the call, the system <NUM> determines the location associated with the received emergency call using emergency response data, ALI data, GPS data, or a combination thereof associated with the incoming emergency call. The emergency response data may be RapidSOS® data. At step <NUM>, the system <NUM> transmits location associated with the received emergency call to the computing device of one or more FRs in the geofenced region. At step <NUM>, the system <NUM> receives acceptance from one or more FRs in the geofenced region, and the assistance is provided by the FR.

<FIG> illustrates a flow diagram of a system <NUM> for live streaming emergency call data to first responders in the field, in accordance with an embodiment of the invention. It will be understood that each block of the flow diagram of the method <NUM> may be implemented by various means, such as hardware, firmware, processor, circuitry, and/or other communication devices associated with the execution of software including one or more computer program instructions. For example, one or more of the procedures described above may be embodied by computer program instructions. In this regard, the computer program instructions which embody the procedures described above may be stored by a memory of the system, employing an embodiment of the present invention and executed by a processor. As will be appreciated, any such computer program instructions may be loaded onto a computer or other programmable apparatus (for example, hardware) to produce a machine, such that the resulting computer or other programmable apparatus implements the functions specified in the flow diagram blocks. These computer program instructions may also be stored in a computer-readable memory that may direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture the execution of which implements the function specified in the flowchart blocks. The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide operations for implementing the functions specified in the flow diagram blocks.

At step <NUM>, the method <NUM> comprises capturing, by a capture device, an audio and corresponding location data associated with an emergency call.

At step <NUM>, the method <NUM> comprises refining the location data, to provide refined location data. The refined location data includes more precise location data, including one or more street addresses associated with the emergency call. This refined location data may be obtained by sending additional queries to a RapidSOS® like data clearinghouse, and even more precise street address may be obtained by means of additional queries to an ArcGIS® like geocoding service.

At step <NUM>, the method <NUM> comprises, correlating, by the capture device, the refined location data of the emergency call with a geofenced location of one or more computing devices of one or more first responders (FRs), such as the computing device <NUM> of the FR <NUM>.

At step <NUM>, the method <NUM> comprises transmitting, by the capture device, a first signal to the one or more computing devices of one or more FRs based on the correlation, wherein the transmitted signal comprises at least a portion of the captured audio and corresponding refined location data. The refined location data includes one or more street addresses associated with the incoming emergency call.

At step <NUM>, the method <NUM> comprises screening the emergency call metadata. The screening may be done by any of the computing device <NUM> or the capture device <NUM>. The purpose of screening is to filter the emergency call metadata so that only those emergency calls may be selected for response which are either of interest, or relevance, the one or more FRs <NUM>. This further helps in reducing distractions and cognitive load experienced by the one or more FRs <NUM>.

At step <NUM>, the method <NUM> comprises receiving, by the capture device, an accept signal from the one or more computing devices <NUM> of one or more FRs <NUM>. The accept signal is received in response to screening of the emergency call metadata done previously. At step <NUM>, the method <NUM> comprises transmitting, by the capture device <NUM>, a second signal to the one or more computing devices <NUM> of one or more FRs <NUM> based on the received accept signal, wherein the second signal comprises emergency response data, Automatic Location Identification (ALI) data, global positioning system (GPS) data relating to the captured audio and corresponding refined location data, or a combination thereof.

In one embodiment, the one or more FRs <NUM> can identify the emergency caller, their requirement, their location and time to reach them based on all the data transmitted by the capture device <NUM>. This helps in saving a lot of time in responding to the emergency calls by the suitable FR <NUM>.

Claim 1:
A method (<NUM>) comprising:
capturing (<NUM>), by a capture device (<NUM>), an audio and location data each associated with an emergency call (<NUM>);
refining (<NUM>), by the capture device, the location data to provide a refined location data (<NUM>), wherein the refined location data comprises one or more street addresses;
correlating (<NUM>), by the capture device, the refined location data of the emergency call with a geofenced location of one or more computing devices of one or more first responders, FRs, wherein the geofenced location is specified by the one or more FRs for their own area of coverage, thereby limiting emergency calls only to the area they are interested in, and wherein correlating comprises determining by the capture device whether the refined location data of the emergency call is designating a location within a predetermined distance threshold from the geofenced location of one or more computing devices of the one or more FRs for the correlation;
transmitting (<NUM>), by the capture device, a first signal (<NUM>) to the one or more computing devices of one or more FRs based on the correlation, wherein the transmitted signal comprises at least a portion of the captured audio and the refined location data;
receiving (<NUM>), by the capture device, an accept signal (<NUM>) from the one or more computing devices of one or more FRs; and
transmitting (<NUM>), by the capture device, a second signal (<NUM>) to the one or more computing devices of one or more FRs based on the received accept signal, wherein the second signal comprises at least one of: an emergency response data, an Automatic Location Identification, ALI, data, and a global positioning system, GPS, data relating to the captured audio and the refined location data.