DEVICE, SYSTEM, AND METHOD FOR AUTOMATICALLY REPLYING TO TEXT MESSAGES

Device, system and method for automatically replying to public-safety or enterprise-safety text messages is provided. A device receives, from a communication device, a text message indicative of: a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. The device determines an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the data. In response to determining, at the device, a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action, the device: generates a reply text message identifying one or more of the implementable public-safety or enterprise-safety action and the difference; and transmits, to the communication device, the reply text message.

BACKGROUND OF THE INVENTION

In emergency services environments, text messages may often be received demanding actions in response to public-safety or enterprise-safety incidents.

DETAILED DESCRIPTION OF THE INVENTION

In emergency services environments, text messages may often be received demanding actions in response to public-safety or enterprise-safety incidents that a sender of a text message may have witnessed. However, there may be criteria for responding to a public-safety or enterprise-safety incident, which may or may not be met by a text message demanding an action for the public-safety or enterprise-safety incident. Thus, there exists a need for an improved technical method, device, and system for automatically replying to public-safety or enterprise-safety text messages that demand and/or request actions for public-safety or enterprise-safety incidents.

Hence, provided herein is a device, system and method for automatically replying to public-safety or enterprise-safety text messages. For example, a system is provided that includes a computing device that may receive text messages on behalf of a public-safety answering point (PSAP), and automatically responds to the text messages. In some examples, the PSAP may be to manage public-safety or enterprise-safety incidents. For example, public-safety or enterprise-safety incident may include, but is not limited to, a police incident, a fire incident, a medical incident, a mental health incident, and the like, which may occur in a public space or an enterprise space (e.g. at a business), and/or a security guard incident, and the like, which may occur which may occur in a public space or an enterprise space managed by a private enterprise. However, responders to a public-safety or enterprise-safety incident may be public-safety officers employed, for example, by a public-safety agency, or enterprise-safety officers employed, for example, by a private enterprise; examples of enterprise-safety officers may include, but are not limited to, security guards, mental health professionals (e.g. associated with a mental-wellness agency), and the like.

While hereafter reference is made to public-safety incidents, PSAPs, text messages to 911 (and the like), public-safety actions, and the like, it is understood that any incidents, answering points, texts and/or action referred to herein may alternatively, or in addition, include enterprise-safety incidents, enterprise-safety answering points (e.g. an emergency services answering point, such as a security guard answering point and/or station at a mall or business), enterprise-safety text messages to (e.g. to an emergency services number managed by a business), enterprise-safety actions, and the like.

The provided computing device that may receive text messages on behalf of a PSAP (and the like) may comprise a proxy for the PSAP, for example to relieve the PSAP of responding to text messages, which may save bandwidth and processing resources at the PSAP. For example, a user of a communication device may send a text message to “911”, and/or another emergency services number, to report a public-safety or enterprise-safety incident and request (and/or demand) that an action occur in response to the public-safety or enterprise-safety incident, and the text message may be received at the computing device rather than the PSAP.

Such text messages may be indicative of: a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. However, such information may be provided in plain and/or natural language; for example, the text message may not be specifically structured in a manner that separates indications of a given public-safety or enterprise-safety incident type, data documenting the given public-safety or enterprise-safety incident type, and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. Indeed, in some examples, information in the text message that indicates the given public-safety or enterprise-safety incident type and/or the data documenting the given public-safety or enterprise-safety incident type and/or the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type may be implied and/or indirectly provided in the text message.

The computing device may hence, in some examples, implement a context engine and/or a natural language processing (NLP) engine that may process the text message to determine the given public-safety or enterprise-safety incident type and/or the data documenting the given public-safety or enterprise-safety incident type and/or the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type.

The computing device may determine an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the given public-safety or enterprise-safety incident type indicated by the text message. Such a determination may occur using a database lookup and/or one or more machine learning algorithms, and the like. Regardless, the implementable public-safety or enterprise-safety action may comprise an action to be taken by public-safety personnel or enterprise-safety personnel, and the like, and may be defined by statutory regulations and/or protocol and/or criteria local to where the public-safety or enterprise-safety incident has occurred and/or a location of the communication device, from which the text message was received. Furthermore, different implementable public-safety or enterprise-safety actions may be associated with different documentation as described herein, for example as defined by the statutory regulations and/or protocol and/or criteria. Furthermore, an implementable public-safety or enterprise-safety action that may be determined may be the same as, or different from, a requested public-safety or enterprise-safety action indicated by the text message.

The computing device may determine whether there is a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action and, in response to determining such a difference, the computing device may generate and transmit a reply text message to the communication device that identifies the implementable public-safety or enterprise-safety action and/or the difference.

In a specific example, a text message may be received at the computing device, from a communication device, that indicates that a stranger has been observed walking around a neighborhood (e.g. or a business), for example by a user of the communication device, and the text message may further request that the stranger be arrested and/or that police be sent immediately. The computing device may analyze the text message, for example, using the context engine and/or NLP engine, and the like, to determine that: the given public-safety or enterprise-safety incident type comprises “Loitering”; the data documenting the given public-safety or enterprise-safety incident type merely comprises a textual report of the stranger; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type comprises “Dispatch Patrol Car Immediately”, for example to send police to the location of the loitering (e.g., which may be received with the text message as metadata), to investigate and/or arrest the stranger.

However, the computing device may determine that when a report of a stranger loitering is received, an implementable public-safety or enterprise-safety action is to investigate using a patrol car that is not dispatched immediately, but may investigate when the patrol car reaches a location of the observed loitering in a routine and/or predetermined patrol schedule. In particular, such an implementable public-safety or enterprise-safety action may comprise “Routine Patrol Car Only”.

As such, the computing device may determine a difference between a requested public-safety or enterprise-safety action (e.g., “Dispatch Patrol Car Immediately”) and an implementable public-safety or enterprise-safety action (e.g., “Routine Patrol Car Only”) and, in response, generate a reply text message identifying one or more of the implementable public-safety or enterprise-safety action and the difference. The computing device may transmit the text message to the communication device.

Using the above example, the reply text message may indicate that a “Routine Patrol Car” will investigate and no patrol car will be dispatched immediately.

The computing device may further initiate the implementable public-safety or enterprise-safety action, for example by transmitting the report of a stranger and the associated location to a suitable communication device and/or radio operated by police officer associated with the patrol car that may routinely investigate and/or by communicating the report of a stranger and the associated location to the PSAP, which may transmit the report of a stranger and the associated location to the communication device and/or radio operated by the police officer associated with the patrol car.

In some instances, the computing device may determine further data required for implementing the requested public-safety or enterprise-safety action, and include, in the reply text message an indication of the further data.

For example, again using the above example, an implementable public-safety or enterprise-safety action of “Dispatch Patrol Car Immediately” may occur when a photo of the stranger is received (e.g., according to the aforementioned statutory regulations and/or protocol and/or criteria). In these examples, the reply text message may indicate that the requested public-safety or enterprise-safety action may be implemented when a photo of the stranger is received. In some examples, the communication device may receive the reply text message and, in response, the communication device may be operated to send such a photo to the computing device, and the computing device may change the previous implementable public-safety or enterprise-safety action (e.g., “Routine Patrol Car Only”) to the requested public-safety or enterprise-safety action (e.g., “Dispatch Patrol Car Immediately”), which may occur via communication with the communication device and/or radio operated by the police officer associated with the patrol car being dispatched and/or the PSAP. The computing device may transmit a further reply text message to the communication device indicating the change in action.

While “Dispatch Patrol Car Immediately” and “Routine Patrol Car Only” are examples of public-safety actions, enterprise-safety actions, such as “Routine Security Guard Check” and “Dispatch Security Guard Immediately” and “Dispatch Mental Health Personnel”, amongst other possibilities, are within the scope of the present specification.

A first aspect of the present specification provides a method comprising: receiving, at a computing device, from a communication device, a text message indicative of: a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type; determining, at the computing device, an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the data; and in response to determining, at the computing device, a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action: generating, at the computing device, a reply text message identifying one or more of the implementable public-safety or enterprise-safety action and the difference; and transmitting, from the computing device, to the communication device, the reply text message.

A second aspect of the present specification provides a device comprising: a communication interface; and a controller configured to: receive, via the communication interface, from a communication device, a text message indicative of: a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type; determine an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the data; and in response to determining a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action: generate a reply text message identifying one or more of the implementable public-safety or enterprise-safety action and the difference; and transmit, via the communication interface, to the communication device, the reply text message.

Each of the above-mentioned aspects will be discussed in more detail below, starting with example system and device architectures of the system, in which the embodiments may be practiced, followed by an illustration of processing blocks for achieving an improved technical method, device, and system for automatically replying to public-safety or enterprise-safety text messages.

Example embodiments are herein described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to example embodiments. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a special purpose and unique machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. The methods and processes set forth herein need not, in some embodiments, be performed in the exact sequence as shown and likewise various blocks may be performed in parallel rather than in sequence. Accordingly, the elements of methods and processes are referred to herein as “blocks” rather than “steps.”

The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus that may be on or off-premises, or may be accessed via the cloud in any of a software as a service (SaaS), platform as a service (PaaS), or infrastructure as a service (IaaS) architecture so as to cause a series of operational blocks 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 blocks for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. It is contemplated that any part of any aspect or embodiment discussed in this specification can be implemented or combined with any part of any other aspect or embodiment discussed in this specification.

Herein, the term “engine”, such as a context engine, a natural language processing engine, is understood to refer to hardware, and/or a combination of hardware and software (e.g., a combination of hardware and software includes software hosted at hardware, such as a software module that is stored at a processor-readable memory implemented or interpreted by a processor), or hardware and software hosted at hardware and/or implemented as a system-on-chip architecture and the like.

Attention is directed toFIG.1, which depicts an example system100for automatically replying to public-safety or enterprise-safety text messages. The various components of the system100are in communication via any suitable combination of wired and/or wireless communication links, and communication links between components of the system100are depicted inFIG.1, and throughout the present specification, as double-ended arrows between respective components; the communication links may include any suitable combination of wireless and/or wired links and/or wireless and/or wired communication networks, and the like.

The system100comprises a computing device102, which may generally be configured as a text message-handling device for at least one PSAP104. The computing device102may comprise any suitable combination of one or more servers, one or more cloud computing devices, one or more proxy devices, and the like. While only the PSAP104is depicted, the system100may alternatively, or in addition, include an enterprise-safety answering point operated by a private enterprise, which may handle calls and/or texts to an associated emergency services telephone number (e.g. associated with the private enterprise), and the like, such as a telephone number of a security guard station, and the like. However, the PSAP104may be configured to receive calls and/or text from such a telephone number (e.g. in addition to “911” calls, described herein).

While only one PSAP104is depicted, the computing device102may be configured as a text message-handling device for a plurality of PSAPs, for example for different jurisdictions and/or locations.

As depicted, the computing device102may be configured to communicate with a communication device106to receive a text message108, for example as a proxy for the PSAP104. For example, the text message108may be texted to “911”, and the like, which is received at the computing device102. In particular, the computing device102may be configured to receive911texts from an area where the communication device106is initiating the text message108, and/or which may be part of a jurisdiction that is managed by the PSAP104.

As depicted, the text message108includes text “I saw a stranger walking around the neighborhood. Send police immediately!”. It is understood that the text message108is reporting a public-safety or enterprise-safety incident, for example loitering by the indicated stranger, and/or a potential public-safety or enterprise-safety incident as the stranger may not actually be loitering. Hereafter, a public-safety or enterprise-safety incident is interchangeably referred to as a public-safety incident.

In other examples, the text message108may include but is not limited to, a photo, an audio file, a video file, and the like, for example in a body of the text message108and/or as an attachment to the text message108, and the like. The text message108may hence include any suitable type of text message including, but not limited to, an SMS (Short Message Service) message, an MMS (Multimedia Messaging Service) message, and the like. Put another way, a “text message” as described herein may include text and any other suitable type of multimedia, and the like.

The computing device102may receive an associated location with the text message108, for example as metadata, and the associated location may comprise a location of the communication device106, for example as determined by a location determining device (e.g., and determined by a Global Positioning System (GPS) device of the communication device106, and/or by network components, on which the text message108is being communicated, for example using triangulation techniques, and/or using any other suitable network components, and the like).

However, the computing device102may receive an associated location of the public-safety incident being reported by the text message108in the body of the text message108, which may be different from a location of the communication device106. For example, a user of the communication device106may notice a public-safety incident occurring, but may be moving (e.g., as walking, running, or in a vehicle), and the user of the communication device106may report the public-safety incident via the text message108from a location that is different from the location of the communication device106. For example, the text message108may comprise “I saw a stranger walking around the neighborhood near 123 Main Street. Send police immediately!”; in these examples, an associated location of the public-safety incident may comprise “123 Main Street”.

As depicted, the PSAP104may include a PSAP terminal110, which be operated by an operator112, and the PSAP terminal110may comprise a display screen114and an input device116(e.g., as such a keyboard, as depicted, a pointing device and/or any other suitable input device). However, the display screen114and the input device116may be provided in any suitable format (e.g., different from a PSAP terminal), such as a laptop, a personal computer, and the like (e.g., when the operator112is working from home and/or “off-premises” from the PSAP104). In general, the display screen114and the input device116may be used to interact with the PSAP terminal110, for example via an interface118provided at the display screen114, and the like. The PSAP terminal110further comprise a communication device, for example as represented inFIG.1by a headset119worn by the operator112.

As depicted, the computing device102is further in communication with a memory120, which may be provided in the form of a database, and the like. The memory120may be separate from the computing device102(e.g., as depicted) and/or the memory120may be at least partially integrated with the computing device102.

The memory120stores records122-1,122-2, and the like, associated with different respective public-safety or enterprise-safety incident types. The records122-1,122-2are interchangeably referred to hereafter, collectively, as the records122and, generically, as a record122. This convention will be used elsewhere in the present specification.

While for simplicity, two records122are depicted, the memory120may store any suitable number of records122, for example a record122per public-safety or enterprise-safety incident type, a record122per public-safety or enterprise-safety incident type for each jurisdiction and/or area that the computing device102may service, and/or any other suitable number.

As depicted, the record122-1comprises indications of:A type124of an associated public-safety (or enterprise-safety incident). For example, the record122-1is associated with a public-safety or enterprise-safety incident type of “Loitering”.Documentation126-1,126-2(e.g., sets of documentation126and/or a set of documentation126) associated with respective implementable public-safety or enterprise-safety actions128-1,128-2(e.g., implementable public-safety or enterprise-safety actions128and/or an implementable public-safety or enterprise-safety action128). For example, for the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Only” to occur, respective documentation126-1of a report (e.g., of loitering) should be received. However, for the implementable public-safety or enterprise-safety action128-2of “Dispatch Patrol Car Immediately” to occur, respective documentation126-1of a “Report” (e.g., of loitering) and a “Photo” (e.g., of the person loitering) should be received. Furthermore, while two sets of documentation126and associated implementable public-safety or enterprise-safety actions128are depicted, any suitable number of sets of documentation126and associated implementable public-safety or enterprise-safety actions128are within the scope of the present specification. Furthermore, while the depicted example documentation126-2includes reference to a “Photo”, such a “Photo” may include video and the like. Furthermore, while the depicted example documentation126-2includes reference to a “Photo”, other documentation126may make specify other types of multimedia, such as video and/or audio.Criteria and/or a statute130(hereafter interchangeable referred to as a statute130) that may define the documentation126associated with the implementable public-safety or enterprise-safety actions128; for example the statute130may comprise one or more of statutory regulations (e.g., a law) and a protocol (e.g., criteria and/or a policy) defined by a jurisdiction, that defines a type of documentation126required to perform an associated implementable public-safety or enterprise-safety action128. While the documentation126and associated implementable public-safety or enterprise-safety actions128may be populated on the basis of the statute130, the information stored in the statute130may comprise text reciting a section of one or more of statutory regulations and a protocol, for example in natural language and/or as set out by law makers and/or policy makers, and the like. The statute130may, however, be optional in the record122-1.A jurisdiction132associated with the statute130. For example, the jurisdiction132may define an area, in which the statute130applies, and the like, which may be a same area serviced by the PSAP104.

The record122-1may comprise any other suitable information.

Similarly, the record122-2comprises respective indications of a respective type134of public-safety incident, respective documentation136-1,136-1(e.g., sets of documentation136and/or a set of documentation136) associated with respective implementable public-safety or enterprise-safety actions138-1,138-2(e.g., implementable public-safety or enterprise-safety actions138and/or an implementable public-safety or enterprise-safety action138) and, optionally, a respective criteria and/or a statute140(hereafter interchangeable referred to as a statute140) associated with a respective jurisdiction142.

For example, as depicted, the record122-2is associated with a type124of a public-safety incident of a “Bank Robbery”, and for the implementable public-safety or enterprise-safety action138-1of “Dispatch Patrol Car Immediately” to occur, documentation136-1of a “Report” (e.g., of a bank robbery) should be received, whereas for the implementable public-safety or enterprise-safety action138-2of “Dispatch Full Response Team” to occur, documentation136-2of a “Report” and a “Photo” of the bank robbery should be received.

In some examples, the jurisdictions132,142may be the same, while in other examples the jurisdictions132,142may be different.

Furthermore, the statutes130,140may be particular to text messages, and define what types of documentation126,136should be received in text messages for an associated implementable public-safety or enterprise-safety action128,138to occur. Alternatively, the statutes130,140may be generic, and define what types of documentation126,136should be received at a PSAP (e.g., the PSAP104), in any suitable manner, for an associated implementable public-safety or enterprise-safety action128,138to occur.

As depicted, the system100optionally comprises a radio144that may be operated by a public-safety officer146, for example, as depicted, a police officer who may be on patrol (e.g., in a patrol car). While the radio144is depicted as a hand-held radio, the radio144may comprise any suitable communication device that may be operated by public-safety personnel, including, but not limited to, a patrol car radio, a radio having a cell-phone configuration, and the like.

As depicted, the radio144is configured to communicate with the computing device102and the PSAP104. However, in other examples, the radio144may be configured to communicate with the PSAP104via the computing device102, or the radio144may be configured to communicate with the computing device102via the PSAP104.

Returning to the computing device102and the text message108, the text message108is generally indicative of a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. For example, the text message108may indicate that: an associated given public-safety or enterprise-safety incident type is “Loitering” (e.g., by way of text “I saw a stranger walking around the neighborhood”); data documenting the given public-safety or enterprise-safety incident type is a report of the loitering (e.g., also by way of text “I saw a stranger walking around the neighborhood”, and as the text message108is sent without a photo); and a requested public-safety or enterprise-safety action is to “Dispatch A Patrol Car Immediately” (e.g., by way of text “Send police immediately!”).

However, the text message108of “I saw a stranger walking around the neighborhood. Send police immediately!” does not explicitly include the text “Loitering”; nor does the text message108explicitly include the text “Report”; and nor does the text message108explicitly include the text “Dispatch A Patrol Car Immediately”.

As such, the computing device102may comprise (e.g., and/or implement) a context engine and/or NLP engine148(interchangeably referred to hereafter as the context engine148) configured to analyze the text message108to more explicitly determine one or more of: the given public-safety or enterprise-safety incident type; the data documenting the given public-safety or enterprise-safety incident type; and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type, for example in a format that is compatible with the records122. Implementation of the context engine148is described in more detail below. However, the functionality of the context engine148may be implemented in any suitable manner at the computing device102, including, but not limited to, using one or more machine learning algorithms, which may be a component of the context engine148, and/or may be provided separately from the context engine148. In yet another alternative, the functionality of the context engine148may be implemented via one or more numerical algorithms, which may be a component of the context engine148, and/or may be provided separately from the context engine148. Hence, the context engine148may be optional.

The computing device102may be generally configured to determine (e.g., using the context engine148, one or more machine learning algorithms, and the like), from the text message108: a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. For example, the computing device102may determine from the text message108that a given public-safety or enterprise-safety incident type indicated by the text message108is “Loitering” and that the data documenting the given public-safety or enterprise-safety incident type from the text message108is a “Report” of the “Loitering” (e.g., without a photo), and that a requested public-safety or enterprise-safety action is “Dispatch Patrol Car Immediately”.

The computing device102may further determine an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the data. For example, the computing device102may determine from the text message108that a given public-safety or enterprise-safety incident type indicated by the text message108is “Loitering” and that the data documenting the given public-safety or enterprise-safety incident type from the text message108is a “Report” of the “Loitering” (e.g., without a photo). As such, the computing device102may use the given public-safety or enterprise-safety incident type of “Loitering” to perform a database lookup of the record122-1at the memory120, to determine that the data indicated by the text message108corresponds to the documentation126-1of a “Report” and hence determine the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Only”.

The computing device102may determine that there is a difference between the requested public-safety or enterprise-safety action of “Dispatch Patrol Car Immediately” and the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Only” and responsively generate a reply text message identifying one or more of the implementable public-safety or enterprise-safety action128-1and the difference. The computing device102may transmit the reply text message to the communication device102. The computing device102may further cause the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Only” to occur, for example by transmitting a message to the radio144that the loitering is to be investigated while on routine patrol; such a message may include a location received with the text message108. Hence, the system100relieves the PSAP104of bandwidth and processing resources in responding to the text message108and/or causing the implementable public-safety or enterprise-safety action128-1to occur.

As depicted, the system100optionally comprises a communication device150that may be operated by an enterprise-safety officer152, for example a security guard or mental health professional. While the communication device150is depicted as a cell phone, the communication device150may comprise any suitable communication device that may be operated by enterprise-safety personnel, including, but not limited to, a radio, a laptop, a terminal, and the like.

As depicted, the communication device150is configured to communicate with the computing device102and the PSAP104. However, in other examples, the communication device150may be configured to communicate with the PSAP104via the computing device102, or the communication device150may be configured to communicate with the computing device102via the PSAP104. Alternatively, the communication device150may be configured to communicate with the communication device106.

In some alternative examples, the actions128may include actions that include, but are not limited to, dispatching the enterprise-safety officer152to a public-safety or enterprise-safety incident, for example via the communication device150(e.g. similar to dispatching the public-safety officer146via the radio144). In some further alternative examples, the actions128may include providing contact information of the enterprise-safety officer152to a communication device that provided a text to the computing device102(e.g. the text108provided by the communication device106); such contact information may include, but is not limited to, a telephone number, and the like, associated with the communication device150.

Attention is next directed toFIG.2, which depicts a schematic block diagram of an example of the computing device102. While the computing device102is depicted inFIG.2as a single component, functionality of the computing device102may be distributed among a plurality of components and the like including, but not limited to, any suitable combination of one or more servers, one or more cloud computing devices, one or more proxy devices, and the like. In some examples, a portion of the functionality of the computing device102may be integrated with the PSAP104.

As depicted, the computing device102comprises: a communication interface202, a processing unit204, a Random-Access Memory (RAM)206, one or more wireless transceivers208(e.g., which may be optional), one or more wired and/or wireless input/output (I/O) interfaces210, a combined modulator/demodulator212, a code Read Only Memory (ROM)214, a common data and address bus216, a controller218, and a static memory220storing at least one application222. Hereafter, the at least one application222will be interchangeably referred to as the application222. Furthermore, while the memories206,214are depicted as having a particular structure and/or configuration, (e.g., separate RAM206and ROM214), memory of the computing device102may have any suitable structure and/or configuration. Furthermore, a portion of the memory220may comprise the memory120.

While not depicted, the computing device102may include, and/or be in communication with, one or more of an input device and a display screen (and/or any other suitable notification device) and the like, such as the input device116and/or the display screen114of the PSAP terminal110, and the like.

As shown inFIG.2, the computing device102includes the communication interface202communicatively coupled to the common data and address bus216of the processing unit204.

The processing unit204may include the code Read Only Memory (ROM)214coupled to the common data and address bus216for storing data for initializing system components. The processing unit204may further include the controller218coupled, by the common data and address bus216, to the Random-Access Memory206and the static memory220.

The communication interface202may include one or more wired and/or wireless input/output (I/O) interfaces210that are configurable to communicate with other components of the system100. For example, the communication interface202may include one or more wired and/or wireless transceivers208for communicating with other suitable components of the system100. Hence, the one or more transceivers208may be adapted for communication with one or more communication links and/or communication networks used to communicate with the other components of the system100. For example, the one or more transceivers208may be adapted for communication with one or more of the Internet, a digital mobile radio (DMR) network, a Project 25 (P25) network, a terrestrial trunked radio (TETRA) network, a Bluetooth network, a Wi-Fi network, for example operating in accordance with an IEEE 802.11 standard (e.g., 802.11a, 802.11b, 802.11g), an LTE (Long-Term Evolution) network and/or other types of GSM (Global System for Mobile communications) and/or 3GPP (3rd Generation Partnership Project) networks, a 5G network (e.g., a network architecture compliant with, for example, the 3GPP TS 23 specification series and/or a new radio (NR) air interface compliant with the 3GPP TS 38 specification series) standard), a Worldwide Interoperability for Microwave Access (WiMAX) network, for example operating in accordance with an IEEE 802.16 standard, and/or another similar type of wireless network. Hence, the one or more transceivers208may include, but are not limited to, a cell phone transceiver, a DMR transceiver, P25 transceiver, a TETRA transceiver, a 3GPP transceiver, an LTE transceiver, a GSM transceiver, a 5G transceiver, a Bluetooth transceiver, a Wi-Fi transceiver, a WiMAX transceiver, and/or another similar type of wireless transceiver configurable to communicate via a wireless radio network.

The communication interface202may further include one or more wireline transceivers208, such as an Ethernet transceiver, a USB (Universal Serial Bus) transceiver, or similar transceiver configurable to communicate via a twisted pair wire, a coaxial cable, a fiber-optic link, or a similar physical connection to a wireline network. The transceiver208may also be coupled to a combined modulator/demodulator212.

The controller218may include ports (e.g., hardware ports) for coupling to other suitable hardware components of the system100.

The controller218may include one or more logic circuits, one or more processors, one or more microprocessors, one or more GPUs (Graphics Processing Units), and/or the controller218may include one or more ASIC (application-specific integrated circuits) and one or more FPGA (field-programmable gate arrays), and/or another electronic device. In some examples, the controller218and/or the computing device102is not a generic controller and/or a generic device, but a device specifically configured to implement functionality for automatically replying to public-safety or enterprise-safety text messages. For example, in some examples, the computing device102and/or the controller218specifically comprises a computer executable engine configured to implement functionality for automatically replying to public-safety or enterprise-safety text messages.

The static memory220comprises a non-transitory machine readable medium that stores machine readable instructions to implement one or more programs or applications. Example machine readable media include a non-volatile storage unit (e.g., Erasable Electronic Programmable Read Only Memory (“EEPROM”), Flash Memory) and/or a volatile storage unit (e.g., random-access memory (“RAM”)). In the example ofFIG.2, programming instructions (e.g., machine readable instructions) that implement the functionality of the computing device102as described herein are maintained, persistently, at the memory220and used by the controller218, which makes appropriate utilization of volatile storage during the execution of such programming instructions.

As depicted, the memory220further stores programming instructions224(e.g., machine readable instructions) for implementing the context engine148. While depicted as separate from the application222, the programming instructions224for implementing the context engine148may comprise a component of the application222.

In particular, the memory220stores instructions corresponding to the at least one application222(and the programming instructions224) that, when executed by the controller218, enables the controller218to implement functionality for automatically replying to public-safety or enterprise-safety text messages, including but not limited to, the blocks of the method set forth inFIG.3.

The application222and/or the programming instructions224may include programmatic algorithms, and the like, to implement functionality as described herein. Alternatively, and/or in addition to numerical algorithms, the application222and/or the programming instructions224may include machine learning models and/or algorithms, and the like, which have been trained to implement functionality for automatically replying to public-safety or enterprise-safety text messages. Furthermore, the application222and/or the programming instructions224may be operated in a training mode to train machine learning models and/or algorithms thereof to implement functionality for automatically replying to public-safety or enterprise-safety text messages.

The one or more machine learning models and/or algorithms of the application222and/or the programming instructions224may include, but are not limited to: a deep-learning based algorithm; a neural network; a generalized linear regression algorithm; a random forest algorithm; a support vector machine algorithm; a gradient boosting regression algorithm; a decision tree algorithm; a generalized additive model; evolutionary programming algorithms; Bayesian inference algorithms, reinforcement learning algorithms, and the like. However, generalized linear regression algorithms, random forest algorithms, support vector machine algorithms, gradient boosting regression algorithms, decision tree algorithms, generalized additive models, and the like may be preferred over neural network algorithms, deep learning algorithms, evolutionary programming algorithms, and the like, in some public-safety environments, such as PSAP environments, and the like. Any suitable machine learning algorithm and/or deep learning algorithm and/or neural network is within the scope of present examples.

While details of the PSAP104, the PSAP terminal110, the communication device106and the radio144are not depicted, the PSAP104, the PSAP terminal110, the communication device106and the radio144may have components similar to the computing device102adapted, however, for the functionality thereof.

Attention is now directed toFIG.3, which depicts a flowchart representative of a method300for automatically replying to public-safety or enterprise-safety text messages. The operations of the method300ofFIG.3correspond to machine readable instructions that are executed by the computing device102, and specifically the controller218of the computing device102. In the illustrated example, the instructions represented by the blocks ofFIG.3are stored at the memory220for example, as the application222and/or the programming instructions224. The method300ofFIG.3is one way that the controller218and/or the computing device102and/or the system100may be configured. Furthermore, the following discussion of the method300ofFIG.3will lead to a further understanding of the system100, and its various components.

The method300ofFIG.3need not be performed in the exact sequence as shown and likewise various blocks may be performed in parallel rather than in sequence. Accordingly, the elements of method300are referred to herein as “blocks” rather than “steps.” The method300ofFIG.3may be implemented on variations of the system100ofFIG.1, as well.

At a block302, the controller218, and/or the computing device102, receives (e.g., via the communication interface202), from the communication device106, the text message108indicative of: a given public-safety or enterprise-safety incident type; data documenting the given public-safety or enterprise-safety incident type; and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. Hence, the text message108is understood to comprise a public-safety and/or enterprise safety text message.

In some examples, the text message108may explicitly recite a given public-safety or enterprise-safety incident type, for example via text such as “Loitering”, “Bank Robbery”, and the like.

Similarly, in some examples, the text message108may explicitly recite and/or include data documenting the given public-safety or enterprise-safety incident type, for example via text such as “Report”, and/or “Reporting” “Bank Robbery”, and the like. In other examples, the data documenting the given public-safety or enterprise-safety incident type may include photos, video, audio, and the like.

As such, the data documenting the given public-safety or enterprise-safety incident type may comprise one or more of: text of the text message108; and attachments to the text message108(e.g., such as photos, audio files, video files, and the like).

Similarly, in some examples, the text message108may explicitly recite a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type, for example via text such as “Dispatch Patrol Car Immediately”.

Put another way, while an example of the text message108is shown inFIG.1that uses natural language, in other examples the text message108may be structured in a manner that specifically and explicitly includes recitations of the given public-safety or enterprise-safety incident type, the data documenting the given public-safety or enterprise-safety incident type, and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type, in a predefined order and/or according to a predefined structure. One example of such a structured text message108may comprise: “Given Public-Safety or Enterprise-Safety Incident Type: Loitering; Documentation Data: Report Seeing Stranger; Requested Public-Safety or Enterprise-Safety Action: Dispatch Patrol Car Immediately”. In such examples, the controller218, and/or the computing device102may be configured to analyze and/or process such a structured text message108(e.g., on the basis of a predefined structure) to determine the given public-safety or enterprise-safety incident type, the data documenting the given public-safety or enterprise-safety incident type, and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. Such analyzing and/or processing may occur without use of the context engine148.

In other examples, the given public-safety or enterprise-safety incident type, the data documenting the given public-safety or enterprise-safety incident type, and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type may be explicitly recited in the text message108, but may not be strictly provided in a predefined structure. One example of such a text message108may comprise: “I am submitting a report of loitering and request an action to dispatch patrol car immediately”. In these examples, the controller218, and/or the computing device102may determine one or more of the given public-safety or enterprise-safety incident type, the data documenting the given public-safety or enterprise-safety incident type, and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type by searching the text message108, for example using terms from the records122, such as text from the types124,134, the sets of documentation126,136and/or the implementable public-safety or enterprise-safety actions128,138.

However, in other examples, the text message108may not explicitly recite one or more of the given public-safety or enterprise-safety incident type, the data documenting the given public-safety or enterprise-safety incident type, and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. For example, the text message108does not explicitly use the terms “Loitering”, “Report” or “Dispatch Patrol Car Immediately”. In these examples the controller218, and/or the computing device102may analyze the text message108using the context engine148(e.g., and/or the NLP engine) to determine one or more of: the given public-safety or enterprise-safety incident type; the data documenting the given public-safety or enterprise-safety incident type; and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type.

For example, the context engine148may receive the text message108as input, parse and/or separate the text of the text message108into phrases and/or sentences and/or groups of text and/or words, and analyze phrases and/or sentences and/or groups of text and/or words to determine one or more of: the given public-safety or enterprise-safety incident type; the data documenting the given public-safety or enterprise-safety incident type; and the requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type. An example of the context engine148analyzing the text message108ofFIG.1is depicted inFIG.4.

In yet further examples, the context engine148may be used regardless of a structure (or lack thereof) of the text message108.

In yet further examples, the text message108may not include a requested public-safety or enterprise-safety action. An example of such a text message108may comprise: “I saw a stranger walking around the neighborhood” (e.g. or “I saw a stranger walking around the lobby of my office building”); in this example there is no requested public-safety or enterprise-safety action, and the text message108merely includes a report of loitering. In these examples, the controller218and/or the computing device102may be configured to determine that the requested public-safety or enterprise-safety action comprises a default requested public-safety or enterprise-safety action associated with one or more of the given public-safety or enterprise-safety incident type or a type of the text message108.

For example, controller218and/or the computing device102may have access to a table and/or database (e.g., which may be a component and/or module of the application222, and the like and/or may be stored at the memory120, and the like) that associates given public-safety or enterprise-safety incident types with default actions. For example, a given public-safety or enterprise-safety incident type of “Loitering” may be associated with a default requested public-safety or enterprise-safety action of “Routine Patrol Car Only”, and a given public-safety or enterprise-safety incident type of “Bank Robbery” may be associated with a default requested public-safety or enterprise-safety action of “Dispatch Patrol Car Immediately”. While such examples are similar to the respective implementable public-safety or enterprise-safety actions128-1,138-1, in other examples the default requested public-safety or enterprise-safety action may be different from the respective implementable public-safety or enterprise-safety actions128-1,138-1. Hence, the controller218and/or the computing device102may be configured to determine that the requested public-safety or enterprise-safety action comprises a default requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type indicated by the text message108using such associations, however such a determination may occur in any suitable manner including, but not limited to, using one or more machine learning algorithms.

In other examples, controller218and/or the computing device102may have access to table and/or database (e.g., which may be a component and/or module of the application222, and the like) that associates given types of text messages with default actions for given public-safety or enterprise-safety incident types. For example, an SMS-type text message generally does not have photos attached thereto; hence, a given public-safety or enterprise-safety incident type of “Loitering” as reported via an SMS message may be associated with a default requested public-safety or enterprise-safety action of “Routine Patrol Car Only”, and a given public-safety or enterprise-safety incident type of “Bank Robbery” as reported via an SMS message may be associated with a default requested public-safety or enterprise-safety action of “Dispatch Patrol Car Immediately”. However, an MMS-type text message generally includes multimedia, such as; hence, a given public-safety or enterprise-safety incident type of “Loitering” as reported via an MMS message may be associated with a default requested public-safety or enterprise-safety action of “Dispatch Patrol Control Car Immediately”, and a given public-safety or enterprise-safety incident type of “Bank Robbery” as reported via an MMS message may be associated with a default requested public-safety or enterprise-safety action of “Dispatch Full Response Team”. While such examples are similar to the respective implementable public-safety or enterprise-safety actions128-2,138-2, in other examples the default requested public-safety or enterprise-safety action may be different from the respective implementable public-safety or enterprise-safety actions128-2,138-2. Hence, the controller218and/or the computing device102may be configured to determine that the requested public-safety or enterprise-safety action comprises a default requested public-safety or enterprise-safety action associated with a type of the text message108using such associations, however such a determination may occur in any suitable manner including, but not limited to, using one or more machine learning algorithms.

At a block304, the controller218, and/or the computing device102, determines an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the data documenting the given public-safety or enterprise-safety incident type.

For example, the determining the implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type based on the data documenting the given public-safety or enterprise-safety incident type may occur via one or more of: a database lookup; and one or more machine learning algorithms.

In particular, the controller218, and/or the computing device102may use the given public-safety or enterprise-safety incident type and the data documenting the given public-safety or enterprise-safety incident type as indicated by the text message108to perform a database lookup for an implementable public-safety or enterprise-safety action at the memory120. For example, with reference toFIG.1, the given public-safety or enterprise-safety incident type may comprise “Loitering”, which corresponds to the type124“Loitering” of the record122-1, and the data documenting the given public-safety or enterprise-safety incident type may comprise a “Report”, which corresponds to the documentation126-1of the record122-1. As the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Only” is associated with the documentation126-1, the controller218, and/or the computing device102may perform a database lookup of the record122-1and determine that an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type of “Loitering” (indicated by the text message108), based on the data documenting the given public-safety or enterprise-safety incident type of a “Report” (indicated by the text message108) comprises “Routine Patrol Car Only”. However such a determination may occur in any suitable manner including, but not limited to, using one or more machine learning algorithms.

Furthermore, it is understood that the implementable public-safety or enterprise-safety action determined at the block304may be based on one or more of statutory regulations and a protocol associated with a location of one or more of: the communication device106; and the public-safety incident identified by the given public-safety or enterprise-safety incident type indicated by the text message108.

For example, the text message108may be received with a location of the communication device106and/or a location of the public-safety incident identified by the given public-safety or enterprise-safety incident type. When both the location of the communication device106and the location of the public-safety incident are received, the controller218, and/or the computing device102may default to using the location of the public-safety incident. Furthermore, it is understood that when database lookups of implementable public-safety or enterprise-safety actions occur, the location of the communication device106and/or a location of the public-safety incident may be compared to jurisdictions132,142indicated in the records122to verify that the associated statute130,140indicated by the records122apply to a received location. Alternatively, a database lookup may include using a received location in the database lookup. For example, there may be more than one record122stored at the memory120in association with a given public-safety or enterprise-safety incident type of “Loitering”, but for different jurisdictions. As such, a received location may be used to lookup a record122associated with a given public-safety or enterprise-safety incident type indicated by the text message108, and that is also associated with jurisdiction that includes the received location.

At a block306, the controller218, and/or the computing device102, determines whether there is a difference between the requested public-safety or enterprise-safety action (e.g., indicated by the text message108) and the implementable public-safety or enterprise-safety action (e.g., determined at the block304).

For example, determining the difference may occur by comparing the requested public-safety or enterprise-safety action, indicated by the text message108, with the implementable public-safety or enterprise-safety action, determined at the block304, to determine whether the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action are the same, or different. Such a determination may occur via the aforementioned database lookup to determine the implementable public-safety or enterprise-safety action to compare to the requested public-safety or enterprise-safety action and/or via one or more machine learning algorithms, and/or in any other suitable manner (e.g., including, but not limited to, using programmatic algorithms).

Hence, in some examples, the method300may further comprise determining the difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action via one or more of: a database lookup of the implementable public-safety or enterprise-safety action based on the data; and one or more machine learning algorithms.

Furthermore, a determination of the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action being the “same” may include the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action having different wording, but having a same meaning, which may be determined via the context engine148, one or more machine learning algorithms, and the like. For example, again referring toFIG.1, a requested public-safety or enterprise-safety action indicated by the text message108is indicated by “Send Police Immediately”, which may have a same meaning as “Dispatch Patrol Car Immediately”, but using different text. However the context engine148, one or more machine learning algorithms, and the like may be used to convert the text of “Send Police Immediately” to “Dispatch Patrol Car Immediately” for comparison with an implementable public-safety or enterprise-safety action determined at the block304.

In response to determining a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action (e.g., a “YES” decision at the block306), at a block308, the controller218, and/or the computing device102, generates a reply text message identifying one or more of the implementable public-safety or enterprise-safety action and the difference.

At a block310(e.g., also implemented in response to determining a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action and/or a “YES” decision at the block306), the controller218, and/or the computing device102, transmits (e.g., via the communication interface202), to the communication device106, the reply text message identifying one or more of the implementable public-safety or enterprise-safety action and the difference.

For example, the reply text message may include text indicating the implementable public-safety or enterprise-safety action, and/or text indicating that the requested public-safety or enterprise-safety action is different from the implementable public-safety or enterprise-safety action, and the like. Continuing with the example ofFIG.1, the requested public-safety or enterprise-safety action may comprise “Dispatch Patrol Car Immediately” and the implementable public-safety or enterprise-safety action may comprise “Routine Patrol Car Only”. As such there is a difference therebetween (e.g., as determined at the block306), and a reply text message may comprise “We cannot send police immediately. We will send a routine patrol car only” and/or “We will send a routine patrol car only, which is different from the requested “Send police immediately”, and the like.

In some examples, the reply text message may identify the statute (e.g., the statute130), which may cause the implementable public-safety or enterprise-safety action to be determined. Continuing with the example, ofFIG.1, a statute130that causes the implementable public-safety or enterprise-safety action128-1to be determined when only documentation126-1of a report is received may comprise a statutory regulation and/or law having a particular identifier, and the reply text message may identify the statutory regulation and/or law and/or the particular identifier. For example, a reply text message may comprise “We cannot send police immediately. We will send a routine patrol car only according to law 123ABC, which recites that we can only send a routine patrol only when only a report of loitering is received without a photo”.

However, in some examples the method300may further comprise the controller218and/or the computing device102, determining further data required for implementing the requested public-safety or enterprise-safety action (e.g., indicated by the text message108); and including, in the reply text message, an indication of the further data. Continuing with the example, ofFIG.1, for the requested public-safety or enterprise-safety action of “Send police immediately” and/or “Dispatch Patrol Car Immediately” to occur for loitering, according to the documentation126-2of the record122-1, both a report and a photo should be received. Hence, in these examples, the further data required for implementing the requested public-safety or enterprise-safety action may be determined from the documentation126-2identified by the record122-1, and may comprise a photo (e.g., of a suspect who is allegedly loitering). As such, a reply text message may comprise “We cannot send police immediately. We will send a routine patrol car. If you want us to send police immediately we require a photo of the suspect”.

In some of these examples, no reply from the communication device106may be received in response to the reply text message. However, in other examples, the method300may further comprise the controller218and/or the computing device102, in response to the reply text message that includes the indication of the further data, receiving, from the communication device106, the further data; and changing the implementable public-safety or enterprise-safety action to the requested public-safety or enterprise-safety action. Put another way, and again continuing with the example ofFIG.1, the communication device106may respond to the reply text message with a further text message (e.g., an MMS message) that includes a photo of the stranger indicated in the text message108. As such, the controller218and/or the computing device102may again perform a database lookup to determine that the report received with the text message108, and the photo received with the further text message meets the statute130, which defines that the implementable public-safety or enterprise-safety action128-2of “Dispatch Control Car Immediately” may occur when a report and a photo are received as defined by the documentation126-2. As such, the implementable public-safety or enterprise-safety action128-1determined at the block304may be changed to the requested public-safety or enterprise-safety action, which is the same as the implementable public-safety or enterprise-safety action128-2.

Returning to the block306, in response to determining that the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action are the same and/or determining that there is not a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action (e.g., a “NO” decision at the block306), at a block312, the controller218, and/or the computing device102, generates a different reply text message indicating that the requested public-safety or enterprise-safety action is to be implemented.

At a block314(e.g., also implemented in response to determining that the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action are the same and/or determining that there is not a difference between the requested public-safety or enterprise-safety action and the implementable public-safety or enterprise-safety action and/or a “NO” decision at the block306), the controller218, and/or the computing device102, transmits (e.g., via the communication interface202), to the communication device106, the different reply text message indicating that the requested public-safety or enterprise-safety action is to be implemented.

Continuing with the example ofFIG.1, the text message108may include a photo such that at the block304the implementable public-safety or enterprise-safety action128-2is determined, which may be the same as the requested public-safety or enterprise-safety action. In these example, the reply text message may comprise “We are sending police immediately”, and the like.

In some examples, the method300may further comprise the controller218and/or the computing device102causing the implementable public-safety or enterprise-safety action (e.g., determined at the block304and/or as changed to the requested public-safety or enterprise-safety action) to occur by dispatching public-safety personnel or enterprise-safety personnel to a location of one or more of: the communication device106; and a public-safety incident identified by the given public-safety or enterprise-safety incident type indicated by the text message108.

For example, the controller218and/or the computing device102may transmit a message to the radio144that includes the location of the communication device106and/or the public-safety incident and instructions that the public-safety officer146is to implement the implementable public-safety or enterprise-safety action, for example on a routine patrol (or immediately). Alternatively, the controller218and/or the computing device102may transmit a similar message to the PSAP104and/or the PSAP terminal110so that the operator112may review the message (e.g., via the interface118at the display screen114) and communicate (e.g., using the headset119) with the public-safety officer146via the radio144to instruct the public-safety officer146to implement the implementable public-safety or enterprise-safety action. In some examples, a review of the implementable public-safety or enterprise-safety action may be required at the PSAP104(e.g., by the operator112) prior to causing the implementable public-safety or enterprise-safety action being implemented; for example, when the given public-safety or enterprise-safety incident type is a “Bank Robbery” and a report and photo are received that correspond to the documentation136-2, prior to the implementable public-safety or enterprise-safety action138-2of “Dispatch Full Response Team” occurring, the operator112may review the implementable public-safety or enterprise-safety action138-2, the report and the photo, amongst other possibilities, before dispatching a full response team, for example to prevent swatting incidents, and the like.

In yet further examples, when there is a difference between the requested public-safety or enterprise-safety action and a default response associated with first public-safety or enterprise-safety personnel and/or a first public-safety or enterprise-safety agency (e.g. a police agency), for example as determined at the block306, but second public-safety or enterprise-safety personnel and/or a second public-safety or enterprise-safety agency has the capability and/or resources to respond to the public-safety or enterprise-safety incident and/or at least partially provide the requested public-safety or enterprise-safety action, contact information of the second public-safety or enterprise-safety personnel and/or the second public-safety or enterprise-safety agency may be provided to the communication device106(e.g. in the reply text message generated and transmitted at the block308and the block310) and/or the second public-safety or enterprise-safety personnel and/or the second public-safety or enterprise-safety agency may be caused to implement the requested action, with the reply text message generated and transmitted at the block308and the block310adapted accordingly.

In a specific example, when the requested public-safety or enterprise-safety action comprises “Dispatch Patrol Car Immediately”, and a default response comprises “Routine Patrol Car Only”, but the enterprise-safety officer152, such as a mental-health professional associated with a mental-wellness agency, is available for immediate dispatch, the reply text message of the blocks308,310may be adapted to include contact information of the enterprise-safety officer152, such as the phone number associated with the communication device150, and/or the enterprise-safety officer152may be dispatched to the incident, with the reply text message of the blocks308,310adapted accordingly. Hence, while the enterprise-safety officer146is not dispatched (e.g. “Dispatch Patrol Car Immediately” does not occur), as the enterprise-safety officer152is available, and as dispatch of the enterprise-safety officer152may provide less of a strain on public-safety resources, the enterprise-safety officer152may be dispatched. Such alternative actions may be stored at the memory120and/or records122in association with the incident types124, along with the contact information of the enterprise-safety officer152, and the like.

Attention is next directed toFIG.4,FIG.5, andFIG.6, which depict examples of the method300.FIG.4,FIG.5, andFIG.6are substantially similar toFIG.1, with like components having like numbers.

Attention is first directed toFIG.4, which depicts the computing device102receiving (e.g., at the block302of the method300) the text message108.

FIG.4further depicts the text message108being input to the context engine148, which separates the text of the text message108into sentences402,404and identifies keywords in the sentences402,404, which may be used to identify a given public-safety or enterprise-safety incident type, data documenting the given public-safety or enterprise-safety incident type, and a requested public-safety or enterprise-safety action associated with the given public-safety or enterprise-safety incident type.

For example as depicted inFIG.4, the words “stranger”, “walking” and “neighborhood” have been identified by the context engine148as keywords associated with a given public-safety or enterprise-safety incident type406of “Loitering”. Furthermore, the sentence402has been identified by the context engine148as comprising data408of a “Report” documenting the “Loitering”. Furthermore, the words “send”, “police” (and/or “send police”) and “immediately” have been identified by the context engine148as keywords associated with a requested public-safety or enterprise-safety action410of “Dispatch Patrol Car Immediately”.

Attention is next directed toFIG.5, which depicts the computing device102determining (e.g., at the block304of the method300) an implementable public-safety or enterprise-safety action for the given public-safety or enterprise-safety incident type406based on the data408, for example by performing a database lookup of the records122using the given public-safety or enterprise-safety incident type406and the data408. As depicted, the given public-safety or enterprise-safety incident type406of “Loitering” is understood to identify the record122-1, as the given public-safety or enterprise-safety incident type406of “Loitering” matches the given public-safety or enterprise-safety incident type124of the record122-1. Similarly, the data408of a “Report” is understood to correspond with the documentation126-1, which is associated with the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Immediately”, which is retrieved from the record122-1by the computing device102.

As depicted inFIG.5, the computing device102compares the requested public-safety or enterprise-safety action410of “Dispatch Patrol Car Immediately” with the implementable public-safety or enterprise-safety action128-1of “Routine Patrol Car Immediately” to determine that there is a difference therebetween (e.g., a “YES” decision at the block306of the method300).

As such, the computing device102generates (e.g., at the block308of the method300) a reply text message502of “We cannot send police immediately. We will send a routine patrol car. If you want us to send police immediately we require a photo of the suspect.” The computing device102furthermore transmits the reply text message502to the communication device106, for example as a response to the text message108.

In this example the reply text message502identifies further data of a “photo of the suspect” require to implement the requested public-safety or enterprise-safety action410, which may be determined by comparing the requested public-safety or enterprise-safety action410of “Dispatch Patrol Car Immediately” with the implementable public-safety or enterprise-safety action128-2to determine the associated documentation126-2.

In some examples (not depicted), the reply text message502may include a phone number of the communication device150. For example, the reply text message502may comprise: “We cannot send police immediately. We will send a routine patrol car. If you want us to send police immediately we require a photo of the suspect. If the suspect appears to be experiencing a mental health crisis, please call 312-555-1212, the local mental health crisis line”, where “312-555-1212” is understood to comprise a phone number of the communication device150and/or a phone number associated with a mental-wellness agency.

Attention is next directed toFIG.6, which depicts the communication device106responding to the reply text message502with a further text message602that includes a photo604of the stranger referred to in the text message108. As such, the computing device102may determine that the documentation126-2has been received and change the implementable public-safety or enterprise-safety action128-1to the implementable public-safety or enterprise-safety action128-2and/or the requested public-safety or enterprise-safety action410of “Dispatch Patrol Car Immediately” (e.g., which is the same as the implementable public-safety or enterprise-safety action128-2).

The computing device102may cause the implementable public-safety or enterprise-safety action128-2and/or the requested public-safety or enterprise-safety action410to occur by generating and transmitting to the PSAP104a message606, which includes a command to “Dispatch Patrol Car Immediately”, as well as a “Location” received with the text message108(e.g., the location of the communication device106and/or the public-safety incident reported by the text message108), an indication, “Loitering” of the given public-safety type that is to be investigated, and the photo604.

The message606may be received at the PSAP terminal110and may be provided at the interface118provided at the display screen114for review by the operator112. The operator112may operate the PSAP terminal110to transmit a dispatch command608to the radio144to dispatch a patrol car operated by the public-safety officer146to the “Location” received with the text message108. As such the dispatch command608may comprise a command of “Dispatch” to a “Location” to investigate “Loitering” at a time of “Now”, along with the photo604. Indeed, the dispatch command608may be populated with information from the message606.

As should be apparent from this detailed description above, the operations and functions of electronic computing devices described herein are sufficiently complex as to require their implementation on a computer system, and cannot be performed, as a practical matter, in the human mind. Electronic computing devices such as set forth herein are understood as requiring and providing speed and accuracy and complexity management that are not obtainable by human mental steps, in addition to the inherently digital nature of such operations (e.g., a human mind cannot interface directly with RAM or other digital storage, cannot transmit or receive electronic messages, and the like).