U.S. patent application number 16/398127 was filed with the patent office on 2020-08-06 for system, method and apparatus for facilitating the restriction of the use of one or more network devices through automated policy.
The applicant listed for this patent is Nocell Technologies, LLC. Invention is credited to Donald McKeefery, Himanshu Patel, Frederick Thiel.
Application Number | 20200252859 16/398127 |
Document ID | 20200252859 / US20200252859 |
Family ID | 1000004084214 |
Filed Date | 2020-08-06 |
Patent Application | download [pdf] |
![](/patent/app/20200252859/US20200252859A1-20200806-D00000.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00001.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00002.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00003.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00004.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00005.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00006.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00007.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00008.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00009.png)
![](/patent/app/20200252859/US20200252859A1-20200806-D00010.png)
View All Diagrams
United States Patent
Application |
20200252859 |
Kind Code |
A1 |
McKeefery; Donald ; et
al. |
August 6, 2020 |
System, Method and Apparatus for Facilitating the Restriction of
the Use of One or More Network Devices Through Automated Policy
Enforcement
Abstract
A system for enforcing a set of policies on a first network
device is shown. The system includes logic configured for
processing on the first network device and a wireless transceiver
to communicatively couple with the first network device. The logic,
while processing on the first network device, performs operations
including: detecting the first network device is moving at a speed
above a predetermined threshold and a presence of a wireless
transceiver, implementing the set of policies on the first network
device, wherein implementation of the set of policies is configured
to restrict functionality of the first network device according to
a predefined list of functionalities, monitoring first sensory data
associated with the first network device, determining that the
first sensory data violates a first policy of the set of policies,
and responsive to determining that the first sensory data violates
the first policy, transmitting an alert.
Inventors: |
McKeefery; Donald; (Irvine,
CA) ; Thiel; Frederick; (Dana Point, CA) ;
Patel; Himanshu; (Rancho Santa Margarita, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Nocell Technologies, LLC |
Aliso Viejo |
CA |
US |
|
|
Family ID: |
1000004084214 |
Appl. No.: |
16/398127 |
Filed: |
April 29, 2019 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
15939147 |
Mar 28, 2018 |
|
|
|
16398127 |
|
|
|
|
15615745 |
Jun 6, 2017 |
|
|
|
15939147 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04W 48/14 20130101;
H04W 4/48 20180201; H04W 4/027 20130101; H04W 48/16 20130101; H04W
24/10 20130101; H04W 24/08 20130101 |
International
Class: |
H04W 48/14 20060101
H04W048/14; H04W 48/16 20060101 H04W048/16; H04W 4/48 20060101
H04W004/48; H04W 4/02 20060101 H04W004/02; H04W 24/08 20060101
H04W024/08; H04W 24/10 20060101 H04W024/10 |
Claims
1. A system for enforcing a set of policies on a first network
device, the system comprising: logic stored on non-transitory
computer-readable medium of the first network device, wherein the
logic is configured for processing on the first network device; and
a wireless transceiver to communicatively couple with the first
network device, the wireless transceiver configured to receive
signals transmitted by network devices and, responsive to receiving
a command from the first network device, identify each network
device according to the received signals, wherein the logic, while
processing on the first network device, performs operations
including: detecting (i) that the first network device is moving at
a speed above a predetermined threshold and (ii) a presence of the
wireless transceiver; responsive to detecting the presence of the
wireless transceiver, transmitting the command to the wireless
transceiver to identify each network device; implementing the set
of policies on the first network device, wherein implementation of
the set of policies is configured to restrict functionality of the
first network device according to a predefined list of
functionalities; monitoring first sensory data associated with the
first network device; determining that the first sensory data
violates a first policy of the set of policies; and responsive to
determining that the first sensory data violates the first policy,
transmitting, by a communication interface of the first network
device according to instructions generated by the logic, an
alert.
2. The system of claim 1, wherein the wireless transceiver
identifies each of the network devices according to the received
signals by (i) parsing the signals transmitted by the network
devices, and (ii) obtaining a unique identifier for each of the
network devices.
3. The system of claim 1, wherein the wireless transceiver includes
circuitry including an integrated circuit, and an accelerometer,
and wherein the wireless transceiver obtains second sensory data
from the accelerometer, and transmits the second sensory data to
the first network device.
4. The system of claim 3, wherein the logic, while processing on
the first network device, performs further operations including:
determining that the second sensory data violates the first policy
of the set of policies; and responsive to determining that the
second sensory data violates the first policy, transmitting, by the
communication interface of the first network device according to
second instructions generated by the logic, a second alert.
5. The system of claim 4, wherein the circuitry includes a
vibration sensor, and the second sensory data includes data
obtained from the vibration sensor.
6. The system of claim 3, wherein the circuitry further includes a
communication interface, under control by a communication interface
logic, that enables communications with external network devices or
a cloud server.
7. The system of claim 1, wherein the wireless transceiver receives
instructions, from the first network device, to perform a plurality
of scans for additional network devices, wherein the plurality of
scans are performed at predetermined time intervals, and wherein
the wireless transceiver filters lists of detected additional
network devices resulting from the plurality of scans according to
unique identifiers corresponding to each detected additional
network device, and transmits the filtered lists to the first
network device.
8-20. (canceled)
21. The system of claim 1, wherein the logic, while processing on
the first network device, performs further operations including:
prior to the implementing of the set of policies, receiving, from
the wireless transceiver, a list of identified network devices, the
list of identified network devices including a signal strength
associated with each of the identified network devices, determining
the first network device is associated with a highest signal
strength, and responsive to the first network device being
associated with the highest signal strength, performing the
implementing of the set of policies.
22. A computerized method comprising: detecting, by logic of a
first network device, (i) that the first network device is moving
at a speed above a predetermined threshold, and (ii) a presence of
a wireless transceiver; responsive to detecting the presence of the
wireless transceiver, transmitting, by the logic, a command to the
wireless transceiver to identify each network device of one or more
network devices; implementing, by the logic, a set of policies on
the first network device, wherein implementation of the set of
policies is configured to restrict functionality of the first
network device according to a predefined list of functionalities;
monitoring, by the logic, first sensory data associated with the
first network device; determining, by the logic, that the first
sensory data violates a first policy of the set of policies; and
responsive to determining that the first sensory data violates the
first policy, transmitting, by a communication interface of the
first network device according to instructions generated by the
logic, an alert.
23. The computerized method of claim 22, wherein the wireless
transceiver identifies each network device of the one or more
network devices according to the received signals by (i) parsing
signals transmitted by the one or more network devices, and (ii)
obtaining a unique identifier for each network device of the one or
more network devices.
24. The computerized method of claim 22, wherein the wireless
transceiver includes circuitry including an integrated circuit, and
an accelerometer, and wherein the wireless transceiver obtains
second sensory data from the accelerometer, and transmits the
second sensory data to the first network device.
25. The computerized method of claim 24, wherein the logic, while
processing on the first network device, performs further operations
including: determining that the second sensory data violates the
first policy of the set of policies; and responsive to determining
that the second sensory data violates the first policy,
transmitting, by the communication interface of the first network
device according to second instructions generated by the logic, a
second alert.
26. The computerized method of claim 25, wherein the circuitry
includes a vibration sensor, and the second sensory data includes
data obtained from the vibration sensor.
27. The computerized method of claim 24, wherein the circuitry
further includes a communication interface, which, under control by
a communication interface logic, that enables communications with
external network devices or a cloud server.
28. The computerized method of claim 22, wherein the wireless
transceiver receives instructions, from the first network device,
to perform a plurality of scans for additional network devices,
wherein the plurality of scans are performed at predetermined time
intervals, and wherein the wireless transceiver filters lists of
detected additional network devices resulting from the plurality of
scans according to unique identifiers corresponding to each
detected additional network device, and transmits the filtered
lists to the first network device.
29. A non-transitory computer readable storage medium having stored
thereon instructions, the instructions being executable by one or
more processors to perform operations comprising: detecting (i)
that a first network device is moving at a speed above a
predetermined threshold, and (ii) a presence of a wireless
transceiver; responsive to detecting the presence of the wireless
transceiver, transmitting a command to the wireless transceiver to
identify each network device of one or more network devices;
implementing a set of policies on the first network device, wherein
implementation of the set of policies is configured to restrict
functionality of the first network device according to a predefined
list of functionalities; monitoring first sensory data associated
with the first network device; determining that the first sensory
data violates a first policy of the set of policies; and responsive
to determining that the first sensory data violates the first
policy, transmitting, by a communication interface of the first
network device according to instructions generated by the logic, an
alert.
30. The non-transitory computer readable storage medium of claim
29, wherein the wireless transceiver identifies each network device
of the one or more network devices according to the received
signals by (i) parsing the signals transmitted by the one or more
network devices, and (ii) obtaining a unique identifier for each
network device of the one or more network devices.
31. The non-transitory computer readable storage medium of claim
29, wherein the wireless transceiver includes circuitry including
an integrated circuit, and an accelerometer, and wherein the
wireless transceiver obtains second sensory data from the
accelerometer, and transmits the second sensory data to the first
network device.
32. The non-transitory computer readable storage medium of claim
31, wherein the logic, while processing on the first network
device, performs further operations including: determining that the
second sensory data violates the first policy of the set of
policies; and responsive to determining that the second sensory
data violates the first policy, transmitting, by the communication
interface of the first network device according to second
instructions generated by the logic, a second alert.
33. The non-transitory computer readable storage medium of claim
32, wherein the circuitry of the wireless transceiver includes a
vibration sensor, and the second sensory data includes data
obtained from the vibration sensor.
34. The non-transitory computer readable storage medium of claim
31, wherein the circuitry of the wireless transceiver further
includes a communication interface, under control by a
communication interface logic, enables communications with external
network devices or a cloud server.
35. The non-transitory computer readable storage medium of claim
29, wherein the wireless transceiver receives instructions, from
the first network device, to perform a plurality of scans for
additional network devices, wherein the plurality of scans are
performed at predetermined time intervals, and wherein the wireless
transceiver filters lists of detected additional network devices
resulting from the plurality of scans according to unique
identifiers corresponding to each detected additional network
device, and transmits the filtered lists to the first network
device.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application is a continuation-in-part of the
U.S. patent application Ser. No. 15/939,147, entitled "SYSTEM,
METHOD AND APPARATUS FOR GENERATING A ZONE RESTRICTING USE OF A
MOBILE DEVICE" filed on Mar. 28, 2018, which is a
continuation-in-part of the U.S. patent application Ser. No.
15/615,745, entitled "SYSTEM, METHOD AND APPARATUS FOR GENERATING A
ZONE RESTRICTING USE OF A MOBILE DEVICE" filed on Jun. 6, 2017,
both of which are hereby incorporated by reference in its
entirety.
FIELD
[0002] Embodiments of the disclosure relate to the field of
restricting use of network devices. More specifically, one
embodiment of the disclosure relates to a system that implements a
set of policies configured to restrict or limit the use of a
network device. Further, some embodiments of the disclosure relate
to restricting or limiting the use of a mobile device by a driver
of an automobile.
GENERAL BACKGROUND
[0003] Distractions while driving, especially those from electronic
devices, are at an all-time high. As mobile devices, e.g., cell
phones, have become ubiquitous, it is common place for a driver to
get into an automobile, start driving and become distracted with
his/her cell phone. For instance, drivers often receive and respond
to text messages or emails, browse the internet, or browse social
media platforms while driving.
[0004] Driving while distracted as a result of the presence of
electronic devices within reach is a dangerous, and at times,
deadly, situation. Although some states have outlawed the act of
using a cell phone while driving, not all drivers regularly adhere
to these laws. Additionally, drivers may be distracted merely by
notification alerts received by a cell phone. For example, a cell
phone placed in a cup holder of the center console may alert the
driver to a new text message or email via an audible and/or visual
notification. The notification may cause the driver to take his/her
eyes off of the road momentarily, which has the potential to result
in an accident.
[0005] Many parents or employers wish to prevent their
children/employees from being distracted by the child's or
employee's cell phone while driving but also want their children or
employees to have a cell phone in case of emergency. However, the
use of some functionality of a cell phone may be warranted while
driving. For example, a functionality of a cell phone that provides
turn-by-turn directions may be used by some drivers and does not
cause unnecessary distractions. Further, some drivers may be able
to connect their cell phones to the automobile's audio system and
play music while driving without causing unnecessary distractions.
Additionally, once a child or employee completes his/her drive,
there is no need to prevent the child or employee from using
his/her cell phone.
[0006] Thus, a system, method and apparatus are needed to restrict
or limit the use of some or all functionality of certain network
devices, such as mobile devices for example, within a predefined
area of an interior cabin of an automobile when the automobile is
in use.
BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Embodiments of the invention are illustrated by way of
example and not by way of limitation in the figures of the
accompanying drawings, in which like references indicate similar
elements and in which:
[0008] FIG. 1A is an exemplary illustration of NOCELL.TM. Zone
(NCZ) system.
[0009] FIG. 1B is an exemplary illustration of an interior cabin of
an automobile including a Bluetooth.RTM. Low Energy (BLE)
transceiver and the wireless transceiver of FIG. 1A.
[0010] FIG. 1C is an exemplary block diagram of a wireless
transceiver.
[0011] FIG. 2 is an exemplary illustration of an interior cabin of
a second automobile including a wireless transceiver installed
therein.
[0012] FIG. 3 is an exemplary display screen illustrating an
internet browser presenting an account owner registration
webpage.
[0013] FIG. 4A is an exemplary illustration of a network device
displaying a "Messages" screen presenting the user of the mobile
device with a plurality of text message alerts.
[0014] FIG. 4B is an exemplary illustration of a network device
displaying a text message.
[0015] FIG. 4C is an exemplary illustration of a network device
displaying a home screen including an icon corresponding to the
software application.
[0016] FIG. 4D is an exemplary illustration of a network device
displaying a first display screen of the software application.
[0017] FIG. 4E is an exemplary illustration of a network device
displaying a second display screen of the software application.
[0018] FIG. 4F is an exemplary illustration of a network device
displaying a third display screen of the software application.
[0019] FIG. 5A is an exemplary illustration of a network device
displaying a "Messages" screen presenting the user of the mobile
device with a plurality of text message alerts.
[0020] FIG. 5B is an exemplary illustration of a network device
displaying a text message.
[0021] FIG. 6A is a first exemplary illustration of an interior
cabin of an automobile including a wireless transceiver installed
therein.
[0022] FIG. 6B is a second exemplary illustration of the interior
cabin of the automobile of FIG. 6A including the wireless
transceiver installed therein.
[0023] FIG. 6C is a third exemplary illustration of the interior
cabin of the automobile of FIG. 6A including the wireless
transceiver installed therein.
[0024] FIG. 6D is a flowchart illustrating an exemplary process for
configuring a software application of a network device for use with
the NCZ system of FIG. 1A.
[0025] FIG. 7A is an illustration of a beacon being transmitted to
a network device and the launching of a software application of the
NCZ system installed on the network device.
[0026] FIG. 7B is an illustration of a beacon being transmitted to
the network device of FIG. 7A and the processing of the beacon by
the software application of FIG. 7A.
[0027] FIG. 8 is a flowchart illustrating an exemplary process for
monitoring driving data and providing notifications corresponding
thereto.
[0028] FIG. 9 is a flowchart illustrating an exemplary process for
providing notifications corresponding to a child's driving.
[0029] FIG. 10A is an exemplary illustration of a deployment of a
policy enforcement system in connection with a first vehicle.
[0030] FIG. 10B is a second exemplary illustration of the policy
enforcement system of FIG. 10A interacting with a network device of
a second vehicle.
[0031] FIG. 10C is a third exemplary illustration of the policy
enforcement system of FIG. 10A wherein two network devices are
located within the first vehicle.
[0032] FIG. 11 is an exemplary block diagram of a wireless
transceiver of the policy enforcement system of FIG. 10A.
[0033] FIG. 12 is a flowchart illustrating an exemplary process of
applying and monitoring a set of policies by the policy enforcement
system of FIG. 10A.
[0034] FIG. 13 is an operational flow diagram illustrating
operations performed in the process of FIG. 12.
[0035] FIGS. 14A-14C illustrate a flowchart of an exemplary process
of applying and monitoring a set of policies incorporating a first
and second comparison process by the policy enforcement system of
FIG. 10A.
[0036] FIG. 15 is a flowchart illustrating an exemplary process of
detecting a change in positioning of network devices within a
vehicle by the policy enforcement system of FIG. 10A.
[0037] FIG. 16 is a flowchart illustrating an exemplary process of
monitoring movement by a wireless transceiver of the policy
enforcement system of FIG. 10A.
[0038] FIGS. 17A-17B illustrate a flowchart of a second exemplary
process of monitoring movement by a wireless transceiver of the
policy enforcement system of FIG. 10A.
[0039] FIG. 18A is an illustration of a network device prior to the
application of a set of policies by the policy enforcement system
of FIG. 10A.
[0040] FIG. 18B is an illustration of the network device of FIG.
18A following the application of a set of policies by the policy
enforcement system of FIG. 10A.
[0041] FIG. 19 is an illustration of an exemplary dashboard
displaying information collected by the policy enforcement system
of FIG. 10A.
[0042] FIG. 20 is an exemplary embodiment of a logical
representation of a policy enforcement system application of FIG.
10A.
DETAILED DESCRIPTION
[0043] Embodiments of a system, apparatus and method for disabling
predefined functionalities of a network device within a predefined
range of a transceiver are described. A NOCELL.TM. Zone (NCZ)
system, which includes the transceiver, is capable of configuring,
with a software application installed on a network device, a
restricted area, or "restricted zone," based on a predetermined
threshold of a received signal strength of a beacon transmitted by
the transceiver. The software application then restricts or
disables one or more predetermined functionalities of the network
device when the network device is within the restricted area.
Additionally, an instance of the software application installed on
the network device may be capable of monitoring movements of and/or
operations conducted by the network device and providing
notifications in response to one or more predetermined triggering
events.
[0044] More particularly, in one embodiment, the NCZ system may
include a cloud server configured to execute logic stored thereon
to transmit data between one or more of a monitoring network device
and a monitored network device. Specifically, the monitored network
device may receive user input selecting or providing a list of
functionalities of the monitored network device. A software
application of the NCZ system installed on the monitored network
device receives the list of functionalities from the monitoring
networking device, e.g., optionally via the cloud server, and
disables the list of functionalities when the monitored network
device is within a predefined range of the transceiver. The term
"transceiver" refers to an electronic device capable of
transmitting wireless signals, such as Bluetooth.RTM. beacons
(e.g., Bluetooth Low Energy (BLE)). Herein, the terms "transceiver"
and "wireless transceiver" are used interchangeably.
[0045] In one example, the monitoring network device may be a
parent's mobile device, the monitored network device may be a
child's mobile device and the wireless transceiver may be located
within an automobile, e.g., coupled to the steering column or
windshield, or integrated into the center console. In such an
example, the parent may restrict the use of certain functionalities
of the child's mobile device while the child is driving by defining
a list of functionalities to be restricted or disabled and
establishing a restricted zone in reference to the location of the
wireless transceiver based on a signal strength of the beacon
generated by the wireless transceiver as received by the child's
mobile device. When a transceiver of the child's mobile device
detects a beacon having a signal strength greater than or equal to
a first threshold, a software application installed on the child's
mobile device determines the child's mobile device is within the
restricted zone (e.g., a beacon weakens as it propagates from its
source) and restricts or disables the list of functionalities. For
example, the list of functionalities to be restricted or disabled
may include texting applications, email applications, maps
applications, social media applications, etc. Continuing the
example, when the signal strength of the beacon is below the first
threshold or no beacon is detected, the software application
determines the child's mobile device is not within the restricted
zone and does not restrict or disable functionalities of the mobile
device.
[0046] Although the example above discusses the NCZ system as used
with an automobile and a parent-child relationship, the disclosure
should not be so limited. The NCZ system may be used in any area in
which the wireless transceiver is placed. For example, the NCZ
system may be used in the home, workplace, office building, school
or university, coffee shop, restaurant, on public transportation
(e.g., a bus, train, airplane, etc.), sporting stadium, etc.
Additionally, the NCZ system may be used with any relationship
involving a monitoring network device and a monitored network
device. For example, the NCZ system may be used with an
employer-employee relationship, a parent-parent relationship, a
guardian-child relationship, etc. However, for ease and
convenience, a parent-child relationship using the NCZ system
within an automobile will be discussed herein.
[0047] In one embodiment, a parent may access the NCZ system (e.g.,
via an internet browser or downloading a corresponding software
application), creating an account, inviting a child to register and
configuring the child's account by selecting certain
functionalities the parent wishes to disable or restrict while the
child is driving an automobile. The child may then download the
software application to the child's mobile device. The parent may
then configure the software application on the child's mobile
device by establishing a restricted area in relation to the
location of the wireless transceiver installed within an automobile
and is defined by the strength of the beacon. The restricted area
is established by using a wireless transceiver within the child's
mobile device to detect the strength of a beacon generated by the
wireless transceiver of NCZ system. Subsequently, the software
application establishes a virtual restricted zone in relation to
the location of the wireless transceiver of the NCZ system, which
includes at least the area surrounding the driver's seat. As a
result of the establishment of the restricted area, a child's
mobile device will have limited functionality when the mobile
device is within reach of the child while the child is driving;
thus, decreasing the number of distractions presented to the child
while driving. As mentioned above, the parent may configure the
software application on the child's mobile device to silence all
notifications, prevent texting, emailing, or generally the
generation, transmission and/or receipt of messages, prevent the
use of social media (e.g., Facebook.RTM., Instagram.RTM.,
Snapchat.RTM., etc.), etc.
[0048] Accordingly, using the NCZ system decreases the distractions
presented to a driver while driving, or sitting in the driver's
seat with the car on, in a manner customizable by a parent,
guardian, employer, etc. As a result, the NCZ system may improve
the safety of a child's driving. Further, the NCZ system may be
applied to any mobile device, such as a parent's mobile device, in
order to decrease the distractions presented to any driver of the
automobile. Additionally, the software application, e.g., installed
on a plurality of mobile devices, may be configured differently
according to the desires of a parent, guardian, employer, etc. For
example, a parent may configure the software application installed
on a first child's mobile device to disable all functionality of
the mobile device (e.g., the first child may be just learning to
drive) and configure the software application installed on a second
child's mobile device to disable a portion of the functionality
less than all of the functionality of the mobile device (e.g., the
second child has more experience driving).
I. TERMINOLOGY
[0049] In the following description, certain terminology is used to
describe features of the invention. In certain situations, the term
"logic" is representative of hardware, firmware, and/or software
that is configured to perform one or more functions. As hardware,
the logic may include circuitry having data processing or storage
functionality. Examples of such circuitry may include, but are not
limited or restricted to a microprocessor, one or more processor
cores, a programmable gate array, a microcontroller, an application
specific integrated circuit, wireless receiver, transmitter and/or
transceiver circuitry, semiconductor memory, or combinatorial
logic.
[0050] Alternatively, or in combination with the hardware circuitry
described above, the logic may be software in the form of one or
more software modules. The software module(s) may include an
executable application, an application programming interface (API),
a subroutine, a function, a procedure, an applet, a servlet, a
routine, source code, a shared library/dynamic load library, or one
or more instructions. The software module(s) may be stored in any
type of a suitable non-transitory storage medium, or transitory
storage medium (e.g., electrical, optical, acoustical or other form
of propagated signals such as carrier waves, infrared signals, or
digital signals). Examples of non-transitory storage medium may
include, but are not limited or restricted to a programmable
circuit; a semiconductor memory; non-persistent storage such as
volatile memory (e.g., any type of random access memory "RAM");
persistent storage such as non-volatile memory (e.g., read-only
memory "ROM", power-backed RAM, flash memory, phase-change memory,
etc.), a solid-state drive, hard disk drive, an optical disc drive,
or a portable memory device. As firmware, the executable code may
be stored in persistent storage.
[0051] As mentioned above, the terms "transceiver" and "wireless
transceiver" may be used interchangeably. Additionally, the term
wireless transceiver refers to an electronic device configured to
transmit and/or receive a wireless signal. The wireless transceiver
may transmit data using any wireless technology, examples of which
may include, but are not limited or restricted to, Wi-Fi,
Bluetooth.RTM., Bluetooth.RTM. Low Energy (BLE), radio waves (e.g.,
radio-frequency identification), one or more beacons, etc. In one
embodiment, a wireless transceiver may refer to a communication
interface of the center console of an automobile. In a second
embodiment, a wireless transceiver may refer to a standalone
electronic device that provides a wireless communication
interface.
[0052] The term "computerized" generally represents that any
corresponding operations are conducted by hardware in combination
with software and/or firmware.
[0053] The term "network device" may be construed as a physical,
electronic device or a virtual electronic device that is based on
the execution of one or more software modules. The network device
may be communicatively coupled to a public network such as the
Internet or a private network such as a wireless data
telecommunication network, wide area network, a type of local area
network (LAN), or a combination of networks. Examples of the
network device may include, but are not limited or restricted to, a
physical electronic device (e.g., a personal computer such as a
desktop, laptop, tablet or netbook; a mobile phone; a standalone
appliance; a sensor; etc.). A network device may feature a
plurality of electronic components, including one or more hardware
processors (generally referred to as "processor"), at least one
non-transitory storage medium, and an (network and/or I/O)
interface. These components may be encased in a housing, which may
be made entirely or partially of a rigid material (e.g., hard
plastic, metal, glass, composites, or any combination thereof) that
protects these components from certain environmental
conditions.
[0054] The term "message" generally refers to any type of signaling
such as wireless signaling including a beacon signal.
Alternatively, the message may be information in a prescribed
format and transmitted in accordance with a suitable delivery
protocol. Hence, each message may be in the form of one or more
packets, frames, or any other wireless signaling having the
prescribed format.
[0055] The term "transmission medium" may be construed as a
physical or logical communication path between two or more
electronic devices. For instance, as a physical communication path,
wired and/or wireless interconnects in the form of electrical
wiring, optical fiber, cable, bus trace, or a wireless channel
using infrared, radio frequency (RF), may be used.
[0056] Finally, the terms "or" and "and/or" as used herein are to
be interpreted as inclusive or meaning any one or any combination.
As an example, "A, B or C" or "A, B and/or C" mean "any of the
following: A; B; C; A and B; A and C; B and C; A, B and C." An
exception to this definition will occur only when a combination of
elements, functions, steps or acts are in some way inherently
mutually exclusive.
[0057] As this invention is susceptible to embodiments of many
different forms, it is intended that the present disclosure is to
be considered as an example of the principles of the invention and
not intended to limit the invention to the specific embodiments
shown and described.
NOCELL.TM. ZONE SYSTEM
[0058] Referring to FIG. 1A, an exemplary illustration of
NOCELL.TM. Zone (NCZ) system is shown. The NCZ system 100 includes
a cloud server 102, a first (monitoring) network device 104 (e.g.,
a parent or employer's mobile device), a second (monitored) network
device 106 (e.g., a child or employee's mobile device) as well as a
wireless transceiver 108 installed in an automobile 110. As shown,
the cloud server 102 is communicatively coupled to the first
network device 104 and the second network device 106. Additionally,
the second network device 106 may be communicatively coupled to the
first network device 104 and configured to receive and/or detect
signals transmitted by the wireless transceiver 108. Additionally,
the network devices 104-106 each include a processor (e.g.,
circuitry) that is configured to execute logic stored within a
storage medium of each of the network devices 104-106. One example
of the processor includes an Intel.RTM. (x86) central processing
unit (CPU) with an instruction set architecture. Alternatively,
each processor may include another type of CPU, a digital signal
processor (DSP), an Application Specific Integrated Circuit (ASIC),
a field-programmable gate array (FPGA), or any other hardware
component with data processing capability.
[0059] Referring to FIG. 1B, an exemplary illustration of an
interior cabin of an automobile including the wireless transceiver
of FIG. 1A is shown. Herein, the interior cabin 112 of the
automobile 110 includes a dashboard 114, a center console 116, a
steering wheel 118, a gas pedal 120, a brake pedal 122 and the
wireless transceiver 108. In the embodiment illustrated in FIG. 1B,
the center console 116 is shown to include a display screen 124 and
a plurality of controls 126, e.g., entertainment system controls,
cabin climate controls, automobile safety feature controls,
etc.
[0060] In one embodiment, the wireless transceiver 108 is installed
behind a front surface of the center console 116 as part of the
entertainment system controls to transmit and receive wireless
data. In another embodiment, the wireless transceiver 108 may be a
standalone electronic device that is placed within the automobile
110 (e.g., to enable use of the NCZ system with older automobiles
that may not have Bluetooth.RTM. connectivity), as seen in FIGS. 2
and 6A-6C. The wireless transceiver 108 may be configured to
facilitate communication between a network device and the center
console via, inter alia, Wi-Fi, Bluetooth.RTM., Bluetooth.RTM. Low
Energy, one or more other beacon types, etc. However, for the
purpose of clarity, the disclosure hereinafter will discuss the
wireless transceiver 108 transmitting Bluetooth.RTM. beacons
(hereinafter referred to as "beacons"). As discussed below, the
receipt of a beacon from the wireless transceiver 108 by the
network device 106 may prompt the network device 106 to launch a
software application of the NCZ system installed on the network
device 106 and begin a determination of the received signal
strength of beacon. As used herein, the received signal strength
may take the form of the value of a Received Signal Strength
Indicator (RS SI) as determined by the transceiver of the wireless
transceiver 108 of the network device 106. In other embodiments,
the received signal strength may be an absolute measure of signal
strength as measured in decibels (dBms).
[0061] When the signal strength of the beacon is determined to be
greater than or equal to a predetermined threshold, the software
application is configured to disable one or more functionalities of
the network device 106 according to predetermined configurations so
long as the network device 106 remains within a predefined distance
from the wireless transceiver 108 (i.e., the beacon signal strength
remains greater than or equal to the predetermined threshold).
[0062] It should also be noted that the wireless transceiver 108
may be integrated into other components of the automobile 110. In
some embodiments, the wireless transceiver 108 may be located
within the steering wheel 118, a dashboard 114, a column attaching
the steering wheel 118 to the dashboard 114 area (e.g., "steering
column"), etc.
[0063] Referring to FIG. 1C, an exemplary block diagram of a
wireless transceiver is shown. The wireless transceiver 108 is
shown to include one or wireless transmitting devices
128.sub.1-128.sub.i (i.gtoreq.1) at least partially contained
within a housing 130. For example, each of the wireless
transmitting devices 128.sub.1-128.sub.i may be an integrated
circuit, such as a system on a chip (SoC) configured for
transmission of Bluetooth.RTM. beacons. In some embodiments, each
of the wireless transmitting devices 128.sub.1-128.sub.i may be a
SoC configured for transmission of Bluetooth.RTM. Low Energy
beacons. The wireless transceiver 108 also includes an optional
attachment mechanism 132. In one embodiment, the attachment
mechanism 132 may be an adhesive applied to a top surface of the
housing 130. In another embodiment, the attachment mechanism 132
may be a securing mechanism, such as straps or hooks for example.
In a second embodiment, the attachment mechanism 132 may be an
extension of the housing 130 and integrally formed therefrom. The
wireless transceiver 108 may be removably coupled or permanently
affixed to a portion of the automobile 110, e.g., the steering
column. Additionally, in some embodiments, the wireless transceiver
may include a battery 134 and a charging port 136. The battery 134
may provide power to the wireless transmitting devices
128.sub.1-128.sub.i and be charged by way of the charging port 136.
Examples of types of charging connectors for which the charging
port 136 may be configured include, but are not limited or
restricted to, Universal Serial Bus (USB), Lightning, and/or
Thunderbolt. Additionally, the wireless transceiver 108 may be
configured for wireless charging through, for example, inductive
charging. Alternatively, the wireless transceiver 108 may couple to
a permanent power source of the automobile 110. For example, the
wireless transceiver 108 may be directly or indirectly coupled to
the battery of the automobile, e.g., via a reclosable fastener
wherein each component of the fastener includes a mating side and a
side including an adhesive, (not shown). One example of the
reclosable fastener is any model of the 3M.TM. Dual Lock.TM.
reclosable fastener product line.
[0064] Referring to FIG. 2, an exemplary illustration of an
interior cabin of a second automobile including a wireless
transceiver installed therein is shown. Herein, the interior cabin
of the second automobile 200 includes a dashboard 202, a center
console 204, a steering wheel 206, a gas pedal 208, a brake pedal
210 and the wireless transceiver 218, similar to the illustration
shown in FIG. 1B. In the embodiment illustrated in FIG. 2, the
center console 204 is shown to include a display screen 212 and a
plurality of controls 214, e.g., entertainment system controls,
cabin climate controls, automobile safety feature controls, etc. In
contrast to FIG. 1B, the standalone wireless transceiver 218 is
provided. Specifically, the wireless transceiver 218 may be
removably affixed to a component within the interior cabin. Similar
to the wireless transceiver 108 of FIG. 1B, the wireless
transceiver 218 transmits wireless signals, e.g., one or more
beacons, that are received by the network device 106.
[0065] The wireless transceiver 218 may be coupled to the center
console 116, as shown, as well as to the steering column and the
steering wheel 118 itself, so long as such a coupling does not
impede a driver's ability to safely operate the automobile 110.
Further, the wireless transceiver 218 may be coupled to other
portions of the automobile, including, for example, the dashboard
114, the driver's seat, etc. Additionally, as mentioned above, the
NCZ system, specifically utilizing a wireless transceiver such as
the wireless transceiver 218, may be used in locations outside of
an automobile, i.e., home, workplace, office building, coffee shop,
restaurant, etc.
REGISTRATION AND CONFIGURATION METHODOLOGY
[0066] Referring to FIG. 3, an exemplary display screen
illustrating an internet browser presenting an account owner
registration webpage is shown. The display screen 300 illustrates
an internet browser 302 having a navigation toolbar 304, a location
bar 306 and a content area 308, which includes an owner name text
box 310, an owner billing address text box 312, first parental
contact information text boxes 314-316, second parental contact
information text boxes 318-320, a password text box 322 and a
password confirmation text box 324. The display screen 300 is used
by an account owner, e.g., a parent or car owner, to register with
the NCZ system. Particularly, the owner name text box 310 may
correspond to any parent, guardian, employer, etc., that will have
the ability (e.g., permission) to set and/or modify the
configuration settings for a user's account (e.g., restrict
capabilities of a user's network device) as well as invite others
to join (e.g., anyone that may drive an automobile to which a
wireless transceiver is integrated or coupled).
[0067] The account owner registers by completing text boxes
310-312, at least one of either set of parental contact information
text boxes 314-316 or 318-320, and the password and password
confirmation text boxes 322-324. It should be noted that the
account owner may be a parent corresponding to either set of
parental contact information text boxes 314-316 or 318-320.
Although in one embodiment, the account owner does not have to be a
parent corresponding to either set of parental contact information
text boxes 314-316 or 318-320. Additionally, although two sets of
parental contact information text boxes are shown, more or fewer
sets of parental contact information text boxes may be included.
Additionally, an account owner may register a particular wireless
transceiver via a device registration text box, not shown, which
may act to attach a particular product warranty to the wireless
transceiver, etc.
[0068] Referring to FIGS. 4A-4F, a plurality of display screens
displayed on a network device illustrating a process followed by a
parent to register with the NCZ system is shown. Referring to FIG.
4A, a network device 400, e.g., a mobile device, is shown
displaying a "Messages" screen presenting the user of the mobile
device with a plurality of text message alerts. The text message
alerts include a first text message alert 402 from Contact-1, a
second text message alert 404 from NOCELL.TM. Zone and a third text
message alert 406 from Contact-2. Selecting, e.g., via user input,
to read the text message pertaining to the second text message
alert 404 may result, directly or indirectly, in the display
illustrated in FIG. 4B. Although FIGS. 4A-4F illustrate the
invention utilizing text messaging as a communication method to
communicate with a parent, the invention should not be so limited.
Instead, any form of electronic communication may be used such as,
for example, email, messaging via social media platforms (e.g.,
Facebook.RTM., Instagram.RTM., Snapchat.RTM., etc.) and or
messaging via any dedicated messaging application for network
devices (e.g., WhatsApp.RTM.).
[0069] Referring to FIG. 4B, the network device 400 of FIG. 4A is
shown displaying text messages from NOCELL.TM. Zone. A text message
screen 408 illustrates a thread of text messages between the
NOCELL.TM. Zone and the parent operating to the network device 400.
The thread includes a message 410 that includes a link to download
software application on the network device 400. It is noted that as
many applications share content among a plurality of network
devices (e.g., network devices configured with a common login, for
example within the Apple.RTM. ecosystem, or with a single
application using a single login across multiple devices);
therefore, the message 410 may be used to install the software
application on multiple devices. Selecting the link provided in the
text message 410 may result, directly or indirectly, in the display
of the illustration set forth in FIG. 4C.
[0070] Referring to FIG. 4C, an exemplary illustration of a network
device displaying a home screen including an icon corresponding to
the software application is shown. A home screen 412 is displayed
on the network device 400. The home screen 412 is shown to include
a plurality of icons 414 representing a plurality of applications
that have been installed on the network device 400. In an
alternative embodiment, at least a part of one or more of the
plurality of applications may reside on cloud storage such that
selection of an icon of the plurality of icons 414 results in
retrieval of data from cloud storage. The plurality of icons 414
includes an icon 416 corresponding to the software application,
which may be downloaded and installed on the network device 400
and/or at least partially stored on cloud storage. Selecting the
icon 416 corresponding to the software application may result,
directly or indirectly, in the display of the illustration set
forth in FIG. 4D.
[0071] Referring to FIG. 4D, the network device 400 of FIG. 4A is
shown displaying a first display screen of the software
application. A content area 420 is displayed and corresponds to a
registration screen for a parent. The content area 420 includes a
plurality of text boxes for a parent to fill in in order to
register with the NCZ system including a parent phone number text
box 422, a password text box 424, a password confirmation text box
426, and a child_1 phone number text box 428. The parent's phone
number is used in transmission of notifications pertaining to a
child's driving, as will be discussed below and a password is
established upon completion of the text boxes 424-426. The password
will be required when an attempt to sign in to the parent's account
is made, e.g., when modifications to the configuration settings of
a child's account are desired. The phone number provided in text
box 428 corresponds to a first child (or other driver) that will be
utilizing the automobile in which a wireless transceiver is
installed. Filling in the text boxes 422-428 and selecting the
"Next" icon 430 may result, directly or indirectly, in the display
of the illustration set forth in FIG. 4E.
[0072] Referring to FIG. 4E, the network device 400 of FIG. 4A is
shown displaying a second display screen of the software
application. A content area 432 is displayed and corresponds to a
second registration screen that is configured for a parent to
select one or more functionalities that are to be disabled when the
child's mobile device is within a predefined area within an
automobile within which a wireless transceiver is installed. The
content area 432 includes a scroll list 434 that lists
functionalities of the child's mobile device that may be restricted
or disabled. Examples of functionalities that may be restricted or
disabled via the software application installed on the child's
mobile device include, but are not limited or restricted to,
disabling all functionalities (e.g., "entire phone"), disabling
texting functionalities, disabling one or more applications, etc.
In particular, the content area 432 may include a sub-scroll list
436 that lists individual applications installed on the child's
device (or that may be installed on the child's device). In one
embodiment, the NCZ system may be configured to receive a
notification from the software application installed on the child's
device and the notification may include a listing of applications
installed on the child's mobile device such that the sub-scroll
list 436 may be populated with the applications installed on the
child's mobile device. Additionally, the NCZ system may receive
notifications periodically, upon request, or upon a triggering
event (e.g., a new application was installed) from the software
application installed on the child's mobile device alerting the NCZ
system of any additional applications that have been installed on
the child's mobile device. A parent, e.g., operating the network
device 400, may then be alerted to the new applications and decide
if the new applications should be disabled when the child's mobile
device is within the predefined range of the wireless transceiver,
i.e., within the restricted zone. In a second embodiment, the
sub-scroll list 436 may include a list of all possible applications
that may be installed on the child's mobile device. In such an
embodiment, the software application installed on the child's
mobile device will disable any applicable applications selected by
the parent according to the second display screen set forth in FIG.
4E. It should be noted that upon completion of the registration
process by the parent operating the network device 400, the
configuration settings are stored by the NCZ system (e.g., in a
remote storage location and/or using cloud storage) and may also be
transmitted to the child's mobile device (e.g., the mobile device
corresponding to the number provided in the text box 428 of FIG.
4D. In some embodiments, the parent may configure a child's account
to communicate with a predetermined wireless transceiver, e.g., via
a communication chip and logic of the wireless transceiver. The
communication chip may include a microcontroller and/or one or more
radio units to provide wireless capability to the wireless
transceiver. In one embodiment, the wireless capability includes at
least Bluetooth.RTM. capability, but may include others mentioned
above. In other embodiments, a child's account may be configured to
recognize all wireless transceivers. Further, receiving input that
selects the "Next" icon 438, may result, directly or indirectly, in
the display of the illustration set forth in FIG. 4F.
[0073] Referring to FIG. 4F, the network device 400 of FIG. 4A is
shown displaying a third display screen of the software
application. A content area 440 is displayed and corresponds to a
third registration screen that is configured for a parent to select
one or more events that trigger the transmission of a notification
to the parent (e.g., to the network device 400, to one or more
other network devices in addition to the network device 400, etc.).
The content area 440 includes a scroll list 442 that lists events
that are selectable to act as triggering events. Examples of event
that may act as triggering events for the transmission of
notifications to the parent include, but are not limited or
restricted to, none (e.g., no notifications), start driving, stop
driving, excess G-Force, excess speed (e.g., a predefined max speed
via icon 444, a speed over the listed speed for that road, etc.),
etc. The receipt of user input to the NCZ system causes the NCZ
system to establish a set of triggering events, which act as rules
that dictate when the software application installed on the child's
mobile device is to report data to the NCZ system (e.g., data
pertaining to the triggering event), transmit an alert to the
parent, and/or provide an alert to the NCZ system to be further
transmitted to the parent (e.g., and optionally stored on the NCZ
system). Receiving input corresponding to a selection of the "Done"
icon 446, may result, directly or indirectly, in the completion of
the registration process set forth in FIGS. 4A-4F.
[0074] Referring to FIGS. 5A-5B, a plurality of display screens
displayed on a network device illustrating a process followed by a
child to download the software application is shown. Referring to
FIG. 5A, a network device 500, e.g., a mobile device of a child, is
shown displaying a "Messages" screen presenting the user of the
mobile device with a plurality of text message alerts. The text
message alerts include a first text message alert 502 from
Contact-A, a second text message alert 504 from Contact-B and a
third text message alert 506 from NOCELL.TM. Zone. Selecting, e.g.,
via user input, to read the text message pertaining to the third
text message alert 504 may result, directly or indirectly, in the
display illustrated in FIG. 5B. Although FIGS. 5A-5B illustrate the
invention utilizing text messaging as a communication method to
communicate with a child's network device, the invention should not
be so limited. Instead, any form of electronic communication may be
used as discussed above with respect to FIGS. 4A-4F.
[0075] Referring to FIG. 5B, the network device 500 of FIG. 5A is
shown displaying a text message from NOCELL.TM. Zone. A text
message screen 508 illustrates a thread of text messages between
the NOCELL.TM. Zone and the child operating to the network device
500. The thread includes a message 510 that includes a link to
download software application on the network device 500. For
example, by receiving user input selecting the "Accept" link, the
NCZ system may transmit a notification to the parent that invited
the child (e.g., refer to FIGS. 4A-4F) and present the child with
an icon configured to initiate the download of the software
application on the network device 500 (e.g., via an application
"store"). In one embodiment, receiving user input selecting the
"Accept" link may cause the network device 500 to automatically
begin a download of the software application. In one embodiment,
receiving user input selecting the "Deny" link may cause the NCZ
system to transmit a notification to the parent that invited the
child operating the network device 500 that the invitation to join
the NCZ system and download the software application was declined.
As discussed above with respect to FIGS. 4A-4F, as many
applications share content among a plurality of network devices,
the message 510 may be used to install the software application on
multiple devices.
[0076] In one embodiment, a wireless transceiver may be affixed,
either permanently or removably, to a component within an interior
cabin of an automobile. Referring to FIGS. 6A-6B, a plurality of
illustrations provide a visual demonstration of the process for
configuring a network device, and the software application
installed thereon, for use with a wireless transceiver installed
within an interior cabin of an automobile is shown. For example,
the wireless transceiver 605 may be affixed to the steering wheel
column or may be integrated into a dashboard 602 or a steering
wheel 606. Referring to FIG. 6A, a first exemplary illustration of
an interior cabin of an automobile including a wireless transceiver
605 installed therein is shown. Herein, the interior cabin of the
automobile 600 includes the dashboard 602, a center console 604,
the wireless transceiver 605, the steering wheel 606, a driver's
seat 608, a front passenger's seat 610 and a backseat 612.
Additionally, a person 616 is shown sitting in the driver's seat
608 holding a network device 618. As discussed above, following
download and installation of the software application on the
network device 618, a configuration process is undertaken that
configures the software application for use with the wireless
transceiver 605.
[0077] The process of configuring the software application of the
NCZ system that is installed on the network device 618 has the
purpose of establishing an area, e.g., a "restricted area," at
least partially covering the driver's seat 608 in which the
software application will disable the functionalities predefined by
a parent, guardian, employer, etc., as discussed above. In
particular, the restricted area forms a virtual region having the
wireless transceiver 605 as a center point. In one embodiment, the
region may take the shape of a circle; however, other shapes have
been contemplated. The restricted area is a zone in which a parent,
guardian, employer, etc., has restricted the use of one or more
predefined functionalities of the network device 618 by use of the
software application installed thereon. Once the software
application has been configured and the restricted area
established, the functionalities predefined by a parent, guardian,
employer, etc., will be disabled when the automobile is in use and
the network device 618 is within the restricted area. Thus, the NCZ
system, including the wireless transceiver 605 and the software
application installed on the network device 618, restrict the use
of the network device 618 from being used within a predefined range
of the wireless transceiver 605. The NCZ system, as discussed
above, limits the distractions to the driver that are provided by
the network device 618, e.g., texting, emailing, browsing social
media, changing music, etc.
[0078] Still referring to FIG. 6A, the configuration of the
software application installed on the network device 618 may be a
multi-step process that includes, inter alia, steps of (i)
initiating a measuring phase, which causes the wireless transceiver
of the network device 618 to measure the signal strength of a
beacon(s) generated by the wireless transceiver 605, (ii)
continuing to measure the signal strength of the beacon(s) as the
network device 618 is moved from a first position to a second
position (additional positions are also possible), (iii)
determining a value indicating the weakest signal strength of the
beacon(s) that was measured during the measuring phase, and (iv)
storing the value indicating the weakest signal strength of the
beacon(s) for use in creating the restricted area. As an optional
initial step, receipt of the beacon(s) by the network device 618
may cause the network device 618 to launch the software application
and/or identify the presence of the NCZ system. In some
embodiments, the wireless transceiver of the network device 618 may
be an integrated circuit, such as a SoC configured for receipt and
transmission of Bluetooth.RTM. beacons.
[0079] When the configuration process is initiated, the software
application may, either automatically or in response to user input,
begin to determine the signal strength of a beacon(s) detected by
the wireless transceiver of the network device 618. In one
embodiment, the network device 618 may display a configuration
screen, not shown, that receives user input to begin and end the
measuring phase. Such an embodiment enables the person 616
configuring the software application installed on the network
device 618 to set a beginning time and end time for the measuring
phase. As shown in FIG. 6A, the network device 618 is held in a
first position with respect to the wireless transceiver.
[0080] Referring now to FIG. 6B, a second exemplary illustration of
the interior cabin of the automobile of FIG. 6A including the
wireless transceiver installed therein is shown. As illustrated,
the person 616 is shown to have moved the network device 618 from a
first position (e.g., FIG. 6A) to a second position during the
configuration process. During the movement of the network device
618 from the first position to the second position, the wireless
transceiver of the network device 618 measures the signal strength
of the beacon(s) generated by the wireless transceiver 605 while in
the measuring phase. The configuration of the software application
continues upon the completion of the measuring phase by
determining, by the software application, the weakest measured
signal strength of the beacon(s) during the measuring phase. The
value indicating the weakest measured signal strength of the
beacon(s) is stored by the software application and is used by the
software application as the threshold indicating when the software
application is to disable predefined functionalities of the network
device 618. Specifically, the location of the weakest measured
signal strength of the beacon(s) indicates the position of the
network device 618 when the network device 618 is the farthest from
the wireless transceiver 605 during the measuring phase; therefore,
establishing an outer limit for the range within which the software
application disables one or more functionalities of the network
device 618 (e.g., a perimeter). As a result, the restricted area is
established and defined by the value indicating the weakest
measured signal strength of the beacon(s) during the measuring
phase.
[0081] In one example, a parent may establish a restricted area in
an automobile for a child's mobile device by sitting in the
driver's seat with the mobile device, and turning the automobile
on. Upon receiving input by the parent to initiate the
configuration process and additionally to begin the measuring
phase, the software application obtains readings from the mobile
device's wireless transceiver 605. As the parent moves the mobile
device across multiple positions (e.g., spanning the area reachable
by a child sitting in the driver's seat), the software application
continues to obtain readings from the wireless transceiver 605. The
measuring phase is complete when the network device 618 receives
user input corresponding to ending the measuring phase.
Alternatively, the measuring phase may end upon expiration of a
timer. As discussed above, the software application of the network
device 618 then determines and stores a value indicating the
weakest measured signal strength of the beacon(s), which is used to
establish a perimeter of the restricted zone.
[0082] Referring now to FIG. 6C, a third exemplary illustration of
the interior cabin of the automobile of FIG. 6A including the
wireless transceiver installed therein is shown. FIG. 6C also
illustrates an exemplary restricted area 620. As shown, the
restricted area 620 is a circular area having the wireless
transceiver 605 as the center point of the circle and the outer
most dotted circular ring representing the perimeter of the
restricted area 620. When the network device 618, not shown in FIG.
6C, is located within the restricted area 620 and the automobile
600 is turned on, the network device 618 will receive a wireless
signal (e.g., beacon) from the wireless transceiver 605 and detect
a signal strength of a beacon(s) that is above a first threshold.
As stated above, detection of the signal strength of the beacon(s)
above a first threshold indicates to the software application that
the network device 618 is within the restricted area. Subsequently,
the software application installed on the network device 618 will
disable the functionalities predefined by a parent, guardian,
employer, etc.
[0083] In the embodiment shown, the restricted area 620 is shown to
cover the driver's seat 608, a portion of the center console 604,
and a portion of the front passenger's seat 610. As a result, a
driver is unable to use certain functionalities of the network
device 618 and is thus less distracted than if the driver had
access to all of the functionalities of the network device 618. It
is noted that a passenger, e.g., sitting in either the front
passenger's seat 610 or in the backseat 612, may utilize any and
all functionalities of the network device 618 when the network
device 618 is not within the restricted area 620. The restricted
area 620 is illustrated as having a first size (e.g., a first
radius); however, the disclosure should not be so limited as the
size of the restricted area is configurable as discussed above.
Specifically, a restricted area may be configured with a smaller or
larger radius than shown in FIG. 6C. Additionally, a restricted
area may be specific to each network device. For example, in one
embodiment, a first network device may be configured with a first
restricted area having a first size while a second network device
may be configured with a second restricted area having a second
size, the first size being different than the second size.
[0084] In an alternative embodiment, an alternative configuration
of the software application installed on network device may be
utilized. Instead of requiring a user, e.g., the person 616, to
launch the software application on a network device and move the
network device from a first position to a second position in order
to establish a restricted zone, e.g., the restricted zone 620, the
software application may include, or have access to via, for
example, an internet connection, and predetermined thresholds that
define a restricted zone, e.g., the restricted zone 620, as
discussed above. For instance, in such an embodiment, the user,
e.g., the person 616, may provide a vehicle's make and model via
user input to the network device and the software application may
retrieve a corresponding predetermined threshold for received
signal strength of a beacon. In particular, the retrieved
predetermined threshold corresponds to the particular vehicle's
make and model as the interior cabins of different vehicles may
vary, thereby selecting a restricted zone that covers at least the
area surrounding the driver but does not preclude other passengers
from utilizing network devices that may have the software
application installed thereon.
[0085] Referring now to FIG. 6D, a flowchart illustrating a second
configuration process of a software application installed on a
network device is shown. Each block illustrated in FIG. 6D
represents an operation performed in the method 630 of configuring
a software application of the NCZ system of FIG. 1 installed on a
network device. In one embodiment, the method 630 begins when a
beacon that is transmitted by a wireless transceiver within a
vehicle is received by a network device (block 632). For example, a
user of a network device may begin configuration of a software
application of the network device by moving within a close
proximity to the vehicle such that the network device receives a
beacon transmitted by the vehicle.
[0086] In some embodiments, logic of the network device also
receives user input indicating a make and model of the vehicle
(block 634). The user, subsequent or prior to the network device
receiving the beacon, may provide the network device with input
indicating the make and model of the vehicle from which the
received beacon was transmitted. In other embodiments, the wireless
transceiver transmitting the beacon may be configured to include
the make and model of the vehicle in the beacon. For example, when
the vehicle is purchased with a wireless transceiver, e.g.,
integrated into the center console or steering column, the wireless
transceiver may be configured to transmit beacons that indicate the
make and model of the vehicle. In some instances, the beacon may
utilize one or more bytes comprising a beacon to indicate the make
and model of the vehicle, for example, by setting flags enabling
the logic installed on the network device to determine the make and
model.
[0087] Responsive to determining the make and model of the vehicle,
the logic retrieves a predetermined threshold based on the make and
model (block 636). The logic of the network device may include a
plurality of predetermined thresholds, wherein each predetermined
threshold corresponds to one or more vehicles (e.g., make and
model). Alternatively, the logic may have access to one or more
databases that store predetermined thresholds, e.g., via a network
connection. In one embodiment, a predetermined threshold
corresponds to a received signal strength of a beacon. In
particular, when a network device receives a beacon having a signal
strength greater than or equal to the predetermined threshold, the
logic of the network device determines the network device is within
a restricted zone for the vehicle and disables or hides one or more
functionalities or notifications as discussed above. However, when
a network device receives a beacon having a signal strength less
than the predetermined threshold, the logic of the network device
determines the network device is not within a restricted zone and
does not disable or hide functionality or notifications.
[0088] Thus, based on the retrieved predetermined threshold, the
logic of the network device establishes a virtual restricted zone
for the network device corresponding to the specific vehicle (e.g.,
according to the make and model) (block 638). Therefore, the logic
of the network device is configured to establish a restricted zone
such that the size of the restricted zone is specific to the make
and model of the vehicle. For example, the interior cabin of a Fiat
500 is a different size than the interior cabin of a Cadillac
Escalade; therefore, the logic of the network device establishes a
restricted zone for the vehicle based on the vehicle's make and
model based selecting a predetermined threshold that corresponds to
the size of the interior cabin of the vehicle.
[0089] When the logic of the network device receives a beacon from
the vehicle and the beacon has a received signal strength greater
than or equal to the predetermined threshold, the logic disables or
restricts one or more functionalities and/or hides notifications,
as discussed above (block 640).
[0090] Additionally, the beacon transmitted from the wireless
transceiver may include an identifier that uniquely identifies the
wireless transceiver, and consequently, the vehicle. The logic may
create and store a profile for a specific vehicle that includes the
predetermined threshold and the identifier that uniquely identifies
the transceiver of the specific vehicle. Further, the logic may
create and store a plurality of profiles (e.g., one profile for
each unique identifier) so that when a beacon is received by the
network device, the logic may determine the predetermined threshold
based on the unique identifier included in the beacon based on a
stored profile. Thus, the logic of a network device may be
configured for use in a plurality of automobiles, possibly having
different sized interior cabins. This may result in the user of
different predetermined thresholds based on the particular vehicle.
When a beacon is received that includes a unique identifier not
recognized by the logic (e.g., within a profile stored by or
accessible to the logic), the logic may begin the method 630 as set
forth in operation 632.
[0091] In some embodiments, when a user manually configures the
logic to create a restricted zone for a vehicle, i.e., as discussed
above with respect to FIGS. 6A-6C, the manually configured
restricted zone may override the profile or replace the
predetermined threshold based on an automated determination from
information within the beacon. More specifically, when a user
manually configures the logic for a specific vehicle, the profile
created by the logic includes the unique identifier of the specific
vehicle and the predetermined threshold corresponding to the
manually created restricted zone (e.g., the signal strength
determined based on movement of the network device from a first
position to a second position as discussed above).
GENERAL USE CASE
[0092] FIGS. 7A-7B provide illustrations of communication pathways
between the NCZ system and a network device. Referring to FIG. 7A,
an illustration of one or more wireless signals being transmitted
to a network device is shown. The wireless transceiver 702 may be
an electronic device configured to transmit and/or receive wireless
signals, e.g., beacons, 704.sub.1-704.sub.N (N.gtoreq.1). As
illustrated in FIG. 7A, the wireless transceiver 702 transmits
signals 704.sub.1-704.sub.N and a wireless transceiver 708 of the
network device 706 is configured to detect the beacons
704.sub.1-704.sub.N. Responsive to detecting the beacons
704.sub.1-704.sub.N, the processor 710 of the network device 706
may launch the mobile application 712, which may be stored on the
network device 706 in a storage medium located therein.
[0093] Referring to FIG. 7B, an illustration of the beacon
generated by the wireless transceiver 702 and detected by the
network device 706 of FIG. 7A is shown. The wireless transceiver
702 may include one or more wireless transmitting devices, such as
the wireless transmitting devices 128.sub.1-128.sub.i as
illustrated in FIG. 1C, that generate beacons. As illustrated in
FIG. 7B, the wireless transceiver 702 generates the beacons
704.sub.1-704.sub.N and a wireless transceiver 708 of the network
device 706 is configured to detect the beacons 704.sub.1-704.sub.N
as well as the strength thereof. As discussed above, the strength
signal of the beacons 704.sub.1-704.sub.N may be based on a RSSI or
an absolute measure of the signal strength as measured in dBms.
Responsive to detecting the strength of the beacons
704.sub.1-704.sub.N being greater than or equal to a first
threshold (e.g., a value indicating a weakest strength detected
during a measuring phase as discussed above), the mobile
application 712 provides instructions to one or more applications
to close, hide notifications and/or restrict or disable
functionality. Additionally, the mobile application 712 may itself
cause the disabling of predefined functionalities of the network
device 706. Upon detection of a strength of a beacon that is less
than the first threshold, the mobile application 712 permits full
functionality of the network device 706 (e.g., provides enabling
instructions to one or more applications, revokes the disabling
instructions, etc.).
SOFTWARE APPLICATION MONITORING METHODOLOGY
[0094] Referring to FIG. 8, a flowchart illustrating an exemplary
process for monitoring driving data and providing notifications
corresponding thereto is shown. Each block illustrated in FIG. 8
represents an operation performed in the method 800 of monitoring
driving data and providing notifications corresponding thereto by a
NCZ system. The method 800 is undertaken following a determination
by a software application of a network device that the network
device is within a restricted area, as discussed above. The process
starts and at block 802, the software application installed on the
network device, e.g., a mobile device, requests to access the
accelerometer of the mobile device. As discussed with respect to
the method 800, the mobile device, having a wireless transceiver
installed therein, is located within an automobile and receives one
or more beacons from a second wireless transceiver located within
the automobile but external to the mobile device, as discussed
above. At block 804, the software application requests access to
global positioning system (GPS) data of the mobile device.
Following the receipt of access to the accelerometer and the GPS
data, a plurality of operations may occur concurrently (at least
partially overlapping in time). As illustrated in FIG. 8, two or
more of blocks 806, 812, 816, 828, 830 and 834 may occur
concurrently.
[0095] At block 806, the software application monitors for a
G-force event with the accelerometer. As used herein, the term
"G-force event" may refer to a change in the velocity greater than
or equal to a predetermined threshold within a predetermined time
period. In one embodiment, a G-force event may correspond to the
occurrence of an accident (e.g., a sudden stop wherein the change
in velocity is greater than a predetermined threshold).
[0096] At block 808, the software application determines whether a
change in the G-force is greater than or equal to a predetermined
threshold_1. When the change in the G-force is not greater than or
equal to the predetermined threshold_1, e.g., no G-force event (no
at block 808), the method 800 returns to monitoring for a G-force
event. When the change in the G-force is greater than or equal to
the predetermined threshold_1, e.g., a G-force event (yes at block
808), the network device may display a pop-up asking if a call to
emergency services needs to be made (e.g., an accident occurred)
(block 810). Subsequently, or concurrently, to the display of the
pop-up, the software application records the occurrence of an
excessive G-force event (block 811). At block 812, the software
application and/or logic of the cloud server determines whether a
request to download driving data has been received (block 812).
When no request has been received (no at block 812), the software
application continues to monitor for receipt of a request for
driving data. When a request has been received (yes at block 812),
the software application transmits the driving data to the cloud
server and/or directly to the parent device requesting the driving
data (block 814).
[0097] At block 816, the software application detects a change in
the accelerometer (from a zero (0) value to a positive measurement)
representing a "start driving" event. At block 818, the software
application records a start driving event along with applicable
metadata (e.g., time, date, GPS location, etc.). The process 800
may then proceed to block 812 and determine whether a request for
driving data was received, although such an operation may occur
concurrently with blocks 816 and 818.
[0098] At block 820, the software application detects a change in
the accelerometer (from a positive measurement to a zero (0) value)
representing a "stop driving" event. At block 822, the software
application records a stop driving event along with applicable
metadata (e.g., time, date, GPS location, etc.). The software
application then determines whether the change in acceleration is
greater than or equal to a predetermined threshold_2 (block 824).
When the change in acceleration is greater than or equal to a
predetermined threshold_2 (yes at block 824), the software
application records an "excessive braking" event (block 826). It
should be noted that two or more events may correspond to the same
portion of driving data. For example, a sudden stop may result in
the recordation of a G-force event and a stop driving event. The
process 800 may then proceed to block 812 and determine whether a
request for driving data was received, although such an operation
may occur concurrently with blocks 820, 822, 824 and 826.
[0099] At block 828, the software application records the GPS data
(e.g., time, date, speed, etc.). The process 800 may then proceed
to block 812 and determine whether a request for driving data was
received, although such an operation may occur concurrently with
block 828. At block 830, the software application determines a
speed of the automobile based on the GPS data. At block 832, the
software application records the automobile speed along with
applicable metadata (e.g., time, date, GPS location, etc.). The
process 800 may then proceed to block 812 and determine whether a
request for driving data was received, although such an operation
may occur concurrently with blocks 830 and 832.
[0100] At block 834, the software application determines a change
in a direction of the automobile has occurred based on a change of
measurements by the accelerometer. At block 836, the software
application determines whether the change in direction is greater
than or equal to a predetermined threshold_3 (block 836). When the
change in direction is greater than or equal to a predetermined
threshold_3 (yes at block 836), the software application records an
"excessive turning" event (block 838). The process 800 may then
proceed to block 812 and determine whether a request for driving
data was received, although such an operation may occur
concurrently with blocks 834, 836 and 838.
PROVISION OF NOTIFICATIONS METHODOLOGY
[0101] Referring now to FIG. 9, a flowchart illustrating an
exemplary process for providing notifications corresponding to a
child's driving is shown. Each block illustrated in FIG. 9
represents an operation performed in the method 900 of providing
notifications corresponding to a child's driving by a NCZ system.
Herein, the process starts and at block 902 the NCZ system
determines whether a request to review a child's driving location
has been received. When a request to review a child's driving
location has been received (yes at block 902), the NCZ system
requests and receive GPS data from the child's network device and
transmits the child's GPS data to the network device of the
requesting parent for display (block 904). When a request to review
a child's driving location has not been received (no at block 902),
the method 900 proceeds to block 906.
[0102] At block 906, the NCZ system determines if one or more
notification events have occurred, e.g., as discussed in FIG. 8. In
one embodiment, a notification event may be a triggering event that
has been predefined for a particular child by a parent. As
discussed above with respect to FIGS. 4A-4F, a parent, guardian,
employer, etc., may select one or more events, the occurrence of
which result in the generation of a notification to the parent,
guardian, employer, etc. Examples of events that may be
notification events include, but are not limited or restricted to,
a start driving event, a stop driving event, an excessive G-force
event, an excess speed event, a max speed event, a speed over
listed speed event, a start driving outside of a predefined time
range event, etc.
[0103] When one or more notification events have not occurred (no
at block 906), the process 900 continues to monitor for the
occurrence of a notification event. When one or more notification
events have occurred (yes at block 906), the NCZ system transmits
notification event information to the parent that configured the
child's account settings and/or one or more other parents,
guardians, employers, etc. (block 908).
[0104] In additional embodiments, data may be collected by a
software application installed on a monitored network device when
the monitored network device is within a restricted area and store
the collected data. Subsequently, the stored data may be
transmitted periodically, aperiodically or in response to certain
triggering events to the cloud server, a monitoring network device
and/or other entity (e.g., a federal or state governmental agency
such as a Department of Motor Vehicles (DMV) or an insurance
company). In one embodiment, the collected data may be provided to
the cloud server, a monitoring network device and/or other entity
in the form of daily, weekly, monthly, etc. reports detailing the
collected data. For example, a monitoring network device (e.g., a
parent's mobile device) may receive weekly reports detailing the
driving data of a child based on the data collected by the
monitored network device (e.g., the child's mobile device) while
the child's mobile device is in the restricted area of an
automobile. In a second example, a monitoring device may be an
insurance company and the monitored device may be a driver's mobile
device. In such an example, the insurance company may receive
weekly, monthly, yearly, etc. reports detailing the data collected
by the driver's mobile device with in a restricted area. The
insurance company may utilize the report to determine insurance
premiums. In yet another example, a monitoring device may be an
employer's network device and a monitored device may be an
employee's mobile device. In such an example, the employer may
receive daily, weekly, monthly, etc. reports detailing the data
collected by the employee's mobile device while in a restricted
area of a company-issued automobile. In an example in which the DMV
receives a driver's collected data, the DMV may automate renewal of
a license, revocation of a license and/or require the driver to
take a driving course or driving exam based on the collected data.
Furthermore, the generation of alerts, as discussed above, may also
apply to any possible relationship (e.g., parent-child,
employer-employee, entity-driver, etc.)
[0105] Although the disclosure focuses on the embodiment in which
the NCZ system is implemented using an automobile, the disclosure
should not be so limited. Instead, the NCZ system may be utilized
in any space, for example, an area within an office building, an
area within a library, on public transportation systems (e.g.,
train, taxi or plane), an area in a home, an area in an elementary
school, high school, university, etc., or the like.
GENERAL ARCHITECTURE--POLICY ENFORCEMENT SYSTEM
[0106] Referring to FIG. 10A, an exemplary illustration of a
deployment of a policy enforcement system in connection with a
first vehicle is shown. The policy enforcement system 1000 includes
a policy enforcement server system 1002, a network device sensor
1004 (also referred to herein as a "wireless transceiver") 1004 and
an application 1008. As illustrated, the policy enforcement system
1000 is deployed in connection with the vehicle 1006 wherein the
wireless transceiver 1004 and a network device 1010 having the
application 1008 installed thereon are located within the vehicle
1006. In one embodiment as illustrated, the policy enforcement
server system 1002 is in communication with the application 1008
through the network device 1010. However, in other embodiments,
each of the components of the policy enforcement system 1000 are in
communication and operate collectively to enforce one or more sets
of policies.
[0107] In particular, at a high-level, the wireless transceiver
1004, the application 1008 and the network device 1010 perform
operations to determine whether the vehicle 1006 is moving and
whether a set of policies is to be implemented with respect to the
network device 1010 based on any detected movement of the vehicle
1006. In various embodiments, the application 1008 may obtain
sensory data from components of the network device 1010 in order to
determine movement, e.g., from an accelerometer and/or from a GPS
unit. Alternatively, or in addition to, the wireless transceiver
1004 may capture movement data via an accelerometer and/or
vibration data via a vibration sensor. As will be discussed below,
the movement/vibration data may be provided to the application 1008
and be utilized by the application 1008 in determining whether
implementation of the set of policies is to be continued. As used
herein, sensory data refers to any data associated with data
obtained through one or more sensors (e.g., accelerometer, GPS
unit, gyroscope, vibration sensor, etc.).
[0108] Referring now to FIG. 10B, a second exemplary illustration
of the policy enforcement system of FIG. 10A interacting with a
network device of a second vehicle is shown. FIG. 10B provides a
similar illustration as FIG. 10A in which the policy enforcement
system 1000 is deployed in connection with the vehicle 1006.
However, FIG. 10B further illustrates that the policy enforcement
system 1000 may interact with network devices located in other
vehicles (e.g., the network device 1012 located within the vehicle
1014). As discussed above, each network device may transmit a
signal at regular time intervals including certain information,
such as a Universally Unique Identifier (UUID), that enables logic
included within the wireless transceiver ("wireless transceiver
logic") to identify each network device. In some embodiments, the
wireless transceiver logic may be programmed into an integrated
circuit, as seen in FIG. 11. As will be discussed below with
respect to FIGS. 13-14B, the wireless transceiver may form one or
more lists identifying detected network devices in order to assess
the content of the list(s) against a set of policies and/or
driver/vehicle guidelines (discussed below), and, when applicable,
transmit an alert to an administrator. Although not illustrated, an
instance of the application 1008 may be installed on the network
device 1012.
[0109] Referring to FIG. 10C, a third exemplary illustration of the
policy enforcement system of FIG. 10A wherein two network devices
are located within the first vehicle is shown. FIG. 10C provides a
similar illustration as FIG. 10A in which the policy enforcement
system 1000 is deployed in connection with the vehicle 1006.
However, FIG. 10C further illustrates that the policy enforcement
system 1000 may interact with multiple network devices located in a
single vehicle (e.g., the network devices 1010, 1018 located within
the vehicle 1006). In various embodiments, a first set of policies
may be applied by each application to their corresponding network
devices, different sets of policies may be applied to each network
device, or a first set of policies may be applied to only one of
the multiple devices. As will be discussed in detail below, each
instance of the NCZ application (e.g., application 1008 and 1016)
will attempt to connect to and communicate with wireless
transceiver 1004. Based on information received from the wireless
transceiver 1004, each instance of the NCZ application will
determine whether its corresponding network device is closest to
the wireless transceiver 1004, and when its corresponding network
device is closest to the wireless transceiver 1004, the application
will apply a set of policies to restrict and/or limit the
functionality of its network device. In other embodiments, each
instance of the NCZ application will determine whether its
corresponding network device is within a predetermined distance to
the wireless transceiver 1004 (e.g., based on the corresponding
RSSI value), and when its corresponding network device is within
the predetermined distance to the wireless transceiver 1004, the
application will apply a set of policies to restrict and/or limit
the functionality of its network device.
[0110] In some embodiments, a set of policies may only be applied
to the network device determined to be closest in proximity to the
wireless transceiver 1004, i.e., with the expectation that such
network device is being handled by the driver (i.e., as is seen in
FIGS. 10A-10C, the wireless transceiver 1004 is coupled to the
interior of the vehicle on the side of the windshield opposite a
front passenger seat). In alternative embodiments, a first set of
policies may be applied to all network devices determined with be
located within the vehicle 1006 in order to remove all
distractions. Predetermined rules or configuration settings may be
used to determine which of the above applies. For example, a first
rule set (e.g., driver/vehicle guidelines) may be used by the
policy enforcement system 1000 when deployed in connection with a
truck or van within a commercial fleet (e.g., apply a set of
policies to all network devices having an instance of NCZ
application installed thereon). As an additional example, a second
rule set may be used by the policy enforcement system 1000 when
deployed in connection with an individual's personal vehicle (e.g.,
apply a set of policies only to the network device determined to be
located closest to the wireless transceiver, i.e., the network
device of the driver).
[0111] Referring to FIG. 11, an exemplary block diagram of a
wireless transceiver of the policy enforcement system of FIG. 10A
is shown. The wireless transceiver 1004 (as referenced above, also
referred to as a "network device sensor") is shown as having the
shape of an ellipse. The wireless transceiver 1004 may have a
height, e.g., constant in some embodiments but may vary in others,
in order to accommodate components housed within. It should be
understood that the wireless transceiver 1004 may take many
different shapes and the disclosure is not intended to be limited
to the wireless transceiver 1004 having the shape of an ellipse.
Examples of other shapes include, but are not limited or restricted
to, a triangle, a rectangle, a rhombus or a trapezoid. Further, the
wireless transceiver 1004 may be, for example, predominantly
spherical and include a flat edge configured for attachment to a
surface, such as an interior panel of a vehicle. In some
embodiments, the wireless transceiver 1004 may include a housing,
which is made entirely or partially of a hardened material (e.g.,
hardened plastic, metal, glass, composite or any combination
thereof) that protects circuitry and other components within the
housing, namely an integrated circuit 1100, an optional vibration
sensor 1102, an accelerometer 1104, a communications interface 1106
and a battery 1108. The communication interface 1106, under control
by a communication interface logic (not shown), enables
communications with external network devices, such as network
devices and/or a cloud server.
[0112] According to one embodiment of the disclosure, the
communication interface 1106 may be implemented with one or more
radio units for supporting wireless communications with other
electronic devices. Additionally, or in the alternative, the
communication interface 1106 may be implemented as a physical
interface including one or more ports for wired connectors. The
communication interface logic may perform operations to cause the
receipt and transmission of electronic data via the communication
interface 1106.
[0113] The integrated circuit 1100 may be configured to perform
operations including receiving and parsing signals from network
devices (e.g., to identify each network device and determine the
RSSI of each signal) and performing scans for network devices to
determine network devices detected during multiple scans. The
integrated circuit 1100 may also perform operations including
comparing the detected network devices against guideline threshold
and transmitting an alert to the policy enforcement server system
1002 of FIGS. 10A-10C. The integrated circuit may also perform
operations that cause the communication interface 1106 to transmit
sensory data to the application 1008 and/or the policy enforcement
server system 1002 (in embodiments in which the policy enforcement
server system 1002 is in communication with wireless transceiver
1004). Additional operations performed by the integrated circuit
1100 are discussed throughout, wherein the integrated circuit 1100
may be referred to as "wireless transceiver logic" in some
embodiments.
[0114] In embodiments in which the wireless transceiver 1004
includes the vibration sensor 1102, the vibration sensor 1102 is
configured to perform operations including detecting and recording
vibration. As will be discussed below, the vibration sensor 1102
may detect vibration of a vehicle and the wireless transceiver 1004
may transmit a signal to a network device, e.g., the network device
1010, to be parsed and analyzed by the application 1008. The
application 1008 may then utilize the vibration data in determining
whether to implement, or withdraw implementation of, a set of
policies with respect to the network device. The accelerometer 1104
performs operations including detecting and recording acceleration
(e.g., movement). As will be discussed below, the accelerometer
1104 may detect acceleration of a vehicle and the wireless
transceiver 1004 may transmit a signal to a network device, e.g.,
the network device 1010, to be parsed and analyzed by the
application 1008. The application 1008 may then utilize the
acceleration data ("movement data") in determining whether to
implement, or withdraw implementation of, a set of policies with
respect to the network device.
[0115] In embodiments in which the vibration sensor 1102 is not
included in the wireless transceiver 1004, the wireless transceiver
1004 may obtain sensory data from the accelerometer 1104 and
perform operations, via logic, that simulate the functionality of a
vibration sensor. This functionality is simulated via one of
several available operating modes of the accelerometer 1104 by
utilizing a method that recognizes both positive and negative
acceleration, and generates an interrupt when the value is greater
than a predetermined threshold. The value of acceleration
represents movement in any of the X, Y, or Z directions, and/or any
combination thereof. Each interrupt lasts for a calculated length
of time using the formula: 1/ODR, with Output Data Rate (ODR)
representing a predetermined frequency, the value of which is
configured and stored in control registers.
[0116] In some embodiments, the movement/vibration data may be a
byte within a signal transmitted from the wireless transceiver to
the network device at specified time intervals (e.g., every 10, 15
or 30 seconds). In some embodiments, the byte comprises a series of
bits, with each bit indicating a movement/vibration status for each
time interval. As one illustrative example, the signal may include
the following series of bits as shown and described in the
following Table 1.
TABLE-US-00001 TABLE 1 Interval Bit series Status of last interval
time.sub.0 0000 0001 movement/vibration detected time.sub.1 0000
0011 movement/vibration detected time.sub.2 0000 0111
movement/vibration detected time.sub.3 0000 1110 no detection
time.sub.4 0001 1101 movement/vibration detected time.sub.5 0011
1011 movement/vibration detected time.sub.6 0111 0111
movement/vibration detected time.sub.7 1110 1111 movement/vibration
detected
[0117] Each interval may comprise 10 seconds and the delay time for
withdrawing implementation of the set of policies may be 80
seconds. Therefore, once the application detects movement and
implements the set of policies, the application will monitor the
bit series received in the signal from the wireless transceiver and
continue implementation of the policy until either (1) the bit
series reads "0000 0000" (i.e., no movement for 80 seconds), or (2)
the application no longer detects the presence of the wireless
transceiver. In one embodiment, the status of "no detection" at
time.sub.3 may be a result of the vehicle stopping at a traffic
sign.
[0118] As discussed herein, withdrawal of the implementation of the
set of policies refers to the application of the policy enforcement
system returning the network device to its unrestricted or
unlimited operating state (e.g., full access to all applications is
provided, or at least the same access is provided that was
available prior to implementation of the set of policies).
[0119] In some embodiments, the battery 1108 may be a single use
battery such that upon depletion of its energy store, the wireless
transceiver 1004 may be disposed of. In alternative embodiments,
the battery 1108 may be one of the following rechargeable battery
types, nickel cadmium (NiCd), Nickel-Metal Hydride (NiMH), Lithium
Ion (Li-ion), Lithium Ion Polymer (Li-ion polymer), etc.
GENERAL METHODOLOGIES--POLICY ENFORCEMENT SYSTEM
[0120] Referring to FIG. 12, a flowchart illustrating an exemplary
process of applying and monitoring a set of policies by the policy
enforcement system of FIG. 10A is shown. Each block illustrated in
FIG. 12 represents an operation performed in the method 1200 of
applying a set of policies to a network device and monitoring the
network device according to at least a subset of the set of
policies. In some embodiments, a set of policies may include
multiple subsets (i.e., less than the whole). In some such
embodiments, the multiple subsets may include a first subset that
is directed to restricting the functionality of the network device
and a second subset that is directed to monitoring instructions and
applicable thresholds. For example, implementation of the first
subset of policies may result in removal of icons from the display
screen of a mobile device (see FIGS. 18A-18B) in order to restrict
functionality of the mobile device. Additionally, implementation of
the second subset of policies may cause logic associated with the
policy enforcement system (i.e., an application installed on a
network device) to monitor certain aspects (e.g., motion via a
gyroscope and/or accelerometer).
[0121] Referring to the diagram of FIG. 12, in one embodiment, it
is assumed that prior to the beginning of the method 1200, the
application of the policy enforcement system has been installed on
a network device (e.g., a mobile device) and a network device
sensor (e.g., a wireless transceiver) has been installed or placed
within a vehicle. Thus, the method 1200 commences when the
application processing on the network device detects (i) movement
above a predetermined speed threshold, and (ii) the presence of the
wireless transceiver (block 1202). In some embodiments, the
application obtains sensory data from an accelerometer of the
network device in order to determine movement (i.e., acceleration)
or from a vibration sensor. Alternatively, or in addition to, the
application may obtain sensory data from a GPS unit of the network
device in order to determine movement. The presence of the wireless
transceiver may be detected based on a signal transmitted from the
wireless transceiver in response to a beacon signal transmitted by
the network device. The application and wireless transceiver logic
then engage in communication in order to determine communication
methods and protocol (e.g., a frequency on which to communicate as
discussed below). In some embodiments the sensory data obtained
from the network device sensor is coupled with the sensory data
obtained from the network device to perform a "handshake" that
confirms the presence of a wireless transceiver, which prompts the
application to implement a set of policies to the network device to
restrict and/or limit functionality of the network device. As used
herein, the term "handshake" refers to the exchange of information
between two devices in order to authenticate one or both of the
devices.
[0122] In response to detecting (i) movement above a predetermined
speed threshold, and (ii) the presence of the wireless transceiver,
the application determines whether the network device on which the
application is processing is the closest network device to the
wireless transceiver (1204). FIG. 12 illustrates the flow of method
1200 when the application determines the network device on which
the application is processing is the closest network device to the
wireless transceiver. Additional details regarding the
determination of closest network device to the wireless transceiver
will be discussed below, for example, with respect to FIGS.
14A-14C.
[0123] Responsive to determining the network device on which the
application is processing is the closest network device to the
wireless transceiver, the application implements a set of policies,
wherein at least a first subset of the policies may restrict or
limit functionality of the network device (block 1206). As
referenced above, the application may perform operations that
result in limiting or restricting the functionality of the network
device, which may include removing icons from a display screen of
the network device as indicated by the first subset of policies.
For example, as seen below in FIGS. 18A-18B, icons associated with
certain applications running on the network device may be removed
to prevent use of the application (e.g., mail, messaging, camera,
etc.). Other methods of restricting use of the network device have
also been contemplated with examples including, but not limited or
restricted to, shading out the icons, shrinking the icons (e.g.,
altering icons appearance and preventing the opening of the
application), disabling and/or delaying notifications, disabling
and/or delaying receipt or transmission of data, etc. Other
examples of restricting or limiting use of the network device are
discussed above and equally applicable in this embodiment.
[0124] The method 1200 then continues with additional operations
that may be performed in parallel or in a concurrent manner (i.e.,
at least partially overlapping in time); however, there is no such
requirement. In further response to detecting (i) movement above a
predetermined speed threshold, and (ii) the presence of the
wireless transceiver, the application causes the transmission of a
signal to the wireless transceiver instructing the wireless
transceiver to scan for other network devices (block 1208). The
scan for other network devices by the wireless transceiver may be
done to determine the number of network devices within the vehicle
(or within a particular physical region surrounding the wireless
transceiver in other non-vehicle deployments). For instance,
certain vehicle/driver guidelines may set forth an allowed number
of network devices within a vehicle, potentially at certain times
of the day, wherein an alert may be transmitted when the
vehicle/driver guideline is violated. In other instances, one or
more of the components of the policy enforcement system may trigger
certain policies or alerts based on what network devices are
detected, optionally depending on the time. For example when the
policy enforcement system is deployed within a set of corporate
vehicles, as each network device's Universally Unique Identifier
(UUID) is received by the wireless transceiver, wireless
transceiver logic may determine whether any network devices
detected are associated with employees, and whether the presence of
multiple employees (or otherwise other network devices) is
permitted under the applicable vehicle/driver guidelines and/or set
of policies to be implemented.
[0125] Additionally, in further response to detecting (i) movement
above a predetermined speed threshold, and (ii) the presence of the
wireless transceiver, the application implements a first subset of
policies to the network device thereby restricting or limiting
functionality of the network device, as discussed above (block
1210). Additionally, the application may monitor sensory data and
apply a second subset of policies to the sensory data.
[0126] Following the implementation of the second subset of
policies and responsive to determining that monitored sensory data
violates one or more policies of the second subset of policies, the
application causes performance of operations resulting in the
transmission of an alert or signal to administrator (block 1212).
For instance, the application may cause transmission of the alert
or signal to the policy enforcement server system 1002 of FIG. 10A,
which may in turn transmit an alert or signal to an administrator.
Additionally, the alert or signal may be reviewed as part of a
dashboard display, such as the dashboard display 1900 of FIG.
19.
[0127] Referring now to FIG. 13, an operational flow diagram
illustrating operations performed in the process of FIG. 12 is
shown. Specifically, the operational flow diagram includes three
columns, one representing each main component of the policy
enforcement system: the wireless transceiver logic (column 1302);
the application (column 1304); and the policy enforcement server
system (column 1306). Each bullet point within a column represents
an operation (or operations) performed by the component
corresponding to the column. Further, each arrow indicates the
transmission of data from a first component to a second component.
In some embodiments, the assumptions discussed above with respect
to FIG. 12 are equally applicable with respect to FIG. 13.
[0128] The operational flow diagram illustrates one embodiment of a
process of applying and monitoring a set of policies by the policy
enforcement system of FIG. 10A may begin when the application 1008
detects movement above a predetermined threshold. Responsive to the
detection of movement above the predetermined threshold, the
application 1008 determines whether the network device on which it
is processing is the closest network device to the wireless
transceiver 1004.
[0129] When the application 1008 determines whether the network
device on which it is processing is the closest network device to
the wireless transceiver 1004, the application 1008 may then
transmit a query to the policy enforcement server system 1002 for
the latest policy configuration (i.e., set of policies to
implement). As an alternative, the application 1008 may retrieve
and utilize the latest received policy configuration from a policy
configuration data store, not shown, that is either stored locally
on a network device on which the application 1008 is operating,
i.e., the network device 1010, or is otherwise accessible to the
application 1008.
[0130] Following receipt of the request from the application 1008,
the policy enforcement server system 1002 transmits the latest
policy configuration to the application 1008. In some embodiments,
the policy enforcement server system 1002 parses the request to
identify the network device 1010 (and optionally the corresponding
user and vehicle, if such data is included in a data store
accessible by the policy enforcement server system 1002. The policy
enforcement server system 1002 may then generate a message
including the latest policy configuration for transmission.
[0131] Following receipt of the message from the policy enforcement
server system 1002, the application 1008, performs several
operations which may be in any order. The following operations may
also be performed in parallel and include (i) implementing the
latest policy configurations with respect to the network device,
and (ii) transmitting a signal to the wireless transceiver 1004 to
be parsed by wireless transceiver logic operating thereon
instructing the wireless transceiver logic to perform a scan for
additional network devices. Additionally, following the
implementation of the latest policy configuration, the application
1008 monitors use of the network device according to the latest
policy configuration and monitors speed (e.g., of the vehicle
1006). Responsive to determining that a violation of the latest
policy configuration has occurred, the application 1008 may
transmit an alert to the policy enforcement server system 1002.
[0132] Referring to the wireless transceiver 1004's receipt of the
instructions to scan for additional network devices, the wireless
transceiver logic performs a first scan for all network devices
(e.g., receives beacons as discussed below) and records identifiers
of all detected network devices. The wireless transceiver logic
then waits a predetermined time before performing a second scan and
recording identifiers of all detected network devices. Following
completion of the first and second scans, the records of detected
network devices (i.e., a first list and a second list), are
transmitted to the application 1008, which compares the first list
and the second list to determine network devices detected during
each scan (i.e., present on both lists). Responsive to the number
of network devices detected during both scans exceeding a policy
threshold, the application 1008 causes transmission of an alert to
the policy enforcement server system 1002. It should be noted that
the determination as to whether a detected number of network
devices by the wireless transceiver logic may be based on
driver/vehicle guidelines. It should be noted that in some
embodiments, the comparison of the lists may be performed by the
wireless transceiver logic. Additionally, the first list may be
transmitted to the application 1008 following the completion of the
first scan, there is no requirement that transmission of the first
list be performed after completion of the second scan.
[0133] Referring again to column 1306 and operations of the policy
enforcement server system 1002, upon receiving either an alert
indicating a policy violation from the application 1008 and/or an
alert indicating the number of detected network devices during both
scans of the wireless transceiver logic, the policy enforcement
server system 1002 may notify an administrator. Notice to the
administrator may be through a message such as a short message
service (SMS) message, a multimedia message service (MMS), email,
etc. Alternatively, or in addition, notice to the administrator may
be provided via a dashboard, such as the dashboard 1900 of FIG.
19.
[0134] Referring to FIGS. 14A-14C, a flowchart that illustrates an
exemplary process of applying and monitoring a set of policies
incorporating a first and second comparison process by the policy
enforcement system of FIG. 10A is shown. Each block illustrated in
FIGS. 14A-14C represents an operation performed in the method 1400
of applying a set of policies to a network device, while
incorporating a first and second comparison process, and monitoring
the network device according to at least a subset of the set of
policies. In some embodiments, the assumptions discussed above with
respect to FIG. 12 are equally applicable with respect to FIGS.
14A-14C. Referring now to FIG. 14A, the method 1400 commences when
the application running on the network device detects (i) movement
above a predetermined speed threshold, and (ii) the presence of the
wireless transceiver, as discussed above (block 1402). Response to
detecting movement above the speed threshold, the application
transmits a signal to activate logic of a wireless transceiver,
such as the wireless 1004 of FIG. 10A (block 1404). Following the
activation of the logic of the wireless transceiver, the
application attempts connect with the wireless transceiver (block
1406). The connection may refer to the application (i) causing the
transmission of an advertising packet that includes (1) a first
unique device identifier (UDID) ("UDID1") being a manufacturer
identifier that corresponds to the policy enforcement system 1000
(e.g., an identifier of an instance of the NCZ application stored
on the network device), and (2) a second MD ("UDID2") being an
identifier unique to the network device, and (ii) receipt of a
reply from the wireless transceiver acknowledging receipt of the
advertising packet. When the network device does not connect with
the wireless transceiver (e.g., no receipt of an acknowledgement
after waiting a predetermined time interval following transmitting
the advertising packet), the application determines whether the
number of attempts to connect have exceeded a predetermined
threshold (block 1408). When the connection attempts have not
exceeded the predetermined threshold, the method 1400 returns to
block 1404. When the connection attempts have exceeded the
predetermined threshold, the application causes an alert to be
transmitted to an administrator (block 1410) and the application
implements a set of policies on the network device to limit and/or
restrict the functionality of the network device (block 1412).
[0135] When the network device does connect with the wireless
transceiver (e.g., receipt of an acknowledgement after waiting a
predetermined time interval following transmitting the advertising
packet), the method 1400 continues with the wireless transceiver
performing a scan for network devices and filters a list of
detected devices based on UDID1 (block 1414). The operations of
block 1414 are directed to determining other network devices
proximately located to the wireless transceiver that have an
instance of the NCZ application processing thereon.
[0136] Following the scan performed by the wireless transceiver and
the filtering of a list of detected network devices, the
application receives the filtered list and determines whether the
network device on which the application is processing corresponds
to the greatest RSSI value included on the filtered list (block
1416). When the network device on which the application is
processing corresponds to the greatest RSSI value included on the
filtered list (yes at block 1418), the application implements a set
of policies on the network device to limit and/or restrict the
functionality of the network device (block 1420).
[0137] Further, the method 1400 continues with the application
transmitting a command to the wireless transceiver to perform scans
for all network devices (block 1422). The wireless transceiver
performs a scan for all network devices by receiving signals (e.g.,
via the Bluetooth.RTM. protocol or BLE signals) and records
information included in the signals in a first list (block 1424).
Note, the scan performed in the operations of block 1424 differs
from the scan associated with block 1414 in that the scan
associated with block 1424 is scanning for all network devices, not
merely for network devices processing an instance of the NCZ
application.
[0138] Referring now to FIG. 14B, following expiration of a
predetermined time period for scanning, logic of the wireless
transceiver parses the recorded information to remove duplicate
entries from the first list (block 1426). For example, a first
network device may transmit a signal every 100 microseconds and the
scanning time may be 15 seconds. In such an example, the wireless
transceiver need not maintain a list including every entry from the
first network device and instead only keep a single entry.
Following completion of the first scan and expiration of a
predetermined wait time, the wireless transceiver performs a second
scan by receiving signals and records information included in the
signals in a second list (block 1428). Following expiration of a
predetermined time period for scanning, the logic of the wireless
transceiver parses the recorded information to remove duplicate
entries from the second list (block 1430). The wireless transceiver
then transmits the first and second lists to the application (block
1432). Following receipt of the first and second lists, the
application determines network devices that are located proximate
to the wireless transceiver (e.g., within a predetermined distance,
such as within an interior of a vehicle in which the wireless
transceiver is placed) by comparing the first list with the second
list to determine network devices on both lists resulting in a
third list (block 1434). In some instances, the comparison may be
referred to as an "A-B compare," where the first list (A) is
compared with the second list (B); however, the ordering does not
make a difference in this implementation.
[0139] Response to the number of network devices included on the
third list exceeding a policy threshold, the application may
transmit an alert to an admin (e.g., via the policy enforcement
server system 1002) (block 1436). Additionally, the application may
cause the transmission of the third list to the policy enforcement
server system 1002 for recordation and storage (block 1438).
[0140] Referring back to FIG. 14A, when the network device on which
the application is processing does not correspond to the greatest
RSSI value included on the filtered list (no at block 1418), the
application stores a baseline list of UDID2s and corresponding RSSI
values (block 1440). Following storage of the baseline list of
UDID2s and corresponding RSSI values, the application monitors use
of the network device as well as movement (block 1442). Referring
now to FIG. 14C, after expiration of a predetermined wait time
(equal to or different than the wait time associated with block
1428), the application transmits a signal to activate logic of the
wireless transceiver (block 1444). Following the activation of the
logic of the wireless transceiver, the application attempts to
connect with the wireless transceiver (block 1406). Detail of the
connection is provided above with respect to block 1406. When the
network device does not connect with the wireless transceiver
(e.g., no receipt of an acknowledgement after waiting a
predetermined time interval following transmitting the advertising
packet), the application determines whether the number of attempts
to connect have exceeded a predetermined threshold (block 1448).
When the connection attempts have not exceeded the predetermined
threshold, the method 1400 returns to block 1444. When the
connection attempts have exceeded the predetermined threshold, the
application causes an alert to be transmitted to an administrator
(block 1450) and the application implements a set of policies on
the network device to limit and/or restrict the functionality of
the network device (block 1452).
[0141] When the network device does connect with the wireless
transceiver, the method 1400 continues with the wireless
transceiver performing a scan for network devices and filters a
list of detected devices based on UDID1 (block 1454). Following the
scan performed by the wireless transceiver and the filtering of a
list of detected network devices, the application receives the
filtered list and determines whether the RSSI value corresponding
to the network device on which the application is processing has
increased in comparison to the baseline RSSI value discussed in
block 1440 (block 1516). In some embodiments, the application may
determine whether a predetermined threshold of change has occurred.
For example, the increase in RSSI value may refer a percentage
(e.g., .gtoreq.15% increase) or an absolute value (e.g., .gtoreq.10
dB increase). Specifically, the increase may be an indication that
the network device has moved closer to the driver and is likely
meant for the driver to see or use (i.e., warranting implementation
of a set of policies to the network device). When the RSSI value
corresponding to network device on which the application is
processing has increased (yes at block 1458), the application
implements a set of policies on the network device to limit and/or
restrict the functionality of the network device (block 1420). When
the RSSI value corresponding to network device on which the
application is processing has not increased (no at block 1458), the
method continues by returning to block 1444.
[0142] Referring now to FIG. 15, a flowchart illustrating an
exemplary process of detecting a change in positioning of network
devices within a vehicle by the policy enforcement system of FIG.
10A is shown. Each block illustrated in FIG. 15 represents an
operation performed in the method 1500 of detecting a change in
positioning of network devices within a vehicle. The method 1500
commences when wireless transceiver logic operating within a policy
enforcement system detects two network devices within a particular
area (block 1502). For example, as stated in FIG. 15, the
particular area may be the interior of a vehicle; however, the
disclosure is not intended to be so limited.
[0143] Following the detection of multiple network devices within
the particular area, the wireless transceiver logic determines the
received signal strength indicator (RSSI) of each network device
(block 1504). For example, a first network device may have a
determined RSSI of -50 dB while a second network device has a
determined RSSI of -70 dB.
[0144] Based on driver or vehicle guidelines of the policy
enforcement system and the detected RSSI of each network device, a
set of policies is implemented to the network device having a
stronger RSSI (i.e., the first network device) thereby restricting
or limiting the functionality of the first network device (block
1506). In some embodiments, driver/vehicle guidelines represent
predetermined rules that are analyzed prior to and during the
deployment of a policy enforcement system. As its name indicates,
driver/vehicle guidelines may be established, for example, by an
administrator of a company (i.e., based on directions from a Board
of Directors, executives, etc.) for each employee, each vehicle,
particular days of the week, particular times of the day, etc., or
any combination thereof, and may differ according to the driver
and/or vehicle. Further, the driver/vehicle guidelines may be
utilized by the application or the wireless transceiver logic as
initialization rules in, for example, (i) determining a speed
threshold, (ii) determining an initial "driver's network device,"
(iii) determining whether to apply a set of policies to various
network devices detected in the vehicle, (iv) determining a wait
time for withdrawing implementation of a set of policies upon
detecting