Attaching multiple phone lines to a single mobile or landline phone
Summary by NHIP
Virtual number call routing method
The method connects multiple telephonic devices to a single virtual number by identifying them against stored authorized transmitting numbers in a mapping table. It distinguishes contact devices from operator devices based on whether their transmitting numbers match the stored authorized number, then routes audio communications accordingly.
Claim Score by NHIP
Abstract
Agencies issue multiple devices to personnel for maintaining distinct identities over the course of assigned investigations. To provide flexible capabilities to agencies, a phone is converted for use with multiple attached telephone numbers. Accordingly, a single phone may be used to manage multiple identities over the course of one or more investigations. Using a multiple attached number, a given device can place and receive calls over the network to and from contacts. In addition to providing multiple attached numbers, calls using the multiple attached numbers may be monitored live and recorded to establish evidence.

Term
5.8 yearsleft in the term
Expires 29 June 2032.
- Priority
- Filed
- Granted
- Today
- Expires
27 claims: 2 independent, 25 dependent
- 1Broadest claimClaim Score 36, narrow(NHIP)A computer based method comprising:receiving first number information in response to a request from a first telephonic device to connect to a virtual number, the virtual number associated with an operator device and the first number information including a transmitting number corresponding to the first telephonic device and the virtual number;identifying the first telephonic device as a first contact device based on a lack of a match between the transmitting number of the first telephonic device and an authorized transmitting number stored in association with the virtual number in a mapping table;in response to identifying the first telephonic device as the first contact device, transmitting instructions for connecting the first contact device with the operator device associated with the virtual number;receiving second number information in response to a request from a second telephonic device to connect to the virtual number, the second number information including a transmitting number corresponding to the second telephonic device and the virtual number;identifying the second telephonic device as the operator device based on a match between the transmitting number of the second telephone device and the authorized transmitting number stored in association with the virtual number in the mapping table;andin response to identifying the second telephonic device as the operator device, receiving a transmitting number corresponding to a second contact device and transmitting instructions for connecting the operator device with the second contact device through the virtual number.
- 15A system for attaching multiple numbers to an operator device, the system comprising:a server comprising one or more processors and a non-transitory computer-readable storage medium storing computer program code, the computer program code when executed by a processor performing steps comprising: receiving first number information in response to a request from a first telephonic device to communicate with a virtual number, the virtual number associated with an operator device and the first number information including a transmitting number corresponding to the first telephonic device and the virtual number;identifying the first telephonic device as a first contact device based on a lack of a match between the transmitting number of the first telephonic device and an authorized transmitting number stored in association with the virtual number in a mapping table;in response to identifying the first telephonic device as the first contact device, transmitting instructions for connecting the first contact device with the operator device associated with the virtual number or transmitting data received from the first contact device to the operator device from the virtual number;receiving second number information in response to a request from a second telephonic device to communicate with the virtual number, the second number information including a transmitting number corresponding to the second telephonic device and the virtual number;identifying the second telephonic device as the operator device based on a match between the transmitting number of the second telephone device and the authorized transmitting number stored in association with the virtual number in the mapping table;andin response to identifying the second telephonic device as the operator device, receiving a transmitting number corresponding to a second contact device and transmitting instructions for at least one of connecting the operator device with the second contact device through the virtual number or transmitting data received from the operator device to the second contact device from the virtual number.
Independent claims2
159 paragraphs in 6 sections, as filed
CROSS REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Application 61/503,586, filed Jun. 30, 2011, which is incorporated by reference herein in its entirety. This application is also related to U.S. patent application Ser. No. 14/086,960, filed Nov. 21, 2013, entitled “Attaching Multiple Phone Lines to a Single Mobile or Landline Phone” which is a co-pending U.S. Continuation Application of this application.
BACKGROUND
1. Field of Art
The present disclosure generally relates to the field of undercover operations and more specifically to managing multiple identities using a single phone.
2. Background of the Invention
Police officers and other agents “operators” oftentimes conduct multiple investigations at the same time during the course of their duties. In many cases, these investigations require the operator to use phones to call, send short message service “SMS” messages (including multimedia messaging service “MMS” messages and proprietary messaging services such as BLACKBERRY messages “BBM”), or otherwise communicate with various contacts under a fake identity. Oftentimes, criminals and other individuals can ascertain information about the operator or the device used by the operator from data associated with the communication. Accordingly, operators frequently use multiple telephonic devices to manage different contacts and protect their identity.
Many operators are issued multiple mobile phones by their agency or department for use with different contacts and for different investigations. For example, the operator may require different phones having different numbers when communicating with different contacts in order to maintain a specific identity or conceal their true identity. Traditionally, the operator would physically require multiple phones or multiple subscriber identity modules (SIM cards) to maintain these different identities.
Use of multiple physical phones present difficulties for the operator in that the operator must carry the correct phone and/or multiple phones at the right time to receive a call or otherwise use the device. Multiple SIM cards are similarly intrusive in that, while they contain all the information required for a given identity, the operator would not receive notifications of calls, etc., incoming to a SIM card unless it was active in a device. Hence, the operator would still require multiple phones to monitor activity on multiple SIM cards. Furthermore, agencies oftentimes lack the ability to issue operators the appropriate devices, SIMs and/or corresponding identities in real time. While these difficulties are discussed with respect to an operator, private individuals (e.g., a business owner) and other entities face similar difficulties when operating multiple devices.
SUMMARY
The above and other issues are address by a method and computer system for configuring one or more virtual numbers for use on a network and attaching the virtual numbers to the operator device. An embodiment of the method comprises receiving connection information in response to requests, such as a phone call or a message, from a telephonic device to communicate with a virtual number. The connection information includes device information about the telephonic device and the virtual number. Based on the connection information, the telephonic device is identified as a contact device or operator device from a mapping table that stores device information associated with virtual number information.
If the mapping table identifies the telephonic device requesting to connect to the virtual number as an operator device, the method further comprises receiving device information corresponding to a contact device the operator would like to communicate with and transmitting instructions for at least one of connecting the operator device with the contact device through the virtual number or transmitting data received from the operator device to the contact device from the virtual number.
If the mapping table identifies the telephonic device requesting to connect to the virtual number as a contact device, the method further comprises transmitting instructions for at least one of connecting the contact device with the operator device associated with the virtual number or transmitting data received from the contact device to the operator device from the virtual number. As the contact device and the operator device communicate through the virtual number, contacts are prevented from ascertaining device and/or number information associated with the operator device.
An embodiment of the system comprises a service having one or more processors and a non0transitory computer-readable storage medium storing computer program code. When executed, the computer program code causes the server to receive information in response to requests, such as a phone call or a message, from a telephonic device to communicate with a virtual number. The information received includes device information about the telephonic device and the virtual number. Based on the connection information, the server identifies the telephonic device as a contact device or operator device in response to matching received information with device information associated with virtual number information stored in a mapping table.
If the mapping table identifies the telephonic device requesting to connect to the virtual number as an operator device, the server receives device information corresponding to a contact device the operator would like to communicate with and, in turn, transmits instructions for at least one of connecting the operator device with the contact device through the virtual number or transmitting data received from the operator device to the contact device from the virtual number.
If the mapping table identifies the telephonic device requesting to connect to the virtual number as a contact device, the server transmits instructions for at least one of connecting the contact device with the operator device associated with the virtual number or transmitting data received from the contact device to the operator device from the virtual number. As the contact device and the operator device communicate through the virtual number, contacts are prevented from ascertaining device and/or number information associated with the operator device
Additionally, multiple virtual numbers may be attached, or associated with, a single operator device to allow an operator to manage a variety of contacts. In turn, embodiments may further comprise receiving a selection of which virtual number to use for communicating with a specified contact device without compromising operator identity.
BRIEF DESCRIPTION OF THE DRAWINGS
The teachings of the embodiments can be readily understood by considering the following detailed description in conjunction with the accompanying drawings.
<figref idref="DRAWINGS">FIG. 1A</figref> is a block diagram illustrating an environment for implementing a multiple attached number “MA number” system according to one example embodiment.
<figref idref="DRAWINGS">FIG. 1B</figref> is a block diagram illustrating an operating environment of an agency service providing MA numbers according to one example embodiment.
<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram illustrating a MA module according to one example embodiment.
<figref idref="DRAWINGS">FIG. 3A</figref> is an interaction diagram illustrating a method for provisioning and mapping virtual numbers for operating an operator device with MA numbers according to one example embodiment.
<figref idref="DRAWINGS">FIGS. 3B and 3C</figref> are tables illustrating example embodiments of virtual number mapping for operating and monitoring MA numbers.
<figref idref="DRAWINGS">FIG. 4</figref> is an interaction diagram illustrating a method for connecting an operator device and contact device using a virtual number according to one example embodiment.
<figref idref="DRAWINGS">FIG. 5A</figref> is an interaction diagram illustrating a method for dialing out to a contact device using a MA number, according to one example embodiment.
<figref idref="DRAWINGS">FIG. 5B</figref> is an interaction diagram illustrating a method for dialing out to an operator device using a MA number, according to one example embodiment.
<figref idref="DRAWINGS">FIG. 6</figref> is an interaction diagram illustrating a method for monitoring an operator device according to one example embodiment.
DETAILED DESCRIPTION
The Figures (FIG.) and the following description relate to preferred embodiments by way of illustration only. It should be noted that from the following discussion, alternative embodiments of the structures and methods disclosed herein will be readily recognized as viable alternatives that may be employed without departing from the principles of the embodiments.
Reference will now be made in detail to several embodiments, examples of which are illustrated in the accompanying figures. It is noted that wherever practicable, similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures depict embodiments for purposes of illustration only.
Overview
Many operators posses a personal mobile phone or are issued a mobile phone by their agency or department. Oftentimes, operators work multiple cases and the traditional procedure of issuing/carrying additional devices or SIMs is not feasible under the given circumstances or simply cumbersome to the operator or agency. Furthermore, the traditional procedure requires the operator to manually mange the collection of devices, SIMs and their associated identities. In high pressure situations, the operator may inadvertently compromise an identity or lack the appropriately configured device. Accordingly, the agency may coordinate with an agency support service for configuring the operator's mobile phone or landline phone to fulfill the role of multiple telephonic devices. The configuration can take place over-the-air such that a given phone is conveniently converted as needed. Additionally, if the agency desires to provide the capabilities of multiple telephonic devices to additional operators, the agency can specify additional phones for configuration.
Example embodiments described herein relate to implementing a multiple attached “MA” number system over a wired and wireless radio network (e.g., PSTN, Cellular Network and/or WiFi) for network capable devices, such as a mobile phone, or a land-line phone for use with multiple attached numbers “MA numbers”. As mobile phones and similar devices are commonly carried by operators during the course of undercover investigations, mobile phones offer an existing platform for transmitting data wirelessly. Use of such a device with MA numbers allows operators to utilize a single operator device, but maintain numerous, distinct telephonic identities for communicating with various contacts. Operators working from a fixed location with a land-line phone are also provided similar capabilities for using MA numbers.
Additionally, with the popularity of smart phones and feature phones, additional monitoring and safety features may be integrated into the operator's device for enhancing operational viability in the field. For example, the operator device may be configured to collect a wide range of valuable real-time data. Real-time data collected by the operator device may include audio and Global Positioning System (“GPS”) coordinates, etc.
The operator device may subsequently transmit all or a portion of the collected real-time data over existing channels (e.g., a network) back to the agency, agency service or another entity. Embodiments of the agency, agency service and/or other entities within the MA number system receive the collected data for storage and/or live streaming to monitoring devices, operator devices and records. Depending on the embodiment, the monitoring devices are further configured to access and present (e.g., play and/or display) a variety of the real-time and historical data stored on or streamed by the entities on the network. For example, the monitoring devices may access a web interface, API or execute a standalone application for viewing operator device and MA number details and collected information. In some embodiments, the monitoring devices may access portions of the real-time data via a provided monitoring line configured for maintaining the operator's cover. Furthermore, other agencies with appropriate credentials and monitoring devices may similarly access portions of the collected information during inter-agency investigations.
Environment and Implementation of the Operator Device System
<figref idref="DRAWINGS">FIG. 1A</figref> is a block diagram illustrating an environment <b>100</b> for implementing a multiple attached number system according to one example embodiment. As shown the environment <b>100</b> includes a network <b>120</b> connecting an agency support service provider “agency service” <b>115</b>, an operator device <b>101</b> and contact devices <b>105</b>A through <b>105</b>E. While only one agency service <b>115</b> and one operator device <b>101</b> are shown in <figref idref="DRAWINGS">FIG. 1A</figref> for clarity, embodiments can support many operator devices <b>101</b> and have multiple agency service providers <b>115</b>.
Agency service <b>115</b> represents a collection of compute devices (e.g., servers) and related storage mediums that are configured for performing various activities such as configuring operator devices <b>101</b>, exchanging data over the network <b>120</b> and storing data in support of one or more agencies (not shown) and operated operator devices <b>101</b>. For example, the agency service <b>115</b> may include one or more modules providing ascribed functionality to an agency via an application programming interface (“API”) or web interface, collectively “the interface”, as described in more detail with reference to <figref idref="DRAWINGS">FIG. 1B</figref>. The agency service <b>115</b> may also include infrastructure for providing audio and video communicability (e.g., internally and/or over the network <b>120</b>) within the monitoring interface using the public switched telephone network (“PSTN”), voice over internet protocol (“VoIP”) and video conferencing services.
The operator devices <b>101</b> are oftentimes mobile telephonic devices capable of collecting data and transmitting data (e.g., wirelessly) over the network <b>120</b>. Some examples of an operator device <b>101</b> include a mobile phone, tablet or notebook computer. Example embodiments of the operator device <b>101</b> as a mobile phone include feature phones, smart phones or standard mobile phones. Accordingly, a given mobile phone or other device operated as an operator device <b>101</b> may not necessarily include or support all of the functionality ascribed herein to the operator device or MA number system due to inherent differences in device capabilities. In some embodiments, other telephonic devices such as land-line phones are used with the MA number system.
In one embodiment, the operator device <b>101</b> executes a MA module for automating connections through the network <b>120</b> and collecting and transmitting data to entities on the network <b>120</b>. An example embodiment of a MA module is described in more detail with reference to <figref idref="DRAWINGS">FIG. 2</figref>.
In addition to the operator devices <b>101</b>, a number of monitoring devices (not shown) may connect to entities on the network <b>120</b> to obtain or present data associated with one or more of the operator devices. Depending on the embodiment, a monitoring device is a network <b>120</b> capable device that can be operated within an agency or externally in the field. As referred to herein, a monitoring device is a mobile or stationary device capable of connectivity (e.g., wireless or wired) to a network <b>120</b> such as an agency network, the internet, PSTN and/or cellular network. Some examples of a monitoring device include a mobile phone, land-line phone, tablet and notebook or desktop computer.
Example embodiments of the monitoring device as a mobile phone can include feature phones, smart phones or standard mobile phones. Accordingly, a given mobile phone or other device operated as a monitoring device does not necessarily include or support all of the functionality ascribed herein to the monitoring device or the MA number system due to inherent differences in device capabilities. In one example embodiment, the monitoring device executes a monitoring module for interfacing with entities on the network <b>120</b> to manage operator devices <b>101</b> and view collected data.
Also shown are a number of contact devices <b>105</b> associated with contacts the operator desires to communicate with using a desired identity. Embodiments of the various contact devices <b>105</b> include any network <b>120</b> capable device that may send or receive information associated with a transmitting number on the network <b>120</b> (however, in some instances, the contact device <b>105</b> may use a virtual number itself, or other means, to do so). Accordingly, as referred to herein, a contact device <b>105</b> is a mobile or stationary device capable of connectivity (e.g., wireless or wired) to the network <b>120</b> for sending or receiving information over the internet, PSTN and/or cellular network. Some examples of a contact device <b>105</b> include a mobile phone, land-line phone, tablet and notebook or desktop computer.
<figref idref="DRAWINGS">FIG. 1A</figref> also illustrates a number of virtual numbers <b>135</b>A through <b>135</b>D configured for use on the network <b>120</b>. In one embodiment, the agency service <b>115</b> provisions and configures the virtual numbers <b>135</b> and handles number information to establish identities for the virtual numbers on the network <b>120</b>. Additionally, the agency service <b>115</b> receives connection information <b>137</b> describing operator devices <b>101</b> and contact devices <b>105</b> requesting to communicate with handled virtual numbers <b>135</b>. For example, an operator device <b>101</b> or contact device <b>105</b> may request (and attempt) to communicate with a virtual number (e.g., <b>135</b>A) by way of a connection request or otherwise transmitting data to the virtual number. Common example communication requests include placing a call to and/or messaging the virtual number from a given device. Based on the device information and configuration of the virtual number, the agency service <b>115</b> identifies devices requesting to communicate with a virtual number as either the operator device <b>101</b> associated with the virtual number or a contact device <b>105</b> (and, in some cases, a monitoring device). For example, the agency service <b>115</b> may maintain a mapping table storing transmitting numbers and authentication information for a given operator device <b>101</b> and attached virtual numbers <b>135</b> for identifying the operator device based on the connection information <b>127</b>.
After identifying the operator device <b>101</b>, the agency service <b>115</b> enables the operator device <b>101</b> to specify a given contact <b>105</b>A the operator would like to communicate with and, in turn, enables the operator device <b>101</b> to communicate with the contact device <b>105</b>A through (e.g., establishing a connection with or transmitting data from) the virtual number. For example, the operator device <b>101</b> specifies device information, such as a transmitting number, for the contact device <b>105</b>A. The agency service <b>115</b> receives the device information for the contact device <b>105</b>A and transmits instructions that cause the contact device to receive a call from virtual number <b>135</b>A. If the contact device <b>105</b>A answers, the parties are connected. In another example, the operator device <b>101</b> may transmit data such as an SMS message to the virtual number <b>135</b>A and specify a contact device <b>105</b>A for receiving the SMS message from the virtual number <b>135</b>A. In other words, the agency service <b>115</b> transmits instructions (e.g., to a provider) to dial out to the contact device <b>105</b>A from the virtual number <b>135</b>A to connect the operator device <b>101</b> with the contact device <b>105</b> or to send an SMS message from the virtual number to transmit data received from the operator device <b>101</b> to intended the contact. As the agency service <b>115</b> connects the operator device <b>101</b> with entities on the network <b>120</b> through the virtual number, the virtual numbers <b>135</b> prevent other entities, such as contacts <b>105</b>, from viewing device and/or number information associated with the operator device.
When the contact device <b>105</b>A requests to communicate with the virtual number <b>135</b>A, the agency service <b>115</b> determines the operator device (e.g., operator device <b>101</b>) associated with the virtual number <b>135</b>A. In turn, the agency service <b>115</b> enables the operator device <b>101</b> to receive communications from the contact device <b>105</b>A using the virtual number <b>135</b>A. For example, the agency service <b>115</b> may transmit instructions for connecting the contact device <b>105</b> with the operator device <b>101</b> (e.g., by dialing out to the operator device <b>101</b>, optionally from the virtual number) or transmitting data such as SMS messages received at the virtual number from the contact device to the operator device from the virtual number or directly from the agency service <b>115</b>. As the contact devices <b>105</b> send and receive communications to/from the operator device <b>101</b> through the virtual number, contacts are typically unable to ascertain device and/or number information associated with the operator device.
The operator device <b>105</b>, on the other hand, may receive the connection information <b>137</b> from the agency service <b>115</b> or other entity about contact devices <b>105</b> dialing a virtual number <b>135</b> and the number identity of the dialed virtual number. Accordingly, the operator may make an informed decision about the caller and the identity expected from the operator. The agency service <b>115</b> may further enable the operator or agency to configure multiple virtual numbers to attach to, or associated with, a single operator device <b>101</b> for managing a variety of contacts <b>105</b>. In turn, the operator may use the single operator device <b>101</b> to select which virtual number (e.g., <b>135</b>A) to use for connecting to a specified contact device <b>105</b>A over the network <b>120</b> without compromising operator identity.
The network <b>120</b> represents the communication pathway between agencies, agency service <b>115</b>, the operator devices <b>101</b>, contact devices <b>105</b>, monitoring devices and other entities (not shown). In one embodiment, the network <b>120</b> includes standard communications technologies and/or protocols and can include the Internet and PSTN. Oftentimes, these communications technologies and/or protocols carry both PSTN and Internet related data. Thus, the network <b>120</b> can include links using technologies such as Ethernet, 802.11, worldwide interoperability for microwave access (WiMAX), 2G/3G/4G mobile communications protocols, worldwide interoperability for PSTN communications, digital subscriber line (DSL), asynchronous transfer mode (ATM), InfiniBand, PCI Express Advanced Switching, etc. Similarly, the networking protocols used on the network <b>120</b> can include multiprotocol label switching (MPLS), the transmission control protocol/Internet protocol (TCP/IP), the User Datagram Protocol (UDP), the hypertext transport protocol (HTTP), the simple mail transfer protocol (SMTP), the file transfer protocol (FTP), etc. The data exchanged over the network <b>120</b> can be represented using technologies and/or formats including analog audio (e.g., for last mile PSTN communications), digital audio and video (e.g., as a file or streaming with Real Time Streaming Protocol), the hypertext markup language (HTML), the extensible markup language (XML), JavaScript, VBScript, FLASH, the portable document format (PDF), etc. In addition, all or some of the data exchanged over the network <b>120</b> can be encrypted using conventional encryption technologies such as secure sockets layer (SSL), transport layer security (TLS), virtual private networks (VPNs), Internet Protocol security (IPsec), etc. In another embodiment, the entities on the network <b>120</b> can use custom and/or dedicated data communications technologies instead of, or in addition to, the ones described above. For example, some government agencies and the military may operate networks auxiliary to the internet and PSTN.
As used herein, the term “module” refers to computer program instructions and/or other logic used to provide the specified functionality. Thus, a module can be implemented in hardware, firmware, and/or software. In one embodiment, program modules formed of executable computer program instructions are stored on a non-transitory storage device, loaded into memory, and executed by a computer processor as one or more processes.
As used herein, the terms “message,” “messaging,” and “short messaging service (SMS)” each comprise the breadth of messaging services and related technologies or standards used for communicating and transmitting data over the network <b>120</b>. These technologies and services include SMS messages, multimedia messaging service “MMS” messages, proprietary messaging service messages such as BLACKBERRY messages “BBM” and the like.
<figref idref="DRAWINGS">FIG. 1B</figref> is a block diagram illustrating an operating environment of an agency service <b>115</b> providing MA numbers according to one example embodiment. As shown, the operating environment includes an agency <b>110</b>, monitoring devices <b>107</b>, operator devices <b>101</b>, contacts <b>105</b> and a network <b>120</b> with components such as the internet <b>123</b>, telephony <b>125</b> and provider <b>127</b>. The network <b>120</b> may also include GPS satellites (not shown) that relay position data to operator devices <b>101</b> and other devices.
Agency <b>110</b> represents a collection of servers, desktop, notebook or tablet computers, mobile telephones and related storage mediums used by respective agency personnel for executing applications or modules to communicate with and receive data from the agency service <b>115</b> (e.g., via the interface <b>145</b>) and other entities on the network <b>120</b>. For example, agency <b>110</b> devices may execute a web browser to access a web interface or execute a mobile or desktop application for communicating with an API provided by the agency service <b>115</b>. An agency <b>110</b> may also include telephonic and video infrastructure enabling audio and video communicability (e.g., internally and/or over the network <b>120</b>) using the public switched telephone network (“PTSN”), voice over internet protocol (“VoIP”) and video conferencing services for monitoring or specifying configurations for operator devices <b>101</b>.
The telephony network <b>125</b> may include servers, switches and other hardware and software for implementing, among other protocols and technologies, worldwide interoperability for PSTN communications including land-lines and 2G/3G/4G wireless protocols. The telephony network <b>125</b> also provides mobile devices with the capability to transmit and receive data over the internet <b>123</b>. The telephony network <b>125</b> is managed by one or more communication service providers “CSPs” (not shown) that own telephone numbers for use on the PSTN and the CSPs own network (e.g., a wireless network that communicates with the PSTN).
The provider <b>127</b> may include servers, switches and other hardware and software for communicating over the network <b>120</b> with CSPs and other entities. The provider <b>127</b> buys or leases numbers for use on the telephony network <b>125</b> from multiple CSPs. The provider <b>127</b>, in turn, manages numbers provisioned for use by the agency service <b>115</b> and the telephony traffic associated with the numbers. In one embodiment, the provider <b>127</b> allows the agency service <b>115</b> to provision one or more of the numbers as virtual numbers over the network <b>120</b>.
Typically, a number used on the telephony <b>125</b> network directs to a given mobile device, VoIP device or land-line device having an associated number identity characterized by automatic number identification “ANI” information, or caller identification. Virtual numbers, while still operable with the PSTN and CSP networks, are associated with the provider <b>127</b> who handles telephony traffic for the number. Because a virtual number does not direct to an end user device, the provider <b>127</b> may establish connections with devices dialing the virtual number, record call information such as call audio and caller history (e.g., on a computer readable medium) and stream/provide call information for download (e.g., over the network <b>120</b>).
The provider <b>127</b> may also pass/bridge audio (bidirectional or unidirectional) in real-time between two or more telephonic devices establishing connections with the same or different virtual numbers (or connected by the provider <b>127</b> via a virtual number). Additionally, as the virtual numbers are handled by the provider <b>127</b>, the agency service <b>115</b> may modify ANI information and caller identification associated with the virtual number.
In addition to provisioning virtual numbers for the agency service <b>115</b>, the provider <b>127</b> communicates notifications and data associated with the virtual numbers to the agency service <b>115</b> or other entity such as the agency <b>110</b>. For example, the provider <b>127</b> may notify the agency service <b>115</b> (and optionally an operator device <b>101</b> or monitoring device <b>107</b>) of an incoming caller or message to the virtual number and receive instructions from the agency service <b>115</b> to connect the caller to the virtual number (or another device) or redirect the message. The provider <b>127</b> may also receive instructions to stop/start recordings of calls placed to the virtual number and interface with a transcription service to transcribe call audio. In turn, the provider <b>127</b> can transmit the recordings and transcripts to the agency service <b>115</b> or other entity on the network <b>120</b>.
Additionally, the provider <b>127</b> may enable or disable inbound and/or outbound audio for different parties connected to a virtual number and recordings thereof responsive to instructions received (e.g., via an API) from the agency service <b>115</b>. The provider <b>127</b> can receive instructions for managing a virtual number as part of the provisioning process, prior to an incoming call or in real-time from the agency service <b>115</b> when connecting an incoming caller to the virtual number. In some embodiments, the provider <b>127</b> communicates directly with the agency <b>110</b>, operating device <b>101</b> and/or monitoring device <b>107</b> to provision virtual numbers, transmit notifications and data or receive instructions. Additionally, the provider <b>127</b> itself may function as a CSP and vice versa.
The agency service <b>115</b> receives requests for provisioning and mapping virtual number from the agency <b>110</b>, operator device <b>101</b>, or monitoring device <b>107</b>. The requests can include number information for provisioning virtual numbers such as an area code (e.g., 555), country code (e.g., +44) and/or associated CSP. In turn, the agency service <b>115</b> queries the provider <b>127</b> for available virtual numbers matching the request and returns the matching virtual numbers to the requesting entity. The agency service <b>115</b> subsequently receives a selection of virtual numbers from the requesting entity and claims the virtual numbers from the provider <b>127</b>. The agency service <b>115</b> may optionally allow the entity to specify number information such as ANI and/or caller identification associated with the virtual number to spoof the number's identity on the network <b>120</b>. The agency service <b>115</b>, in turn, transmits instructions to the provider <b>127</b> for modifying the number identity. The agency service <b>115</b> may optionally verify the spoofed number identity. When a virtual number is no longer needed by the agency <b>110</b>A, the agency service <b>115</b> obtains any audio recordings or call logs associated with the virtual number and releases the number back to the provider <b>127</b>.
The requests can also include mapping information for configuring claimed virtual number function in a mapping table. Depending on the desired configuration, the mapping information may include the transmitting number of an operator device <b>101</b> and/or and monitoring device <b>107</b>, virtual number for association with the device and/or desired function of the virtual number (e.g., MA number or local number). One example mapping request may specify a claimed virtual number for use as a virtual multiple attached number (MA number) that operator devices <b>101</b> connect to in order to transmit collected data (e.g., audio) over the telephony <b>125</b> network from the MA number's identity (e.g., to contact devices <b>105</b>). In one embodiment, the request includes the transmitting number of the operator device <b>101</b> and a given claimed virtual number for configuration as the MA number. In response to the request, the agency service <b>115</b> associates the transmitting number of the operator device <b>101</b> with the MA number and stores the association in a mapping table.
Another example mapping request may specify a claimed virtual number for use as a virtual local number (local number) that monitoring devices <b>107</b> connect to in order to monitor a MA number (e.g., listen to audio transmitted between operator device <b>101</b> and a contact device <b>105</b>). The operator device <b>101</b> may also utilize the local number to avoid long distances charges for MA numbers in different countries or area codes. In one embodiment, the request includes a given claimed virtual number (e.g., the local number) and the MA number. In response to the request, the agency service <b>115</b> associates the MA number with the local number and stores the association in a mapping table.
In some embodiments, a mapping request may optionally include the transmitting number of a monitoring device <b>107</b> which the agency service <b>115</b> associates with a MA number or local number to identify the monitoring device. As multiple monitoring devices <b>107</b>A, <b>107</b>B may monitor call audio, the agency service <b>115</b> may store multiple transmitting numbers of monitoring devices in association with a MA number or local number in a mapping table.
In practice, agency service <b>115</b> consults the mapping table to automatically identify a device connecting to a virtual number (e.g., the MA number) as the operator device <b>101</b>, monitoring device <b>107</b> or contact device <b>105</b> based on the device's transmitting number. Thus, for example, an operator of an operator device <b>101</b> may simply dial an MA number mapped to the transmitting number of his phone to place a call using a given MA number.
Personnel with a monitoring device <b>107</b> that desire to monitor the operator device <b>101</b> with a mobile or land-line phone at the agency <b>110</b>A or in the field can dial the local number associated with the MA number (and, in some embodiments, the MA number itself). However, in one embodiment (e.g., connecting to a local number), as the agency service <b>115</b> does not identify the transmitting number of the device as that of the operator device <b>101</b>, personnel devices are appropriately identified as monitoring devices <b>107</b>. In some embodiments (e.g., connecting to a local number and/or MA number), the agency service <b>115</b> identifies connecting monitoring device <b>107</b> based on a mapping of monitoring devices' <b>107</b> transmitting numbers to the receiving number. Alternatively, the agency service <b>115</b> identifies the monitoring device <b>107</b> or operator device <b>101</b> responsive to personal identification number or code “PIN” entered when connecting to a virtual number.
Embodiments of the agency service <b>115</b> use the mapping of the operator device <b>101</b> to MA numbers for instructing the provider <b>127</b> to automatically dial (e.g., from an MA number or via call forwarding) the operator device when calls are received from contact devices <b>105</b> on an MA number mapped to the operator device for connecting the parties. Additionally, embodiments of the agency service <b>115</b> use the mapping of the operator device <b>101</b> to MA numbers for identifying when the operator device desires to use an MA number and instructing the provider <b>127</b> to dial (e.g., from an MA number) a contact device <b>105</b> specified by the operator and connect the parties. The agency service <b>115</b> may also notify operating devices <b>101</b> with caller and MA number details through the interface <b>145</b>, via SMS message or email. Embodiments of the agency service <b>115</b> may also use mapping information to direct text messages received on an MA number to an operating device <b>101</b> and send text messages (e.g., from the operating device) from the MA number to entities on the network <b>120</b> such as contact devices <b>105</b>.
Additionally, embodiments of the agency service <b>115</b> can use the mapping of monitoring devices <b>107</b> to MA numbers for instructing the provider <b>127</b> to automatically dial (e.g., from a specified local number) or otherwise notify (e.g., a SMS message) monitoring devices when calls are placed or received using a given MA number. The agency service <b>115</b> may also notify monitoring devices <b>107</b> through the interface <b>145</b> or via email.
To prohibit unauthorized access to MA numbers (and local numbers), the agency service <b>115</b> may allow personnel and operators to specify key-ins when provisioning and/or mapping virtual numbers. The agency service <b>115</b> stores the key-ins in the mapping table or other suitable database structure to identify and authenticate callers attempting connections to the virtual numbers responsive to correct key-ins. Depending on the embodiment, the agency <b>110</b>, agency service <b>115</b> or provider <b>127</b> may store the mapping table and/or key-ins for device identification and authentication.
In some embodiments, the agency service <b>115</b> provides a MA module <b>141</b> to the operator device <b>101</b>. The MA module <b>141</b> interfaces with the native dialer of the operator device <b>101</b> to automate the connection process to a given contact device <b>105</b>. Additionally, the MA module <b>141</b> may interface with operator device <b>101</b> software and/or hardware to utilize features such as a GPS device to collect real-time position data. The MA module <b>141</b> transmits the collected data over the network <b>120</b> back to the agency service <b>115</b> or other entity. The agency service <b>115</b>, in turn, may store the collected data for transmission to one or more monitoring devices <b>107</b> and the agency <b>110</b>. Furthermore, the MA module <b>141</b> may be configured with a password or otherwise disguised when executed to prevent users other than the operator from accessing the module altogether and/or particular features. The MA module <b>141</b> is described in more detail with reference to <figref idref="DRAWINGS">FIG. 2</figref>.
In some embodiments, the agency service <b>115</b> includes an interface <b>145</b> for providing data received from operator devices <b>101</b> and call audio between operators and contacts to various monitoring devices <b>107</b> and/or appliances <b>150</b> over the network <b>120</b>. For example, the interface <b>145</b> may provide monitoring devices <b>107</b> with data corresponding to the status (e.g., connected or disconnected) of one or more operator devices <b>101</b> and the corresponding MA number and contact device information. If the operator device <b>101</b> is transmitting real-time data or connected to a contact device <b>105</b>, the interface <b>145</b> can stream data such as audio from the active transmission, GPS coordinates with heading, speed and coordinates of last-reported locations for placement on a map, and the internet protocol address and/or telephone numbers of other personnel monitoring or having access to the operator device or MA number. In some embodiments, the interface <b>145</b> syncs collected data prior to transmission or includes tags in the transmitted data for synchronization of playback at the monitoring device <b>107</b> or operator device <b>101</b>. The interface <b>145</b> can also stream, or provide for download, previously recorded monitoring sessions.
In some embodiments, the agency service <b>115</b> provides a monitoring module <b>140</b> to monitoring devices <b>107</b> for accessing the interface <b>145</b>. The monitoring module <b>140</b> transmits requests associated with configuring an operator device <b>101</b> and receiving real-time and historic data. For example, the monitoring module <b>140</b> may provide a user interface or status dashboard with options for provisioning virtual numbers, mapping a transmitting number of an operator device <b>101</b> or monitoring device <b>107</b> to a given virtual number and assigning key-ins for connecting to the virtual number. In one embodiment, the dashboard provides an option to toggle a recording session on or off with the agency service <b>115</b>. When the recording session is disabled, the monitoring device <b>107</b> still receives real-time data, but the agency service <b>115</b>, appliance <b>150</b> and provider <b>127</b> do not store copied of the collected data.
The monitoring module <b>140</b> may also display real-time status information for the operator device <b>101</b> including current GPS location, tracked GPS location, live audio, mapping table information and other information collected from the operator device, operator device <b>105</b>, or MA number and streamed by the interface <b>145</b>. Similarly, the monitoring module <b>140</b> may be used to access and playback historic activity associated with a given virtual number or operator device <b>101</b>. For example, the monitoring module <b>140</b> may download files for playback or steam them. In addition to interfacing with the agency service <b>115</b>, the monitoring module <b>140</b> may interface with an appliance <b>150</b> that stores (or backs up) collected data within the agency <b>110</b>. Additionally, the monitoring module <b>140</b> may include functionality of the MA module <b>141</b> and vice versa.
In one embodiment, the agency <b>110</b> includes an appliance <b>150</b> for storing data collected by operator devices <b>101</b> and call audio using MA numbers. The appliance <b>150</b> may utilize the monitoring interface <b>145</b> provided by the agency service <b>115</b> for updating stored data or receive data directly from operator devices <b>101</b>. Additionally, the appliance <b>150</b> may receive audio recorded on a virtual number and associated transcripts from the provider <b>127</b> or agency service <b>115</b>. One example embodiment of the appliance <b>150</b> also includes its own interface (not shown) that enables monitoring devices <b>107</b> and operator device to access real-time and historic data stored on the appliance for an MA number. Interfaces provided by the agency service <b>115</b> or appliance <b>150</b> may also be accessible via a web browser for streaming or downloading data and include the same or similar options.
Additionally, the appliance <b>150</b> and agency service <b>115</b> may communicate to intermittently update collected data and records at defined intervals or in response to notifications to download data. During the intervals or notification periods, the agency service <b>115</b> may process the data and perform any necessary actions as desired by operator devices <b>101</b> or monitoring device <b>107</b> until the data is transferred to the appliance <b>150</b>. In some embodiments, the agency service <b>115</b> maintains a persistent connection with the appliance <b>150</b> to facilitate transfer of real-time data collected by operator devices <b>101</b> operated in the field.
In one embodiment, the agency service <b>115</b> insures that it, and the provider <b>127</b>, do not possess data collected by operator devices <b>101</b> or from a virtual number beyond the time needed to facilitate transfer. However, in mission critical situations, operators and other agency <b>110</b> personnel cannot rely only on the availability of the appliance <b>150</b> for storing and maintaining collected data. Consequently, if the appliance <b>150</b> is unable to take possession of the collected data or go offline during transfer, the agency service <b>115</b> and/or the provider <b>127</b> may maintain possession of the collected data until the appliance <b>150</b> is functioning. Furthermore, the agency service <b>115</b> and/or provider <b>127</b> may determine whether checksums, hashes or sizes of transferred data match the appliance's <b>150</b> version prior to deleting stored data.
In some embodiments, the agency service <b>115</b> maintains an appliance instead of, or in addition to, the agency <b>110</b>. In such cases, the appliance may exist as a dedicated piece of hardware or remote storage. Alternatively, embodiments of the appliance <b>150</b> may be implemented in a cloud computing and storage stack available on the network <b>120</b>.
Operator Device Functionality
<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram illustrating a MA module <b>141</b> according to one example embodiment. As mentioned above, the MA module <b>141</b> may be downloaded from the agency service <b>115</b> to the operator device <b>101</b> and executed to facilitate communications using MA numbers and collect and transmit data to entities on the network <b>120</b>. As shown in <figref idref="DRAWINGS">FIG. 2</figref>, the MA module <b>141</b> itself includes multiple modules. In the embodiment shown in <figref idref="DRAWINGS">FIG. 2</figref>, the MA module <b>141</b> includes a connection module <b>205</b>, GPS module <b>210</b>, provisioning module <b>215</b>, caller ID module <b>220</b>, case module <b>225</b> and SMS module <b>230</b>. In some embodiments, the functions are distributed among the modules in a different manner than described herein. Other embodiments have additional and/or other modules.
The connection module <b>205</b> automates the connection process for dialing out to a given contact. The connection module <b>205</b> receives input from the operator including an MA number associated with the operator device <b>101</b>. In some embodiments, the connection module <b>205</b> further receives input indicating a local number associated with the operator device <b>101</b> or the MA number. Once a connection with the MA number is established, the connection module <b>205</b> transmits the number for a contact device <b>105</b> the operator desires to call over the network <b>120</b>. The connection module <b>205</b> may allow the operator to enter the number of the contact device <b>105</b> prior to, or after establishing the connection with the MA number. Additionally, the connection module <b>205</b> may interface with the agency service <b>115</b> to receive information about MA numbers associated with a given local number or the transmitting number of the operator device <b>105</b>. The connection module <b>205</b> may then present an interface to the operator indicating one or more available MA numbers with their number information for selection.
In one embodiment, the connection module <b>205</b> detects whether incoming calls were initially placed to a MA number. The connection module <b>205</b> subsequently determines MA number and/or contact device <b>105</b> information for display to the operator. In one embodiment, the connection module <b>205</b> accesses a locally or remotely stored address book to retrieve an address book entry associated with the MA number and/or contact device <b>105</b>. Alternatively, the connection module <b>205</b> may receive and display notifications from the agency service <b>1115</b> or provider <b>127</b> about incoming calls. Based on the notification or address book information, the operator may review the appropriate identity expected by the contact and/or the contact.
Depending on the operator device's <b>101</b> capabilities, the communication module <b>205</b> may enable placement/receipt of multiple outgoing and incoming calls to virtual and non-virtual numbers within the native dialer application or similar.
The GPS module <b>210</b> communicates with a native GPS receiver on the operator device <b>101</b> to receive GPS location data. The GPS module <b>210</b> may also communicate with other radio receivers and directional mechanisms (e.g., compass or accelerometers) on the operator device <b>101</b> to receive additional location data. The GPS module <b>210</b> processes the GPS and radio location data to determine and refine an estimated location measurement for the operator device <b>101</b>. The location measurement may include, but is not limited to, a latitude, longitude, altitude, heading, speed, associated accuracy measurement and the time and date of recording. The GPS module <b>210</b> transmits the determined location measurement over the network <b>120</b> the agency service <b>115</b> or other entity. In one embodiment, the GPS module <b>210</b> streams the location measurement in real-time.
The provisioning module <b>215</b> interfaces with the provider <b>127</b> or agency services <b>115</b> to provision virtual numbers and modify virtual number assignments and function in the field. Alternatively, a web browser on the operator device <b>101</b> may be used. For example, the web browser or provisioning module <b>215</b> may present the operator with a list of all virtual numbers associated with a given account, transmitting number, or local number. Through the interface, the operator may provision and modify mapping and function of the virtual numbers.
The caller ID module <b>220</b> interfaces with the provider <b>127</b> or agency services <b>115</b> to modify caller ID or other number information associated with provisioned virtual numbers. For example, the caller ID module <b>220</b> presents an interface to the operator to specify number information such as location, ownership, carrier and whether or not any of the information should be restricted or blocked when dialing out from a given MA number.
In some embodiments, the case module <b>225</b> interfaces with the provider <b>127</b>, agency services <b>115</b> or appliance <b>150</b> to retrieve activities associated with a given MA number, local number or transmitting number. For example, the case module <b>225</b> presents an interface with MA numbers that the operator may select, for example, to view associated activity and number information. The case module <b>225</b> may further provide an interface for the operator to associate contact information or other information (e.g., address book entries) with a given MA number or contact number. The case module <b>225</b> may store the address book entries locally and/or remotely with the agency services <b>115</b> or appliance <b>150</b>.
In some embodiments, the MA module <b>141</b> includes an SMS module <b>230</b> for sending SMS messages with and receiving SMS messages from an MA number. The SMS module <b>230</b> may send and receive SMS messages natively (e.g., via the provider <b>127</b>) and/or send and receive non-native messages (e.g., via the agency services <b>115</b>) depending on the device capabilities. The SMS module <b>230</b> provides an interface to the operator for selecting or otherwise specifying an MA number to use for sending an SMS message and the number of the contact device <b>105</b> that should receive the message. The SMS module <b>230</b> communicates (e.g., using the SMS itself or via the interface <b>145</b>) the information for sending the SMS message to the agency service <b>115</b> and/or the provider <b>127</b>. The SMS module <b>230</b> may further receive SMS messages sent to a MA number natively or via the interface <b>145</b>. In one embodiment, the SMS module <b>230</b> mimics the look and feel of a native SMS program on the operator device <b>101</b>.
In some embodiments, the MA module <b>141</b> and the modules therein interface and communicate with non-native devices attached to the operator device <b>101</b>. For example, audio and location data can be determined from accessories coupled (e.g., wired microphone) or wirelessly connected (e.g., Bluetooth headset) to the operator device <b>101</b>.
Additionally, some or all of the features provided by the MA module <b>141</b> may require the operator to enter a specified key-in (e.g., button press combination, password or other personal identification) prior to operation or launch.
Virtual Number Provisioning
<figref idref="DRAWINGS">FIG. 3A</figref> is an interaction diagram illustrating a method for provisioning <b>300</b> and mapping virtual numbers for operating an operator device <b>101</b> with MA numbers according to one example embodiment. Initially, the agency service <b>115</b> receives <b>310</b> a request including a calling code for provisioning <b>300</b> a virtual number from a monitoring device <b>107</b>, operator device <b>101</b>, provided web interface or other entity. The calling code can include an area code and country code where the provisioned virtual number will be operated.
The agency service <b>115</b> queries <b>320</b> the provider for virtual numbers matching the specified calling code. The provider <b>127</b> returns <b>330</b> a list of available virtual numbers to the agency service <b>115</b> which, in turn, transmits the virtual numbers for display to the requestor. The agency service <b>115</b> receives <b>335</b> one or more virtual number selections and claims <b>340</b> each selected virtual number from the provider <b>127</b>. The agency service <b>115</b> may optionally include corresponding ANI and caller identification information for a virtual number that may be edited on the requesting device <b>101</b>, <b>107</b> or in the web interface. The agency service <b>115</b> subsequently stores the modified virtual number information and instructs the provider <b>127</b> to update the associated virtual number information.
With one or more virtual numbers claimed, the agency service <b>115</b> can receive mapping requests for the virtual numbers and, in turn, map <b>350</b> the virtual numbers responsive to information in the mapping request. For example, the requestor may be prompted to enter the transmitting number of an operator device <b>101</b> for association with a virtual number to be used as a MA number. The agency service <b>115</b> stores the transmitting number of the operator device <b>101</b> and the MA number in a mapping table (e.g., at the agency service <b>115</b> or on the appliance <b>150</b>). The requestor may modify the mapping at any time, without any interruption of service at the receiving number.
Oftentimes, MA numbers have a different country code (or area code) than monitoring devices <b>107</b> or the operator device <b>101</b> connecting to an MA number to monitor or place/receive calls on the MA number. In some cases, the requestor knows the country code or area code where the monitoring devices <b>107</b> and/or operator device <b>101</b> are located. Accordingly, to avoid costly charges for the agency <b>110</b>A, the agency service <b>115</b> enables the requestor to provision additional virtual numbers with the known country codes and area codes for use as local numbers. The agency service <b>115</b> may then receive mapping requests for the local numbers (e.g., to map the transmitting number of the operator device <b>101</b>) and, in turn map local numbers to specified MA numbers.
When operator device <b>101</b> subsequently dials a local number, the agency service <b>115</b> identifies the associated MA number from the mapping table. The agency service <b>115</b> may further identify the transmitting number or operator PIN associated with the MA/local number and authenticate the operator device <b>101</b> (e.g., based on the transmitting number or PIN). In turn, the agency service <b>115</b> instructs the provider <b>127</b> to connect the operator device <b>101</b> to the MA number or pass audio from the MA number to the local number and connect the operator device to the local number.
When a monitoring device <b>107</b> dials a local number, the agency service <b>115</b> identifies associated MA numbers from the mapping table. The agency service <b>115</b> may further identify a monitoring number or monitor pin associated the MA/local number and authenticate the monitoring device <b>107</b>. In turn, the agency service <b>115</b> instructs the provider <b>127</b> to connect the monitoring device <b>107</b> to the MA number or pass audio from the MA number to the local number and connect the monitoring device to the local number. Additionally, as the monitoring device <b>107</b> should not tip off the contact or otherwise interfere with call status (e.g., ringing, active, etc.), connection/disconnection of the monitoring device <b>107</b> (e.g., to/from a virtual number or other device or entity) may be delayed or otherwise modified as not to affect call status or tip off the contact.
In some embodiments, local numbers may be tied to the transmitting number of a operator device <b>101</b> for automatic mapping to MA numbers. For example, an operator using the same operator device <b>101</b> for multiple investigations in different counties may utilize a different MA number for each investigation (e.g., to keep distinct records or maintain a specific identity). Rather than requiring the operator or personnel monitoring the operator to assign local numbers (or frequently modify mapping) to each MA number on an individual basis, a local number may be tied to the operator device <b>101</b>. When the operator device <b>101</b> is mapped or used with a MA number, the agency service <b>115</b> maps the tied local number to the MA number. In such a way, a given local number may be dedicated to monitoring/supporting a particular operator device <b>101</b>. As multiple MA numbers may be associated with a single local number, operating devices <b>101</b> or monitoring device <b>107</b> dialing the local number may be presented with a list of the mapped MA numbers available for placing a call or monitoring. A requestor may re-specify the mapping configuration as needed to change or swap claimed virtual numbers and transmitting numbers between MA numbers and local numbers.
Example embodiments of monitoring device <b>107</b> mapping to MA numbers and/or local numbers can be performed in the same or similar fashion as operator device <b>101</b> mappings.
<figref idref="DRAWINGS">FIG. 3B</figref> is a table illustrating an example embodiment of virtual number mapping <b>350</b> for operating an operator device <b>101</b> with MA numbers. As shown, mapping table <b>360</b>A includes a number of MA numbers <b>363</b>A mapped to a corresponding transmitting number <b>361</b>A (e.g., of operator device <b>101</b>).
When the agency service <b>115</b> receives connection requests to MA numbers <b>363</b>A from the network <b>120</b>, the agency service identifies the connecting device as the operator device <b>101</b> based on the transmitting number <b>361</b>A stored in the mapping table <b>360</b>A. In turn, the agency service <b>115</b> or provider <b>127</b> receives a contact number from the operator device <b>101</b> and dials the corresponding contact <b>105</b> from the MA number <b>363</b>A. If the connecting device's number does not match the transmitting number <b>361</b>A, the agency service <b>115</b> identifies the device as a contact device <b>105</b> and dials or instructs the provider <b>127</b> to dial the specified transmitting number for the operating device <b>101</b>.
Prior to permitting the operator device <b>101</b> to place a call to or receive a call from the MA number or local number, the agency service <b>115</b> may wait or instruct the provider <b>127</b> to wait for key-in of a specified password. For example, in some instances, the provider <b>127</b>, telephony <b>125</b>/PSTN or agency service may fail to correctly identify or pass a transmitting number of a device or a virtual number for forging a connection. If an improper password or no password is received for a local number, the device is disconnected. For a MA number, as contacts <b>105</b> dial the number, if an improper password or no password is received (e.g., within a brief time frame of placing the call) the operator device <b>105</b> is dialed. In one embodiment, the operator must enter the password or key-in enter a password (e.g., hitting * or # prior to entering the password) within a given time period (e.g., 2-5 seconds) without being prompted to mitigate suspicion when the line is dialed by another party.
Similar precautions may be implemented to authenticate monitoring devices <b>107</b> that dial the local number to monitor the call. In some embodiments, the mapping table <b>360</b>A further includes mappings of monitoring device <b>107</b> transmitting numbers to explicitly identify monitoring devices in addition to operating devices <b>101</b>.
<figref idref="DRAWINGS">FIG. 3C</figref> is a table illustrating an example embodiment of virtual number mapping <b>350</b> for operating an operator device <b>101</b> with MA numbers. As shown, mapping table <b>360</b>B includes a number of MA numbers <b>363</b>B mapped to a corresponding transmitting number <b>361</b>B (e.g., of operating device <b>101</b>). Additionally shown are a number of local numbers <b>365</b> mapped to the MA numbers <b>363</b>B.
When the agency service <b>115</b> receives connection requests to local numbers <b>365</b> from the network <b>120</b>, the agency service identifies the connecting device as a monitoring device <b>107</b> or operator device <b>101</b> (e.g., based on mapped transmitting numbers or monitor/operator PIN) and identifies the associated MA numbers <b>363</b>B from the mapping table <b>360</b>B. The agency service <b>115</b>, in turn, instructs the provider <b>127</b> to connect the device <b>101</b>, <b>107</b> with a specified MA number <b>363</b>B (e.g., directly, or through the local number <b>365</b>).
If the agency service <b>115</b> identities the device as the operator device <b>101</b>, the operator may further enter the number of the contact they desire to dial from the MA number. The agency service <b>115</b>, in turn, instructs the provider <b>127</b> to dial out to the specified contact number from the MA number.
Prior to connecting the monitoring device <b>107</b> or operator device <b>101</b>, key-in of a specified password may be required. In some embodiments, the mapping table <b>360</b>A further includes mappings of monitoring device <b>107</b> transmitting numbers to explicitly identify monitoring devices in addition to operator device <b>105</b>.
<figref idref="DRAWINGS">FIG. 4</figref> is an interaction diagram illustrating a method for connecting <b>400</b> an operator device <b>101</b> and contact <b>105</b> using a virtual number according to one example embodiment. <figref idref="DRAWINGS">FIG. 4</figref> additionally illustrates a method for connecting <b>400</b> a monitoring device to virtual number according to one example embodiment. Once the agency service <b>115</b> provisions <b>300</b> a virtual number with the provider <b>127</b>, an operator device <b>105</b>, monitoring device <b>107</b> or contact <b>105</b> may connect <b>400</b> to the virtual number. However, each entity may be treated differently as explained below.
For any device <b>101</b>, <b>105</b> or <b>107</b> dialing <b>410</b> the virtual number, the provider <b>127</b> receives the connection request via the telephony network <b>125</b> and identifies <b>420</b> the dialed number as a virtual number provisioned <b>300</b> by agency service <b>115</b>. Accordingly, in embodiments where the agency service <b>115</b> stores the mapping table, the provider <b>127</b> passes the transmitting number of the device attempting to connect to the virtual number and the virtual number to the agency service <b>115</b>.
The agency service <b>115</b>, in turn, identifies <b>430</b> the device attempting to connect to the virtual number as either an operator device <b>101</b>, monitoring device <b>107</b> or contact <b>105</b> based on the mapping table. The agency service <b>115</b>, in turn, instructs the provider <b>127</b> to connect (or disconnect) <b>440</b> the identified device and provide options or perform operations according to the device's classification.
Operator Device
In the case of the operator device <b>101</b> dialing an MA number, the agency service <b>115</b> determines that the transmitting number stored in the mapping table for the dialed MA number matches the number of the device attempting to connect to the MA number. The agency service <b>115</b> then instructs the provider <b>127</b> to connect <b>440</b> the device to the MA number as the operator device <b>101</b>.
Alternatively, if the agency service <b>115</b> determines that the operator device <b>101</b> is attempting to connect to a local number, the agency service determines that the transmitting number stored in the mapping table for the dialed local number (and/or associated MA numbers) matches the number of the device. The agency service <b>115</b> then instructs the provider <b>127</b> to connect <b>440</b> the device to the local number as the operator device <b>101</b>. If only one MA number exists in the mapping table for the local number, the agency service <b>115</b> may automatically instruct the provider to connect the operator device <b>101</b> with the MA number (e.g., directly or via the local number). Alternatively, if there are multiple MA numbers assigned to the local number, a menu with details about the MA numbers may be provided for the operator to select a given MA number. For example, “press 1 for John Doe,” “press 1 for Restricted/Blocked” or “press 1 for 555-111-5555” where “John Doe” and “555-111-5555” may be number information for a corresponding MA number and restricted or blocked indicates that an MA number will not display number information when used.
Once the operator device <b>101</b> connects to the desired MA number (e.g., via selection or directly), the operator may enter the number of the contact device <b>105</b> (e.g., transmitting number of the contact's device) that the operator would like to dial from the MA number. The provider <b>127</b>, in turn, dials out <b>500</b> to the contact number from the MA number (displaying MA number information) and connects the parties. Example embodiments of dialing out to a contact device <b>105</b> are explained in more detail with reference to <figref idref="DRAWINGS">FIG. 5A</figref>.
Monitoring Device
In the case of a monitoring device <b>107</b> dialing an MA number, the agency service <b>115</b> may determine that a transmitting number for a monitoring device stored in the mapping table for the dialed MA number matches the number of the device. The agency service <b>115</b> then instructs the provider <b>127</b> to connect <b>440</b> the device to the MA number as a monitoring device <b>107</b> and disable (e.g., mute) audio received from the monitoring device <b>107</b>.
Alternatively, if the agency service <b>115</b> determines that the device is attempting to connect to a local virtual number, the agency service may determine that the number of the device does not match the transmitting number of the operator device stored in the mapping table. For example, the agency service <b>115</b> may determine the operator device transmitting stored in the mapping table for the dialed local number (and/or associated MA numbers) and identify devices connecting to the local number that do not match the operator device's transmitting number as monitoring devices. In other embodiments, the agency service <b>115</b> may identify the monitoring device <b>107</b> based on matching a monitoring device transmitting number stored in the mapping table for the local number or MA numbers with that of the connecting device. The agency service <b>115</b> then instructs the provider <b>127</b> to connect <b>440</b> the device to the local number as the monitoring device <b>107</b>. If only one MA number exists for the local number, the agency service <b>115</b> may automatically instruct the provider <b>127</b> to connect the monitoring device to the MA number as described above (e.g., with audio disabled) or, alternatively, pass audio from the MA number (e.g., call audio between the operator and contact) to the local number. Audio from the local number to the MA number may be disabled such that audio received from monitoring devices need not be disabled on the local number. Alternatively, if there are multiple MA numbers assigned to the local number, a menu with details about the MA numbers may be provided for the operator to select a given MA number. The provider <b>127</b> and/or the agency service <b>115</b> may additionally notify personnel using the monitoring device <b>107</b> which MA numbers are active.
In some embodiments, the monitoring devices <b>107</b> may communicate with other devices monitoring a given MA number through a local number (e.g., like a conference call) although no audio is transmitted to the operator device. Additionally, the provider <b>127</b> or agency service <b>115</b> may provide the monitoring devices <b>107</b> with key combinations (e.g., *1, 2, etc.) to mute other monitoring devices <b>107</b>, audio on the MA number or their own device.
Contact Device
In one embodiment, the agency service <b>115</b> identifies <b>430</b> devices with numbers that do not match a transmitting number stored in the mapping table for a MA number as contact devices <b>105</b>. The agency service <b>115</b> identifies the transmitting numbers associated with the MA number and instructs the provider <b>127</b> to connect <b>440</b> the contact device <b>105</b> to the operator device <b>101</b> (e.g., by dialing out <b>500</b> to the operator device <b>101</b> directly, or through the MA number). Example embodiments of dialing out <b>500</b> to the transmitting number of an operator device <b>101</b> are explained in greater detail with reference to <figref idref="DRAWINGS">FIG. 5B</figref>.
Additional Considerations
In some embodiments, the PSTN or provider <b>127</b> fails to pass the transmitting number associated with an operator device <b>101</b> (or monitoring device <b>107</b>) to the provider or agency service <b>115</b>. For example, the provider <b>127</b> or agency service <b>115</b> may receive a number other than the operator device's <b>101</b> and incorrectly identify the operator device. Some example PSTN and provider <b>127</b> failures are all zeroes numbers (+00 000-000-0000), restricted numbers (737-874-2833) or simply an incorrect number for the operator device <b>101</b>. In any instance, the agency service <b>115</b> may be unable to identify the operator device <b>101</b> by the received transmitting number.
The agency service <b>115</b> may recognize that some numbers are passed incorrectly (e.g., a restricted number or zeroes number).
In response (e.g., for calls to a local number), the agency service <b>115</b> may play a prompt or instruct the provider <b>127</b> to play a prompt such as “press 1 for a operator device or press 2 for a monitoring device.” The prompt can also be ambiguous (e.g., please enter the extension of the party you are trying to reach or similar). Operators or personnel may then key-in as using a operator device <b>101</b> or monitoring device <b>107</b>.
Alternatively, as the key-ins of the operator device <b>101</b> and monitoring device <b>107</b> typically differ, the agency service <b>115</b> may instruct the provider <b>127</b> to simply play a generic tone or number not available recording to notify users that they need to key-in. The matching of a key-in with stored authentication information identifies the operator device <b>101</b> (or monitoring device <b>107</b>) on the local number.
In some embodiments, the agency service <b>115</b> may prompt all devices connecting the local number to key-in for identification. For example, an agency <b>110</b>A may want to enable the option to use unmapped devices as operator devices <b>101</b> on a specified MA number.
While prompts are effective for identification on a local number (e.g., as only operators and personnel typically have knowledge of the number and it may further require key-in of a PIN), these methods are ineffective for number pass failures to MA numbers as contacts <b>105</b>, typically, must be tricked into believing they are making a legitimate, confidential call when they (as opposed to the operator device <b>101</b> or monitoring device <b>107</b>) dial the MA number. Accordingly, PSTN or provider <b>127</b> failures to pass the transmitting number associated with a device making a call to an MA number may be handled differently.
In one embodiment, the agency service <b>115</b> may instruct the provider to begin the dial out <b>500</b> process as if the unidentified device were a contact device <b>105</b>. Once the dial out <b>500</b> begins, the operator or personnel will realize that their device was not recognized (e.g., because no menu was presented or prompt was played and the provider <b>127</b> is dialing out). The contact, on the other hand, would assume operation as normal. In order to capitalize on this difference, the agency service <b>115</b> may instruct the provider <b>127</b> to capture a key-in during the dialing process for identifying the requesting device as a monitoring device <b>107</b> or operator device <b>101</b>. The requesting device is then identified and connected according to the provided key-in.
Operating an Operator Device
<figref idref="DRAWINGS">FIG. 5A</figref> is an interaction diagram illustrating a method for dialing out <b>500</b>A to a contact device <b>105</b> using a MA number, according to one example embodiment. Once the connection <b>400</b> between the operator device <b>101</b> and the MA number is established, the operator may enter the transmitting number of a contact device <b>105</b>. Alternatively, the number of the contact device <b>105</b> may have been previous entered in an application. In either instance, the operator device <b>101</b> transmits <b>510</b> the dial out number to the provider <b>127</b>. The provider <b>127</b>, in turn, dials out <b>515</b> to the contact device <b>105</b> from the MA number. Thus, when the contact device <b>105</b> receives the connection request, the call appears to be coming from the MA number. Accordingly, the contact device <b>105</b> will display number information (if any, e.g., for blocked or restricted number) for the MA number rather than the operator device <b>105</b>. If the contact device <b>105</b> picks up, the provider <b>127</b> establishes <b>520</b> a connection between the operator device <b>105</b> and the contact device <b>105</b> (e.g., through the MA number or local number, or directly as the contact device will not receive additional number or device information from the operator device). The operator device <b>101</b> and/or provider <b>127</b> may optionally transmit the number of the contact device <b>105</b> to the agency service <b>115</b> for records keeping or to open a new record.
Once the connection <b>520</b> between the operator device <b>101</b> and the contact device <b>105</b> is established, the provider <b>127</b> begin recording audio on the line. The operator device <b>101</b> collects audio data using a microphone coupled to the operator device. The operator device <b>101</b>, in turn, transmits <b>525</b> the collected audio data to the provider <b>127</b> and contact device <b>105</b> by way of the connection through the MA number. The contact device <b>105</b> communicates with the operator device <b>101</b> in a similar fashion. The provider <b>127</b> may additionally enable monitoring devices <b>107</b> to connect to the MA number or local number to monitor the call and/or transmit the audio data received from the operator device <b>101</b> and the contact device <b>105</b> to the agency service <b>115</b> or appliance <b>150</b> over the network <b>120</b>.
Furthermore, the operator device <b>101</b> may also collect location data from GPS receivers and other direction mechanisms coupled to the operator device. The operator device <b>101</b> may determine a location measurement including the position of the operator device, direction and speed of the operator device and associated accuracy of the measurement. The operator device <b>101</b> transmits <b>525</b> the location measurement to the agency service <b>115</b>. In some embodiments, the operator device <b>101</b> determines and transmits <b>525</b> the location measurements in real-time to the agency service <b>115</b>.
The provider <b>127</b> and/or the agency service <b>115</b> may update <b>530</b> the appliance <b>150</b> with the received audio data. The agency service <b>115</b> or provider <b>127</b> may also update <b>530</b> the appliance with any other data received from the provider <b>127</b> and/or operator device <b>101</b>.
<figref idref="DRAWINGS">FIG. 5B</figref> is an interaction diagram illustrating a method for dialing out <b>500</b>B to an operator device <b>101</b> using a MA number, according to one example embodiment. As described above, the contact device <b>105</b> initiates <b>400</b> a connection to a MA number and the agency service <b>115</b> instructs the provider <b>127</b> to connect the contact device <b>105</b> to the operator device <b>101</b>. Accordingly, the agency service <b>115</b> transmits <b>510</b> the transmitting number of the operator device <b>101</b> as stored in the mapping table for the MA number to the provider <b>127</b>. Depending on the embodiment, the agency service <b>115</b> and/or provider <b>127</b> may be configured to coordinate connection of the contact device <b>105</b> with the MA number and subsequent dialing the operator device <b>101</b> or dialing the operator device <b>101</b> directly.
Connection through MA Number
The agency service <b>115</b> may instruct the provider <b>127</b> to connect the contact device <b>105</b> to the MA number but play the ring tone (e.g., a specified mp3 file) of the MA number on the line after establishing the connection. In effect, the contact device <b>105</b> is connected to the MA number but does not know a connection has already been established because the ring tone is still playing. Temporally proximate to establishing the connection between the contact device <b>105</b> and the MA number, the provider <b>127</b> dials out <b>515</b> to the provided transmitting number of the operator device <b>101</b>. In response to the operator device <b>101</b> answering the call, the provider <b>127</b> stops the ring tone played for the contact device <b>105</b> and establishes the connection <b>520</b> between the parties. If the operator device <b>101</b> does not answer, the provider <b>127</b> may direct the contact device <b>105</b> to a voice mail box associated with the MA number or disconnect the contact device <b>105</b>.
Direct Connection
The agency service <b>115</b> may instruct the provider <b>127</b> to connect the contact device <b>105</b> to the operator device <b>101</b> by forwarding the call to the transmitting number of the operator device <b>101</b> to dial out <b>515</b>. Typically, this process would result in the contact hearing the ring tone of the operator device <b>101</b>. As ring tones can differ between countries, and for a host of other reasons, the contact may notice that the ring tone being played is different than the ring tone expected for the MA number. Accordingly, the agency service <b>115</b> may instruct the provider <b>127</b> the play the ring tone of the MA number rather than the operator device <b>101</b> being dialed. In some embodiments, the provider <b>127</b> plays an mp3 file of the MA number ring tone for the contact device <b>105</b>. Alternatively, the provider <b>127</b> may dial the MA number itself and pass the ring tone audio to the contact device <b>105</b>. In either instance, the provider <b>127</b> suppresses the ring tone of the operator device <b>101</b>, by disabling audio for example, until the operator device <b>101</b> answers the call. Once the operator device <b>101</b> answers, the provider <b>127</b> establishes the connection <b>520</b> between the parties and may pass audio on the line to a local number or MA number for monitoring and/or recording. If the operator device <b>101</b> does not answer, the provider may direct the contact device to a voice mail box associated with the MA number or disconnect the contact device.
In some embodiments, the provider <b>127</b> and/or agency service <b>115</b> may provide notification information <b>517</b> to the operator device <b>101</b>. The notification information <b>517</b> includes contact device <b>105</b> and/or MA number information describing the caller and identity expected from the operator. In some embodiments, notification information <b>517</b> may be injected into, or included with, caller identification information provided for a typical call. In other embodiments, notification information <b>517</b> may be provided in a SMS message or otherwise transmitted to the operator device <b>101</b> for display using an MA module <b>141</b>. In one embodiment, rather than immediately establishing <b>520</b> the connection between the operator device <b>101</b> and the contact device <b>105</b> when the operator device <b>101</b> answers, the provider <b>127</b> transmits audio data including notification information <b>517</b> for the operator. The agency service <b>115</b> may further instruct the provider <b>127</b> to provide options to accept the call, disconnect the call or forward the call to voicemail of the MA number (e.g., by hanging up or selecting a provided option).
Once the connection <b>520</b> between the operator device <b>101</b> and the contact device <b>105</b> is established, the provider <b>127</b> records audio on the line. The operator device <b>101</b> collects audio data using a microphone coupled to the operator device. The operator device <b>101</b>, in turn, transmits <b>525</b> the collected audio data to the provider <b>127</b> and contact device <b>105</b> by way of the connection through the MA number. The contact device <b>105</b> communicates with the operator device <b>101</b> in a similar fashion. The provider <b>127</b> may additionally enable monitoring devices <b>107</b> to connect to the MA number or local number to monitor the call and/or transmit the audio data received from the operator device <b>101</b> and the contact device <b>105</b> to the agency service <b>115</b> or appliance <b>150</b> over the network <b>120</b>.
Furthermore, the operator device <b>101</b> may also collect location data from GPS receivers and other direction mechanisms coupled to the operator device as described above with reference to <figref idref="DRAWINGS">FIG. 5A</figref>. The provider <b>127</b> and/or the agency service <b>115</b> may update <b>530</b> the appliance <b>150</b> with the received audio data. The agency service <b>115</b> or provider <b>127</b> may also update <b>530</b> the appliance with any other data received from the provider <b>127</b> and/or operator device <b>101</b>.
SMS Communications
In addition to placing and receiving calls though virtual numbers, the operator device <b>101</b> may also send and receive SMS messages through MA numbers. Depending on the embodiment of the operator device <b>101</b>, SMS messages may be sent/received via native SMS capability or using an application or web browser. Thus, the operator device <b>101</b> need not require telephony capability for SMS communications through a MA number.
Sending a SMS Message
In one embodiment, to send an SMS from a MA number to the contact device <b>105</b>, the operator prepends or appends (e.g., manually or using a MA module <b>141</b>) a native SMS message (e.g., To: [contact number]|The meeting is at 10 am) sent to the MA number from the operator device <b>101</b> to indicate the intended contact device <b>105</b>. The provider <b>127</b> forwards SMS messages received on the virtual numbers to the agency service <b>115</b> for processing. The agency service <b>115</b> parses the SMS to determine information about the contact device <b>105</b>, such as a transmitting number preprended or appended to the SMS message. The agency service <b>115</b> may also parse the SMS to determine the transmitting number of the source (e.g., for look-up in a mapping table) and/or key-in information for authentication of the source. In turn, the agency service <b>115</b> extracts the transmitting number of the contact, any device information associated with the operator device and any formatting or key-in information from the SMS message. The agency service <b>115</b> then instruct the provider <b>127</b> to transmit the modified SMS message to the extracted contact number from the MA number that originally received the SMS. In some embodiments, the MA module <b>141</b> provides an interface for the user to enter an MA number and contact number, which are automatically attached to the SMS.
Alternatively, embodiments of the operator device <b>101</b> may communicate data for transmitting via SMS from the MA number to the agency service <b>115</b>. For example, embodiments of the MA module <b>141</b> or a web interface may provide a menu or interface for the user to enter or otherwise select a given MA number and transmitting number of a contact device <b>105</b>. The interface further provides the operator with the ability to enter message content. The operator may then submit the message and associated information to the agency service <b>115</b>. The agency service <b>115</b> then instructs the provider <b>127</b> to transmit an SMS message containing the message to the specified contact number from the specified MA number.
Once the SMS is delivered, the provider <b>127</b> and/or agency service <b>115</b> may confirm receipt of the SMS at the contact device <b>105</b> with operator device <b>101</b> or other entity and/or update the appliance <b>150</b> with a copy of the SMS and associated information.
Receiving a SMS Message
In one embodiment, to receive an SMS sent to a MA number from the contact device <b>105</b>, the provider <b>127</b> transmits data (e.g., SMS messages) received on the virtual numbers to the agency service <b>115</b> for processing. The agency service <b>115</b> may then parse the SMS. However, as the SMS message content does not include appended or prepended information (e.g., in the correct format with a transmitting number), the agency service <b>115</b> identifies the SMS message as an inbound message on the MA number for delivery to the operator device <b>101</b>. The agency service <b>115</b> may also determine information about the received message, the contact device <b>105</b> (e.g., the transmitting number of the device) and/or MA number the message was received on and append or prepend a SMS message with the information. In turn, the agency service <b>115</b> determines the transmitting number of the operator device <b>101</b> associated with the MA number that received the SMS message and instructs the provider <b>127</b> to transmit the SMS message to the operator device <b>101</b> with any attached information.
The agency service <b>115</b> may instruct the provider to transmit SMS messages to the operator device <b>101</b> from the MA number the message was received on to prevent inadvertent, direct communication with the contact device <b>105</b>. For example, the agency service <b>115</b> or provider <b>127</b> may prepend a SMS message with the transmitting number of the contact device the original SMS message was received from. In turn, the agency service <b>115</b> may and send the prepended SMS, including the original message content (e.g., From: [contact number]|The meeting is at 10 am), from the MA number to the operator device <b>101</b>.
In some embodiments, the MA module <b>141</b> provides an interface for the user to view SMS messages. The MA module <b>141</b> may parse the SMS message to determine MA number and/or contact device <b>105</b> information attached by the agency service <b>115</b> and extract the attached information for presentation in an interface.
Alternatively, the agency service <b>115</b> may communicate content from SMS messages received on an MA number and associated contact and MA number information to the operator device <b>101</b>. For example, embodiments of the MA module <b>141</b> may receive and display messages and associated information in an interface for the operator. Alternatively, the agency service <b>115</b> may provide a web interface to display the received SMS and associated information.
Once the SMS is delivered, the provider <b>127</b> and/or agency service <b>115</b> may confirm receipt of the SMS at the operator device <b>101</b> or other entity and/or update the appliance <b>150</b> with a copy of the SMS and associated information.
Monitoring an Operator Device
<figref idref="DRAWINGS">FIG. 6</figref> is an interaction diagram illustrating a method for monitoring <b>600</b> an operator device <b>101</b> according to one example embodiment. As described above, the agency service <b>115</b> receives <b>610</b>A collected data from the operator device and/or the provider <b>127</b>. Additionally, the provider <b>127</b> may receive data <b>610</b>B from the operator device <b>101</b>. In turn, the agency service <b>115</b> and/or provider <b>127</b> may update <b>530</b> the appliance at the agency <b>110</b>. A monitoring device <b>107</b> may subsequently monitor <b>600</b>A, <b>600</b>B the operator device <b>101</b> using one or both of the processes outlined below.
In one embodiment, the monitoring device <b>107</b> connects <b>400</b> to a local number or MA number for monitoring <b>600</b>A the operator device <b>101</b>. The monitoring device <b>107</b> may be connected <b>400</b> by answering an incoming call from the local or MA number initiated by the provider <b>127</b> or dialing a virtual number directly as described with reference to <figref idref="DRAWINGS">FIG. 4</figref>.
Once the connection between the monitoring device <b>107</b> and the MA number or local number is established, the monitoring device <b>640</b> receives the live audio transmitted between the operator device <b>101</b> and the contact device <b>105</b>. To continue monitoring <b>600</b>A the operator device <b>101</b>, the monitoring device <b>107</b> simply maintains the connection <b>400</b> with the virtual number.
In another embodiment, the monitoring device <b>107</b> connects <b>650</b> to the agency service <b>115</b> and/or appliance <b>150</b> for monitoring <b>600</b>B the operator device <b>101</b>. The monitoring device <b>107</b> may establish the connection <b>650</b> using a web browser or monitoring module <b>140</b> that retrieves or streams collected data via a monitoring interface on the appliance <b>150</b> or agency service <b>115</b> (e.g., monitoring interface <b>145</b>).
In one example embodiment, the monitoring device <b>107</b> streams <b>660</b> audio and/or location measurements in real-time from the agency service <b>115</b>. In addition, the monitoring device <b>107</b> can retrieve <b>670</b> historical data stored on the appliance <b>150</b> to view previously recorded operator device <b>101</b> operating sessions <b>500</b>. In some embodiments, the appliance <b>150</b> also supports real-time monitoring.
In some instances, the monitoring device <b>107</b> receives notifications from the monitoring interface <b>145</b> for display in the web browser or with the monitoring module <b>140</b>. Example notifications include audio or visual alerts for notifying personnel if the operator device <b>101</b> stops transmitting real-time data (e.g., ends the call). In some embodiments, the monitoring device <b>107</b> may also retrieve SMS communications between the operator device <b>101</b> and the contact device <b>105</b> using the monitoring interface <b>145</b> for display in the web browser or with the monitoring module <b>140</b>.
SUMMARY
The foregoing description of the embodiments has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.
Some portions of this description describe the embodiments in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof
Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices.
Embodiments may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.
Embodiments may also relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the disclosure be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments is intended to be illustrative, but not limiting, of the scope of the disclosure, which is set forth in the following claims.
Contents6
10 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10
Every citation, both waysCites: the store holds 147 of 148
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US10944860B2 | Cited by | United States of America | Applicant |
| US10187518B2 | Cited by | United States of America | Applicant |
| US10547737B2 | Cited by | United States of America | Applicant |
| US9998603B2 | Cited by | United States of America | Applicant |
| US10999735B2 | Cited by | United States of America | Applicant |
| US11233891B2 | Cited by | United States of America | Applicant |
| US10375233B2 | Cited by | United States of America | Applicant |
| CN109889544A | Cited by | China | Search report |
| WO0150682A1 | Cites | World Intellectual Property Organization (WIPO) | Applicant |
| CN101112053A | Cites | China | Applicant |
| EP1835691A1 | Cites | European Patent Office (EPO) | Applicant |
| CN1852466A | Cites | China | Applicant |
| CN1917456A | Cites | China | Applicant |
| US2001016037A1 | Cites | United States of America | Applicant |
| US2001019604A1 | Cites | United States of America | Search report |
| US2001036821A1 | Cites | United States of America | Applicant |
| JP2001237965A | Cites | Japan | Applicant |
| JP2001268230A | Cites | Japan | Applicant |
| US2002061100A1 | Cites | United States of America | Applicant |
| US2002132638A1 | Cites | United States of America | Search report |
| US2002181460A1 | Cites | United States of America | Search report |
| US2002198007A1 | Cites | United States of America | Applicant |
| US2003078041A1 | Cites | United States of America | Applicant |
| US2003144024A1 | Cites | United States of America | Applicant |
| US2003215069A1 | Cites | United States of America | Applicant |
| US2004110465A1 | Cites | United States of America | Applicant |
| US2004151288A1 | Cites | United States of America | Applicant |
| US2004152442A1 | Cites | United States of America | Applicant |
| US2004165709A1 | Cites | United States of America | Applicant |
| US2004208307A1 | Cites | United States of America | Applicant |
| US2004240439A1 | Cites | United States of America | Applicant |
| WO2005031544A2 | Cites | World Intellectual Property Organization (WIPO) | Applicant |
| US2005074104A1 | Cites | United States of America | Search report |
| US2005094773A1 | Cites | United States of America | Applicant |
| US2005111629A1 | Cites | United States of America | Applicant |
| US2005175165A1 | Cites | United States of America | Applicant |
| US2005180395A1 | Cites | United States of America | Applicant |
| US2005232253A1 | Cites | United States of America | Applicant |
| US2005277407A1 | Cites | United States of America | Applicant |
| US2006034426A1 | Cites | United States of America | Applicant |
| US2006140200A1 | Cites | United States of America | Applicant |
| US2006147012A1 | Cites | United States of America | Applicant |
| US2006291638A1 | Cites | United States of America | Applicant |
| US2007019618A1 | Cites | United States of America | Applicant |
| US2007036127A1 | Cites | United States of America | Applicant |
| US2007041550A1 | Cites | United States of America | Applicant |
| US2007105531A1 | Cites | United States of America | Search report |
| US2007161412A1 | Cites | United States of America | Applicant |
| JP2007166089A | Cites | Japan | Applicant |
| US2007183403A1 | Cites | United States of America | Applicant |
| US2007217437A1 | Cites | United States of America | Applicant |
| US2008008105A1 | Cites | United States of America | Applicant |
| US2008045186A1 | Cites | United States of America | Search report |
| US2008198978A1 | Cites | United States of America | Applicant |
| US2008205626A1 | Cites | United States of America | Applicant |
| US2008215725A1 | Cites | United States of America | Applicant |
| US2008242271A1 | Cites | United States of America | Applicant |
| US2009061872A1 | Cites | United States of America | Applicant |
| JP2009071603A | Cites | Japan | Applicant |
| US2009074156A1 | Cites | United States of America | Applicant |
| US2009141883A1 | Cites | United States of America | Applicant |
| US2009214008A1 | Cites | United States of America | Applicant |
| JP2009260492A | Cites | Japan | Applicant |
| US2010128857A1 | Cites | United States of America | Applicant |
| US2010161683A1 | Cites | United States of America | Applicant |
| US2010189228A1 | Cites | United States of America | Applicant |
| US2010220843A1 | Cites | United States of America | Applicant |
| CN201039280Y | Cites | China | Applicant |
| US2011002480A1 | Cites | United States of America | Applicant |
| US2011081009A1 | Cites | United States of America | Applicant |
| WO2011129420A1 | Cites | World Intellectual Property Organization (WIPO) | Applicant |
| US2011164734A1 | Cites | United States of America | Applicant |
| WO2013003779A1 | Cites | World Intellectual Property Organization (WIPO) | Applicant |
| US2013303151A1 | Cites | United States of America | Applicant |
| US2014194101A1 | Cites | United States of America | Applicant |
| US2014302835A1 | Cites | United States of America | Applicant |
| RU2221345C2 | Cites | Russian Federation | Applicant |
| GB2456754A | Cites | United Kingdom | Applicant |
| US5734659A | Cites | United States of America | Applicant |
| US5974309A | Cites | United States of America | Applicant |
| US6301246B1 | Cites | United States of America | Applicant |
| US6356630B1 | Cites | United States of America | Applicant |
| US6449474B1 | Cites | United States of America | Applicant |
| US6553025B1 | Cites | United States of America | Applicant |
| US7181017B1 | Cites | United States of America | Applicant |
| US7626980B1 | Cites | United States of America | Applicant |
| US7839987B1 | Cites | United States of America | Search report |
| US7873349B1 | Cites | United States of America | Applicant |
| US8265597B2 | Cites | United States of America | Applicant |
| US8824652B2 | Cites | United States of America | Applicant |
| EP1835691A1 | Cites | European Patent Office (EPO) | Applicant |
| GB2456754 | Cites | United Kingdom | Applicant |
| JP2001237965 | Cites | Japan | Applicant |
| JP2001268230 | Cites | Japan | Applicant |
| JP2007166089 | Cites | Japan | Applicant |
| JP2009071603 | Cites | Japan | Applicant |
| JP2009260492 | Cites | Japan | Applicant |
| US20010016037A1 | Cites | United States of America | Applicant |
| US20010019604A1 | Cites | United States of America | Search report |
| US20010036821A1 | Cites | United States of America | Applicant |
98 members in 10 offices
Priority claims10
| Document | Office | Kind | Date |
|---|---|---|---|
| 201161503586 | United States of America | P | |
| 201161503586 | United States of America | P | |
| 201213539050 | United States of America | A | |
| 201314086960 | United States of America | A | |
| 201314086960 | United States of America | A | |
| 14086960 | – | – | – |
| 61503586 | – | – | – |
| US201161503586P | – | – | – |
| US201213539050 | – | – | – |
| US201314086960 | – | – | – |
Members98
| Document | Office | Kind | |
|---|---|---|---|
| CA2837595A1 | Canada | A1 | |
| CA2897088A1 | Canada | A1 | |
| US2012309379A1 | United States of America | A1 | |
| WO2012166729A1 | World Intellectual Property Organization (WIPO) | A1 | |
| CA2839952A1 | Canada | A1 | |
| US2013003942A1 | United States of America | A1 | |
| WO2013003779A1 | World Intellectual Property Organization (WIPO) | A1 | |
| CA2850524A1 | Canada | A1 | |
| US2013095791A1 | United States of America | A1 | |
| WO2013056156A1 | World Intellectual Property Organization (WIPO) | A1 | |
| US2013208878A1 | United States of America | A1 | |
| AU2012262351A1 | Australia | A1 | |
| US8626078B2 | United States of America | B2 | |
| AU2012275151A1 | Australia | A1 | |
| AU2012262351B2 | Australia | B2 | |
| US2014079201A1 | United States of America | A1 | |
| US2014080473A1 | United States of America | A1 | |
| US2014087692A1 | United States of America | A1 | |
| CN103703693A | China | A | |
| EP2715949A1 | European Patent Office (EPO) | A1 | |
| MX2013013965A | Mexico | A | |
| CN103733601A | China | A | |
| AU2012323961A1 | Australia | A1 | |
| MX2014000151A | Mexico | A | |
| EP2727323A1 | European Patent Office (EPO) | A1 | |
| US8731171B2 | United States of America | B2 | |
| MX2014004373A | Mexico | A | |
| CN103947129A | China | A | |
| EP2767003A1 | European Patent Office (EPO) | A1 | |
| US8824652B2 | United States of America | B2 | |
| JP2014524163A | Japan | A | |
| WO2014151684A2 | World Intellectual Property Organization (WIPO) | A2 | |
| JP2014526170A | Japan | A | |
| JP5624252B2 | Japan | B2 | |
| US2014334617A1 | United States of America | A1 | |
| RU2533171C1 | Russian Federation | C1 | |
| WO2014151684A3 | World Intellectual Property Organization (WIPO) | A3 | |
| JP2014533461A | Japan | A | |
| US8934847B2 | United States of America | B2 | |
| EP2715949A4 | European Patent Office (EPO) | A4 | |
| JP2015039199A | Japan | A | |
| US2015065101A1 | United States of America | A1 | |
| US2015071425A1 | United States of America | A1 | |
| EP2767003A4 | European Patent Office (EPO) | A4 | |
| US9031218B2 | United States of America | B2 | |
| EP2727323A4 | European Patent Office (EPO) | A4 | |
| IN2740CHN2014A | India | A | |
| RU2014102971A | Russian Federation | A | |
| CA2837595C | Canada | C | |
| AU2014236991A1 | Australia | A1 | |
| RU2567860C1 | Russian Federation | C1 | |
| RU2570899C2 | Russian Federation | C2 | |
| AU2012323961B2 | Australia | B2 | |
| EP2974251A2 | European Patent Office (EPO) | A2 | |
| US9253311B2 | United States of America | B2 | |
| US9270814B2 | United States of America | B2 | |
| MX2015012023A | Mexico | A | |
| RU2014135229A | Russian Federation | A | |
| US9313323B2 | United States of America | B2 | |
| US2016119472A1 | United States of America | A1 | |
| US2016198041A1 | United States of America | A1 | |
| CA2850524C | Canada | C | |
| JP5965954B2 | Japan | B2 | |
| CN103733601B | China | B | |
| AU2014236991B2 | Australia | B2 | |
| JP6016908B2 | Japan | B2 | |
| MX343371B | Mexico | B | |
| EP2974251A4 | European Patent Office (EPO) | A4 | |
| AU2012275151B2 | Australia | B2 | |
| US9674339B2 | United States of America | B2 | |
| JP6141287B2 | Japan | B2 | |
| US9736296B2This record | United States of America | B2 | |
| US2017251101A1 | United States of America | A1 | |
| US2017264740A1 | United States of America | A1 | |
| MX351685B | Mexico | B | |
| US2017318151A1 | United States of America | A1 | |
| CN103947129B | China | B | |
| CA2839952C | Canada | C | |
| US9998603B2 | United States of America | B2 | |
| EP2767003B1 | European Patent Office (EPO) | B1 | |
| EP2715949B1 | European Patent Office (EPO) | B1 | |
| EP2974251B1 | European Patent Office (EPO) | B1 | |
| EP2727323B1 | European Patent Office (EPO) | B1 | |
| US10187518B2 | United States of America | B2 | |
| US10218838B2 | United States of America | B2 | |
| US2019158656A1 | United States of America | A1 | |
| US2019166250A1 | United States of America | A1 | |
| CA2897088C | Canada | C | |
| US10375233B2 | United States of America | B2 | |
| US2019306307A1 | United States of America | A1 | |
| US10547737B2 | United States of America | B2 | |
| US10547740B2 | United States of America | B2 | |
| US2020120206A1 | United States of America | A1 | |
| US2020128127A1 | United States of America | A1 | |
| US10887456B2 | United States of America | B2 | |
| US10944860B2 | United States of America | B2 | |
| US2021120122A9 | United States of America | A9 | |
| US10999735B2 | United States of America | B2 |
134 transactions on the USPTO file
Allowed after 3 non-final rejections, 2 final rejections and 2 RCEs.
- Non-final rejections
- 3
- Final rejections
- 2
- RCEs
- 2
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Email NotificationEML_NTR | EML_NTR | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Correspondence Address ChangeC.AD | C.AD | |
| Payment of Maintenance Fee, 4th Year, Large EntityM1551 | M1551 | |
| Entity Status Set To Undiscounted (Initial Default Setting or Status Change)BIG. | BIG. | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Terminal Disclaimer FiledDIST | DIST | |
| Email NotificationEML_NTR | EML_NTR | |
| Email NotificationEML_NTR | EML_NTR | |
| Filing Receipt - ReplacementFLRCPT.R | FLRCPT.R | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Email NotificationEML_NTR | EML_NTR | |
| Mail Advisory Action (PTOL - 303)MCTAV | MCTAV | |
| Paralegal TD Not acceptedP575 | P575 | |
| Advisory Action (PTOL-303)CTAV | CTAV | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Response after Final ActionA.NE | A.NE | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF |
11 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Maintenance fee paymentMAFP | MAFP | |
| Maintenance fee paymentMAFP | MAFP | |
| Fee payment procedureFEPP | FEPP | |
| Fee payment procedureFEPP | FEPP | |
| Certificate of correctionCC | CC | |
| Information on status: patent grantGrantedSTCF | STCF | |
| Information on status: patent grantGrantedSTCF | STCF | |
| AssignmentAS | AS | |
| AssignmentAS | AS |
Numbers
- Publication
- 09736296
- Publication, DOCDB
- 9736296
- Publication, EPODOC
- US9736296
- Application
- 13539050
- Application, DOCDB
- 201213539050
- Application, EPODOC
- US201213539050
Titles
- English
- Attaching multiple phone lines to a single mobile or landline phone
Patent term adjustment
- A delay
- +320 daysthe office missed an examination deadline
- Applicant delay
- −434 days
- Net adjustment
- 0 days
Classification
- CPC, 16
- H04M3/42059
- H04M2250/66
- H04M3/42153
- H04M3/02
- H04M3/42306
- H04M3/2281
- H04M3/382
- H04M3/42008
- H04M3/42068
- H04M3/42042
- H04M3/4211
- H04M3/42136
- H04M3/42221
- H04M3/42229
- H04M1/72519
- H04M1/724
- IPC, 6
- H04M3 42
- H04M3 02
- H04M3 38
- H04M3 22
- H04M1 725
- H04M1 724
- USPC, 1
- 001001000