U.S. patent application number 13/783863 was filed with the patent office on 2013-07-11 for secure exchange of digital content.
This patent application is currently assigned to JPAY, INC.. The applicant listed for this patent is JPay, Inc.. Invention is credited to Ryan Jacob SHAPIRO.
Application Number | 20130179949 13/783863 |
Document ID | / |
Family ID | 48744901 |
Filed Date | 2013-07-11 |
United States Patent
Application |
20130179949 |
Kind Code |
A1 |
SHAPIRO; Ryan Jacob |
July 11, 2013 |
SECURE EXCHANGE OF DIGITAL CONTENT
Abstract
The invention includes delivering and monitoring digital content
distributed to correctional facility inmates, giving supervisory
authorities the ability to screen the incoming digital content.
Digital content can include email, and stored and steamed video
content, and can be scanned for keywords by supervisory authorities
before delivery to an inmate. A computer kiosk can be used by
inmates to view and record digital video content. A portable player
is provided to inmates which can be used to play, and in some
embodiments record, digital content. The player is issued to a
particular inmate, and can only be used with respect to that
particular inmate's digital content. The kiosk, and in some
embodiments, the player, can be used to shop for items available at
a store, for example a commissary.
Inventors: |
SHAPIRO; Ryan Jacob; (Bay
Harbor Islands, FL) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
JPay, Inc.; |
Miami |
FL |
US |
|
|
Assignee: |
JPAY, INC.
Miami
FL
|
Family ID: |
48744901 |
Appl. No.: |
13/783863 |
Filed: |
March 4, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
12814201 |
Jun 11, 2010 |
|
|
|
13783863 |
|
|
|
|
11041431 |
Jan 21, 2005 |
|
|
|
12814201 |
|
|
|
|
60538933 |
Jan 22, 2004 |
|
|
|
Current U.S.
Class: |
726/4 |
Current CPC
Class: |
G06F 21/10 20130101;
H04L 63/08 20130101; G06Q 30/0603 20130101; G06Q 30/02 20130101;
H04L 51/12 20130101; G06Q 10/107 20130101; H04L 63/06 20130101;
H04L 63/102 20130101; H04L 63/30 20130101 |
Class at
Publication: |
726/4 |
International
Class: |
H04L 29/06 20060101
H04L029/06 |
Claims
1. A system for managing an exchange of digital content between
inmates in a correctional facility and non-inmates, comprising: at
least one computer server having a processor and connected to
software stored on non-transitory media, the server software
configure to-- obtain digital content from inmates or non-inmates,
store the digital content until a staffperson of the correctional
facility approves distribution of the digital content to an
intended recipient, and distribute the digital content to the
intended recipient if approved; and at least one inmate device
having a processor, a digital display, and controls, the inmate
device including software stored on non-transitory media, the
device software configured to-- read stored assignment data
pertaining to an inmate authorized to use the particular inmate
device executing the device software, connect to the at least one
computer server and transmit information pertaining to the inmate
authorized to use the particular inmate device executing the device
software, obtain approved digital content distributed by the server
software and intended for the particular inmate authorized to use
the particular inmate device connected to the at least one computer
server, and present the digital content.
2. The system of claim 1, the server software further configured to
analyze the digital content to create a result set of keywords in
the digital content.
3. The system of claim 2, the server software further configured to
report the result set to a staffperson of the correctional
facility.
4. The system of claim 1, wherein the digital content is video
content.
5. The system of claim 1, wherein the digital content is streaming
audio content, the digital audio content stored by the server
software for a delay period sufficient to enable correctional
facility staff to monitor and interrupt the stream if
non-authorized content is streamed.
6. The system of claim 1, wherein the digital content is streaming
video content, the digital video content stored by the server
software for a delay period sufficient to enable correctional
facility staff to monitor and interrupt the stream if
non-authorized content is streamed.
7. The system of claim 1, wherein the inmate device software is
further configured to: obtain information pertaining to commissary
items available for sale from the at least one server; and enable
an inmate to select and request items from the obtained
information, using the inmate device.
8. The system of claim 1, wherein the inmate device software is
further configured to: obtain information pertaining to digital
content available for downloading into the inmate device; enable an
inmate to select and request digital content for downloading; and
connect to the at least one server to obtain the digital
content.
9. The system of claim 1, wherein the inmate device software is
further configured to allocate credits assigned to the inmate to
pay a cost of obtaining the digital content.
10. The system of claim 1, wherein the inmate device is configured
to only carry out an exchange of digital content with at least one
of the at least one server.
11. The system of claim 1, wherein the inmate device is configured
to be unopenable by an inmate without using tools.
12. A system for managing an exchange of digital content between
inmates in a correctional facility and non-inmates, comprising: at
least one computer server having a processor and connected to
software stored on non-transitory media, the server software
configure to-- obtain digital video content from inmates or
non-inmates, delay distribution of at least a portion of the
digital video content until a staffperson of the correctional
facility approves transmission of the at least a portion of digital
video content to an intended recipient, and distribute the digital
video content to the intended recipient if approved; and at least
one inmate device having a processor, a digital display, and
controls, the inmate device including software stored on
non-transitory media, the device software configured to-- read
stored assignment data pertaining to an inmate authorized to use
the particular inmate device executing the device software, connect
to the at least one computer server and transmit information
pertaining to the inmate authorized to use the particular inmate
device executing the device software, obtain the distributed
digital video content distributed by the server software and
intended for the particular inmate authorized to use the particular
inmate device connected to the at least one computer server, and
present the video digital content.
13. The system of claim 12, the server software further configured
to analyze the video digital content to create a result set of
keywords in the digital content.
14. The system of claim 12, the server software further configured
to report the result set to a staffperson of the correctional
facility.
15. The system of claim 12, wherein the delay is sufficient to
enable correctional facility staff to monitor and interrupt the
video digital content if the digital video content contains
non-authorized content.
16. The system of claim 12, wherein the digital content is
streaming video content, the digital video content stored by the
server software for a delay period sufficient to enable
correctional facility staff to monitor and interrupt the stream if
non-authorized content is streamed.
17. The system of claim 12, wherein the inmate device software is
further configured to: display information pertaining to commissary
items available for sale from the at least one server; enable an
inmate to select and request items from the obtained information,
using the inmate device.
18. The system of claim 12, wherein the inmate device software is
further configured to: obtain visual information pertaining to
digital content available for downloading into the inmate device;
enable an inmate to view, select and request digital content for
downloading; connect to the at least one server to obtain the
digital content.
19. The system of claim 12, wherein the inmate device software is
further configured to allocate credits assigned to the inmate to
pay a cost of obtaining the digital content.
20. A method for managing an exchange of digital content between
inmates in a correctional facility and non-inmates, comprising:
using at least one computer server having a processor and connected
to software stored on non-transitory media, the server software
configure to-- obtain digital video content from inmates or
non-inmates, delay distribution of at least a portion of the
digital video content until a staffperson of the correctional
facility approves transmission of the at least a portion of digital
video content to an intended recipient, and distribute the digital
video content to the intended recipient if approved; and providing
to at least one inmate a device having a processor, a digital
display, and controls, the inmate device including software stored
on non-transitory media, the device software configured to-- read
stored assignment data pertaining to an inmate authorized to use
the particular inmate device executing the device software, connect
to the at least one computer server and transmit information
pertaining to the inmate authorized to use the particular inmate
device executing the device software, obtain the distributed
digital video content distributed by the server software and
intended for the particular inmate authorized to use the particular
inmate device connected to the at least one computer server, and
present the video digital content.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a Continuation in part of U.S.
application Ser. No. 12/814,201, filed Jun. 11, 2010, which is a
Continuation in part of U.S. application Ser. No. 11/041,431, filed
Jan. 21, 2005, now abandoned, which claimed the benefit of U.S.
Provisional Application No. 60/538,933, filed Jan. 22, 2004, the
contents of all of which are hereby incorporated by reference in
their entirety.
FIELD OF THE INVENTION
[0002] The present invention relates to the field of electronic
communications. Specifically, the present invention relates to the
delivery and access of electronic data by individuals in a
restrained environment, such as correctional facility.
BACKGROUND OF INVENTION
[0003] Correction system authorities have found that receiving and
distributing inmates' paper mail is a significant challenge. First,
correction authorities frequently move inmates between correction
facilities such as from a jail (where one is held prior to
conviction) to a prison (where one is held after conviction). These
movements, often on short notice, play havoc with conventional
inmate mail. Conventional letters and other forms of
correspondence, written on paper to be delivered to a physical
address, are often lost or left "chasing" the inmate for years.
This problem frustrates inmates, their families, attorneys and
correction authorities.
[0004] Second, correction authorities read inmate mail, a
difficult, time consuming and expensive task especially when the
mail is handwritten. Opening and reading inmate mail costs the
American corrections system over $100 million per year. Third,
correction authorities have no present way of storing and indexing
inmate paper mail for later retrieval and analysis. Fourth,
correction authorities inspect inmate mail for drugs or other
forbidden substances, a difficult, time consuming and expensive
task because some inmates may have clever cohorts outside of
prison. Furthermore, drugs that remain undetected impose a large
but unquantifiable cost on the incarceration system due to their
deleterious impact on medical costs and violence. Fifth, as of
December 2002, the United States federal, state and local
authorities, most of whom are in budget deficit, incarcerated over
two million people at a cost of more than $40 billion per year.
[0005] These challenges are not limited to the delivery of letters.
For example, correctional authorities spend more time inspecting
packages with gifts to be delivered to inmates than they spend on
inspecting letters.
SUMMARY OF THE INVENTION
[0006] In accordance with an embodiment of the disclosure, a system
for managing an exchange of digital content between inmates in a
correctional facility and non-inmates, comprises at least one
computer server having a processor and connected to software stored
on non-transitory media, the server software configure to obtain
digital content from inmates or non-inmates, store the digital
content until a staffperson of the correctional facility approves
distribution of the digital content to an intended recipient, and
distribute the digital content to the intended recipient if
approved; and at least one inmate device having a processor, a
digital display, and controls, the inmate device including software
stored on non-transitory media, the device software configured to
read stored assignment data pertaining to an inmate authorized to
use the particular inmate device executing the device software,
connect to the at least one computer server and transmit
information pertaining to the inmate authorized to use the
particular inmate device executing the device software, obtain
approved digital content distributed by the server software and
intended for the particular inmate authorized to use the particular
inmate device connected to the at least one computer server, and
present the digital content.
[0007] In various embodiments thereof, the server software is
further configured to analyze the digital content to create a
result set of keywords in the digital content; report the result
set to a staffperson of the correctional facility; the digital
content is video content; the digital content is streaming audio
content, the digital audio content stored by the server software
for a delay period sufficient to enable correctional facility staff
to monitor and interrupt the stream if non-authorized content is
streamed; the digital content is streaming video content, the
digital video content stored by the server software for a delay
period sufficient to enable correctional facility staff to monitor
and interrupt the stream if non-authorized content is streamed.
[0008] In another embodiment thereof, the inmate device software is
further configured to: obtain information pertaining to commissary
items available for sale from the at least one server; and enable
an inmate to select and request items from the obtained
information, using the inmate device.
[0009] In a yet further embodiment thereof, the inmate device
software is further configured to: obtain information pertaining to
digital content available for downloading into the inmate device;
enable an inmate to select and request digital content for
downloading; and connect to the at least one server to obtain the
digital content.
[0010] In other variations thereof, the inmate device software is
further configured to allocate credits assigned to the inmate to
pay a cost of obtaining the digital content; the inmate device is
configured to only carry out an exchange of digital content with at
least one of the at least one server; and the inmate device is
configured to be unopenable by an inmate without using tools.
[0011] In another embodiment of the disclosure, a system for
managing an exchange of digital content between inmates in a
correctional facility and non-inmates, comprises at least one
computer server having a processor and connected to software stored
on non-transitory media, the server software configure to obtain
digital video content from inmates or non-inmates, delay
distribution of at least a portion of the digital video content
until a staffperson of the correctional facility approves
transmission of the at least a portion of digital video content to
an intended recipient, and distribute the digital video content to
the intended recipient if approved; and at least one inmate device
having a processor, a digital display, and controls, the inmate
device including software stored on non-transitory media, the
device software configured to read stored assignment data
pertaining to an inmate authorized to use the particular inmate
device executing the device software, connect to the at least one
computer server and transmit information pertaining to the inmate
authorized to use the particular inmate device executing the device
software, obtain the distributed digital video content distributed
by the server software and intended for the particular inmate
authorized to use the particular inmate device connected to the at
least one computer server, and present the video digital
content.
[0012] In various embodiments thereof, the server software is
further configured to analyze the video digital content to create a
result set of keywords in the digital content; the server software
is further configured to report the result set to a staffperson of
the correctional facility; the delay is sufficient to enable
correctional facility staff to monitor and interrupt the video
digital content if the digital video content contains
non-authorized content; the digital content is streaming video
content, the digital video content stored by the server software
for a delay period sufficient to enable correctional facility staff
to monitor and interrupt the stream if non-authorized content is
streamed.
[0013] In an embodiment thereof, the inmate device software is
further configured to: display information pertaining to commissary
items available for sale from the at least one server; and enable
an inmate to select and request items from the obtained
information, using the inmate device.
[0014] In another embodiment thereof, the inmate device software is
further configured to: obtain visual information pertaining to
digital content available for downloading into the inmate device;
enable an inmate to view, select and request digital content for
downloading; connect to the at least one server to obtain the
digital content.
[0015] In a yet further embodiment, the inmate device software is
further configured to allocate credits assigned to the inmate to
pay a cost of obtaining the digital content.
[0016] In a further embodiment of the disclosure, a method for
managing an exchange of digital content between inmates in a
correctional facility and non-inmates, comprises using at least one
computer server having a processor and connected to software stored
on non-transitory media, the server software configure to obtain
digital video content from inmates or non-inmates, delay
distribution of at least a portion of the digital video content
until a staffperson of the correctional facility approves
transmission of the at least a portion of digital video content to
an intended recipient, and distribute the digital video content to
the intended recipient if approved; and providing to at least one
inmate a device having a processor, a digital display, and
controls, the inmate device including software stored on
non-transitory media, the device software configured to read stored
assignment data pertaining to an inmate authorized to use the
particular inmate device executing the device software, connect to
the at least one computer server and transmit information
pertaining to the inmate authorized to use the particular inmate
device executing the device software, obtain the distributed
digital video content distributed by the server software and
intended for the particular inmate authorized to use the particular
inmate device connected to the at least one computer server, and
present the video digital content.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The accompanying figures, where like reference numerals
refer to identical or functionally similar elements throughout the
separate views, and which together with the detailed description
below are incorporated in and form part of the specification, serve
to further illustrate various embodiments and to explain various
principles and advantages all in accordance with the present
disclosure, in which:
[0018] FIG. 1 illustrates an exemplary computing environment that
may be used to implement a server in accordance with an embodiment
of the present invention;
[0019] FIG. 2 illustrates a system in for routing electronic
correspondence accordance with one embodiment of the present
invention;
[0020] FIG. 3 illustrates a communications environment which may be
used to deliver digital content in accordance with one embodiment
of the present invention;
[0021] FIG. 4 illustrates a client and server architecture that may
be used to implement a digital content store system in accordance
with one embodiment of the present invention;
[0022] FIG. 5 illustrates a functional block diagram of a digital
music player;
[0023] FIG. 6 illustrates a system for delivery of digital content
in accordance with one embodiment of the present invention;
[0024] FIG. 7 illustrates the processing of a purchase order for a
content player using a kiosk application in accordance with one
embodiment of the present invention;
[0025] FIG. 8 illustrates a process for ordering and browsing
content through a kiosk application in accordance with one
embodiment of the present invention;
[0026] FIG. 9 illustrates content download processes in accordance
with one embodiment of the present invention;
[0027] FIGS. 10-16 illustrate screenshots displayed by a kiosk
terminal to allow a user to browse and purchase content and a
content player in accordance with one embodiment of the present
invention;
[0028] FIG. 17 illustrates a system for delivery of digital content
in accordance with another embodiment of the present invention;
[0029] FIG. 18 illustrates a portable player in accordance with the
disclosure, operative to securely present digital content;
[0030] FIG. 19 illustrates a user kiosk in accordance with the
disclosure, operative to securely present and create digital
content;
[0031] FIG. 20 illustrates an email application of the disclosure,
executable upon an embodiment of a player or kiosk of the
disclosure;
[0032] FIG. 21 illustrates a video stream between a web app and a
local app of the disclosure;
[0033] FIG. 22 depicts three display images of a local executable
application of the disclosure, illustrating an offer to purchase a
player, or music;
[0034] FIG. 23 illustrates three display images of a local
executable application of the disclosure, illustrating purchase of
supplies from a local commissary;
[0035] FIG. 24 illustrates two display images of a local executable
application, and a single display image of an administrative
application of the disclosure, illustrating support and grievance
reporting and administration;
[0036] FIG. 25 illustrates three display images of a banking system
application of the disclosure;
[0037] FIG. 26 illustrates a screen image of music playing software
of the disclosure;
[0038] FIG. 27 depicts applications of the disclosure in use
between an outside user using a cellphone, and a kiosk and a player
of the disclosure;
[0039] FIG. 28 depicts a display generated by an admin app of the
disclosure, for administrating email;
[0040] FIG. 29 depicts a screen image generated by the admin app of
FIG. 28, for approval of digital content; and
[0041] FIG. 30 depicts a screen image generated by the admin app of
FIG. 28, illustrating a disposition of digital content.
DETAILED DESCRIPTION OF THE INVENTION
[0042] As required, detailed embodiments are disclosed herein;
however, it is to be understood that the disclosed embodiments are
merely examples and that the systems and methods described below
can be embodied in various forms. Therefore, specific structural
and functional details disclosed herein are not to be interpreted
as limiting, but merely as a basis for the claims and as a
representative basis for teaching one skilled in the art to
variously employ the present subject matter in virtually any
appropriately detailed structure and function. Further, the terms
and phrases used herein are not intended to be limiting, but
rather, to provide an understandable description of the
concepts.
[0043] The terms "a" or "an", as used herein, are defined as one or
more than one. The term plurality, as used herein, is defined as
two or more than two. The term another, as used herein, is defined
as at least a second or more. The terms "including" and "having,"
as used herein, are defined as comprising (i.e., open language).
The term "coupled," as used herein, is defined as "connected,"
although not necessarily directly, and not necessarily
mechanically.
[0044] In accordance with the disclosure, a system and method for
reducing inmate mail costs, eliminating the problems associated
with an inmate's conventional physical address, improving delivery
speed, eliminating drug and forbidden substance smuggling, and
allowing better recordkeeping of incoming packages is provided.
[0045] This description and the annexed drawings set forth in
detail certain illustrative aspects of the invention. These aspects
are indicative, however, of but a few of the various ways in which
the principles of the disclosure may be employed, and the present
disclosure is intended to include all such aspects and their
equivalents. Other advantages and novel features of the invention
will become apparent from the following detailed description of the
invention when considered in conjunction with the drawings.
[0046] In accordance with one aspect of the disclosure, one or more
databases, residing in one or more servers, may be used as
repositories of electronic data to be delivered to individuals, for
example inmates, in a constrained environment and/or
restricted-access location, such as a jail, prison, or other
correctional facility. One aspect of the invention involves
delivering and monitoring electronic letters to correctional
facility inmates while giving supervisory authorities the ability
to screen the incoming mail. This may be achieved by providing a
database having an entry for each inmate and having a plurality of
fields, wherein the fields include inmate name, correction system
identification code, inmate identification code, correction system
facility code, wherein the facility code maps to a specific
corrections facility; and by scanning an original letter to produce
an electronic letter and storing each electronic letter sent to a
specific inmate in a relational database management system (RDMS)
table, wherein the RDMS table includes fields for inmate name,
inmate identification number and lists of corrections
facilities.
[0047] In another aspect of the disclosure, a computer-operated
kiosk, such as a walk-up or other workstation for multiperson use,
may be used by individuals (e.g., inmates) in a restrained
environment/restricted-access location (e.g., a prison) to browse
through a catalog of available digital media, such as music, to
compose outgoing mail, to conduct video visitation, or to create
prerecorded videograms, all as described further herein. They may
purchase the digital media, for example, with credits earned based
on work performed, or bought through some other means, for example
with money deposited by family members of the inmate. The kiosk may
include means for limiting access to the operating system or other
modules in the kiosk computer so that inmates are blocked from
accessing other machines with sensitive information that may be
connected to the kiosk computer. After the user has browsed the
catalog of digital content or media, selected the desired content
(e.g., songs) and paid for the same, the purchased content may be
downloaded to a digital content player device. The digital content
player device may also be used to display digital media of any
type, including digital correspondence, to inmates.
[0048] The present disclosure may be implemented in one or more
servers, one or more client devices, including computer terminals
or portable client devices, or a combination thereof. The data to
be accessed by end users in a restrained environment may be stored
in one or more databases.
[0049] An exemplary computing device for implementing a server is
illustrated in FIG. 1. For example, the computing environment
illustrated in FIG. 1 may be used to implement a database server,
an email server, a DNS server, a POP/IMAP server, a digital
fulfillment server, a media server, a local server, a global
server, etc.
[0050] FIG. 1 illustrates an example of a suitable computing system
environment 200 on which features of the disclosure may be
implemented. The computing system environment 200 is only one
example of a suitable computing environment and is not intended to
suggest any limitation as to the scope of use or functionality of
the disclosure. Neither should the computing environment 200 be
interpreted as having any requirement relating to any one or
combination of components illustrated in the exemplary operating
environment 200.
[0051] The disclosure is operational with numerous other computing
system environments or configurations. Examples of well known
computing systems, environments, and/or configurations that may be
suitable for use with the disclosure include, but are not limited
to, personal computers, server computers, hand-held or laptop
devices, smartphones, multiprocessor systems, microprocessor-based
systems, set top boxes, programmable consumer electronics, network
PCs, minicomputers, mainframe computers, distributed computing
environments that include any of the above systems or devices, and
the like.
[0052] The disclosure may be described in the general context of
computer-executable instructions, such as program modules, being
executed by one or more computing devices. Generally, program
modules include routines, programs, objects, components, data
structures, etc., that perform particular tasks or implement
particular abstract data types. The disclosure may also be
practiced in distributed computing environments where tasks are
performed by remote processing devices that are linked through a
communications network. In a distributed computing environment,
program modules may be located in both local and remote computer
storage media including memory storage devices.
[0053] With reference to FIG. 1, an exemplary system that may be
used for implementing the disclosure includes a computing device
210 which may be used for implementing a server. Components of
computing device 210 may include, but are not limited to, a
processing unit 220, a system memory 230, and a system bus 221 that
couples various system components including the system memory to
the processing unit 220. The system bus 221 may be any of several
types of bus structures including a memory bus or memory
controller, a peripheral bus, and a local bus using any of a
variety of bus architectures. By way of example, and not
limitation, such architectures include Industry Standard
Architecture (ISA) bus, Micro Channel Architecture (MCA) bus,
Enhanced ISA (EISA) bus, Video Electronics Standards Association
(VESA) local bus, and Peripheral Component Interconnect (PCI) bus
also known as Mezzanine bus.
[0054] Computing device 210 typically includes a variety of
computer readable media. Computer readable media may be defined as
any available media that can be accessed by computing device 210
and includes both volatile and nonvolatile media, removable and
non-removable media. By way of example, and not limitation,
computer readable media may include computer storage media.
Computer storage media includes volatile and nonvolatile, removable
and non-removable media implemented in any method or technology for
storage of information such as computer readable instructions, data
structures, program modules or other data. Computer storage media
includes, but is not limited to, RAM, ROM, EEPROM, flash memory or
other memory technology, CD-ROM, digital versatile disks (DVD) or
other optical disk storage, magnetic cassettes, magnetic tape,
magnetic disk storage or other magnetic storage devices, or any
other medium which can be used to store the desired information and
which can accessed by computing device 210. Combinations of the any
of the above should also be included within the scope of computer
readable media.
[0055] The system memory 230 may include computer storage media in
the form of volatile and/or nonvolatile memory such as read only
memory (ROM) 231 and random access memory (RAM) 232. A basic
input/output system 233 (BIOS), containing the basic routines that
help to transfer information between elements within computing
device 210, such as during start-up, is typically stored in ROM
231. RAM 232 typically contains data and/or program modules that
are immediately accessible to and/or presently being operated on by
processing unit 220. By way of example, and not limitation, FIG. 1
illustrates operating system 234, application programs 235, other
program modules 236, and program data 237.
[0056] The computing device 210 may also include other
removable/non-removable, volatile/nonvolatile computer storage
media. By way of example only, FIG. 1 illustrates a hard disk drive
240 that reads from or writes to non-removable, nonvolatile
magnetic media, a magnetic disk drive 151 that reads from or writes
to a removable, nonvolatile magnetic disk 152, and an optical disk
drive 155 that reads from or writes to a removable, nonvolatile
optical disk 156 such as a CD ROM or other optical media. Other
removable/non-removable, volatile/nonvolatile computer storage
media that can be used in the exemplary operating environment
include, but are not limited to, magnetic tape cassettes, flash
memory cards, digital versatile disks, digital video tape, solid
state RAM, solid state ROM, and the like. The hard disk drive 241
is typically connected to the system bus 221 through a
non-removable memory interface such as interface 240, and magnetic
disk drive 151 and optical disk drive 155 are typically connected
to the system bus 121 by a removable memory interface, such as
interface 150.
[0057] The drives and their associated computer storage media
discussed above and illustrated in FIG. 1, provide storage of
computer readable instructions, data structures, program modules
and other data for the computing device 210. In FIG. 1, for
example, hard disk drive 241 is illustrated as storing operating
system 244, application programs 245, other program modules 246,
and program data 247. Note that these components can either be the
same as or different from operating system 234, application
programs 235, other program modules 236, and program data 237.
Operating system 244, application programs 245, other program
modules 246, and program data 247 are given different numbers here
to illustrate that, at a minimum, they are different copies. A user
may enter commands and information into the computer 20 through
input devices such as a keyboard 162 and pointing device 161,
commonly referred to as a mouse, trackball or touch pad. Other
input devices (not shown) may include a microphone, joystick, game
pad, satellite dish, scanner, or the like. These and other input
devices are often connected to the processing unit 220 through a
user input interface 160 that is coupled to the system bus, but may
be connected by other interface and bus structures, such as a
parallel port, game port or a universal serial bus (USB). A monitor
191 or other type of display device may also be connected to the
system bus 221 via an interface, such as a video interface 190. In
addition to the monitor, computers may also include other
peripheral output devices such as speakers 197 and printer 196,
which may be connected through an output peripheral interface
195.
[0058] The computing device 210 may operate in a networked
environment using logical connections to one or more remote
computers, such as a remote computer 180. The remote computer 180
may be a personal computer, a server, a router, a network PC, a
peer device or other common network node, and typically includes
many or all of the elements described above relative to the
computing device 210, although only a memory storage device 181 has
been illustrated in FIG. 1. In one embodiment of the present
disclosure this computer 180 may be used to implement a kiosk for
delivering digital media to an inmate or as a terminal for
displaying correspondence to an inmate. The logical connections
depicted in FIG. 1 include a local area network (LAN) 171 and a
wide area network (WAN) 173, but may also include other networks.
Such networking environments are commonplace in offices,
enterprise-wide computer networks, intranets and the Internet.
[0059] When used in a LAN networking environment, the computing
device 210 is connected to the LAN 171 through a network interface
or adapter 170. When used in a WAN networking environment, the
computer 210 typically includes a modem 172 or other means for
establishing communications over the WAN 173, such as the Internet.
The modem 172, which may be internal or external, may be connected
to the system bus 221 via the user input interface 160, or other
appropriate mechanism. In a networked environment, program modules
depicted relative to the computing device 210, or portions thereof,
may be stored in the remote memory storage device. By way of
example, and not limitation, FIG. 1 illustrates remote application
programs 185 as residing on memory device 181. It will be
appreciated that the network connections shown are exemplary and
other means of establishing a communications link between the
computers may be used.
[0060] The present disclosure includes one or more databases,
residing in one or more servers, which may be used as repositories
of electronic data to be delivered to individuals in a restrained
environment and/or restricted-access location, such as inmates. In
general, a typical database is an organized collection of
information structured such that a computer program, for example,
can quickly search and select data. Traditionally, data stored
within a database is organized via one or more tables, wherein
respective tables comprise sets of records and a record comprises a
set of fields. Records are commonly indexed as rows within a table
and the record fields are commonly indexed as columns such that a
row/column pair can reference particular datum within a table.
[0061] The database systems in accordance with embodiments of the
present disclosure are not limited to relational database systems
and organizing information in tables, although the disclosure will
be described with respect to the usage of tables. For example, a
database system in accordance with the present disclosure may
generally store data in one or more data containers, each container
potentially including one or more records, and the data within each
record potentially being organized into one or more fields. In the
context of relational database systems, these containers may be
referred to as tables, the records may be referred to as rows, and
the fields may be referred to as columns. In the context of object
oriented databases, the data containers may be referred to as
object classes, the records may be referred to as objects, and the
fields may be referred to as attributes. A person of ordinary skill
in the art would recognize that other database architectures may
use other terminology. For the purpose of explanation of the
disclosure, the examples and the terminology used herein shall be
that typically associated with relational databases. Thus, the
terms "table", "row" and "column" shall be used herein to refer
respectively to the data container, record, and field. The present
disclosure is not limited to any particular type of data container
or database architecture.
[0062] A database server, in accordance with the present
disclosure, retrieves and manipulates data in response to receiving
a database statement conforming to a database language, such as for
example, Structured Query Language (SQL). The database statement
may specify a query operation, a data manipulation operation, or a
combination thereof. A database statement that specifies a query
operation is referred to herein as a query. The present disclosure
is not limited to database statements that specify a particular
type of operation. Database security mechanisms to restrict or
expand access to a database have been described in U.S. Pat. No.
7,346,617 to Wong, incorporated herein by reference, and U.S. Pat.
No. 7,661,141 to Dutta et al., incorporated herein by reference.
One function of a database server in accordance with the present
disclosure is to control access to database data.
[0063] FIG. 2 illustrates a system in accordance with one
embodiment of the present disclosure for routing electronic
correspondence, such as letters and mail, to correction facility
inmates that eliminates the delays, costs and risks associated with
the current correction facility paper or hard copy mail system. The
system and method of the disclosure routes letters and other
digital correspondence by using, for example, a table in database
257 that indicates the inmate's name, correction system code,
inmate identification code and facility location code. Correctional
facility staff can print the digital content using a printing
device connected to a computer, or can view the digital content
using an electronic display device such as a personal computer or a
visual display terminal (263a, 263b, 263c), while enabling
supervisors to screen the incoming digital content using a computer
terminal 270. One or more walk-up kiosks or terminals 263a, 263b
can be provided for inmates to access preapproved digital
content.
[0064] Aspects of one embodiment of the present disclosure may
include providing a database 257 having an entry for each inmate
and having a plurality of fields, with the fields in turn including
inmate names, correction system identification codes, inmate
identification codes, correction system facility codes which
indicates a specific correction facility; and storing each
electronic letter sent to a specific inmate in a relational
database management system (RDMS) table, the RDMS table including
fields for inmate name, inmate identification code and lists of
corrections facilities. The database 257 may also include a table
that includes entries for all inmates in a correction system or a
correction facility.
[0065] The database may be maintained by periodically downloading a
file from the correction authority central computer server farm 259
(including, for example, servers 259a-b) for such changes as new
inmates, inmate releases and inmate movement between facilities. In
one embodiment of the present disclosure, the downloading step is
performed daily and the database may be arranged to provide for
correction authority letter search and retrieval by the inmate
name, inmate identification code, date, facility or keyword. In one
embodiment, the database table includes at least three fields
selected from the following group: (1) an inmate's last name, (2)
an inmate's first name (3) an inmate's identification code, (4) an
inmate's correction system code, (5) an inmate's correction system
facility code and (6) other information if needed.
[0066] The present disclosure includes a letter creation and
transmission website that may be maintained by server farm 255
(including, for example, servers 255a-d and database 257) that can
be used by a person desiring to write letters to an inmate and that
optionally assesses a fee for each letter sent. The website may be
configured so that the writer can store and review his or her
letter drafts digitally. The writer may receive email notification
at computer 251 when his or her letter has been printed in the
inmate's facility and delivered to the inmate and/or viewed by the
inmate through a computer terminal (e.g., 263a, b, c) at the inmate
facility, or viewed through a digital content player, such as a
handheld device designed to be sufficiently small, and configured,
to be held and operated using one hand of a user. In an alternative
embodiment, the writer may scan the desired correspondence or
document through use of a scanner and upload the scanned document
to the website for forwarding to the inmate. In yet another
alternative embodiment, a message delivered to an inmate may
include photos or videograms attached thereto, which may be
displayed at a kiosk or digital content player at the inmate's
facility. Conversely, an inmate may use a kiosk or digital content
player to create outbound messages directed to family members, for
example, and distributed through use of the communications
architecture of the present disclosure.
[0067] Aspects of another embodiment of the present disclosure
include (a) providing, in database 257, one or more tables having a
plurality of fields, with the plurality of fields including at
least two fields selected from a group consisting of inmate name,
inmate identification code or other identifier, and inmate facility
name or facility code; (b) providing an electronic interface
accessed through computer 251 for a writer, wherein the electronic
interface allows the writer to specify the inmate or inmates that
are the intended recipient(s) of the writer's communication, space
for text of the mail or correspondence; and (c) a system enabled by
server farm 255 for purchasing "postage" to transmit the mail or
correspondence; and maintaining a database table, the database
table including (i) a list of letters sent by a specific writer,
(ii) a list of letters that the inmate has received, and (iii) a
list of privileged writers. The database table may also include a
table entry indicating whether that letter has been previously read
by the correction authorities and by whom; a table entry indicating
which letters have as yet not been reviewed; and/or a table entry
indicating who has been using the process to send letters to which
inmates and at which facilities.
[0068] The database table may also include a table entry allowing
authorities to search scanned letters for certain keywords. The
database table can further comprise a table entry indicating
privileged writers, such as attorneys, whose communications may be
marked as privileged when printed or displayed and whose letters
will be marked as not for correction authority inspection. The
database table can further comprise a table entry indicating
keywords that are of interest to the correction authorities. The
database table can further comprise a table entry indicating to
whom each writer is sending letters.
[0069] The system of the disclosure and method provides an
electronic letter routing software system that can be implemented
on a network, including the Internet. Routing of mail is described
in U.S. Pat. No. 7,647,380 to Gillum et al. which is incorporated
herein by reference. In an embodiment of the system and method of
the disclosure, several database tables are created in database
257, including but not limited to: an inmate table that identifies
the inmates and related information; a facility table that
identifies the facilities and related information; a writer table
that identifies the writers and related information; a credit card
table that identifies the credit cards that the writer uses; a
letter table that identifies the letters and related information; a
privileged writer table that identifies the writer as a privilege
communicator; and a keyword table that lists the keywords of
concern to the prison authorities.
[0070] Inmate Location
[0071] The system of the disclosure and method creates, via regular
downloads from the correction authorities' database (e.g., 261)
associated with a correction authority's central computer (e.g.,
259a, b), a table that includes inmate names, correction system
identification codes, inmate identification codes, correction
system facility codes, and optionally other information.
[0072] The correction system identification code uniquely
identifies a particular correction system such as a state, county
or federal system. The inmate identification code uniquely
identifies a particular inmate within a particular correction
system such as a state, county or federal system. The correction
system facility code uniquely identifies the correction facility
within the correction system that holds that particular inmate.
This facility code thereby determines which letters will be placed
into that facility's mail file during the next mail delivery (or
download).
[0073] Inmate Location
[0074] The system of the disclosure encodes the correction facility
internally, for example as a four character sequence, where the
first two characters identify the state and the second two
characters identify the facility within that state. As a
non-limiting example, New York's Dannemora prison is coded as
"NYDA" while the Federal government's prison at Danbury, Conn. is
coded as "FDDA". The facility code can be case insensitive. Such an
encoding scheme allows for 1,296 (36 squared (letters A-Z number
0-9) facilities within a corrections system (e.g., AA through
99).
[0075] An inmate table can include the following fields in a
database: inmate's last name; inmate's first name; inmate's
identification code; inmate's correction system state, county or
federal code; inmate's correction system facility code; and other
information if needed, such as device ID for the digital content
player.
[0076] Facility Setup
[0077] A facility is added to the system of the disclosure via an
input screen. Input data requested can include, but is not limited
to, facility code, facility name, mail delivery times and other
information if needed. Advantageously, the facility location is
further included, or the inmate location (i.e., cell block) within
a particular facility.
[0078] The system of the disclosure then performs validity checks.
Such validity checks may include, for example, determining if the
facility is already in the table. If the data are valid the
facility is added to the database table.
[0079] The Facility Table
[0080] A facility table comprises at least one field selected from
the group including: a four (4) character alphanumeric facility
identifier, the facility name, the facility address, facility mail
delivery times, and other information if needed.
[0081] Writer Registration
[0082] Before sending an initial letter, a writer first opens an
account by filling out an input form that requires data, such as a
username, a password and an optional email address. A password
system can be used to further let the writer enter a hint question
so that if he forgets his password he can be reminded. For example,
the writer might enter a password of "lion" and have a question to
remind him of that password that asks, "What is my favorite
animal?"
[0083] The process or software then performs various validity
checks (such as email verification or credit card verification with
name and address). If a writer proves to be a valid writer, the
writer is added to the writer table and assigned a unique
identification number.
[0084] The Writer Table
[0085] The writer table comprises at least one field selected from
the group including: writer's username; writer's password; writer's
password hint; writer's email address (optional); writer (system
assigned) unique identifier; and amount of postage writer has
remaining.
[0086] Purchasing "Postage"
[0087] In order to send a letter the writer buys "postage" by
entering his or her credit card information. The amount of the
postage is stored in the writer's table. The process creates a
unique credit card/username identifier for each writer.
[0088] The Credit Card Table
[0089] The Credit Card table includes: writer unique identifier
card name (e.g. VISA, MASTERCARD, AMEX, etc. . . . ); card number
expiration; unique credit card/username identifier; and unique
credit card validation number.
[0090] Billing Records
[0091] The billing table displays the amount and date of postage
purchased on that credit card.
[0092] The Billing Table can include: unique credit card
identifier, transaction date, and transaction amount.
[0093] It should be understood that the field descriptions provided
herein, for the various tables, are exemplary, and can be used to
carry out the disclosure. Additional or fewer fields may be used,
and the field names may be different.
[0094] Sending Letters
[0095] To compose a letter the writer uses a letter-input screen.
This screen can resemble a standard letter with the writer's
address on the upper right and recipient's address on the lower
left, for example. The writer can insert the inmate's address into
the letter in different ways, as follows. In one embodiment, the
writer can select the name of one or more recipients using a
Recipient Table, presented for example in the form of a dropdown
list.
[0096] First, the writer can identify the inmate's corrections
system. If the inmate is incarcerated in New York, for example, the
writer can specify that state by typing NY or by using a "pull
down" menu. The writer can then enter the inmate's identification
code, and the inmate's name and address will automatically fill
in.
[0097] Alternatively, the writer can address the letter by entering
the inmate's last name. If several inmates share that last name,
the system will list all inmates with that last name, their first
names, their inmate identification codes, and their facility
locations. The writer then selects the correct inmate, and the
address automatically fills in.
[0098] The writer can then enters the text of the letter, and click
the send button. The letter is added to the letter table, and the
writer is informed of the next mail delivery. The writer may then
exit the process, or write another letter.
[0099] Storing the Letters
[0100] The inmate letters are stored on the server 255. The status
of each letter is also stored.
[0101] Such status indicates whether the letter has already been
downloaded and read, whether the letter should be held for review,
and which keywords may have been detected.
[0102] In an exemplary embodiment, fields include: a unique inmate
identifier; a unique writer identifier; a facility code; the time
and date the letter was created; the time and date the letter was
delivered; correction review (yes/no); a hold/release flag; keyword
triggers; and the text of the letter.
[0103] Writer Interaction
[0104] The writer interaction process includes a screen that
enables the writer to review his activity. First, the writer can
see a detailed list of the inmates to whom he has sent letters.
Second, the writer can see a list of the letters that he has sent
to a particular inmate. Third, the writer can read a letter that he
has previously sent.
[0105] Corrections Authorities--Getting the Mail
[0106] The facility mail file may be stored on the server and may
be retrieved by the facility mailroom. Alternatively, the file may
be emailed to the facility.
[0107] In one embodiment, facility mailroom employees retrieve the
mail file via a web page that allows them to create the mail file
dynamically from the letter table. The mailroom employee enters
name and password. Thereupon, to create the mail file, the process
creates a list of letters for that facility in preferred order
(e.g. alphabetized by inmate name), and a cover sheet listing the
letters. The process then creates a download file that includes the
cover sheet followed by the letters in the specified or preferred
order.
[0108] Once the download is completed, the letter table is updated
to indicate that the letters have been downloaded at the facility.
The writers are then emailed that the letters have been
printed.
[0109] Correction Authorities Interaction
[0110] Correction authorities read inmate mail, except for
privileged correspondence, for example between an attorney and his
or her (inmate) client. First, correction authorities can see a
chronological list of letters sent to the inmate and can print
inmates' letters either individually or collectively. Second,
correction authorities are alerted if inmate letters contain
prohibited keywords. Third, correction authorities can read letters
and indicate in the letter table that a particular letter has been
reviewed and if held for review subsequently released to the
inmate. Fourth, correction authorities can search across all inmate
letters in the correction system for commonalities and
keywords.
[0111] Delivery of Digital Content
[0112] Another embodiment of the present disclosure includes the
delivery of digital content, such as music or video content,
videograms (prerecorded video messages or other user generated
content), and video visitation (video streaming, one or two-way),
to inmates. FIG. 3 illustrates a communications environment, parts
of which may be used in the implementation of the digital content
delivery aspect of the present disclosure. FIG. 3 is a basic
schematic diagram 10 of a digital content store system 12a
implemented between a digital content store 14 and a client machine
16. A user USR at a client machine 16 may access the digital
content store 14 through a store link and account module 38, such
as through a user interface 103 (FIG. 4). The store module 38 is
typically associated with a selectable inventory 36 of assets
(e.g., songs), which are typically accessible 42, 44, upon purchase
or other redemption, as encrypted assets 18, e.g., 18a-18p, such as
through a digital fulfillment center 40. The content store 14 may
also maintain a history of ordered and downloaded assets 46.
[0113] A user USR at a client machine 16 may purchase encrypted
assets 18 (e.g., encrypted songs), through the entry of purchase
information 34, whereby the encrypted assets 18 are delivered, such
as through downloading 50, which may include a download prompt 52
and download delivery 54, wherein the download delivery 54
comprises both asset delivery and license delivery to the client
16. In another embodiment of the present disclosure the assets need
not be encrypted.
[0114] In some system embodiments 12, the user USR may also use the
system to purchase physical inventory of content 56, e.g., an MP3
player pre-loaded with songs, which are then shipped 58 to the
intended user USR. Upon purchase 34, some system embodiments
comprise both delivery of physical content 56, along with
downloading of encrypted digital content 18, whereby the intended
user USR can quickly access content 18, such as songs, movies,
games, or other content 18.
[0115] As seen in FIG. 3, license information 20 for an encrypted
asset 18 includes the asset rights for the encrypted content 18,
and may include both an asset key 22 and usage rights 24, which are
retained within a secure key locker 26. In one embodiment, the
asset key 22 is bound to the client machine 16, such as through
machine fingerprinting or in conjunction with the machine
identification 21.
[0116] Usage of the encrypted asset 18 typically includes writing
or uploading 392 the asset 18 and license information (e.g., key 22
and usage rights 24) to a digital content player 390. The digital
content player includes a device control 393 module to direct the
operations of the player 390, a unique device ID 397, and a module
395 for outputting content in a format that can be played or
further modified such that a user can perceive. The player 390 may
also include the capabilities of decrypting the assets and moving
the raw assets 304 to a raw asset storage area 398 within the
player's memory 394.
[0117] The player may also store encrypted assets in memory 394 and
playback the encrypted assets 18 by retrieving the asset rights 20,
whereby the asset key 22 operates upon the asset 18, such as
through decryption, decoding and/or rendering. The enabled asset is
then played as desired by the user USR, in compliance with the
usage rights 24.
[0118] An authorized use of the encrypted asset 18 may include an
authorized transfer 29 of the asset 18 to media or storage on a
player 390, e.g., an MP3 player, or to another machine 16, as
allowed by usage rights 24. In conjunction with an authorized
transfer 392, a modified license 20 may be included with the
encrypted asset 18, such as comprising an asset key 22 which is
unbound from the primary client machine 16, and a portion of
appropriate usage rights 24, e.g., such as for authorizing use of
physical media 56.
[0119] FIG. 4 is a detailed schematic diagram of client and server
side architecture within a digital content store system 12b. This
environment or parts thereof may be used to implement certain
features of the present disclosure. Client software 84 provides
communication functionality to server 14, and to a digital content
player 86, e.g., a music player. A media database 82 may reside in
the client computer and may store assets, such as acquired
encrypted assets 18, and may be used to store other assets, such as
unencrypted assets and/or associated metadata.
[0120] The client software 84 typically comprises a download module
92, a license download module 94, and may also comprise other
functionality, such as stored user interface pages 90 and/or
promotional links 88, e.g., for a digital content store 14.
[0121] The digital content player 86 may include a secure digital
content/music store (DMS) content handler 96, digital rights
management (DRM) 98, dedicated communications module 100, and
secure advanced audio coding (AAC) 102.
[0122] On the server side 14, promotional links and user account 38
typically comprise a user interface 103, download and order history
46, content download 104, license download 106, and license
purchase 108. An encrypted content store 110 stores encrypted
content 18, such as is available for purchase within the digital
content store system 12. Other server storage comprises content
metadata and usage rights 112, keys database 114, and a user
database 116.
[0123] As seen in FIG. 4, raw content 122, such as from labels 124,
is sent to content acquisition 118, wherein the incoming raw
content 122, which may include raw assets and associated metadata,
may be processed within an encoding and encryption module 120.
[0124] The back office support system 108 shown in FIG. 4 comprises
pricing 142, a user database 144, royalty processing 130, member
services 132, billing and micropayments 136, taxation 138, order
management 140, and jax/fraud 134. Pricing/SKU information 126 is
typically sent to the back office support system 108, such as from
metadata 306 received at content acquisition 118. As well, royalty
reporting or other output information 128 is typically sent from
the back office support system 108 to the labels 124.
[0125] As seen in FIG. 4, content and associated license
information is sent from the server 14 to the client machine 16,
through the client software 84. Encrypted content 18 is transferred
to the media database 82, where it is retrievable for usage through
the digital content player 86. As needed, the digital content
player 86 may interact through the client software 84, such as to
communicate with the server 14, e.g., to update usage information,
or to prompt the user USR to acquire or extend asset rights 20.
[0126] During playback of acquired assets, the digital content
player playback engine extracts the asset key 22 from the secure
key locker 26, and then decrypts, decodes, and renders the asset
18. The media pipeline is protected up until the handoff to the
sound card.
[0127] If the digital content player 86 detects that the key 22 is
missing, or is not valid for the machine 16 in question, the
digital content player 86 may first play a sample of the song 18,
e.g., such as a 30 second clip, and then the digital content player
86 presents the user USR with a purchase opportunity. If the user
USR chooses to purchase 34, the user is taken to the digital music
store 14 to complete the process 34. The entire key mechanism is
advantageously seamless to the user experience.
[0128] FIG. 5 is a functional block diagram of an alternative
digital music player 400 including asset security for encrypted
assets 18. Encrypted content 18a-18p is typically transferred from
a client machine 16, in compliance with allowed usage rights 24.
Some embodiments of the player 400 additionally provide storage and
playback of raw, i.e., unencrypted assets 304a-304m. As seen in
FIG. 4, the player 400 typically comprises similar internal digital
rights management capabilities, such as a secure key locker 26, and
an extended license 20, comprising asset keys 22 and usage rights
24 for the encrypted content 18. The player may typically store one
or more device IDs 21, to track the source machine 16 from which
content 18 is received. The device may also include a device ID
410, which is used for machine-bound content management. In some
embodiments of the secure content player 400, the player 400 is
considered to be a client machine 16, such as for licensing
purposes. The player 400 may be considered to be an independent
player, such as for licensed usage allowed for a user USR of one or
more client machines 16.
[0129] The system and method of the present disclosure allow
inmates to buy digital media, including individual songs, albums
and eBooks, from an Inmate Kiosk and download it to a personal
portable player of digital content (the "Player") securely while
ensuring the protection of content owner rights. The system of the
present disclosure in accordance with one embodiment (FIG. 6) may
include the following components:
[0130] Global Server 605: Administers services to an online store
running in server 601 and eCommerce over the Internet 621.
[0131] Inmate Kiosks 613a-c: Allow inmates to securely interact
with local server 611 over a secure facility network 623. In one
embodiment, the kiosk terminals 613a-c do not allow localized
storage or access to regular Windows-level folders. Each kiosk
terminal may run a kiosk application to prevent the inmates from
treating the terminal as a regular PC with OS access. The kiosk
application ensures that the kiosk is solely used as a window into
the local server 611 and local download manager (installed in the
server 611) and only connects to the web for specific pre-approved
functions within the media store (run by server 605), such as
listening to song previews from the content provider's server 601.
Software specifically designed to prevent tampering, for example
accessing the operating system, is advantageously used in
combination with software of the disclosure. Alternatively, such
service is included in software of the disclosure.
[0132] Local download manager ("LDM"): This application may run on
the Local Server 611 and administers the synchronization of media
delivery between the Global Server 605, Inmate Kiosk (e.g., 613a),
and a Player (e.g., 615a). Content resides on the Local Server 611
and LDM, which is then delivered to Player 615a-c through the
corresponding kiosks 613a-c.
[0133] Digital Content Player (or Player): The portable digital
content player may be purchased by an inmate. An inmate synchs the
Player and downloads files securely through a kiosk after purchase
of content using a personal account created and maintained at the
Global Server 605. The Player may be implemented as a custom-made
device for the corrections industry that allows delivery only of
approved content via specific USB codes which prevent unauthorized
connections. All inmate interaction with the Global Server 605 and
the Media Server 601 is conducted using a unique inmate ID to
ensure security and prevent cross-pollination or abuse of account
information or purchased media.
[0134] In one embodiment of the disclosure, the digital content
includes music and may be maintained in a catalog 601 by a content
aggregator (specializing in obtaining licensing for large catalogs
of digital content) at a Media server 601. In an alternative
embodiment the system administrator for server 605 may also
administer the media server 601. In another embodiment of the
disclosure, the player displays inmate correspondence.
[0135] In one embodiment, the content aggregator obtains the
content from the different music labels to update the catalog 603
and uniformly funnels the content catalog over the Internet to the
Global Server 605 as XML files. The Server 605 loads the catalog
603 from the MEDIA SEVER 601 and processes it to fit any general or
specific restrictions. The catalog may include links to previews
and album art which reside on the Aggregator's site at all times
and are provided through a direct link from the kiosk.
[0136] The Global Server 605 may get daily updates to the catalog
from the media server 601 using SOAP API. To purchase a song from
the Aggregator, the Global Server 605 also may use SOAP API. After
a purchase is made, the Global Server 605 sends download
instructions to the local server 611 to download the songs. The
inmate then connects to the kiosk which in turn copies the files
from the local server 611 to the digital content player.
[0137] The Local Download Manager (LDM) may be implemented as a
standalone executable used to manage the content downloads between
the Local Server 611 and Players 615a-c (using the kiosks 613a-c as
enabling pass-through units). In one embodiment, the LDM
centralizes management of all tasks, for example content downloads,
local storage, etc., in one location per inmate facility, and the
Local Server 611 runs separately and is not physically accessible
to inmates. The LDM may include predefined settings which provide
general information about the Aggregator's site (URL, user name,
password etc.). The LDM transfers information about processed
orders into a file system in the local server 611 before a content
download begins. The order for content contains inmate ID, song
name, and access instructions. Each completed delivery of content
to the Player is reported back to the Global Server 605 and the
Local Server 611 and stored on a file system locally at Local
Server 611. The kiosk deletes the content file copy from the local
server 611 after it is transferred from the local server network
drive directly to the Player (i.e., after successfully copying the
files to the digital content player).
[0138] In one embodiment of the present disclosure, the LDM
communicates with the global server 605 over Web Services and LDM
acts as the client (e.g., LDM will pull information from global
server 605). The LDM may be accessed through a management console
with HTTP based user interface ("UI") and may also have a local
text based log file to describe main actions.
[0139] The LDM may obtain specific downloaded instructions from the
Global Server 605. Local Server 611 downloads the content from the
media server 601, stores the content on its local file system, and
provides the kiosk access to the stored content to retrieve songs,
for example, and deliver them onto the Player. Each inmate may have
a directory on the local file system with subdirectories for
downloads and galleries and can only access his or her own
account.
[0140] In one embodiment of the present disclosure, a kiosk
terminal 613 has pre-defined settings to access the local server
611 file system root directory using a share drive mechanism. The
local server 611 notifies the kiosk 613 when content is ready to be
downloaded to the player 615, after which the inmate will able
allowed to start downloading media directly to a registered Player.
The Player may connect to the kiosk through a standard USB
port.
[0141] After connecting the player to the kiosk, the kiosk
identifies the player, for example, based on the inmate id or other
identification parameters embedded in the player during the
fulfillment process. Unrecognized players/devices are not
immediately served. When the kiosk matches the inmate id to the
Player and session id, the player is allowed to download content.
At the start of the download, the kiosk accesses the inmate
directory on the local server file system and copies all new files
in this directory directly to the Player (one-way synch process).
Download includes copy or, if configured, moves the content files
from the inmate folder on the LDM directory to the player. In one
embodiment, files will not be saved on the kiosk file system.
Advantageously, the player should not be disconnected from the
kiosk while downloading content. The kiosk may display a message to
the inmate such as "Downloading, do not disconnect." The Kiosk
application disables an auto logout feature during download and
resumes when the download is complete.
[0142] After download of content is complete the following can
occur: (1) a summary message is displayed to the inmate (songs,
price, etc); (2) a status change notification of a completed
download is sent to the local server; and (3) the kiosk application
collects the player's statistics (number of songs and available
space) and sends it back to the local server.
[0143] When the kiosk is in the process of authenticating an
inmate, if the kiosk does not match the inmate id to the Player and
session id, the kiosk can stop serving the player and perform the
following actions: (1) the kiosk sends a notification back to the
local server 611 to be propagated to the appropriate facility
user--this prevents the inmate from continuing to use the
unauthorized device by either moving all songs from the player to
the inmate directory on the LDM or disabling the Player; and (2)
the kiosk displays a message to the user and marks his account as
"Locked."
[0144] In addition to facilitating the downloading of content into
the player, the kiosk application is responsible for the Player
maintenance and control, in accordance with one embodiment of the
disclosure. Each Player is registered to one inmate and includes a
unique ID to be matched with a specific inmate ID. Each kiosk can
only access the inmate's account on the Local Server 611.
[0145] Player access to the kiosks may be restricted by "burning"
an individual inmate ID into the player device's memory. In one
embodiment, the kiosk allows downloads for inmates that
authenticate themselves at the kiosk and then connect a Player with
a matching ID. If the Player is NOT verified the kiosk sends a
"lock" command to the Player to prevent further use.
[0146] In one embodiment of the disclosure, there are two specific
methods of communication with the Player. In a first method of
communication, a specific driver allows interaction between the
kiosk and the player only if the driver is loaded to the kiosk
terminal (this eliminates unauthorized PC connections). The
"mass-storage" capabilities may be excluded from the driver to
eliminate the risk of using the player as a flash drive. In one
embodiment of the disclosure, the driver allows the player and
player software to communicate with the kiosk application, so if
the driver is not loaded the player cannot communicate with the
kiosk.
[0147] In a second method of communication between the kiosk and
the player, a .COM object or .NET assembly is loaded in real-time
by the kiosk application or software library and is compiled to the
kiosk application with the following functions:
[0148] Int GetInmateID (string PassKey)--return inmate id or -1 if
wrong passkey or inmate id is not available. Passkey may be defined
as a predefined string used for security purposes. Int PutInmateID
(string PassKey, string id)--store a new id on the device. Bool
ChangePassKey (string currenPassKey, string newPassKey)--change the
passkey. Int GetDevice serialID (string PassKey)--get a unique
serial id (optional).
[0149] The following functions lock the player if the special
driver is not available. The kiosk application locks the player
after download and unlocks it again before the next download. Bool
LockDevice (string PassKey)--disable the device from receiving any
files until unlock function is called (Bool UnLockDevice (string
PassKey)--enable device for receiving any files. Bool RemoveLock
(String passkey)--remove the locking (i.e. allow receive files from
any source).
[0150] The .NET object or wrapper serves as a translator between
the kiosk application and the player software.
[0151] FIG. 7 illustrates a method for processing a purchase
transaction for a player using the kiosk application. At step 701
the inmate places an order using the kiosk terminal. The order is
communicated to the global server via web services. At step 703 the
global server verifies details of the order and creates a purchase
order. The global server verifies that the order amount can be
cleared by the Department of Corrections ("DOC") Bank. At step 705
the DOC Bank sends a response to the global server to notify
whether there are sufficient funds in the account associated with
the inmate making the request. An inmate account can be replenished
through deposits made on behalf of the inmate by family or friends,
or in the alternative, through work programs established by the
corrections facility, for example. At step 707, if the global
server determines that there are not sufficient funds, then the
inmate is notified through the kiosk terminal, for example.
[0152] If the global server determines that there are sufficient
funds, then global server creates a player setup file. This file
includes the inmate ID and other default settings. The file is then
uploaded into the ordered player. If the inmate does not select an
option to preload the player with content, then the player is
packed and shipped to the inmate's facility (step 719).
[0153] If the inmate selects an option to preload content into the
player (step 713), then global server requests the pre-required
content (e.g., songs), from the media server. This request may be
made over web services. At step 721 the media server confirms the
order for purchase of a song, for example, and in response to the
request returns a link for downloading the content. After receiving
the link, the global server downloads the songs (step 717) over an
http connection from a download site (e.g., the media server).
After the player is preloaded with content, the player is packed
and shipped to the inmate's facility (step 719). At step 725 the
player is distributed to inmates.
[0154] FIG. 8 illustrates a process for ordering and browsing
content through the kiosk terminal. At step 801 the inmate
initiates browsing through the kiosk terminal. The local server may
communicate with the global server over web services to access the
catalog (step 803). The catalog residing in the global server is
first uploaded 807 from the media server 805 over an Internet
connection. Daily catalog updates may be transmitted to the global
server over web services 809.
[0155] In step 811 the kiosk presents an option to preview the
catalog. The preview may be accessed directly by clicking on a URL
link to the media server, for example (step 815). Either after
previewing content or skipping the preview option, the inmate may
use the kiosk terminal to order content (step 813). The kiosk sends
a request for selected content to the global server and the global
server verifies details of the order and creates a purchase order
(step 817). The global server verifies that the order amount can be
cleared by the DOC Bank. At step 819 the DOC Bank sends a response
to the global server to notify whether there are sufficient funds
in the account associated with the inmate making the request. At
step 821, if the global server determines that there are not
sufficient funds, then the inmate is notified through the kiosk
terminal (step 823), for example.
[0156] If the global server determines that there are sufficient
funds, then global server sends a request to the media server to
confirm the order and the media server returns confirmation and a
link for downloading the content (step 825). The global server also
creates order instructions to the local download manager including
inmate ID, location, download URL, and download time, for
example.
[0157] FIG. 9 illustrates content download processes in accordance
with one embodiment of the present disclosure. At step 901 the LDM
running in the local server initiates the content download process
by first checking whether there are any pending downloads. The LDM
initiates and sends a startup message to the global server over web
services and in response to the request the global server verifies
whether the local download manager has new pending downloads (step
903). If there are pending downloads, at step 907 the global server
creates instructions for downloading content that include
instructions to finish pending downloads. For example, if there are
pending downloads, the global server creates instructions so that
at the next communication cycle the local download manager will
retrieve the instructions and download the content. Otherwise at
step 907 creates download instructions that do not include pending
downloads. At step 905 the LDM obtains download instructions from
the global server, again communicating with the global server over
web services. At step 909 the LDM initiates download of content,
for example music, from the media server by establishing an http
connection with the media server. At step 911 the content is
downloaded from the media server.
[0158] At step 913 the kiosk terminal displays a login screen to an
inmate. After log in, the kiosk checks whether an order for content
is ready. The kiosk sends a request to the global server over web
services and in response to the request the global server verifies
whether the inmate order for content is ready (step 917). If the
order is ready, at step 919 the global server creates instructions
for authorizing delivery of content to the player. At step 915 the
kiosk obtains the order instructions from the global server, again
communicating with the global server over web services. For
example, the global server may direct the kiosk to access the local
download manager to copy content awaiting to be downloaded by
inmates.
[0159] At step 921 the kiosk determines whether the content player
is plugged in to the kiosk, and if it is not the inmate may be
taken back to the login screen. If the player is connected, then
content is copied from the LDM to the kiosk and then to the player
at step 923. After the download is complete, the kiosk displays a
login screen again.
[0160] Other aspects of browsing and ordering content will be
described below with reference to FIGS. 10-16. Generally, the local
server provides the kiosk with specific offerings per inmate based
on restrictions set by the facility. Inmates log into the kiosk and
then browse through the catalog of specific offerings.
[0161] The searchable catalog may be organized based on artists,
albums or genres. Content length, cost and position in the album
may be displayed at the song level.
[0162] Song previews may be played and listened to at the kiosk
(via LDM connection to the Internet and onto the media server
site), and album covers may be displayed, as well as artist images
when available. Previews may be available per song by routing the
requests for previews in real time to the media server. The preview
may be secured behind a Flash button to prevent a localized
download of the preview clip. After accessing previews inmates may
order a number of songs, based on their account balance, or
purchase a full album. Once the order is complete a confirmation
appears notifying the inmate about cost of order and order
processing time. Inmates may check on their order status at any
given time during the download process. The global server keeps a
status record of every order for audit purposes. For example, each
component in the system may send a status update of the content
(e.g., pending, purchased, downloaded, copied, etc.) to the global
server.
[0163] FIG. 10 illustrates an exemplary screenshot that may be
displayed by the kiosk terminal. The kiosk may display an image of
a content Player which inmates can order through the kiosk (1001).
The kiosk may display categories of music (1003). These categories
may include rock, rap, R&B, etc. The kiosk may also display the
content items that an inmate has already selected for purchase
(1005). The kiosk may also display the top selling songs 1007.
[0164] FIG. 11 illustrates a screenshot similar to that in FIG. 10
except that the kiosk displays a message that content is ready to
be downloaded. The content may be downloaded by the inmate
physically connecting the Player to the kiosk, or in an alternative
embodiment, by wirelessly connecting the player to the kiosk my
moving the player to a wireless hotspot. FIG. 12 illustrates
advertisements that may be displayed by the kiosk. In the
illustrated exemplary display, the inmate is presented with an
offer to buy a top selling album (1201).
[0165] FIG. 13 illustrates a screenshot of the kiosk displaying top
selling songs. The kiosk may display whether the songs have already
been added to a shopping cart (1303) or not (1305). Other
information related to each song may also be displayed, for
example, the price 1302, the length of the song 1311, the album
1313, and the artist 1315. An option to play a clip of the song may
also be displayed 1309 as well as an option to checkout 1361.
[0166] FIG. 14 illustrates a screenshot of songs displayed by the
kiosk under the R&B category 1401. The kiosk also displays the
price per song, transaction fee, and the total price 1403. FIG. 15
illustrates a screenshot of songs displayed by the kiosk under the
Artist category 1501. FIG. 16 illustrates a screenshot of the kiosk
displaying an option to remove content previously added to the
shopping cart 1601.
[0167] The system of the present disclosure in accordance with
another embodiment (FIG. 17) may include the following
components:
[0168] Global Server Farm 1905: The Global Server Farm 1905,
including servers 1905a-d and a database 1906, administers services
to an online store running in Aggregator 1901 and eCommerce over
the Internet 1921. The Aggregator 1901 may include servers 1901a-b
and a database 1902.
[0169] Inmate Kiosks 1813a-c and 1913a-c: Allow inmates to securely
interact with local server 1912 and LDM 1911 over a secure facility
network. In one embodiment, the kiosk terminals do not allow
localized storage or access to regular Windows-level folders. Each
kiosk terminal may run a kiosk application to prevent the inmates
from treating the terminal as a regular PC with OS access. The
kiosk application ensures that the kiosk is solely used as a window
into the local server 1912 and local download manager 1911 and only
connects to the web for specific pre-approved functions within the
media store (run by global server farm 1905), such as listening to
song previews from the content provider's Aggregator 1901. To
prevent OS access, software such as siteKiosk from Provisio may be
used.
[0170] Local download manager ("LDM"): This application may run on
the Local Server 1912 or may run on a separate machine 1911. The
LDM administers the synchronization of media delivery between the
Global Server Farm 1905, Inmate Kiosk (e.g., 1913a), and a Player
(e.g., 1915a). Content resides on the Local Server 1912 and the LDM
1911, which is then delivered to Players through the corresponding
kiosks.
[0171] Digital Content Player (or Player): The portable digital
content player may be purchased by an inmate. An inmate synchs the
Player and downloads files securely through a kiosk after purchase
of content using a personal account created and maintained at the
Global Server Farm 1905. The Player may be implemented as a
custom-made device for the corrections industry that allows
delivery only of approved content via specific USB codes which
prevent unauthorized connections. All inmate interaction with the
Global Server Farm 1905 and the Aggregator 1901 is conducted using
a unique inmate ID to ensure security and prevent cross-pollination
or abuse of account information or purchased media.
[0172] In one embodiment of the disclosure the digital content
includes music and may be maintained in a catalog by the content
aggregator 1901. In an alternative embodiment the system
administrator for Global Server Farm 1905 may also administer the
Aggregator 1901. In another embodiment of the disclosure, the
player displays inmate correspondence, including pictures and
videograms.
[0173] In one embodiment, the aggregator 1901 obtains the content
from the different music labels to update the catalog and uniformly
funnels the content catalog over the Internet to the Global Server
Farm 1905 as XML files. The Global Server Farm 1905 loads the
catalog from the Aggregator 1901 and processes it to fit any
general or specific restrictions. The catalog may include links to
previews and album art which reside on the Aggregator's site at all
times and are provided through a direct link from the kiosk.
[0174] The Global Server Farm 1905 may get daily updates to the
catalog from the Aggregator 1901 using the SOAP API. To purchase a
song from the Aggregator 1901, the Global Server Farm 1905 also may
use SOAP API. After a purchase is made, the Global Server Farm 1905
sends download instructions to the local server 1912 to download
the songs. The inmate then connects to the kiosk which in turn
copies the files from the local server 1912 to the digital content
player.
[0175] The Local Download Manager (LDM) may be implemented as a
standalone computer 1911 used to manage the content downloads
between the Local Server 1912 and Players (using the kiosks as
enabling pass-through units). In one embodiment, the LDM 1911
centralizes management of all tasks, for example content downloads,
local storage, etc., in one location per inmate facility, and the
Local Server 1912 runs separately and is not physically accessible
to inmates. The LDM 1911 may include predefined settings which
provide general information about the Aggregator's site 1901 (URL,
user name, password etc.). The LDM 1911 transfers information about
processed orders into a file system in the local server 1912 before
a content download begins. The order for content contains inmate
ID, song name, and access instructions. Each completed delivery of
content to the Player is reported back to the Global Server Farm
1905 and the Local Server 1912 and stored on a file system locally
at Local Server 1912. The kiosk deletes the content file copy from
the local server 1912 after it is transferred from the local server
network drive directly to the Player (i.e., after successfully
copying the files to the digital content player).
[0176] In one embodiment of the present disclosure, the LDM 1911
communicates with the Global Server Farm 1905 over Web Services and
LDM 1911 acts as the client (e.g., LDM 1911 will pull information
from Global Server Farm 1905). The LDM 1911 may be accessed through
a management console with HTTP based user interface ("UI") and may
also have a local text based log file to describe main actions.
[0177] The LDM 1911 may obtain specific downloaded instructions
from the Global Server Farm 1905. Local Server 1912 downloads the
content from the Aggregator 1901, stores the content on its local
file system, and provides the kiosk access to the stored content to
retrieve songs, for example, and deliver them onto the Player. Each
inmate may have a directory on the local file system with
subdirectories for downloads and galleries and can only access his
or her own account.
[0178] In one embodiment of the present disclosure, a kiosk
terminal (e.g., 1813a-c or 1915a-c) has pre-defined settings to
access the local server 1912 file system root directory using a
share drive mechanism. The local server 1912 notifies the kiosk
when content is ready to be downloaded to the player, after which
the inmate will be allowed to start downloading media directly to a
registered Player. The Player may connect to the kiosk through a
standard USB port.
[0179] After connecting the player to the kiosk, the kiosk
identifies the player, for example, based on the inmate id or other
identification parameters embedded in the player during the
fulfillment process. Unrecognized players/devices are not
immediately served. When the kiosk matches the inmate id to the
Player and session id, the player is allowed to download content.
At the start of the download, the kiosk accesses the inmate
directory on the local server file system and copies all new files
in this directory directly to the Player (one-way synch process).
Download includes copy or, if configured, moves the content files
from the inmate folder on the LDM directory to the player. In one
embodiment, files will not be saved on the kiosk file system.
Advantageously, the player should not be disconnected from the
kiosk while downloading content. The kiosk may display a message to
the inmate such as "Downloading, do not disconnect." The Kiosk
application disables an auto logout feature during download and
resumes when the download is complete.
[0180] After download of content is complete, the following can
take place: (1) a summary message is displayed to the inmate
(songs, price, etc); (2) a status change notification of a
completed download is sent to the local server; and (3) the kiosk
application collects the player's statistics (number of songs and
available space) and sends it back to the local server.
[0181] When the kiosk is in the process of authenticating an
inmate, if the kiosk does not match the inmate id to the Player and
session id, the kiosk will stop serving the player and perform the
following actions: (1) the kiosk sends a notification back to the
local server 1912 to be propagated to the appropriate facility
user--this prevents the inmate from continuing to use the
unauthorized device by either moving all songs from the player to
the inmate directory on the LDM or disabling the Player; and (2)
the kiosk displays a message to the user and marks his account as
"Locked."
[0182] In addition to facilitating the downloading of content into
the player, the kiosk application is responsible for the Player
maintenance and control in accordance with one embodiment of the
disclosure. Each Player is registered to one inmate and includes a
unique ID to be matched with a specific inmate ID. Each kiosk can
only access the inmate's account on the Local Server 1912.
[0183] Player access to the kiosks may be restricted by "burning"
an individual inmate ID into the player device's memory. In one
embodiment, the kiosk allows downloads for inmates that
authenticate themselves at the kiosk and then connect a Player with
a matching ID. If the Player is not verified the kiosk sends a
"lock" command to the Player to prevent further use.
[0184] In an embodiment of the disclosure, there are two specific
methods of communication with the Player. In a first method of
communication, a specific driver allows interaction between the
kiosk and the player only if the driver is loaded to the kiosk
terminal (this eliminates unauthorized PC connections). The
"mass-storage" capabilities may be excluded from the driver to
eliminate the risk of using the player as a flash drive.
[0185] In a second method of communication between the kiosk and
the player, a .COM object or .NET assembly is loaded in real-time
by the kiosk application or software library and is compiled to the
kiosk application with the following functions:
[0186] Int GetInmateID (string PassKey)--return inmate id or -1 if
wrong passkey or inmate id is not available.
[0187] Passkey may be defined as a predefined string used for
security purposes. Int PutInmateID (string PassKey, string
id)--store a new id on the device. Bool ChangePassKey (string
currenPassKey, string newPassKey)--change the passkey.
[0188] Int GetDevice serialID (string PassKey)--get a unique serial
id (optional).
[0189] The following functions lock the player if the special
driver is not available. The kiosk application locks the player
after download and unlocks it again before the next download:
[0190] Bool LockDevice (string PassKey)--disable the device from
receiving any files until unlock function is called; and
[0191] (Bool UnLockDevice (string PassKey)--enable device for
receiving any files. Bool RemoveLock (String passkey)--remove the
locking (i.e. allow receive files from any source).
[0192] With reference to FIGS. 18-19, additional embodiments of a
system 1000 for enabling purchasing, recording, displaying, and
managing visual and video media in digital format, include a
portable player system 2000, and a general access kiosk system
3000. The following described elements of system 1000 can implement
all of the features described hereinabove for corresponding
elements of the invention, including the features as described
below.
[0193] With reference to FIG. 18, portable player 2000 is sized and
shaped to be easily carried by a person, for example an inmate. In
one embodiment, player 2000 is sized to fit in an ordinary pants or
shirt pocket, for example less than 7.times.5.times.1 inches in
dimension and 1 pound in weight. In another embodiment, player 2000
is sized larger than a typical pocket, but still sufficiently small
to be easily carried about using one hand of a person, for example
having a dimension of less than 10.times.15.times.2 inches, and
less than 5 pounds in weight. In either size embodiment, a typical
dimension and weight may be substantially smaller than the
exemplary dimension and weight given, for example half of this
dimension and weight or less. Player 2000 can be provided to
inmates, and if permitted, used within an inmate's cell.
[0194] Player 2000 includes an electronic computing player device
2100 having a video display 2102, for example a TFT LCD, IPS LCD,
OLED, or AMOLED type display. Display 2102 can be touch sensitive,
for example including capacitive or optically sensitive elements
(not shown), configured to pass information to a processor 2014
within device 2100, indicative of a location of an pointing object
moved upon or near display 2102.
[0195] In the embodiment shown in FIG. 18, player device 2100 is
wholly or partially contained within a housing 2200, operative to
protect player device 2100. For example, housing 2200 may prevent
access to the constituents of player device 2100, to prevent misuse
of these components by inmates. Additionally, or alternatively,
housing 2200 provides cushioning for shock, for example from
dropping player 2000, and can protect player device 2100 from
exposure to moisture, heat, or other environmental hazard. In one
embodiment, only display 2102 is exposed exterior of housing 2200,
although housing 2200 may additionally include a transparent layer
covering display 2102.
[0196] One or more control switches or buttons 2210 located on an
exterior surface of housing 2200 can be provided, communicative
with corresponding switches, buttons, or other control feature or
function of player device 2100, for example using a mechanical
actuator, or electrical signal. Similarly, one or more electrical
ports or outlets may be provided in an external surface of housing
2200, electrically communicative with a corresponding port within
player device 2100, for example an audio port 2204 connectible to a
sound transducer 2108, or a data exchange/charging port 2106,
connectable to another computing device.
[0197] Player 2000 can be powered by a rechargeable battery, for
example a lithium based battery, which may be recharged for example
by connecting player 2000 to a power source. Alternatively, player
2000 may be powered by replaceable batteries, or solely by a power
cord connectable to a power source, for example a wall outlet or
power converter. There are security considerations attendant with
each option, which can be considered by correctional facility
staff. Player 2000 can provide storage of digital information by
any known or hereinafter developed method, including flash memory
or magnetic media. In one embodiment, player 2000 includes 8 GB of
storage, although 16 GB or 32 GB may be provided as options, for
example, or in the future, much higher storage quantities may
become available, with considerations given to cost, size, and
power requirements. Because player 2000 is permanently sealed, in
one higher security embodiment, memory or batteries may not be
replaced after player 2000 is configured and finally assembled.
Herein, correctional facility staff includes all agents authorized
to conduct acts on behalf of, or for the benefit of, the
correctional facility.
[0198] With reference to FIG. 19, a computer system to which player
2000 may be connected includes stationary computer system, or kiosk
3000. The connection between player 2000 and kiosk 3000 may be
established using data port 2106 and a cable connected to a
corresponding port (not shown) within kiosk 3000, or by any other
known or hereinafter developed means, including Bluetooth (a
registered trademark of Bluetooth SIG, Inc., a Delaware
corporation) or other form of wireless connection. One or more
human interface devices can be provided, for example a keyboard
3002, which may be substituted with a touchscreen keyboard, for
example, and a pointing device 3004, for example a trackball, also
replaceable with a pointer moveable upon a touchscreen. Kiosk 3000
further includes an internal processor 3014 (not shown). A video
display 3006 is provided, as well as a microphone 3008, one or more
speakers 3010, which can be provided as a handset 3012, or as
separate components connected to kiosk 3000, and a video camera
recorder 3016. One or more locks or security devices 3018 can be
provided, operative to secure from access, turn off, configure, or
disable one or more functions or components of kiosk 3000. Kiosk
3000 can be fabricated from rugged materials which cannot be broken
or opened without tools.
[0199] One or many kiosks 3000 may be provided at each correctional
facility, for example in each dormitory. Each kiosk executes
software, which can be stored upon non-volatile memory or other
digital storage medium, the software operative to carry out the
instructions and functions described herein. Some instructions may
be executed remotely, using another computer and a network, for
example a LAN or WAN, including the internet. Players 2000 and
Kiosks 3000 may be configured to support video visitation,
described further herein, as well as email, online banking, and a
digital store, provided all forms of digital content, including
music, books, and videos. In addition, inmates and other users may
order from a commissary associated with the correctional facility.
Further, educational materials, including prerecorded and live
instructions can be provided. Not all applications which can be
provided by player 2000 and or kiosk 3000 would be deemed suitable
for all inmates at all times, but such functionality can be
provided for workers or visitors to correctional facilities, and
can include games, gaming, and other forms of entertainment. All
applications may be provided on both player 2000 and kiosk 3000, or
the range of applications on each may be different. Individual
application may differ between each of player 2000 and kiosk
3000.
[0200] In one embodiment, all computing applications and functions
available to inmates may be carried out by one or both of player
2000 and kiosk 3000, and people associated with an inmate can
participate with the inmate for all such applications and functions
using a single website which hosts corresponding functionality.
[0201] In one embodiment, a player provides login information to
access functionality of player 2000 or kiosk 3000, for example a
username and password. As kiosk 3000 may be a general use device,
both a username and password may be required. Both a username and
password may be required when using player 2000, as well, or
alternatively, if player 2000 is uniquely associated with a single
user, for example using an internal chip identification, player
2000 can be configured to require a password only.
[0202] With reference to FIG. 20, an email application 4002,
executable upon one or both of player 2000 and kiosk 3000, enables
an inmate to read email messages from approved senders, the
incoming email subject to preapproval by correctional facility
staff. An inmate may also compose, and send emails to approved
recipients, such emails also subject to review and approval by
correctional facility staff. Incoming and outgoing email may be
flagged or identified for review by containing keywords generated
by correctional facility staff, and may also be flagged, blocked,
or screened for whether content may be exchanged between particular
senders and receivers. The keyword list may be generated using
keywords found in other inmates' emails, where certain words were
found to be associated with non-approved activity. In accordance
with the disclosure, the collection, monitoring, and distribution
of digital content is carried out within a closed system. More
particularly, the digital content, including email and video data,
is under the control of software of the disclosure, so that it may
not be altered, and so that its origin and contents may be known,
and that the digital content cannot be altered once collected by
the system.
[0203] At left in FIG. 20, a portion of a web application image, or
web image 4002, of a web correspondence application, or web app
4000, designed to be used by a person not an inmate (an outside
user), is illustrated. To the right of FIG. 20, separated from web
app 4002 by a divider, is shown a portion of a local executable
application image, or local image 5002, of a local correspondence
local executable application, or local app 5000, useable by the
inmate. In one embodiment, web app 4000 can be implemented by a web
browser (e.g. CHROME, SAFARI, or FIREFOX), supported by a web
server application.
[0204] Local app 5000 can be an executable program running natively
on player 2000 or kiosk 3000, for example an application written in
C++, although an application running in an execution environment,
such as JAVA or .NET, may also provide a suitable alternative.
Local app 5000 is additionally supported by a local server 9000
(including, as noted, local server 611), for example a server
situated upon a LAN connected to player 2000 or kiosk 3000 by a
wired or wireless connection. Accordingly, the term "local" is used
only for convenience, and aspects of local app 5000 may be run by a
remote processor, and the local server may be very remotely located
with respect to a machine executing local app 5000.
[0205] The web server or local server provides functionality which
can include generating images or visible content; performing
calculations; storing, retrieving, forwarding, and manipulating
data; implementing security and limiting access rights;
communicating with other servers, for example a payment server; and
other functions, as described herein and as understood within the
field. It should be understood that some or all functions of a web
server or local server may be carried out by one or more of a kiosk
3000.
[0206] An advantage to providing a web style application for
outside users is that there may be many outside users, and not all
of them may wish to install an executable style application on
their computer. Further, by providing a web application, outside
users can communicate with inmates wherever they may be located,
without a requirement of having access to a computer upon which a
corresponding executable is stored. An executable is advantageous
for inmates using player 2000 or kiosk 3000, because it is
imperative that only a predefined set of activities are possible,
and a self contained executable program provides the greatest level
of control and security. Additionally, the set of computers upon
which these functions are to be carried out is limited and known in
advance, enabling deployment of an executable to be expeditious.
Notwithstanding the foregoing, it is still possible for either or
both of the inmate systems or outsider systems to use either a
browser based application or an executable application.
[0207] Although web app 4000 and local app 5000 are shown together,
it should be understood that they operate independently, the
product of each stored until it can be delivered to the other,
unless there is real time communication being carried out between
the applications, as described further herein. It may be seen that
web image 4002 illustrates services for adding attachments, a
subset of the functionality of web app 4000. An inmate name, to
whom the communication is to be directed, is shown selected 4004.
This name may be typed in, or may be selected using a search and or
drop-down list functionality.
[0208] An outside user may additionally select an image attachment
function 4006 for attaching one or more images in any of a
plurality of formats, and record videos, e.g. to produce a
videogram, in real time. With respect to the latter, the sender may
select a record video function 4008, at which time they will have
an opportunity to record a video message for sending to the inmate
using a video camera within, or connect to, their computer.
Alternatively, an outside user can select an attach video function
4010 to send one or more previously recorded videos in any of a
plurality of formats. An outside user may additionally enter the
text of the message 4012, as well.
[0209] As may further be seen, there can be a charge for each
message or attachment, here a value of "1 stamp" for each page. A
stamp can be assigned a monetary value in a previous agreement with
a system user, separately, or a value can be established when
composing the message. In accordance with the disclosure, an
outside user can pay for communications for and on behalf of the
inmate. Similarly, an inmate can pay, as well, although due to
security restrictions, the inmate allocates credits assigned to the
inmate within the system 1000 of the disclosure, to make payments.
In this manner, it may be controlled what an inmate is buying.
Inmates can acquire credits through their services rendered within
the correctional facility, for example, or as paid for by an
outside user. An outside user may provide credit for the inmate
separately from using web app 4000, or may provide credit as shown
in the Pre-paid Response section 4016, or other portion of web app
4000 not shown in FIG. 20.
[0210] Local app 5000, running on player 2000 or kiosk 3000, can
have the same functionality as described herein for web app 4000,
and vice versa, with particular functionality shown for web image
4002 or local image 5002 for convenience, and not to suggest the
functionality is exclusive to one application or the other, unless
stated otherwise. In FIG. 20, Local image 5002 shows a `Take
Picture` function 5018, wherein an inmate may take a picture
(snapshot image) of the prerecorded or streaming video being shown
to the inmate, and may save this image to an inmate storage area,
for example within player 2000. An outside user may save such an
image to their local computer or handheld device. Additionally
illustrated is a function to view received letters 5020 and to view
sent letters 5022, and to create a videogram 5024, which may be a
recorded video, or which may initiate a streaming video
teleconference between an inmate and an outside user, where each
may view each other while speaking in full duplex.
[0211] A video stream between web app 4000 and local app 5000 is
illustrated in FIG. 21. It should be understood that in order to
accomplish streaming video capture using web app 4000, it may be
necessary to have a helper application, or web app 4000 may need to
have access to certain underlying functionality of the computer
that may not normally be accessible to a browser application. A
typical helper application, for example, can be ADOBE FLASH,
although other such applications which provide access to other
hardware are available, and may become available in the future. In
one embodiment, web app 4000 enables a user to enable or disenable
the use of hardware needed for video visitation during an ongoing
web session.
[0212] In FIG. 21, in local image 5030 of local app 5000 is
illustrated at right, in which an inmate 5032 is using kiosk 3000.
At left, a web image 4030 of web app 4000 is illustrated, in which
an outside user 4032 is using a browser and the internet to execute
web app 4000 to communicate with local app 5000. In one embodiment,
the inmate and outside user can see a relatively smaller image of
themselves, and a relatively larger image of the other system user,
the images updating at a speed sufficient to approximate real time
movement of themselves and the other user. Video and sound are
synchronized, as may best be implemented by the particular hardware
and connection speed available, when web app 4000 and local app
5000 are executing in mutual communication.
[0213] In accordance with the disclosure, images, text, video, and
any other inbound data sent to an inmate is reviewable by
correctional facility staff before it is available to the inmate.
Similarly, images, text, video, and any other outbound digital
content, is reviewable by correctional facility staff before it is
delivered to the intended recipient. To carry out this review,
correctional facility may use software tools of the disclosure
which execute upon player 2000, kiosk 3000, local servers, or
remote servers, to digitally prescreen content to improve
efficiency. For example, keywords generated from reviewing digital
content from one or many inmates may be compared with keywords
present in the digital content to be reviewed. The generated
keywords typically represent prohibited activities or subjects, and
digital content containing such keywords may be redacted prior to
delivery, or may be blocked from being received or sent.
[0214] In one embodiment, software of the disclosure places digital
content in a queue or separate location, where it may be reviewed
as time is available by correctional facility staff. If later
approved, it may be moved to a different queue or location, for
subsequent delivery. If later rejected, it may be moved to a
different queue or location, for quarantine or deletion.
[0215] Digital prescreening for keywords, which herein includes
phrases, images, sounds, or any other type of digitally encoded
content, can be carried out by software, upon text, encoded text or
data such as word processing or pdf files, video files, images, or
any other digital format known or hereinafter developed. Software
of the disclosure can include software modules or routines which
can parse or interpret different types of digital content, for
example using artificial intelligence or other methods, to detect
text or image patterns or other data which may include the keyword
content.
[0216] By implementing email, photo sharing, video visitation
(streaming two way video sessions), and other digital data
exchanges between inmates and visitors, a correctional facility
significantly reduces the burden and risk of moving inmates between
physical visitation locations and their cells, and minimizes
potential physical contact between inmates and visitors. As the
system 1000 of the invention provides prescreening, acceptable
communications between inmates and outside users do not burden
correctional facility staff. Further, system 1000 reduces the
burden upon correctional staff to physically open and inspect paper
mail, which may include contraband.
[0217] Additionally, communications between inmates and outside
users which are blocked or non-allowed for an inmate can be managed
by system 1000, which can implement a rules based system of
enabling or disabling particular types of communication with
particular individuals, or communications with approved individuals
outside of a prescribed time period, or beyond an approved
duration. Such rules can be established by correctional staff, and
can also be established by software of system 1000. Such unapproved
communications can be terminated, for example after an early
warning of impending termination, or abruptly after an initial
exchange of unapproved content/keywords. System 1000 can then block
further communication between the inmate and outside user until
further communication is approved by correctional staff.
[0218] In one embodiment, video visitation is a two way real time
video and audio streaming conference, which can be schedule by the
inmate or an outside user using system 1000. Video visitation can
be implemented with security rules enforced by system 1000. For
example, the inmate must be available during the scheduled time,
and must have privileges for video visitation, the duration of the
visitation session must not exceed a maximum allowable period, for
example 30 minutes, particularly when using a general use kiosk,
and the outside user must be preapproved for communicating with the
inmate.
[0219] In accordance with the disclosure, a schedule may be made
available to inmates, correctional facility, and outside users,
illustrating scheduled digital data exchanges, and particularly for
audio and video streaming visitations. Security requirements of a
correctional facility may require that all real time streams are
scheduled, so that correctional staff can monitor such streams as
they take place, or optionally with a time delay. Accordingly, the
amount of time an inmate may participate can be limited, to ensure
there are adequate staff available, and to control use of available
resources, including for example equipment and personnel. In one
embodiment, all potential participants can propose scheduled times;
however, an ability to schedule a time may be restricted by
participant, time, duration, subject matter, style of stream (e.g.
chat, audio, or video), availability of particular monitoring
staff, past conduct of an inmate, or other factors.
[0220] Referring now to FIG. 22, three local executable application
display images, or local images 5040, 5042, 5044, illustrate
visible portions of instances of local app 5000 executing on either
a player 2000 or kiosk 3000, the images being separated by a
divider in FIG. 22. In local image 5040, an offer to purchase a
player 2000 is presented, the player purchasable using credits of
the inmate, within system 1000.
[0221] Music may be selected and purchased, as detailed elsewhere
herein. In local image 5042, it may be seen that album artwork 5046
can be viewed, together with other information, which can include
the track name, artist name, and album name, and other related
information about any aspect of the track, for example duration and
cost. An inmate may search for music within the available music
library by keyword relating to the music of interest, and may
search by genre 5046, as shown in local image 5044. Purchased music
may be stored on player 2000, or may be played using kiosk 3000. In
one embodiment, a purchase of music must be completed on kiosk
3000, which has access to a music library or depository, and which
can be updated regularly, for example daily, although a direct
purchase from player 2000 can also be implemented. In addition,
other digital content such as books, videos, shows, movies, news,
or educational content may be provided in a like manner as
described for music. Some content may be provided at no cost or
charge, for example health, safety, or facility regulations, which
may pertain to the correctional facility providing system 1000.
[0222] In one embodiment, music samples or segments of songs or
other digital content may be listened to by an inmate prior to
purchase. This is particularly important to avoid confusion,
particularly if the content library or catalog from which the
inmate may select contains millions of songs or videos, many of
which may have similar names.
[0223] In one embodiment, illustrated in three local executable
application images, or local images 5050, 5052, 5054 of FIG. 23,
inmates may purchase products, for example using credits, from an
approved supply location, for example a commissary of the
correctional facility. In local image 5050, an inmate may search by
category 5056, then may select a size 5058 of an item within the
category, although any shopping cart style implementation can be
used. In this embodiment, once an item is selected, more
information 5060 can be displayed, for example images of the item,
the quantity desired, a description of the item, the price, a
total, and an opportunity to check out 5062, or summarize the
purchase transaction. In local image 5054, a summary 5064 of
information pertaining to the items to be purchased is shown, and
an inmate may click or indicate `select` 5066 to complete the
transaction, which can result in credits of an inmate's account
being deducted, or credited if returns are permitted.
[0224] In an embodiment, the inventory available is the same as
product currently available in an existing commissary system of the
correctional facility, or alternatively, may include product which
is available elsewhere, and is supplied to a local commissary or
package distribution department, for distribution to the inmate.
System 1000 can be electronically integrated with a local
commissary system, and as described herein, can manage a system of
credits allocated to an inmate, including accepting transfers of
money by outside users, to allocate credits for inmates. All
aspects of system 1000 are thus advantageously integrated, to avoid
duplication of work, and to obtain synergy and reliability of the
whole, including the integration of purchasing, communication
between inmates and outside users (including correctional staff),
allocation of credit to inmates, storage of digital content
purchased by inmates, and review, analysis, and storage of inmate
communications.
[0225] In FIG. 24, two local executable application images, or
local images 5070 and 5072 are illustrated. In local image 5070, an
inmate may submit a request for support pertaining to the use of
system 1000. As with other communications by inmates, these
communications can be prescreened by system 1000 for keywords, and
may also be screened, and responded to, by correctional staff.
Support ticket requests may also be routed to an administrative
support organization associated with an implementer or provider of
system 1000.
[0226] In local image 5072, an inmate may submit a grievance,
request, or notification to correctional staff, who can answer
within system 1000. As in all aspects of system 1000, inmates and
outside users, which includes correctional facility staff, can be
notified by email, or other alert, for example an alarm within
system 1000, or a text message sent to the users cell phone, of
events within the system. Further, system 1000 can integrate with
and accept data from email and text messaging, whereby outside
users can submit communications to system 1000 using these methods,
or other communication methods available to outside users,
generally. A drop down text box 5076 enables the inmate (or if web
app 3000 an outside user) to select from a list of possible
subjects.
[0227] The grievance request can pertain to problems an inmate is
having with system 1000, or any other problem, concern, or
notification the user wishes to communicate to correctional staff.
As with local image 5072, a drop down text box 5078 enables a
selection of possible grievance subjects. As with all
communications within system 1000, limits can be placed on size,
content, and frequency of communication, by inmates, outside users,
and or staff.
[0228] Admin image 6100 is a portion of a screen image generated by
an administration software application, or admin app 6000, of
system 1000. Admin app 6000 provides a central administration
system for managing support and grievance requests, as well as any
other matters described herein which are managed by correctional
staff, and or an administrator of system 1000. Admin app 6000,
among other functions, enables a support or grievance ticket,
representing a support or grievance request 6102, to be reviewed
and responded to 6104 by appropriate staff. In the example of admin
image 6100, a correctional staffperson is resolving a question of
an inmate, in a communication with an administrative staffperson
associated with system 1000.
[0229] With reference to FIG. 25, a banking system application, or
bank app 7000 for use by inmates is illustrated. In accordance with
the disclosure, negotiable funds in currency are converted to
credits which may be allocated by the inmate for the purchase of
authorized items or services within system 1000. Portions of two
banking images 7002 and 7004, illustrative of screens generated by
banking app 7000, are shown. In banking image 7002, an inmate may
allocate credits or funds from a first account to a media account
7010, for the purchase of digital content as described herein. In
one embodiment, an inmate may also allocate credits or funds from a
first account to purchase "stamps" 7012, as described herein, which
may be used for particular activities, including for example
digital correspondence or inbound package or mail shipments. In
banking image 7004, an inmate may view a summary or detail 7014 of
activity affecting their account, and may request a printout 7016
of their account, if a printer is available. A portion of the
printout 7018 appears in image 7006. Bank app 7000 can provide a
complete trust account banking and accounting system for inmates,
or can supplement or complement a trust account system of a
correctional facility.
[0230] In FIG. 26, music image 5100 depicts a screen image
generated by music playing software of local app 5000, in this
example executing upon player 2000. A plurality of fields 5102
indicate information pertaining to the track currently playing, and
can additionally display the total number of tracks available and
the duration of the current track 5104, and or the rating 5106
given by the inmate. It can further be possible to sort available
tracks 5108. Many other functions not shown in the figures, but
known in the art or hereinafter developed, may be supported by
player 2000 and kiosk 3000. Further, while the images are in black
and white, as required herein, it should be understood that
displays 2102 and 3006 can display color. In an embodiment, other
tasks of player 2000 or kiosk 3000, as described herein, may be
carried out while music is being played. Player 2000 can further
include, for example, an FM radio application and receiver, a
clock, and games.
[0231] In one embodiment, player 2000 includes a setting section of
local app 5000 which contains or encodes identification
information, for example the inmate name and or an identification
number, for the inmate to whom the player 2000 was assigned. This
identification can be displayed on a home or startup screen, as
well, so that correctional staff can quickly ensure the player
belongs to the inmate who is in possession of it. Further, the
identification information cannot be changed by the inmate, and is
used by the kiosk or local server when communicating with player
2000, to ensure content is delivered only to the appropriate player
and inmate. Local app 5000 configured for player 2000 further
ensures that player 2000 cannot be connected to any other than
devices of system 1000, for example kiosk 3000 or local server
9000, which devices will preserve and observe encoded security
measures. An attempted connection to another device can trigger a
failure message upon the display, and can activate an alarm sound
or communication of the event to local server 9000 and or kiosk
3000, for example the next time player 2000 is connected
thereto.
[0232] In one embodiment, when an inmate wishes to use kiosk 3000,
they can be required to enter a username, for example their
offender ID#, and a corresponding password. Accordingly, a
preregistration and assignment of a password can be required to be
carried out before use of a kiosk 3000. System 1000 may assign an
initial password, after which an inmate can be required to change
the password. Support can also be provided for a lost or
compromised password, and optionally notification to correctional
staff of the event.
[0233] The foregoing description of possible implementations
consistent with the present disclosure does not represent a
comprehensive list of all such implementations or all variations of
the implementations described. The description of only some
implementation should not be construed as an intent to exclude
other implementations. Artisans will understand how to implement
the disclosure in many other ways, using equivalents and
alternatives that do not depart from the scope of the following
claims. Moreover, unless indicated to the contrary in the preceding
description, none of the components described in the
implementations are essential to the disclosure.
[0234] More particularly, in accordance with another embodiment of
the disclosure, and with reference to FIG. 27, outside users of
system 1000 can conduct video visitation using a commercially
generally available mobile computing device 8000, including a
cellphone, handheld tablet, or laptop. Mobile device 8000 executes
software which is a part of system 1000, and accordingly mobile
device 8000 forms part of system 1000, and enforces the security
measures described herein. More particularly, a mobile software
application, or mobile app 8100, stored within mobile device 8000
and executing within mobile device 8000, submits all digital
content for preapproval by correctional staff, and no digital
content is forwarded to an inmate until it has met all security
requirements, which can include approval of the sender, approval of
the digital contents, approval of the time, and authorization of
the inmate, for example. Herein, all streaming content is subject
to real time review by correctional staff, who can discontinue the
stream if an attempt is made to exchange non-allowed content.
[0235] While it is advantageous to carry out the disclosure using a
small lightweight device, such as mobile device 8000, which is
optimized to be easily used while being held in one hand, it should
be understood that the discussion herein with respect to mobile
device 8000 can also apply to laptops and desktop computing
devices, as well.
[0236] In one embodiment, correctional staff can optionally impose
a streaming time delay if deemed necessary, whereby staff has time
to block content before it is heard by a user. The time delay can
be imposed in one or both directions, whereby content provided by
either the outside user or the inmate can be subject to pre-review.
When the time delay is imposed, the sending user must wait at least
for the time delay period in order to receive a corresponding reply
from the receiving user.
[0237] To produce quality results, it is advantageous for the
mobile computing device to be connected to a network in
communication with player 2000 or kiosk 3000 of sufficient
bandwidth to produce the appearance of smooth, timely motion and
sound for each participant. This may typically be accomplished
with, for example, a 3G, 4G, or wired or wireless internet
connection, where the internet connection has sufficient bandwidth,
for example at least 1 Mbps.
[0238] With further reference to FIG. 27, it may be seen that an
inmate can communicate with an outside user using mobile device
8000 from a kiosk, using a network indicated by arrow "A". In one
embodiment of the disclosure, it can also be possible for an inmate
to communicate with an outside user using a player 2000A, which is
similar to player 2000, but includes a video camera recorder 2016
and a microphone 2008, and optionally a speaker 2010, using a
network indicated by arrow "B". In one embodiment, an inmate cannot
use player 2000 to communicate unless correctional staff authorize
such use using system 1000, for example authorizing communication
during a particular time period, for communicating with a
particular outside user, and optionally only when correctional
staff are available to monitor the communication. Software of
system 1000, executing within player 2000, enforces these rules,
for example obtaining such authorization wirelessly from a local
server of system 1000.
[0239] Networks "A" and "B" are typically non-wired over at least a
portion of the communication channel, for example between mobile
device 8000 and a cellular network. Kiosk 3000 is typically
connected to the internet using a wired connection, and therefore
the remainder of network "A" could be wired. In the case of network
"B", player 2000 or 2000A can communicate wirelessly using an
internal transmitter and receiver, but may communicate to a local
server which is wired to the internet. Alternatively, it is
possible for kiosk 3000 to have a wireless transmitter and
receiver, and player 2000, 2000A to be connected by port 2106, and
accordingly, either network "A" or "B" may be all or partly
wireless, or all or partly wired.
[0240] In one embodiment, player 2000 or 2000A plays streaming or
prerecorded video generated by correctional facility staff, in a
one way transmission. In another embodiment, a two way
communication with between one or a plurality of correctional
staff, and one or a plurality of inmates is enabled by system 1000.
An example of one correctional staff and one inmate communicating
is a counseling session. An example of a plurality of correctional
staff and a plurality of inmates is a "town hall" meeting. Other
examples, including uses for communication between a plurality of
staff and a single inmate, or a plurality of inmates and a single
staffperson, would be apparent to one skilled in the art. In all
such implementations of system 1000, it is not necessary for the
inmate and the staffperson to be in the same room, which is
likewise the case for communication between inmates and outside
users. In all cases, the burdens of moving inmates between
locations, and the attendant security issues, are eliminated. In
accordance with an embodiment, a plurality of correctional staff
can either participate in, or simply monitor a data stream.
[0241] In another embodiment, a plurality of outside users can
participate in a group data stream with an inmate, or an inmate
together with correctional staff. The data stream can include one
or a mix of chat, email, audio only, or video with audio, each
participant selecting the modality of their choice. In all
embodiments where multiple participants are involved, a plurality
of windows may be presented on a display of a user's system 2000,
3000, 2000A, or 8000/9000 (discussed below), each window containing
information pertaining to a different stream, for example different
video visitation streams.
[0242] In a further embodiment, some or all video visitation or
other communication sessions are stored, for later review by, for
example, correctional facility staff, justice department employees,
counselors, attorneys, the inmate, or the outside user. In one
embodiment, participants may obtain digital content controlled by
system 1000 at any time, including after an inmate is released. A
fee can be charged, collected for example using system 1000, to
cover the cost of storage, or such content can be archived and made
available for a profit. Moreover, all of the functionality and
services described herein with respect to system 1000, including
the provision of hardware and software, digital content, bandwidth,
support, archiving, data warehousing and mining, and customization,
can be made available for a fee chargeable to some or all users of
system 1000, for example according to use, relieving the
correctional facility of administrative burdens and system costs,
and enabling the implementation and maintenance of system 1000 over
time.
[0243] In accordance with a further embodiment, inmates and or
outside users can be notified, or be able to determine, when other
system users are available for text chat, streaming video, or other
form of communication. For example, local app 5000 can be informed
when a mobile device 8000 is online and available for an exchange
of digital content, for example using information pertaining to the
mobile phone number, MAC address, or other identification provided
by mobile app 8100 or native app 8200, advantageously with prior
approval from the outside user. In one embodiment, such
notification may be enabled only after authorization by
correctional staff. System 1000 enables and fosters an ability of
inmates to communicate with the outside world, when appropriate, in
order for inmates to be better prepared to ultimately successfully
reintegrate into society.
[0244] As noted above, an outside user can use web app 4000 or
mobile app 8100. Additionally, an outside user can use software of
system 1000 executing on a desktop computer or any other computing
device, whether intended to be mobile or not, the software written
specifically for the particular hardware environment, and not
executing within a browser. Such natively executing software, or
native app 8200, can be implemented in a native language, such as
C++, or may execute within a programming environment developed for
the computing device, such as JAVA or .NET. Advantages of a native
app can include, in some circumstances, real time toggling of
different audio and video devices, near real-time detection of and
reaction to fluctuating bandwidth, different sizing options
(including full screen), and prioritization of
frame-rate/resolution.
[0245] Additionally, the native app 8200 can more easily enable a
local server 9000, or a remotely connected server, to detect when,
for example, an outside user is logged into native app 8200. An
inmate using kiosk 3000 will then be able to see that the outside
user is connected to the server, and will be able to initiate a
video visit using funds from the inmate's media account. The length
of the visit will be limited by the remainder of the time left on
the inmate's session, or other duration limit set within system
1000 by correctional staff.
[0246] A cellular type mobile device executing mobile app 8100, can
sometimes have different capabilities than, for example a tablet
type device executing mobile app 8100, or native app 8200. Mobile
app 8100 and native app 8200 are thus available in one or more
versions, which can self configure to best utilize available
hardware. In one embodiment, for example, an inmate using a
cellular device could be enabled to see a particular outside user
as being online, and could similarly be enable and authorized to
initiate a video visit. In this event, the customer, if using
mobile app 8100, could toggle between front and back facing
cameras, or alternatively, could turn off video support. Headset
support can also be enabled. Tablet class mobile devices, for
example, can be enabled to support resizing of a video stream, and
can further be configured to prioritize a frame rate and or a
resolution. Mobile device 8000 can include one or more of a video
camera 8016, microphone 8008, speaker 8010, display 8102, and
processor 8014 (not shown).
[0247] A desktop computing system (not shown) 9800 can also be used
by an outside user, and can run a desktop app 9900 which functions
as described for mobile app 8100, and which executes software
designed for a particular hardware environment, which can take
optimal advantage of an ability to control hardware of the desktop
computer (not shown), including toggling enablement of a camera or
microphone, changing video resolution or frame rate, and engaging
in other optimizations to improve the quality of streaming digital
data, including video visitation data. For example, a desktop
system can analyze available bandwidth, and self configure software
and hardware to produce effective results, for example smooth
motion and acceptable sound quality when bandwidth is low, and
superior results, for example high definition video and sound, when
bandwidth is high.
[0248] More particularly, mobile app 8100 or desktop app 9900 can,
in one embodiment, detect bandwidth from each participant, for
example at the kiosk device as well as at the mobile device 8000 or
desktop system 9800, and modify input/output to be supportable at
the lowest bandwidth of either. Further, if during a streaming
session, should bandwidth for one user drop, software of system
1000 executing on both ends, for both users, reconfigures to adapt
for the new, lower bandwidth, advantageously within a few seconds
of the bandwidth change. Specifically, the video resolution can be
reduced, and can be increased again if bandwidth improves.
Detection of the bandwidth change can be carried out efficiently,
without using large amounts of bandwidth in the process, thereby
negatively impacting available bandwidth. Bandwidth can be
determined, for example, by measuring upload speed from a
device.
[0249] By providing natively executing applications 8100, 9800, an
ability to detect when a particular outside user is connected to
the server is facilitated. For example, apps 8100, 9800 can
periodically poll for such data, or can be remotely notified. In
this manner, an inmate at a kiosk 3000, for example, can see who is
available at a computer, and then initiate data exchange with an
available outside user. As an inmate may have a limited opportunity
to communicate using system 1000, this greatly increases an
inmate's ability to have positive communication with the outside,
and to ultimately successfully reintegrate into the outside world.
Security can be enabled as described herein for system 1000, to
restrict such communication to outside users permitted for a
particular inmate. Such communication, which includes audio
streaming, email, image exchange, and video visitation, can replace
burdensome aspects of maintaining communication for inmates. For
example, system 1000 can replace traditional phone systems, and
phone visitation facilities, reduce in-person visits, and replace
much written correspondence.
[0250] With reference to FIG. 28, a portion of a display generated
by an administration application, or admin app 9500, of system 1000
is illustrated. While the example shows `mail` and `letters`, it
should be understood that `mail` or `letters` herein refers to any
digital data or content, including prerecorded emails, chats, audio
messages or conversations, and video messages or conversations, all
of which can be reviewed prior to distribution to an inmate, or to
the intended outside user recipient. As may be seen in the column
entitled "Mail" at left, there are portions of admin app 9500 for a
variety of functions, including: lists of letters delivered;
summary reports of all mail sent and received, which may be used to
select letters, whereupon additional detail is provided; lists of
support tickets delivered; searching, for example for keywords,
which include text as well as sounds and images, for example sounds
corresponding to words, or images corresponding to people or
prohibited objects or activities; mail operational reports, for all
mail or focused upon inbound mail, including activities taken, and
current status of particular letters; stamp usage reports; lists
and detail for discarded inbound digital content; and deleted
digital content that has been recovered, or that is
recoverable.
[0251] At the center, in FIG. 28, are links to portions of admin
app 9500 pertaining to various functions associated with inbound
mail, including lists of mail pending approval; mail ready for
release and delivery; selection of mail for printing; lists of mail
that has been released; lists of mail that has been routed for
further security checks (Inspections and Investigations); mail that
has been returned to a "customer", or outside user; and mail that
has been rejected for delivery, e.g. for improper content, wrong
addressee, or other defect. At right, in FIG. 28, are links to
portions of admin app 9500 pertaining to functions corresponding to
inbound mail, but for outbound mail to outside users, for
example.
[0252] FIG. 29 illustrates a screen image generated by admin app
9500 when the `Requires Approval` item in FIG. 28 is selected.
Details regarding an email are illustrated, showing the results of
a keyword search performed automatically by system 1000, in which
suspicious content is summarized 9512, in this example foreign
language words flagged as requiring attention by a Spanish speaking
staffperson. Additionally, a particular word 9514 is flagged by the
system for further inspection. Keywords in each example may have
been established by being identified in historical digital content
which was problematic, the keywords added to a master list by
staffpeople, or preprogrammed within system 1000. In FIG. 29, the
reviewing staffperson can read the entire message, and take an
action 9516 as indicated at right.
[0253] FIG. 30 illustrates a screen image generated by admin app
9500 when the item "Send to `Sent to I&I`" is selected in FIG.
29. In this example, the review selects from a drop down list 9518
of reasons for forwarding the digital content for additional
investigation. In subsequent steps, other correctional staff can
quickly understand why the digital content was forwarded to them
for additional investigation, and staff can take appropriate
action. Access to the digital content giving rise to the
investigation is centrally stored, so that it may be access by all
staffpersons involved in the initial review and follow-on
investigation.
[0254] Non-Limiting Examples
[0255] Although specific embodiments of the subject matter have
been disclosed, those having ordinary skill in the art will
understand that changes can be made to the specific embodiments
without departing from the spirit and scope of the disclosed
subject matter. The scope of the disclosure is not to be
restricted, therefore, to the specific embodiments, and it is
intended that the appended claims cover any and all such
applications, modifications, and embodiments within the scope of
the present disclosure.
* * * * *