US20230379403A1 - Video kiosk inmate assistance system - Google Patents
Video kiosk inmate assistance system Download PDFInfo
- Publication number
- US20230379403A1 US20230379403A1 US18/210,230 US202318210230A US2023379403A1 US 20230379403 A1 US20230379403 A1 US 20230379403A1 US 202318210230 A US202318210230 A US 202318210230A US 2023379403 A1 US2023379403 A1 US 2023379403A1
- Authority
- US
- United States
- Prior art keywords
- inmate
- agent
- kiosk
- client
- possession
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 claims abstract description 144
- 230000004044 response Effects 0.000 claims description 65
- 238000000034 method Methods 0.000 claims description 34
- 238000012544 monitoring process Methods 0.000 claims description 33
- 238000009434 installation Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 20
- 230000001815 facial effect Effects 0.000 claims description 15
- 210000001525 retina Anatomy 0.000 claims description 4
- 239000003795 chemical substances by application Substances 0.000 description 266
- 230000006870 function Effects 0.000 description 19
- 238000012545 processing Methods 0.000 description 16
- 230000001413 cellular effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 7
- 238000013475 authorization Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000012790 confirmation Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000012552 review Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 231100000735 select agent Toxicity 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/18—Payment architectures involving self-service terminals [SST], vending machines, kiosks or multimedia terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4015—Transaction verification using location information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/764—Media network packet handling at the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/63—Location-dependent; Proximity-dependent
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/63—Location-dependent; Proximity-dependent
- H04W12/64—Location-dependent; Proximity-dependent using geofenced areas
Definitions
- This disclosure relates to a video kiosk inmate assistance system.
- An inmate confined to an inmate booking environment may require the assistance of an inmate agent.
- an inmate may require an attorney for legal representation, and/or a bail bondsperson to help the inmate post bond in order to be released from the inmate booking facility.
- many inmates lack the means to find inmate agents and/or communicate with inmate agents during their confinement.
- current inmate booking environments fail to provide an opportunity for inmate agents to efficiently, securely, and confidentially assist inmates.
- FIG. 1 illustrates a block diagram of an example framework for providing a video kiosk inmate system in an inmate booking environment, according to exemplary embodiments.
- FIG. 2 illustrates a block diagram of an example framework for providing a video kiosk inmate system in an inmate booking environment, according to exemplary embodiments.
- FIG. 3 is a flow diagram illustrating an example process for providing inmate assistance via a video kiosk inmate system, according to exemplary embodiments.
- FIG. 4 is a flow diagram illustrating an example process for providing inmate assistance via a video kiosk inmate system, according to exemplary embodiments.
- FIGS. 5 A- 5 B illustrate an example graphical user interface for providing a video kiosk inmate system, according to exemplary embodiments.
- FIG. 6 illustrates a block diagram of select components of an example kiosk management server, according to exemplary embodiments.
- FIG. 7 illustrates a block diagram of select components of an example agent device, according to exemplary embodiments.
- FIG. 8 illustrates a block diagram of select components of an example inmate device, according to exemplary embodiments.
- FIG. 9 illustrates a block diagram of a general purpose computer that may be used to perform various aspects of the present disclosure.
- any reference to the term “module” shall be understood to include at least one of software, firmware, and hardware (such as one or more circuit, microchip, or device, or any combination thereof), and any combination thereof.
- each module may include one, or more than one, component within an actual device, and each component that forms a part of the described module may function either cooperatively or independently of any other component forming a part of the module.
- multiple modules described herein may represent a single component within an actual device. Further, components within a module may be in a single device or distributed among multiple devices in a wired or wireless manner.
- FIG. 1 illustrates a block diagram of an example framework for providing a video kiosk inmate system 100 , according to an exemplary embodiment.
- FIG. 1 shows interactions between a kiosk management server 102 , a kiosk device 104 , an agent device 106 associated with an inmate agent 108 , and an inmate device 110 associated with an inmate 112 , via a communication network(s) 114 .
- the communication network 114 may include any or all of a private network, personal area network (PAN), Local-Area Network (LAN), a Wide-Area Network (WAN), or the Internet.
- PAN personal area network
- LAN Local-Area Network
- WAN Wide-Area Network
- the inmate agent 108 (e.g., a bail bondsperson or attorney) utilizes the agent device 106 to log into a presence based service 116 of the kiosk management server 102 .
- the presence based service 116 monitors the availability of a plurality of inmate agents, such as the inmate agent 108 , to provide legal services or bail bond services to inmates, such as the inmate 112 .
- the presence based service 116 manages communication between the agent device 106 and the kiosk management server 102 , the kiosk device 104 , and/or the inmate device 110 .
- the agent device 106 sends a login request 118 to the presence based service 116 via the communication network 114 .
- the login request 118 includes a client identifier 120 corresponding to the inmate agent 108 , and a client credential 122 .
- the presence based service 116 authenticates the agent device 106 .
- the presence based service 116 determines whether the client credential 122 matches locally stored authentication information associated with the client identifier 120 . If the agent device 106 successfully authenticates to the presence based service 116 , the agent device 106 is logged into the presence based service 116 .
- the kiosk management server 102 sends inmate agent information 124 associated with the inmate agent 108 to the kiosk device 104 via the communication network 114 .
- the inmate agent information 124 indicates to the kiosk device 104 that the inmate agent 108 is available to provide services to the inmate 112 via the kiosk device 104 . Further, the inmate agent information 124 indicates the services that the inmate agent 108 provides to inmates within an inmate booking environment 126 (e.g., central booking and intake facility, prison, etc.). Additionally, the inmate agent information 124 includes biographical information of the inmate agent 108 , contact information associated with the inmate agent 108 , reviews of past services provided by the inmate agent 108 , pricing information associated with the inmate agent 108 , and/or payment information associated with the inmate agent 108 . Some examples of services the inmate agent 108 may provide include legal representation or bail bond services.
- the kiosk device 104 Upon receipt of the inmate agent information 124 , the kiosk device 104 presents the inmate agent information 124 to users of the kiosk device 104 . In certain embodiments, the kiosk device 104 presents a graphical representation of the inmate agent information 124 via a display interface of the kiosk device 104 .
- the inmate 112 may be confined to the inmate booking environment 126 in accordance with an arrest or detainment. Further, the inmate 112 may require assistance from the inmate agent 108 while confined to the inmate booking environment 126 . As an example, the inmate 112 may require assistance posting bond in order to be released from the inmate booking environment 126 , and/or legal representation. As such, the inmate 112 may view the inmate agent information 124 via the kiosk device 104 , and select to communicate with the inmate agent 108 . In some embodiments, the inmate agent information 124 is presented to the inmate 112 based on one or more attributes of the inmate agent 108 or inmate 112 .
- the kiosk device 104 presents the inmate agent information 124 to the inmate 112 based on a shared location of the inmate agent 108 and the inmate 112 , a service fee of the inmate agent 112 , a charge made against the inmate 112 , and/or the bail amount set for the inmate 112 .
- the kiosk device 104 In response to the inmate selecting to communicate with the inmate agent 108 , the kiosk device 104 sends an inmate agent selection 128 to the kiosk management server 102 via the communication network 114 indicating that the inmate 112 requests to communicate with the inmate agent 108 .
- the kiosk management server 102 upon receipt of the inmate agent selection 128 , establishes an out of band communication channel 130 between the agent device 106 and the kiosk device 104 .
- the presence based service 116 establishes a video communication channel, a voice communication channel, and/or textual communication channel between the agent device 106 and the kiosk device 104 .
- the kiosk management server 102 upon receipt of the inmate agent selection 128 , establishes the out of band communication channel 130 between the agent device 106 and the inmate device 110 .
- the inmate 112 and the inmate agent 108 can arrange, via the out of band communication channel 130 , for the inmate agent 108 to post bond for the inmate 112 , according to some embodiments.
- the inmate 112 and the inmate agent 108 can configure location monitoring of the inmate 112 via the inmate device 110 via the out of band communication channel 130 according to some embodiments.
- the inmate 112 and the inmate agent 108 can arrange for the inmate agent 108 to provide legal representation to the inmate 112 and discuss legal issues facing the inmate 112 via the out of band communication channel 130 .
- the kiosk management server 102 includes inmate information 132 associated with the inmate 112 .
- the inmate information 132 includes charges brought against the inmate 112 , a bail amount set for release of the inmate 112 , and a fine amount levied against an inmate 112 .
- the kiosk management server 102 sends the inmate information 132 to the agent device 106 .
- the kiosk management server 102 sends the inmate information 132 to the agent device 106 .
- the inmate agent 108 may further assist the inmate 112 .
- the inmate agent 108 may provide legal advice in view of the charges brought against the inmate, arrange to post bail in the amount of the bail amount set for release of the inmate 112 , and/or arrange for payment of the fine amount levied against the inmate 112 .
- Some examples of the inmate device 110 and/or agent device 106 include smart phones and mobile communication devices, tablet computing devices, desktops, laptops, netbooks and other portable computers, wearable computing devices, and any other computing device capable of sending communications to the kiosk management server 102 and/or the kiosk device 104 .
- FIG. 2 illustrates a block diagram of an example framework for providing a video kiosk inmate system 200 , according to an exemplary embodiment.
- the video kiosk inmate system 200 includes a kiosk management server 202 , a plurality of kiosk devices 204 (e.g., kiosk device 104 ), a plurality of agent devices 206 (e.g., agent device 106 ) associated with a plurality of inmate agents 208 , a plurality of inmate devices 210 associated with a plurality of inmates 212 , an inmate associate device 214 associated with an inmate associate 216 , and a tracking device 218 .
- a kiosk management server 202 includes a plurality of kiosk devices 204 (e.g., kiosk device 104 ), a plurality of agent devices 206 (e.g., agent device 106 ) associated with a plurality of inmate agents 208 , a plurality of inmate devices 210 associated with a plurality of inmates 212 , an inmate associate device 214 associated with
- individual video kiosk devices 204 are located within individual inmate booking environments 220 for use by the inmates 212 within the inmate booking environments 220 .
- the individual inmate agents 208 are associated with particular agent devices 206 .
- a first inmate agent 208 ( 1 ) is associated with a first inmate agent device 206 ( 1 )
- an nth inmate agent 208 (N) is associated with an nth inmate agent device 206 (N), and so forth.
- individual inmates 212 are associated with particular inmate devices 210 .
- a first inmate 212 ( 1 ) is associated with a first inmate device 210 ( 1 )
- an nth inmate 212 (N) is associated with an nth inmate device 210 (N), and so forth.
- the kiosk management server 202 , the plurality of kiosk devices 204 , the plurality of agent devices 206 , the plurality of inmate devices 210 , the inmate associate device 214 , and the tracking device 218 are coupled via a communication network(s) 222 .
- the communication network(s) 222 may include any or all of a private network, personal area network (PAN), Local-Area Network (LAN), a Wide-Area Network (WAN), or the Internet.
- connection between any of the kiosk management server 202 , the plurality of kiosk devices 204 , the plurality of agent devices 206 , the plurality of inmate devices 210 , the inmate associate device 214 , or the tracking device 218 , and the communication network(s) 222 may be a wireless connection (e.g., BluetoothTM, Wi-Fi connection, etc.), or a wired connection (e.g., Ethernet, universal serial bus (USB), etc.).
- a wireless connection e.g., BluetoothTM, Wi-Fi connection, etc.
- a wired connection e.g., Ethernet, universal serial bus (USB), etc.
- the kiosk management server 202 includes a security module 224 , a presence based service 226 , agent information 228 , inmate information 230 , a payment service 232 , a tracking initialization module 234 , and a tracking module 236 .
- the security module 224 performs authentication and authorization of the clients (i.e., the inmate agents 208 , the inmates 212 , and the inmate associate 216 ), and/or the client devices (i.e., the kiosk device 204 , the agent devices 206 , the inmate devices 210 , the inmate associate devices 214 , and tracking device 218 ) of the kiosk management server 202 .
- the security module 224 performs encryption and decryption of data transmitted between the kiosk management server 202 and the client devices.
- the security module 224 manages authentication information and authorization information for performing authentication and authorization of the clients and client devices.
- authentication information include authentication credentials, user identifiers, device identifiers, passwords, certificates, cookies, tokens, etc.
- authorization information include access control lists (ACLs), client capabilities, client device capabilities, security policy information, etc.
- the security module 224 performs integrity checks of the client devices. For example, the security module 224 determines whether the firmware or operating system of an inmate device 210 ( 1 ) has been compromised. As another example, the security module 224 determines whether an unauthorized hardware component has been connected to the inmate device 210 ( 1 ). Further, the security module 224 determines whether one or more required applications/features are installed and/or functional on the inmate device 210 ( 1 ).
- the kiosk management server 202 sends a integrity request 238 to the inmate device 210 ( 1 ).
- the inmate device 210 ( 1 ) sends an integrity response to the kiosk management server 202 .
- the security module 224 verifies the integrity of the inmate device 210 based upon the integrity response 240 .
- the integrity response 240 includes proof information 242 that can be used to determine the integrity of the inmate device 210 ( 1 ).
- the proof information 242 can include data describing version information corresponding to the applications installed on the inmate device 210 ( 1 ).
- the proof information 242 can include a hash value generated by the inmate device 210 ( 1 ) using objects (i.e., identifiers, secrets, passwords, certificates, etc.) associated with the inmate device 210 ( 1 ).
- the hash value is generated based on challenge information included in the integrity request 238 .
- the inmate device 210 ( 1 ) may generate a cryptographic hash based on a secret associated with the inmate device 210 ( 1 ) and the contents of the integrity request 238 .
- the security module 224 manages the secure storage of inmate information 230 on agent devices 206 .
- the kiosk management server 202 sends the inmate information 230 to the agent devices 206 in order for the inmate agents 208 to assist the inmates 212 .
- the inmate information 230 includes privileged and confidential information associated with the inmates 212 .
- the security module 224 manages the creation of secure memory locations 244 on the agent devices 206 , and storage of portion s of the inmate information 230 within the secure memory location 244 .
- the contents of the secure memory locations 244 are encrypted and/or password protected on the agent devices 206 .
- the security module 224 may employ client agent applications 246 installed on the agent devices 206 to create the secure memory locations 244 and store the inmate information 230 within the secure memory locations 244 .
- the presence based service 226 manages the availability of the inmate agents 208 to assist the inmates 212 .
- the inmate agents 208 complete a registration process with the presence based service 226 .
- inmate agents 208 submit registration information and receive a service account.
- the registration process includes a verification step that includes verifying that inmate agents 208 are legally permitted to provide services to inmate 212 .
- registration information include authentication information, authorization information, biographical information, geographical regions serviced by the inmate agent, inmate agent preferences, agent device information, contact information, pricing information, billing information, and/or payment information.
- the inmate agents 208 use the agent devices 206 to log into the presence service based 226 . Once the agent devices 206 are logged into the presence based service 226 , the agent devices 206 periodically send the presence statuses 248 to the presence based service 226 , the presence statuses 248 indicating to the presence based service 226 the availability of the inmate agents 208 to assist the inmates 212 .
- the agent device 206 ( 1 ) sends the presence status 248 ( 1 ) indicating that the inmate agent 208 ( 1 ) would like to remain logged into the presence based service 226 .
- the presence based service 226 Upon receipt of the presence status 248 ( 1 ), the presence based service 226 notifies the kiosk devices 204 that the inmate agent 208 ( 1 ) is available to assist the inmates 212 .
- the presence based service 226 sends inmate agent information 250 to the kiosk devices 204 indicating that the inmate agent 208 ( 1 ) is available to assist the inmates 212 .
- the agent device 206 ( 1 ) sends the presence status 248 ( 1 ) indicating that the inmate agent 208 ( 1 ) is logging out of the presence based service 226 .
- the presence based service 226 Upon receipt of the presence status 248 ( 1 ), the presence based service 226 notifies the kiosk devices 204 that the inmate agent 208 ( 1 ) is no longer available to assist the inmates 212 .
- the presence based service 226 notifies the kiosk devices 204 that the inmate agent 208 ( 1 ) is no longer available to assist the inmates 212 by withholding information related to the inmate agent 208 ( 1 ) from the inmate agent information 250 .
- the presence based service 226 explicitly indicates that the inmate agent 208 ( 1 ) is no longer available within the inmate agent information 250 .
- the presence based service 226 facilitates the initialization of secure out of band communication channels 252 ( 1 )-(N) between the client devices. Further, once the out-of-band communication channels 252 are established between client devices, the client devices may electronically communicate independent of the presence based service 226 . For example, the kiosk device 204 communicates with the agent device 206 ( 1 ) via the out of band communication channel 252 ( 1 ), thereby allowing the inmate 212 ( 1 ) and the inmate agent 208 ( 1 ) to communicate in confidence. Additionally, or alternatively, the client devices can communicate via the presence based service 226 . For instance, in some embodiments, client devices can communicate via communication channels established and maintained by the presence based service 226 . In some examples, the communication channels of the presence based service 226 are encrypted end to end to protect communication via the communication channels of the presence based service 226 from eavesdropping.
- the inmate agent information 228 includes information about the inmate agents 208 in the video kiosk inmate system 200 . As illustrated in FIG. 2 , the inmate agent information 228 includes inmate agent profiles 254 corresponding to the inmate agents 208 providing services within the video kiosk inmate system 200 . For example, the first inmate agent profile 254 ( 1 ) is associated with the first inmate agent 208 ( 1 ), the nth inmate agent profile 254 (N) is associated with the nth inmate agent 208 (N), and so forth.
- the inmate agent profiles 254 include authentication information, encryption information, authorization information, biographical information, geographical regions serviced by the associated inmate agent, executed service agreements, existing inmate clients, agent device information, contact information, user reviews, an account balance, pricing information, billing information, and/or payment information.
- the inmate information 230 includes information about the inmates 212 confined to inmate booking environments 220 within the video kiosk inmate system 200 . As illustrated in FIG. 2 , the inmate information 230 includes inmate profiles 256 corresponding to the inmates 212 . For example, the first inmate profile 256 ( 1 ) is associated with the first inmate 212 ( 1 ), the nth inmate profile 256 (N) is associated with the nth inmate 212 (N), and so forth.
- the inmate profiles 256 include authentication information, biometric information, encryption information, inmate device information, executed service agreements, personal contact information, emergency contact information, historic location information, booking information, and/or criminal history information from one or more of a jail management system (JMS), an offender management system (OMS), a public database containing information on the inmates 212 .
- JMS jail management system
- OMS offender management system
- the kiosk management server 202 further includes the payment service 232 that processes payments within the video kiosk inmate system 200 .
- the payment service 232 processes payments to the inmate agents 208 from inmates 212 using the kiosk devices 204 .
- the kiosk device 204 ( 1 ) sends a payment communication 258 to the payment service 232 , the payment communication 258 representing the payment of a retainer by the inmate 212 ( 1 ) to the inmate agent 208 ( 1 ).
- the payment service 232 transfers the payment amount to the account balance of the inmate agent 208 ( 1 ).
- the inmate device 210 ( 1 ) sends a payment communication 258 to the payment service 232 , the payment communication 258 representing payment for bail bondsman services provided by the inmate agent 208 ( 1 ) to the inmate 212 ( 1 ). Further, the payment service 232 transfers the transfer the payment amount to the account balance of the inmate agent 208 ( 1 ). In some other embodiments, the payment service 232 processes payments from the inmate agents 208 on behalf of the inmates 212 . For example, the agent device 206 ( 1 ) sends the payment communication 258 to the payment service 232 , the payment communication representing the posting of a bond by the inmate agent 208 ( 1 ) on behalf of the inmate 212 ( 1 ).
- the payment service 232 transfers the payment amount to an account associated with the jurisdictional entity responsible for release of the inmate 212 ( 1 ). Additionally, or alternatively, the payment service 232 can receive a payment communication 258 from the inmate associate device 214 associated with the inmate associate 216 (e.g., a family member or friend of an inmate 212 ) on behalf of the inmate 212 ( 1 ).
- a payment communication 258 from the inmate associate device 214 associated with the inmate associate 216 (e.g., a family member or friend of an inmate 212 ) on behalf of the inmate 212 ( 1 ).
- the security module 224 authenticates the inmate 212 ( 1 ) as the current user of the kiosk device 204 . Additionally, the payment service 232 determines a bail amount set for release of the inmate 212 ( 1 ), and/or a fine amount levied against the inmate 212 ( 1 ) based on the inmate profile 256 ( 1 ). Further, the payment service 232 sends a payment request 260 to the kiosk device 204 in the amount of the bail amount, and/or the fine amount levied against the inmate 212 ( 1 ). In addition, the payment service receives the payment communication 258 corresponding to the payment request 260 , and verifies the payment information provided in the payment communication 258 .
- the payment service 232 may notify the proper authorities that one or more conditions for release have been met. For example, the payment service 232 may send a communication to an operator of the inmate booking environment 220 indicating that one or more conditions for release have been met. As another example, the payment service 232 may update the inmate information 230 (e.g., a jail management system (JMS), an offender management system (OMS), a public database containing information on prison inmates) to indicate that one or more conditions for release have been met.
- JMS jail management system
- OMS offender management system
- a public database containing information on prison inmates e.g., a public database containing information on prison inmates
- the tracking initialization module 234 configures a location monitoring device to collect location information 262 corresponding to an inmate 212 , and send the location information 262 to the tracking module 236 .
- Some examples of the location monitoring devices include the inmate devices 210 and the tracking device 218 .
- the tracking device 218 is provided by the kiosk device 204 . In some other instances, the tracking device 218 is provided by an operator of the inmate booking environment 220 .
- the inmate 212 ( 1 ) may be released under a condition that the inmate 212 ( 1 ) periodically provide the location information 262 to the kiosk management server 202 , and/or remain within a predetermined geographic region for a predetermined period of time. In some other embodiments, the inmate 212 ( 1 ) may agree to provide location information 262 to the kiosk management server 202 , and/or remain within a predetermined geographic region for a predetermined period of time under the terms of an agreement with the inmate agent 208 ( 1 ). For example, the inmate 212 ( 1 ) may agree to provide the location information 262 to the inmate agent 208 ( 1 ) under the terms of an agreement for the inmate agent 208 ( 1 ) to post bond for the inmate 212 ( 1 ).
- the tracking initialization module 234 manages the installation of a location monitoring application 264 on the location monitoring devices. For example, the tracking initialization module 234 verifies the integrity of the inmate device 210 ( 1 ) via the security module 224 . Further, the tracking initialization module 234 sends an installation executable 266 corresponding to the location monitoring application 264 to the inmate device 210 ( 1 ). Additionally, or alternatively, the kiosk device 204 may provide the installation executable 266 corresponding to the location monitoring application 264 to the inmate device 210 ( 1 ).
- the tracking initialization module 234 verifies installation of the location monitoring application 264 on the inmate device 210 ( 1 ).
- the location monitoring application 264 sends an installation confirmation 268 to the tracking initialization module 234 .
- the tracking initialization module 234 updates the inmate profile 256 ( 1 ) to include a mapping of the inmate 212 ( 1 ) to an identifier of the location monitoring application 264 on the inmate device 210 ( 1 ).
- the tracking initialization module 234 updates the inmate agent profile 254 ( 1 ) to include a mapping of the inmate agent 208 ( 1 ) to an identifier of the location monitoring application 264 on the inmate device 210 ( 1 ).
- the mapping of the inmate agent 208 ( 1 ) and the identifier of the location monitoring application 264 provides the inmate agent 208 ( 1 ) access to the location information 262 received from the location monitoring application 264 .
- the tracking initialization module 234 determines a geographic region associated with the inmate 212 ( 1 ) based on the location information 262 .
- the inmate device 210 ( 1 ) sends the location information 262 to the tracking initialization module 234 .
- the location information 262 may include historical location data collected by the inmate device 210 ( 1 ), the historical location data indicating locations commonly frequented by the inmate 212 ( 1 ) (e.g., home, work, school, local stores, etc.). Further, the tracking initialization module 234 determines a geographic region that includes the locations commonly frequented by the inmate 212 ( 1 ).
- the tracking initialization module 234 determines the geographic region by generating a density map or heat map representing locations historically frequented by the inmate 212 ( 1 ), and creating a boundary around the densest areas.
- the geographic region is further limited by a geographic region (e.g., city of residence, county of residence, town of residence, state of residence, etc.) associated with the inmate 212 ( 1 ). Additionally or, alternatively, the size of the geographic region may be modified based on the inmate agent profile 254 ( 1 ) and/or inmate profile 256 ( 1 ).
- the inmate agent profile 254 ( 1 ) may indicate that the inmate agent 208 ( 1 ) has a preference for posting bond for inmates 208 ( 1 ) that will limit their travel upon release to an area within a predetermined distance from a place of business of the inmate agent 212 ( 1 ).
- the geographic region is modified to ensure compliance with the preference of the inmate agent 208 ( 1 ).
- the geographic region may be limited by a charge included in the inmate profile 256 ( 1 ). For instance, the kiosk management server may reduce the size of the geographic region if the inmate 212 ( 1 ) has committed a violent crime.
- the tracking module 236 uses the geographic region to monitor the inmate 212 ( 1 ) upon release.
- the location monitoring application 264 sends the location information 262 to the tracking module 236 of the kiosk management server 202 .
- the tracking module 236 Upon receipt of the location information 262 , the tracking module 236 sends the location information 262 to the agent device 206 ( 1 ) under the terms of a service agreement between the inmate 212 ( 1 ) and the inmate agent 208 ( 1 ).
- the location information 262 includes a device identifier 270 corresponding to the inmate device 210 ( 1 ), and a location identifier 272 .
- a location identifier 272 includes a coordinate, positional descriptor, or any other information capable of identifying a location of the inmate device 210 ( 1 ).
- the tracking module 236 generates a graphical representation of the location of inmate device 210 ( 1 ), and sends the graphical representation to the agent device 206 ( 1 ) within the location information 262 .
- the graphical representation includes a map of a geographical region corresponding to the location identifier 272 , and a graphical indicator corresponding to the location of the inmate device 210 ( 1 ) within the geographical region.
- the tracking module 236 monitors whether the inmate device 210 ( 1 ) remains in the geographic region determined by the tracking initialization module 234 . Further, if the inmate device 210 ( 1 ) is detected outside of the geographic region, the tracking module 236 sends a warning communication 274 to the agent device 206 ( 1 ) indicating that the inmate device 210 ( 1 ) is currently outside of the geographic region. In some instances, the tracking module 236 sends the warning communication 274 to the agent device 206 ( 1 ) based on the tracking module 236 determining that the inmate device 210 ( 1 ) has been detected outside of the geographic region for a period of time longer than a predetermined amount.
- the tracking module 236 sends the warning communication 274 to the agent device 206 ( 1 ) based on the tracking module 236 determining that the inmate device 210 ( 1 ) has been detected more than a predetermined distance outside of the geographic region.
- the kiosk management service 204 provides the inmate agent 208 ( 1 ) an opportunity to communicate with the inmate 212 ( 1 ) during a potential attempt to abscond, and/or locate the inmate 212 ( 1 ) during a potential attempt to abscond.
- the tracking module 236 notifies a law enforcement agency of the location of the inmate 212 ( 1 ). For instance, the tracking module 236 sends the warning communication 274 to a device associated with a law enforcement agency and/or law enforcement officer.
- the tracking module 236 verifies that the inmate 212 ( 1 ) is currently in possession of the inmate device 210 ( 1 ). For example, the inmate 212 ( 1 ) may leave the inmate device 210 ( 1 ) within the geographic region and travel to another geographic region as a means of circumventing the location monitoring. Further, circumvention of location monitoring may be indicative of an attempt by the inmate 212 ( 1 ) to abscond, and risks the inmate agent 208 ( 1 ) being responsible for paying the full bond amount.
- the tracking module 236 sends a possession request 276 to the inmate device 210 ( 1 ).
- the inmate device 210 ( 1 ) sends a possession response 278 to the tracking module 236 .
- the possession response 278 includes activity information of the inmate device 210 ( 1 ) that can be used to determine that the inmate device 210 ( 1 ) has not been dispossessed or abandoned by the inmate 212 ( 1 ).
- the possession response 278 includes authentication information, such as facial recognition, fingerprint identification information, palm print identification information, iris recognition information, retina recognition information, voice recognition information, cryptographic hashes, credentials, secrets, passwords, etc.
- the possession response includes a device identifier 270 that identifies the inmate device 210 ( 1 ), and a timestamp 280 representing the time the possession information was captured by the inmate device 210 ( 1 ).
- the tracking module 236 Upon receipt of the possession response 278 , the tracking module 236 verifies that the inmate 212 ( 1 ) is in possession of the inmate device 210 ( 1 ). In some embodiments, the tracking module 236 uses the activity information (e.g., data collected by sensors of the inmate device 210 ( 1 ) to determine that that inmate 212 ( 1 ) is currently using the inmate device 210 ( 1 ). For example, the activity data may reveal that one or more applications of the inmate device 210 ( 1 ) have been recently used by the inmate 212 ( 1 ), or recent use of a telephonic function of the inmate device 210 ( 1 ).
- the activity information e.g., data collected by sensors of the inmate device 210 ( 1 ) to determine that that inmate 212 ( 1 ) is currently using the inmate device 210 ( 1 ).
- the activity data may reveal that one or more applications of the inmate device 210 ( 1 ) have been recently used by the inmate 212 ( 1
- the tracking module 236 verifies that the authentication information provided in the possession response 278 is valid based on at least one of the security module 224 and the inmate profile 256 ( 1 ). For instance, the security module 224 compares the possession response 278 to authentication information stored in the inmate profile 256 ( 1 ) to determine whether the inmate 212 ( 1 ) is in possession of the inmate device 210 ( 1 ).
- the inmate device 210 ( 1 ) captures facial data using a biometric sensor and sends the facial data to the tracking module 236 in the possession response 278 . Further, the security module 224 compares a number of the facial data points included in the possession response 278 to a number of facial data points included in the inmate profile 256 ( 1 ) using machine learning and/or pattern recognition techniques. Facial data included but is not limited to facial data information representing the characteristics of a person's face such as distances between eyes, nose, and mouth, and shapes of the eyes, nose, mouth, jaw. Facial data also includes facial information created from, for example, a hash function, of the facial data points.
- the tracking module 236 determines that the inmate 212 ( 1 ) is currently in possession of the inmate device 210 ( 1 ).
- the tracking module 236 ( 1 ) sends the warning communication 274 to the agent device 206 ( 1 ) indicating that the inmate 212 ( 1 ) may no longer be in possession of the inmate device 210 ( 1 ). Further, if the tracking module does not receive the possession response 278 , or the timestamp 280 indicates that the possession response 278 does not meet predetermined freshness requirements, the tracking module 236 sends the warning communication 274 to the agent device 206 ( 1 ) indicating that the inmate 212 ( 1 ) may no longer be in possession of the inmate device 210 ( 1 ).
- the kiosk devices 204 include a kiosk application 282 , a payment interface 284 , input/output (I/O) devices 286 (e.g., display, microphone, camera, biometric sensors, etc.), and a communication interface 288 .
- the inmates 212 utilize the kiosk application 282 to receive assistance from the inmate agents 208 .
- the inmates 212 utilize the kiosk device 204 to view the agent information 228 via the display 290 , select inmate agents 208 via the I/O devices 286 , and establish a communication channel (e.g., out of band communication channel 252 ) with the inmate agent devices 206 via the communication interface 288 .
- a communication channel e.g., out of band communication channel 252
- the kiosk application 282 identifies the inmates 212 using the kiosk devices 204 .
- the kiosk application 282 collects authentication information 292 from the inmate 212 ( 1 ) using the I/O devices 286 ( 1 ) of the kiosk device 204 .
- the kiosk application 282 sends an inmate information request 294 to the kiosk management server 202 , wherein the inmate information request 294 includes the authentication information 292 and an inmate identifier 296 of the inmate 212 ( 1 ).
- the security module 224 Upon receipt of the inmate information request 294 , the security module 224 authenticates the inmate 212 ( 1 ) by comparing the authentication information 292 with inmate information 230 (i.e., inmate profile 256 ( 1 )) associated with the inmate identifier 296 . Further, the kiosk management server 202 sends an inmate information response 298 to the kiosk device 204 .
- the inmate information response 298 includes the charges brought against the inmate 212 ( 1 ), a bail amount set for release of the inmate 212 ( 1 ), and/or a fine amount levied against the inmate 212 ( 1 ).
- the kiosk device 204 upon receipt of the inmate information response 298 , the kiosk device 204 presents the inmate 212 ( 1 ) with the ability to share the inmate information response 298 with the inmate agents 208 . For example, if the inmate 212 ( 1 ) and the inmate agent 208 ( 1 ) have executed a service agreement, the inmate 212 may authorize the kiosk device 204 or the kiosk management server 202 to send the inmate information response 298 to the inmate agent 206 ( 1 ).
- the inmate 212 ( 1 ) can make a payment based upon the inmate information response 298 .
- the inmate information response 298 may indicate that inmate 212 ( 1 ) has a fine and/or bond amount associated with release of the inmate 212 ( 1 ) from the inmate booking environment 220 .
- the kiosk device 204 may present a graphical user interface via the I/O device 286 ( 1 ) that instructs the inmate 212 ( 1 ) on payment of the fine and/or bond.
- the inmate 212 ( 1 ) may use the payment interface 284 for payment of the fine and/or bond.
- the inmate 212 ( 1 ) may use a payment card or payment card information to make payment of the fine and/or bond via the payment interface 284 .
- the kiosk device 204 sends the payment communication 258 to the kiosk management server 202 in response to receipt of payment from the inmate 212 ( 1 ).
- the inmate 212 ( 1 ) may use the payment interface 284 to pay for services rendered by the inmate agent 208 ( 1 ) or future services to be rendered by the inmate agent 208 ( 1 ).
- the inmate 212 ( 1 ) may use a payment card or payment card information to make payment of a service fee to the inmate agent 208 ( 1 ).
- the kiosk device 204 sends the payment communication 258 to the kiosk management server 202 in response to receipt of payment from the inmate 212 ( 1 ).
- the kiosk application 282 may also present a payment interface to the inmate associate device 214 via the communications network 222 for payment of a fine, bond, and or service fee.
- FIG. 3 illustrates a process 300 for providing inmate assistance via a video kiosk inmate system, according to some implementations.
- the process 300 is illustrated as a collection of blocks in a logical flow graph, which represent a sequence of operations that can be implemented in hardware, software, or a combination thereof.
- the blocks are referenced by numbers 302 - 314 .
- the blocks represent computer-executable instructions stored on one or more computer-readable media that, when executed by one or more processing units (such as hardware microprocessors), perform the recited operations.
- processing units such as hardware microprocessors
- computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types.
- the order in which the operations is described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the process.
- a kiosk management server receives, from a client device, a login request to a presence based service, the login request including a client identifier associated with a client and client credentials.
- the agent device 106 sends the login request 118 to the presence based service 116 via the communication network 114 .
- the login request includes the client identifier 120 and the client credential 120 .
- the kiosk management server authenticates the client device based on the client identifier and the client credential. For example, upon receipt of the login request 118 , the presence based service 116 authenticates the agent device 106 based on the client identifier 120 and the client credential 122 .
- the kiosk management server sets a presence status of a client to available. For example, if the agent device 106 successfully authenticates to the presence based service 116 , the agent device 106 is logged into the presence based service 116 .
- the kiosk management server determines client information corresponding to the client based on the client identifier. For example, the kiosk management server 20 202 identifies the inmate agent profile 254 ( 1 ) corresponding to the inmate agent associated with the client identifier 120 .
- the kiosk management server transmits the client information to a kiosk located in a booking facility.
- the kiosk management server 102 sends inmate agent information 124 associated with the inmate agent 108 to the kiosk device 104 via the communication network 114 .
- the kiosk device 104 upon receipt of the inmate agent information 124 , presents a graphical representation of the inmate agent information 124 via a display interface of the kiosk device 104 .
- the kiosk management server receives a selection of the client from the kiosk.
- the inmate 112 may view the inmate agent information 124 via the kiosk device 104 , and select to communicate with the inmate agent 108 .
- the kiosk device 104 sends the inmate agent selection 128 to the kiosk management server 102 via the communication network 114 , wherein the inmate agent selection 128 indicates that the inmate 112 requests to communicate with the inmate agent 108 .
- the kiosk management server initializes an out of band communication channel between the client device and the kiosk.
- the kiosk management server 102 establishes the out of band communication channel 130 between the agent device 106 and the kiosk device 104 .
- FIG. 4 illustrates a process 400 for providing inmate assistance via a video kiosk inmate system, according to some implementations.
- the process 400 is illustrated as a collection of blocks in a logical flow graph, which represent a sequence of operations that can be implemented in hardware, software, or a combination thereof.
- the blocks are referenced by numbers 402 - 416 .
- the blocks represent computer-executable instructions stored on one or more computer-readable media that, when executed by one or more processing units (such as hardware microprocessors), perform the recited operations.
- processing units such as hardware microprocessors
- computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types.
- the order in which the operations is described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the process.
- the kiosk management server transmits the client information to a kiosk located in a booking facility.
- the kiosk management server 202 sends contents of the inmate agent profile 254 ( 1 ) associated with the inmate agent 208 ( 1 ) to the kiosk device 204 ( 1 ).
- the kiosk device 204 upon receipt of the contents of the inmate agent profile 254 ( 1 ), presents a graphical representation of the contents of the inmate agent profile 254 ( 1 ) via a display interface of the kiosk device 204 ( 1 ).
- the kiosk management server receives a selection of the client from the kiosk.
- the inmate 212 ( 1 ) may view the contents of inmate agent profile 254 ( 1 ) via the kiosk device 204 ( 1 ), and request the assistance of the inmate agent 208 ( 1 ).
- the kiosk device 204 ( 1 ) sends an inmate agent selection (e.g., the inmate agent selection 128 ) to the kiosk management server.
- the kiosk management server 202 sends an integrity request 238 to the inmate device 210 ( 1 ).
- the inmate device 210 ( 1 ) sends an integrity response to the kiosk management server 202 .
- the security module 224 verifies the integrity of the inmate device 210 based upon the integrity response 240 .
- the integrity response 240 includes proof information 242 that can be used to determine the integrity of the inmate device 210 ( 1 ).
- the kiosk management server transmits, to the inmate device, an installation executable associated with a location monitoring application based on the integrity value.
- the tracking initialization module 234 sends an installation executable 266 corresponding to the location monitoring application 264 to the inmate device 210 ( 1 ).
- the kiosk device 204 may provide the installation executable 266 to the inmate device 210 ( 1 ).
- the kiosk management server associates the inmate agent with the location monitoring application on the inmate device.
- the kiosk management server 202 modifies the inmate agent profile 254 ( 1 ) to indicate that the inmate agent 208 ( 1 ) is authorized to receive location information 262 ( 1 ) received from the location monitoring application 264 installed on the inmate device 210 ( 1 ).
- the kiosk management server receives current location information from the location monitoring application. For example, after the inmate 212 ( 1 ) is released from the inmate booking environment 220 , the tracking module 236 receives the location information 262 ( 1 ) from the location monitoring application 264 as the inmate 212 ( 1 ) travels with the inmate device 210 ( 1 ).
- the location information 262 includes a device identifier 270 corresponding to the inmate device 210 ( 1 ) (e.g., the identifier of the installation of the location monitoring application 264 on the inmate device 210 ( 1 )), and a location identifier 272 that identifies a location of the inmate device 210 ( 1 ).
- the kiosk management server transmits the current location information to an inmate agent device associated with the inmate agent.
- the tracking module 236 sends the inmate agent device 206 ( 1 ) the location information 262 based upon the association between the inmate agent 208 ( 1 ) and the location monitoring application 264 installed on the inmate device 210 ( 1 ).
- FIG. 5 A illustrates an example graphical user interface 500 , displayed on a kiosk device, for providing inmate agent information to an inmate, according to exemplary embodiments.
- the graphical user interface 500 includes an agent information section 502 , a navigation bar 504 , and a control section 506 .
- the agent information section 502 includes agent information 508 (e.g., the inmate agent information 120 ) corresponding to inmate agents (e.g., the inmate agents 108 ) within the video kiosk inmate assistance system.
- the agent information 508 includes a name of an inmate agent, pricing information of an inmate agent, user reviews corresponding to an inmate agent, contact information corresponding to an inmate agent, and any other information that describes the services offered by an inmate agent to an inmate.
- individual inmate agents are associated with particular agent information. For example, a first inmate agent is associated with the agent information 508 ( 1 ); an nth inmate agent is associated with the agent information 508 (N), and so forth.
- the navigation bar 504 provides functionality for browsing through the available agent information 508 within the video kiosk inmate assistance system.
- the agent information 508 is ranked or filtered according to one or more attributes of the corresponding inmate agents. For example, inmate agents having experience or good reviews with respect to a criminal charge associated with the inmate may be ranked higher. As another example, inmate agents offering services in a geographic region associated with the inmate may be ranked higher.
- the kiosk device 204 displays another graphical user interface with functionality for payment of a bond or fee associated with the conditions for release of the inmate. Additionally, the kiosk device 204 may display another graphical user interface with functionality for payment of services provided by an inmate agent.
- the kiosk device 204 displays another graphical user interface with information about the terms and conditions of the inmate's arrest (e.g., a bond or fine amount associated with the conditions of the inmate release).
- the configure device control 416 the kiosk device 204 displays another graphical user interface with functionality for configuring location monitoring via a device associated with the inmate.
- FIG. 5 B illustrates an example graphical user interface 500 , displayed on a kiosk device, for providing a communication interface to an inmate, according to exemplary embodiments.
- the graphical user interface 500 includes a video chat interface 518 , a text chat interface 520 , and a control panel 522 .
- the video chat interface 518 provides an interface for audio visual communications between the inmate and an inmate agent.
- the audio visual communications are transmitted over an out of band communication channel (e.g., the out of band communication channels 252 ), as described herein.
- the text chat interface 520 provides an interface for textual communications with an inmate agent.
- the text communications are transmitted over an out of band communication channel (e.g., the out of band communication channels 252 ), as described herein.
- the control section 522 includes a pause control 524 for placing communication with an inmate agent on hold, an end control 526 for terminating communication with an inmate agent, a configure device control 516 , a payment control 512 , and a share information control 526 .
- the kiosk device 204 requests that that the kiosk management server 202 sends inmate information (e.g., the inmate information response 298 ) to the inmate agent.
- FIG. 6 illustrates select components of the kiosk management server 500 , such as kiosk management server 104 and kiosk management server 202 .
- the kiosk management server 600 includes one or more servers or other types of computing devices that may be embodied in any number of ways. For instance, the modules, other functional components, and data may be implemented on a single server, a cluster of servers, a server farm or data center, a cloud-hosted computing service, and so forth, although other computer architectures may additionally or alternatively be used.
- kiosk management server 600 may alternatively be distributed across different computing devices and different locations in any manner. Consequently, the functions may be implemented by one or more computing devices, with the various functionality described above distributed in various ways across the different computing devices.
- Multiple kiosk management servers 600 may be located together or separately, and organized, for example, as virtual servers, server banks and/or server farms.
- the described functionality may be provided by the servers of a single entity or enterprise, or may be provided by the servers and/or services of multiple different entities or enterprises.
- the kiosk management server 600 includes one or more processors 602 , one or more computer-readable media 604 , and one or more communication interfaces 606 .
- Each processor 602 is a single processing unit or a number of processing units, and may include single or multiple computing units or multiple processing cores.
- the processor(s) 602 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
- the processor(s) 602 may be one or more hardware processors and/or logic circuits of any suitable type specifically programmed or configured to execute the algorithms and processes described herein.
- the processor(s) 602 can be configured to fetch and execute computer-readable instructions stored in the computer-readable media 604 , which can program the processor(s) 602 to perform the functions described herein.
- the computer-readable media 604 include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data.
- Such computer-readable media 604 include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, network attached storage, storage area networks, cloud storage, or any other medium that can be used to store the desired information and that can be accessed by a computing device.
- the computer-readable media 604 may be a type of computer-readable storage media and/or may be a tangible non-transitory media to the extent that when mentioned, non-transitory computer-readable media exclude media such as energy, carrier signals, electromagnetic waves, and signals per se.
- the computer-readable media 604 is used to store any number of functional components that are executable by the processors 602 .
- these functional components comprise instructions or programs that are executable by the processors and that, when executed, specifically configure the one or more processors 602 to perform the actions attributed above to the kiosk management server 600 .
- the computer-readable media 604 store data used for performing the operations described herein.
- the functional components stored in the computer-readable media 604 include a security module 608 , a presence based service 610 , a payment service 612 , a tracking initialization module 614 , and a tracking module 616 .
- the computer-readable media 604 include inmate agent information 618 and inmate information 620 .
- the inmate agent information 618 includes inmate agent profiles 622
- the inmate information 620 includes inmate device profiles 624 .
- Additional functional components stored in the computer-readable media 604 include an operating system 626 for controlling and managing various functions of the kiosk management server 600 .
- the kiosk management server 600 also include or maintain other functional components and data, such as other modules and data 628 , which include programs, drivers, etc., and the data used or generated by the functional components.
- the kiosk management server 600 includes many other logical, programmatic and physical components, of which those described above are merely examples that are related to the discussion herein.
- the communication interface(s) 606 include one or more interfaces and hardware components for enabling communication with various other devices, such as the kiosk devices 104 and 204 , the agent device 106 , the agent devices 206 , the inmate device 110 , the inmate devices 210 , or other computing devices, over the network(s) 114 and 222 .
- communication interface(s) 606 facilitate communication through one or more of the Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi, cellular) and wired networks.
- the kiosk management server 600 and the kiosk device 204 communicate and interact with one another using any combination of suitable communication and networking protocols, such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth.
- suitable communication and networking protocols such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth.
- IP Internet protocol
- TCP transmission control protocol
- HTTP hypertext transfer protocol
- cellular or radio communication protocols and so forth.
- Examples of communication interface(s) include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc.
- the kiosk management server 600 may further be equipped with various input/output (I/O) devices 630 .
- I/O devices include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports and so forth.
- FIG. 7 illustrates select example components of the inmate agent device 700 (e.g., the agent device 106 and the agent devices 206 ) that implements the functionality described above, according to an exemplary embodiment.
- the inmate agent device 700 may be any of a number of different types of personal computing devices. Some examples of the inmate agent device 700 include smart phones and mobile communication devices, tablet computing devices, desktops, laptops, netbooks and other portable computers, wearable computing devices, and any other portable device capable of sending communications and performing the functions according to the techniques described herein.
- the inmate agent device 700 includes one or more processors 702 , one or more computer-readable media 704 , one or more communication interfaces 706 , a microphone 708 , and a camera 710 .
- Each processor 602 is a single processing unit or a number of processing units, and may include single or multiple computing units or multiple processing cores.
- the processor(s) 702 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
- the processor(s) 702 may be one or more hardware processors and/or logic circuits of any suitable type specifically programmed or configured to execute the algorithms and processes described herein.
- the processor(s) 702 can be configured to fetch and execute computer-readable instructions stored in the computer-readable media 704 , which can program the processor(s) 702 to perform the functions described herein.
- the computer-readable media 704 include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data.
- Such computer-readable media 704 include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, network attached storage, storage area networks, cloud storage, or any other medium that can be used to store the desired information and that can be accessed by a computing device.
- the computer-readable media 704 may be a type of computer-readable storage media and/or may be a tangible non-transitory media to the extent that when mentioned, non-transitory computer-readable media exclude media such as energy, carrier signals, electromagnetic waves, and signals per se.
- the computer-readable media 704 is used to store any number of functional components that are executable by the processors 702 .
- these functional components comprise instructions or programs that are executable by the processors and that, when executed, specifically configure the one or more processors 702 to perform the actions attributed above to the inmate agent devices (e.g., the agent device 106 and the agent devices 206 ).
- the computer-readable media 704 store data used for performing the operations described herein.
- the functional components stored in the computer-readable media 704 include a client agent application 712 .
- the client agent application 712 manages the inmate agent device 700 within a video kiosk inmate system, such as the video kiosk inmate system 100 and the video kiosk inmate system 200 .
- the client agent application 712 manages the sending of integrity information (e.g., the integrity response 240 ), presence information (e.g., the presence status 248 ), and payment information (e.g., the payment communication 258 ).
- the client agent application 712 manages the creation of secure memory locations in the computer readable media 704 , and the storing of inmate information (e.g., the inmate information response 298 ) in the secure memory locations.
- the client agent application 712 may locally perform the functions of the security module 224 .
- Additional functional components stored in the computer-readable media 704 include an operating system 714 for controlling and managing various functions of the inmate agent device 700 .
- the inmate agent device 700 also includes or maintains other functional components and data, such as other modules and data 716 , which include programs, drivers, etc., and the data used or generated by the functional components.
- the inmate agent device 700 includes many other logical, programmatic and physical components, of which those described above are merely examples that are related to the discussion herein.
- the communication interface(s) 706 includes one or more interfaces and hardware components for enabling communication with various other devices, such as the kiosk management server 102 , the kiosk management server 202 , the kiosk management server 600 , the kiosk device 104 , the kiosk devices 204 , the inmate device 110 , the inmate devices 210 , or other computing devices, over the network(s) 114 and 222 .
- communication interface(s) 706 facilitates communication through one or more of the Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi, cellular) and wired networks.
- the kiosk management server 600 and the agent device 700 communicate and interact with one another using any combination of suitable communication and networking protocols, such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth.
- suitable communication and networking protocols such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth.
- IP Internet protocol
- TCP transmission control protocol
- HTTP hypertext transfer protocol
- cellular or radio communication protocols and so forth.
- Examples of communication interface(s) include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc.
- FIG. 7 further illustrates that the inmate agent device 700 includes a display 718 .
- the display 718 may employ any suitable display technology.
- the display 718 may be a liquid crystal display, a light emitting diode display, or any other suitable type of display able to present digital content thereon.
- the display 718 includes touch sensor with the display 718 to provide a touchscreen display configured to receive touch inputs for enabling interaction with a graphic interface presented on the display 718 . Accordingly, implementations herein are not limited to any particular display technology. Alternatively, in some other embodiments, the inmate agent device 700 may not include a display 718 .
- the inmate agent device 700 is equipped with various input/output (I/O) devices 720 .
- I/O devices 720 include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports, sensors (e.g., accelerometer, gyroscope, a compass, localization sensors, photometer, magnetometer, fingerprint sensors, etc.), and so forth.
- the inmate agent device 700 includes various other components that are not shown, examples of which include removable storage, a power source, such as a battery and power control unit, and so forth.
- FIG. 8 illustrates select example components of the inmate device 800 (e.g., the inmate device 110 and the inmate devices 210 ) that implements the functionality described above, according to an exemplary embodiment.
- the inmate device 800 may be any of a number of different types of personal computing devices. Some examples of the inmate device 800 include smart phones and mobile communication devices, tablet computing devices, desktops, laptops, netbooks and other portable computers, wearable computing devices, and any other portable device capable of sending communications and performing the functions according to the techniques described herein.
- the inmate device 800 includes one or more processors 802 , one or more computer-readable media 804 , one or more communication interfaces 806 , a microphone 808 , and a camera 810 .
- Each processor 802 is a single processing unit or a number of processing units, and may include single or multiple computing units or multiple processing cores.
- the processor(s) 802 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
- the processor(s) 802 may be one or more hardware processors and/or logic circuits of any suitable type specifically programmed or configured to execute the algorithms and processes described herein.
- the processor(s) 802 can be configured to fetch and execute computer-readable instructions stored in the computer-readable media 804 , which can program the processor(s) 802 to perform the functions described herein.
- the computer-readable media 804 include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data.
- Such computer-readable media 804 include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, network attached storage, storage area networks, cloud storage, or any other medium that can be used to store the desired information and that can be accessed by a computing device.
- the computer-readable media 804 may be a type of computer-readable storage media and/or may be a tangible non-transitory media to the extent that when mentioned, non-transitory computer-readable media exclude media such as energy, carrier signals, electromagnetic waves, and signals per se.
- the computer-readable media 804 is used to store any number of functional components that are executable by the processors 802 .
- these functional components comprise instructions or programs that are executable by the processors and that, when executed, specifically configure the one or more processors 802 to perform the actions attributed above to the inmate devices (e.g., the inmate device 110 and the inmate devices 210 ).
- the computer-readable media 804 store data used for performing the operations described herein.
- the functional components stored in the computer-readable media 804 include a location monitoring application 812 , a location module 814 , a possession module 816 , and a biometric module 818 .
- the location monitoring application 812 manages the sending of installation information (e.g., the installation confirmation 268 ), location information (e.g., the location information 262 ) and possession information (e.g., the possession response 278 ) to the kiosk management servers 102 , 202 , and 600 .
- the location module 814 determines a location identifier (e.g., the location identifier 272 ) of the inmate device 800 .
- the location module includes a global positioning system (GPS), an indoor positioning system (IPS) device, or a global'naya navigatsionnaya sputnikovaya ista (GLONASS) device.
- the possession module 816 locally performs functions of the tracking module 236 . For example, the possession module 816 locally determines whether an inmate is in possession of the inmate device 800 and sends the result to the kiosk management server 202 . Further, the biometric module 818 captures and authenticates biometric information using components of the inmate device 800 (e.g., the microphone, the camera, etc.). For example, the biometric module 818 directs the microphone 808 and camera 810 to capture biometric samples from a user of the inmate device 800 . Further, the biometric module 818 authenticates a user of the inmate device 800 based on the captured biometric samples, or sends the authentication information to the kiosk management server 600 for completion of an authentication process.
- components of the inmate device 800 e.g., the microphone, the camera, etc.
- the biometric module 818 directs the microphone 808 and camera 810 to capture biometric samples from a user of the inmate device 800 .
- the biometric module 818 authenticates a user of the inmate device 800
- Additional functional components stored in the computer-readable media 804 include an operating system 820 for controlling and managing various functions of the inmate device 800 .
- the operating system 820 may manage the sending of integrity information (e.g., integrity response 240 ) associated with the inmate device 800 .
- the inmate device 800 also includes or maintains other functional components and data, such as other modules and data 822 , which include programs, drivers, etc., and the data used or generated by the functional components.
- the other modules and data may include modules for sending payment information (e.g., the payment communication 258 ).
- the inmate device 800 includes many other logical, programmatic and physical components, of which those described above are merely examples that are related to the discussion herein.
- the communication interface(s) 806 includes one or more interfaces and hardware components for enabling communication with various other devices, such as the kiosk management servers 102 , 202 , and 600 , the agent devices 106 and 206 , or other computing devices, over the network(s) 114 and 222 .
- communication interface(s) 806 facilitates communication through one or more of the Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi, cellular) and wired networks.
- the kiosk management server 202 and the inmate device 800 communicate and interact with one another using any combination of suitable communication and networking protocols, such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth.
- suitable communication and networking protocols such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth.
- Examples of communication interface(s) include a modem, a network interface (such as an Ethernet card), a communications port,
- FIG. 8 further illustrates that the inmate device 800 includes a display 824 .
- the display 824 may employ any suitable display technology.
- the display 824 may be a liquid crystal display, a light emitting diode display, or any other suitable type of display able to present digital content thereon.
- the display 824 includes touch sensor with the display 824 to provide a touchscreen display configured to receive touch inputs for enabling interaction with a graphic interface presented on the display 824 . Accordingly, implementations herein are not limited to any particular display technology.
- the inmate device 800 may not include a display 824 .
- the inmate device 800 is equipped with various input/output (I/O) devices 826 .
- I/O devices 826 include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports, sensors (e.g., accelerometer, gyroscope, a compass, localization sensors, photometer, magnetometer, fingerprint sensors, etc.), and so forth.
- sensors e.g., accelerometer, gyroscope, a compass, localization sensors, photometer, magnetometer, fingerprint sensors, etc.
- the inmate device 800 includes various other components that are not shown, examples of which include removable storage, a power source, such as a battery and power control unit, and so forth.
- Embodiments of the present disclosure can be implemented in hardware, or as a combination of software and hardware. Consequently, embodiments of the disclosure may be implemented in the environment of a computer system or other processing system.
- the methods of FIGS. 3 - 4 can be implemented in the environment of one or more computer systems or other processing systems.
- An example of such a computer system 900 is shown in FIG. 9 .
- One or more of the modules depicted in the previous figures can be at least partially implemented on one or more distinct computer systems 900 .
- Computer system 900 includes one or more processors, such as processor 904 .
- Processor 904 can be a special purpose or a general purpose digital signal processor.
- Processor 904 is connected to a communication infrastructure 902 (for example, a bus or network).
- a communication infrastructure 902 for example, a bus or network.
- Computer system 900 also includes a main memory 906 , preferably random access memory (RAM), and may also include a secondary memory 908 .
- Secondary memory 908 may include, for example, a hard disk drive 910 and/or a removable storage drive 912 , representing a floppy disk drive, a magnetic tape drive, an optical disk drive, or the like.
- Removable storage drive 912 reads from and/or writes to a removable storage unit 916 in a well-known manner.
- Removable storage unit 916 represents a floppy disk, magnetic tape, optical disk, or the like, which is read by and written to by removable storage drive 912 .
- removable storage unit 916 includes a computer usable storage medium having stored therein computer software and/or data.
- secondary memory 908 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 900 .
- Such means may include, for example, a removable storage unit 918 and an interface 914 .
- Examples of such means may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, a thumb drive and USB port, and other removable storage units 918 and interfaces 914 which allow software and data to be transferred from removable storage unit 918 to computer system 900 .
- Computer system 900 may also include a communications interface 920 .
- Communications interface 920 allows software and data to be transferred between computer system 900 and external devices. Examples of communications interface 920 may include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc.
- Software and data transferred via communications interface 920 are in the form of signals which may be electronic, electromagnetic, optical, or other signals capable of being received by communications interface 920 . These signals are provided to communications interface 920 via a communications path 922 .
- Communications path 922 carries signals and may be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels.
- computer program medium and “computer readable medium” are used to generally refer to tangible storage media such as removable storage units 916 and 918 or a hard disk installed in hard disk drive 910 . These computer program products are means for providing software to computer system 900 .
- Computer programs are stored in main memory 906 and/or secondary memory 908 . Computer programs may also be received via communications interface 920 . Such computer programs, when executed, enable the computer system 900 to implement the present disclosure as discussed herein. In particular, the computer programs, when executed, enable processor 904 to implement the processes of the present disclosure, such as any of the methods described herein. Accordingly, such computer programs represent controllers of the computer system 900 . Where the disclosure is implemented using software, the software may be stored in a computer program product and loaded into computer system 900 using removable storage drive 912 , interface 914 , or communications interface 920 .
- features of the disclosure are implemented primarily in hardware using, for example, hardware components such as application-specific integrated circuits (ASICs) and gate arrays.
- ASICs application-specific integrated circuits
- gate arrays gate arrays
Abstract
A video kiosk inmate assistance system is disclosed herein. A kiosk management server receives, from an inmate agent device, a login request to a presence based service. Further, the kiosk management server authenticates the client device based on client credentials and sets a presence status of a client to available. In addition, the kiosk management server determines client information corresponding to the client, and transmits the client information to a kiosk device located in a booking facility based on the presence status. Additionally, the kiosk management server receives a selection of the client from the kiosk device, and initializes an out of band communication channel between the client device and the kiosk device.
Description
- This application is a continuation of U.S. patent application Ser. No. 15/692,157, filed on Aug. 31, 2017, which is incorporated herein by reference in its entirety.
- This disclosure relates to a video kiosk inmate assistance system.
- An inmate confined to an inmate booking environment, such as a central booking and intake facility or prison, may require the assistance of an inmate agent. For example, an inmate may require an attorney for legal representation, and/or a bail bondsperson to help the inmate post bond in order to be released from the inmate booking facility. However, many inmates lack the means to find inmate agents and/or communicate with inmate agents during their confinement. Further, current inmate booking environments fail to provide an opportunity for inmate agents to efficiently, securely, and confidentially assist inmates.
- A further understanding of the invention can be obtained by reference to a preferred embodiment set forth in the illustrations of the accompanying drawings. Although the illustrated embodiment is merely exemplary of systems for carrying out the invention, both the organization and method of operation of the invention, in general, together with further objectives and advantages thereof, may be more easily understood by reference to the drawings and the following description. The drawings are not intended to limit the scope of this invention, which is set forth with particularity in the claims as appended or as subsequently amended, but merely to clarify and exemplify the invention.
- For a more complete understanding of the invention, reference is now made to the following drawings in which:
-
FIG. 1 illustrates a block diagram of an example framework for providing a video kiosk inmate system in an inmate booking environment, according to exemplary embodiments. -
FIG. 2 illustrates a block diagram of an example framework for providing a video kiosk inmate system in an inmate booking environment, according to exemplary embodiments. -
FIG. 3 is a flow diagram illustrating an example process for providing inmate assistance via a video kiosk inmate system, according to exemplary embodiments. -
FIG. 4 is a flow diagram illustrating an example process for providing inmate assistance via a video kiosk inmate system, according to exemplary embodiments. -
FIGS. 5A-5B illustrate an example graphical user interface for providing a video kiosk inmate system, according to exemplary embodiments. -
FIG. 6 illustrates a block diagram of select components of an example kiosk management server, according to exemplary embodiments. -
FIG. 7 illustrates a block diagram of select components of an example agent device, according to exemplary embodiments. -
FIG. 8 illustrates a block diagram of select components of an example inmate device, according to exemplary embodiments. -
FIG. 9 illustrates a block diagram of a general purpose computer that may be used to perform various aspects of the present disclosure. - As required, a detailed illustrative embodiment of the invention is disclosed herein. However, techniques, systems and operating structures in accordance with the invention may be embodied in a wide variety of forms and modes, some of which may be quite different from those in the disclosed embodiment. Consequently, the specific structural and functional details disclosed herein are merely representative, yet in that regard, they are deemed to afford the best embodiment for purposes of disclosure and to provide a basis for the claims herein, which define the scope of the invention. The following presents a detailed description of the preferred embodiment of the invention.
- For purposes of this discussion, any reference to the term “module” shall be understood to include at least one of software, firmware, and hardware (such as one or more circuit, microchip, or device, or any combination thereof), and any combination thereof. In addition, it will be understood that each module may include one, or more than one, component within an actual device, and each component that forms a part of the described module may function either cooperatively or independently of any other component forming a part of the module. Conversely, multiple modules described herein may represent a single component within an actual device. Further, components within a module may be in a single device or distributed among multiple devices in a wired or wireless manner.
- The following Detailed Description of the exemplary embodiments will so fully reveal the general nature of the disclosure that others can, by applying knowledge of those skilled in relevant art(s), readily modify and/or customize for various applications such exemplary embodiments, without undue experimentation, without departing from the spirit and scope of the disclosure. Therefore, such modifications are intended to be within the meaning and plurality of equivalents of the exemplary embodiments based upon the teaching and guidance presented herein. It is to be understood that the phraseology or terminology herein is for the purpose of description and not of limitation, such that the terminology or phraseology of the present specification is to be interpreted by those skilled in relevant art(s) in light of the teachings herein.
-
FIG. 1 illustrates a block diagram of an example framework for providing a video kiosk inmate system 100, according to an exemplary embodiment.FIG. 1 shows interactions between akiosk management server 102, akiosk device 104, anagent device 106 associated with aninmate agent 108, and aninmate device 110 associated with an inmate 112, via a communication network(s) 114. Thecommunication network 114 may include any or all of a private network, personal area network (PAN), Local-Area Network (LAN), a Wide-Area Network (WAN), or the Internet. - In some embodiments, the inmate agent 108 (e.g., a bail bondsperson or attorney) utilizes the
agent device 106 to log into a presence basedservice 116 of thekiosk management server 102. The presence basedservice 116 monitors the availability of a plurality of inmate agents, such as theinmate agent 108, to provide legal services or bail bond services to inmates, such as the inmate 112. In addition, the presence basedservice 116 manages communication between theagent device 106 and thekiosk management server 102, thekiosk device 104, and/or theinmate device 110. - For example, the
agent device 106 sends alogin request 118 to the presence basedservice 116 via thecommunication network 114. In some embodiments, thelogin request 118 includes aclient identifier 120 corresponding to theinmate agent 108, and aclient credential 122. Upon receipt of thelogin request 118, the presence basedservice 116 authenticates theagent device 106. For example, the presence basedservice 116 determines whether theclient credential 122 matches locally stored authentication information associated with theclient identifier 120. If theagent device 106 successfully authenticates to the presence basedservice 116, theagent device 106 is logged into the presence basedservice 116. Further, thekiosk management server 102 sendsinmate agent information 124 associated with theinmate agent 108 to thekiosk device 104 via thecommunication network 114. - In some embodiments, the
inmate agent information 124 indicates to thekiosk device 104 that theinmate agent 108 is available to provide services to the inmate 112 via thekiosk device 104. Further, theinmate agent information 124 indicates the services that theinmate agent 108 provides to inmates within an inmate booking environment 126 (e.g., central booking and intake facility, prison, etc.). Additionally, theinmate agent information 124 includes biographical information of theinmate agent 108, contact information associated with theinmate agent 108, reviews of past services provided by theinmate agent 108, pricing information associated with theinmate agent 108, and/or payment information associated with theinmate agent 108. Some examples of services theinmate agent 108 may provide include legal representation or bail bond services. Upon receipt of theinmate agent information 124, thekiosk device 104 presents theinmate agent information 124 to users of thekiosk device 104. In certain embodiments, thekiosk device 104 presents a graphical representation of theinmate agent information 124 via a display interface of thekiosk device 104. - For instance, the inmate 112 may be confined to the
inmate booking environment 126 in accordance with an arrest or detainment. Further, the inmate 112 may require assistance from theinmate agent 108 while confined to theinmate booking environment 126. As an example, the inmate 112 may require assistance posting bond in order to be released from theinmate booking environment 126, and/or legal representation. As such, the inmate 112 may view theinmate agent information 124 via thekiosk device 104, and select to communicate with theinmate agent 108. In some embodiments, theinmate agent information 124 is presented to the inmate 112 based on one or more attributes of theinmate agent 108 or inmate 112. For instance, thekiosk device 104 presents theinmate agent information 124 to the inmate 112 based on a shared location of theinmate agent 108 and the inmate 112, a service fee of the inmate agent 112, a charge made against the inmate 112, and/or the bail amount set for the inmate 112. - In response to the inmate selecting to communicate with the
inmate agent 108, thekiosk device 104 sends an inmate agent selection 128 to thekiosk management server 102 via thecommunication network 114 indicating that the inmate 112 requests to communicate with theinmate agent 108. - In some embodiments, upon receipt of the inmate agent selection 128, the
kiosk management server 102 establishes an out of band communication channel 130 between theagent device 106 and thekiosk device 104. For example, the presence basedservice 116 establishes a video communication channel, a voice communication channel, and/or textual communication channel between theagent device 106 and thekiosk device 104. In some other embodiments, upon receipt of the inmate agent selection 128, thekiosk management server 102 establishes the out of band communication channel 130 between theagent device 106 and theinmate device 110. - Once the out of band communication channel 130 is established, the inmate 112 and the
inmate agent 108 can arrange, via the out of band communication channel 130, for theinmate agent 108 to post bond for the inmate 112, according to some embodiments. In some other embodiments, the inmate 112 and theinmate agent 108 can configure location monitoring of the inmate 112 via theinmate device 110 via the out of band communication channel 130 according to some embodiments. In yet still some other embodiments, the inmate 112 and theinmate agent 108 can arrange for theinmate agent 108 to provide legal representation to the inmate 112 and discuss legal issues facing the inmate 112 via the out of band communication channel 130. - Further, in some embodiments, the
kiosk management server 102 includes inmate information 132 associated with the inmate 112. In some examples, the inmate information 132 includes charges brought against the inmate 112, a bail amount set for release of the inmate 112, and a fine amount levied against an inmate 112. Once theinmate agent 108 and the inmate 112 enter a service agreement, thekiosk management server 102 sends the inmate information 132 to theagent device 106. For instance, once the out of band communication channel 130 is established, thekiosk management server 102 sends the inmate information 132 to theagent device 106. Upon receipt of the inmate information 132, theinmate agent 108 may further assist the inmate 112. For example, theinmate agent 108 may provide legal advice in view of the charges brought against the inmate, arrange to post bail in the amount of the bail amount set for release of the inmate 112, and/or arrange for payment of the fine amount levied against the inmate 112. - Some examples of the
inmate device 110 and/oragent device 106, include smart phones and mobile communication devices, tablet computing devices, desktops, laptops, netbooks and other portable computers, wearable computing devices, and any other computing device capable of sending communications to thekiosk management server 102 and/or thekiosk device 104. -
FIG. 2 illustrates a block diagram of an example framework for providing a video kiosk inmate system 200, according to an exemplary embodiment. As shown inFIG. 2 , the video kiosk inmate system 200 includes akiosk management server 202, a plurality of kiosk devices 204 (e.g., kiosk device 104), a plurality of agent devices 206 (e.g., agent device 106) associated with a plurality ofinmate agents 208, a plurality ofinmate devices 210 associated with a plurality ofinmates 212, aninmate associate device 214 associated with aninmate associate 216, and atracking device 218. - In some embodiments, individual
video kiosk devices 204 are located within individualinmate booking environments 220 for use by theinmates 212 within theinmate booking environments 220. Further, theindividual inmate agents 208 are associated withparticular agent devices 206. For example, a first inmate agent 208(1) is associated with a first inmate agent device 206(1), an nth inmate agent 208(N) is associated with an nth inmate agent device 206(N), and so forth. Additionally,individual inmates 212 are associated withparticular inmate devices 210. For example, a first inmate 212(1) is associated with a first inmate device 210(1), an nth inmate 212(N) is associated with an nth inmate device 210(N), and so forth. - As illustrated in
FIG. 2 , thekiosk management server 202, the plurality ofkiosk devices 204, the plurality ofagent devices 206, the plurality ofinmate devices 210, theinmate associate device 214, and thetracking device 218 are coupled via a communication network(s) 222. The communication network(s) 222 may include any or all of a private network, personal area network (PAN), Local-Area Network (LAN), a Wide-Area Network (WAN), or the Internet. Further, the connection between any of thekiosk management server 202, the plurality ofkiosk devices 204, the plurality ofagent devices 206, the plurality ofinmate devices 210, theinmate associate device 214, or thetracking device 218, and the communication network(s) 222 may be a wireless connection (e.g., Bluetooth™, Wi-Fi connection, etc.), or a wired connection (e.g., Ethernet, universal serial bus (USB), etc.). - As shown in
FIG. 2 , thekiosk management server 202 includes asecurity module 224, a presence basedservice 226,agent information 228,inmate information 230, apayment service 232, a trackinginitialization module 234, and atracking module 236. Thesecurity module 224 performs authentication and authorization of the clients (i.e., theinmate agents 208, theinmates 212, and the inmate associate 216), and/or the client devices (i.e., thekiosk device 204, theagent devices 206, theinmate devices 210, theinmate associate devices 214, and tracking device 218) of thekiosk management server 202. Further, in certain embodiments, thesecurity module 224 performs encryption and decryption of data transmitted between thekiosk management server 202 and the client devices. - In addition, the
security module 224 manages authentication information and authorization information for performing authentication and authorization of the clients and client devices. Some examples of authentication information include authentication credentials, user identifiers, device identifiers, passwords, certificates, cookies, tokens, etc. Some examples of authorization information include access control lists (ACLs), client capabilities, client device capabilities, security policy information, etc. - Additionally, in some embodiments, the
security module 224 performs integrity checks of the client devices. For example, thesecurity module 224 determines whether the firmware or operating system of an inmate device 210(1) has been compromised. As another example, thesecurity module 224 determines whether an unauthorized hardware component has been connected to the inmate device 210(1). Further, thesecurity module 224 determines whether one or more required applications/features are installed and/or functional on the inmate device 210(1). - As shown in the
FIG. 2 , thekiosk management server 202 sends a integrity request 238 to the inmate device 210(1). In response, the inmate device 210(1) sends an integrity response to thekiosk management server 202. Upon receipt of theintegrity response 240, thesecurity module 224 verifies the integrity of theinmate device 210 based upon theintegrity response 240. In some embodiments, theintegrity response 240 includesproof information 242 that can be used to determine the integrity of the inmate device 210(1). In some examples, theproof information 242 can include data describing version information corresponding to the applications installed on the inmate device 210(1). Additionally, or alternatively, theproof information 242 can include a hash value generated by the inmate device 210(1) using objects (i.e., identifiers, secrets, passwords, certificates, etc.) associated with the inmate device 210(1). In some embodiments, the hash value is generated based on challenge information included in the integrity request 238. For example, the inmate device 210(1) may generate a cryptographic hash based on a secret associated with the inmate device 210(1) and the contents of the integrity request 238. - Further, the
security module 224 manages the secure storage ofinmate information 230 onagent devices 206. As described above, thekiosk management server 202 sends theinmate information 230 to theagent devices 206 in order for theinmate agents 208 to assist theinmates 212. In some embodiments, theinmate information 230 includes privileged and confidential information associated with theinmates 212. As such, thesecurity module 224 manages the creation ofsecure memory locations 244 on theagent devices 206, and storage of portion s of theinmate information 230 within thesecure memory location 244. In some embodiments, the contents of thesecure memory locations 244 are encrypted and/or password protected on theagent devices 206. Further, thesecurity module 224 may employclient agent applications 246 installed on theagent devices 206 to create thesecure memory locations 244 and store theinmate information 230 within thesecure memory locations 244. - As described above, the presence based
service 226 manages the availability of theinmate agents 208 to assist theinmates 212. In some embodiments, theinmate agents 208 complete a registration process with the presence basedservice 226. During the registration process,inmate agents 208 submit registration information and receive a service account. Further, in certain embodiments, the registration process includes a verification step that includes verifying thatinmate agents 208 are legally permitted to provide services toinmate 212. Some examples of registration information include authentication information, authorization information, biographical information, geographical regions serviced by the inmate agent, inmate agent preferences, agent device information, contact information, pricing information, billing information, and/or payment information. - As described in detail with respect to
FIG. 1 , theinmate agents 208 use theagent devices 206 to log into the presence service based 226. Once theagent devices 206 are logged into the presence basedservice 226, theagent devices 206 periodically send the presence statuses 248 to the presence basedservice 226, the presence statuses 248 indicating to the presence basedservice 226 the availability of theinmate agents 208 to assist theinmates 212. - For example, the agent device 206(1) sends the presence status 248(1) indicating that the inmate agent 208(1) would like to remain logged into the presence based
service 226. Upon receipt of the presence status 248(1), the presence basedservice 226 notifies thekiosk devices 204 that the inmate agent 208(1) is available to assist theinmates 212. For instance, the presence basedservice 226 sendsinmate agent information 250 to thekiosk devices 204 indicating that the inmate agent 208(1) is available to assist theinmates 212. As another example, the agent device 206(1) sends the presence status 248(1) indicating that the inmate agent 208(1) is logging out of the presence basedservice 226. Upon receipt of the presence status 248(1), the presence basedservice 226 notifies thekiosk devices 204 that the inmate agent 208(1) is no longer available to assist theinmates 212. In some embodiments, the presence basedservice 226 notifies thekiosk devices 204 that the inmate agent 208(1) is no longer available to assist theinmates 212 by withholding information related to the inmate agent 208(1) from theinmate agent information 250. In some other embodiments, the presence basedservice 226 explicitly indicates that the inmate agent 208(1) is no longer available within theinmate agent information 250. - Further, as described in detail above, the presence based
service 226 facilitates the initialization of secure out of band communication channels 252(1)-(N) between the client devices. Further, once the out-of-band communication channels 252 are established between client devices, the client devices may electronically communicate independent of the presence basedservice 226. For example, thekiosk device 204 communicates with the agent device 206(1) via the out of band communication channel 252(1), thereby allowing the inmate 212(1) and the inmate agent 208(1) to communicate in confidence. Additionally, or alternatively, the client devices can communicate via the presence basedservice 226. For instance, in some embodiments, client devices can communicate via communication channels established and maintained by the presence basedservice 226. In some examples, the communication channels of the presence basedservice 226 are encrypted end to end to protect communication via the communication channels of the presence basedservice 226 from eavesdropping. - The
inmate agent information 228 includes information about theinmate agents 208 in the video kiosk inmate system 200. As illustrated inFIG. 2 , theinmate agent information 228 includes inmate agent profiles 254 corresponding to theinmate agents 208 providing services within the video kiosk inmate system 200. For example, the first inmate agent profile 254(1) is associated with the first inmate agent 208(1), the nth inmate agent profile 254(N) is associated with the nth inmate agent 208(N), and so forth. In certain embodiments, the inmate agent profiles 254 include authentication information, encryption information, authorization information, biographical information, geographical regions serviced by the associated inmate agent, executed service agreements, existing inmate clients, agent device information, contact information, user reviews, an account balance, pricing information, billing information, and/or payment information. - The
inmate information 230 includes information about theinmates 212 confined toinmate booking environments 220 within the video kiosk inmate system 200. As illustrated inFIG. 2 , theinmate information 230 includes inmate profiles 256 corresponding to theinmates 212. For example, the first inmate profile 256(1) is associated with the first inmate 212(1), the nth inmate profile 256(N) is associated with the nth inmate 212(N), and so forth. In certain embodiments, the inmate profiles 256 include authentication information, biometric information, encryption information, inmate device information, executed service agreements, personal contact information, emergency contact information, historic location information, booking information, and/or criminal history information from one or more of a jail management system (JMS), an offender management system (OMS), a public database containing information on theinmates 212. - As shown in
FIG. 2 , thekiosk management server 202 further includes thepayment service 232 that processes payments within the video kiosk inmate system 200. In some embodiments, thepayment service 232 processes payments to theinmate agents 208 frominmates 212 using thekiosk devices 204. For example, the kiosk device 204(1) sends apayment communication 258 to thepayment service 232, thepayment communication 258 representing the payment of a retainer by the inmate 212(1) to the inmate agent 208(1). Further, thepayment service 232 transfers the payment amount to the account balance of the inmate agent 208(1). As another example, the inmate device 210(1) sends apayment communication 258 to thepayment service 232, thepayment communication 258 representing payment for bail bondsman services provided by the inmate agent 208(1) to the inmate 212(1). Further, thepayment service 232 transfers the transfer the payment amount to the account balance of the inmate agent 208(1). In some other embodiments, thepayment service 232 processes payments from theinmate agents 208 on behalf of theinmates 212. For example, the agent device 206(1) sends thepayment communication 258 to thepayment service 232, the payment communication representing the posting of a bond by the inmate agent 208(1) on behalf of the inmate 212(1). Further, thepayment service 232 transfers the payment amount to an account associated with the jurisdictional entity responsible for release of the inmate 212(1). Additionally, or alternatively, thepayment service 232 can receive apayment communication 258 from theinmate associate device 214 associated with the inmate associate 216 (e.g., a family member or friend of an inmate 212) on behalf of the inmate 212(1). - In some embodiments, the
security module 224 authenticates the inmate 212(1) as the current user of thekiosk device 204. Additionally, thepayment service 232 determines a bail amount set for release of the inmate 212(1), and/or a fine amount levied against the inmate 212(1) based on the inmate profile 256(1). Further, thepayment service 232 sends apayment request 260 to thekiosk device 204 in the amount of the bail amount, and/or the fine amount levied against the inmate 212(1). In addition, the payment service receives thepayment communication 258 corresponding to thepayment request 260, and verifies the payment information provided in thepayment communication 258. Upon verification of the payment information, thepayment service 232 may notify the proper authorities that one or more conditions for release have been met. For example, thepayment service 232 may send a communication to an operator of theinmate booking environment 220 indicating that one or more conditions for release have been met. As another example, thepayment service 232 may update the inmate information 230 (e.g., a jail management system (JMS), an offender management system (OMS), a public database containing information on prison inmates) to indicate that one or more conditions for release have been met. - The tracking
initialization module 234 configures a location monitoring device to collectlocation information 262 corresponding to aninmate 212, and send thelocation information 262 to thetracking module 236. Some examples of the location monitoring devices include theinmate devices 210 and thetracking device 218. In some instances, thetracking device 218 is provided by thekiosk device 204. In some other instances, thetracking device 218 is provided by an operator of theinmate booking environment 220. - In some embodiments, the inmate 212(1) may be released under a condition that the inmate 212(1) periodically provide the
location information 262 to thekiosk management server 202, and/or remain within a predetermined geographic region for a predetermined period of time. In some other embodiments, the inmate 212(1) may agree to providelocation information 262 to thekiosk management server 202, and/or remain within a predetermined geographic region for a predetermined period of time under the terms of an agreement with the inmate agent 208(1). For example, the inmate 212(1) may agree to provide thelocation information 262 to the inmate agent 208(1) under the terms of an agreement for the inmate agent 208(1) to post bond for the inmate 212(1). - Further, the tracking
initialization module 234 manages the installation of alocation monitoring application 264 on the location monitoring devices. For example, the trackinginitialization module 234 verifies the integrity of the inmate device 210(1) via thesecurity module 224. Further, the trackinginitialization module 234 sends aninstallation executable 266 corresponding to thelocation monitoring application 264 to the inmate device 210(1). Additionally, or alternatively, thekiosk device 204 may provide theinstallation executable 266 corresponding to thelocation monitoring application 264 to the inmate device 210(1). - Further, the tracking
initialization module 234 verifies installation of thelocation monitoring application 264 on the inmate device 210(1). In some embodiments, thelocation monitoring application 264 sends aninstallation confirmation 268 to thetracking initialization module 234. Upon receipt of theinstallation confirmation 268, the trackinginitialization module 234 updates the inmate profile 256(1) to include a mapping of the inmate 212(1) to an identifier of thelocation monitoring application 264 on the inmate device 210(1). Additionally, the trackinginitialization module 234 updates the inmate agent profile 254(1) to include a mapping of the inmate agent 208(1) to an identifier of thelocation monitoring application 264 on the inmate device 210(1). In some embodiments, the mapping of the inmate agent 208(1) and the identifier of thelocation monitoring application 264 provides the inmate agent 208(1) access to thelocation information 262 received from thelocation monitoring application 264. - In some embodiments, the tracking
initialization module 234 determines a geographic region associated with the inmate 212(1) based on thelocation information 262. For example, the inmate device 210(1) sends thelocation information 262 to thetracking initialization module 234. Further, thelocation information 262 may include historical location data collected by the inmate device 210(1), the historical location data indicating locations commonly frequented by the inmate 212(1) (e.g., home, work, school, local stores, etc.). Further, the trackinginitialization module 234 determines a geographic region that includes the locations commonly frequented by the inmate 212(1). - In some embodiments, the tracking
initialization module 234 determines the geographic region by generating a density map or heat map representing locations historically frequented by the inmate 212(1), and creating a boundary around the densest areas. In some other examples, the geographic region is further limited by a geographic region (e.g., city of residence, county of residence, town of residence, state of residence, etc.) associated with the inmate 212(1). Additionally or, alternatively, the size of the geographic region may be modified based on the inmate agent profile 254(1) and/or inmate profile 256(1). For example, the inmate agent profile 254(1) may indicate that the inmate agent 208(1) has a preference for posting bond for inmates 208(1) that will limit their travel upon release to an area within a predetermined distance from a place of business of the inmate agent 212(1). As such, the geographic region is modified to ensure compliance with the preference of the inmate agent 208(1). As another example, the geographic region may be limited by a charge included in the inmate profile 256(1). For instance, the kiosk management server may reduce the size of the geographic region if the inmate 212(1) has committed a violent crime. - Additionally, in some embodiments, the
tracking module 236 uses the geographic region to monitor the inmate 212(1) upon release. - Once the
location monitoring application 264 is installed on the inmate device 210(1), thelocation monitoring application 264 sends thelocation information 262 to thetracking module 236 of thekiosk management server 202. Upon receipt of thelocation information 262, thetracking module 236 sends thelocation information 262 to the agent device 206(1) under the terms of a service agreement between the inmate 212(1) and the inmate agent 208(1). In some embodiments, thelocation information 262 includes adevice identifier 270 corresponding to the inmate device 210(1), and alocation identifier 272. As used herein, alocation identifier 272 includes a coordinate, positional descriptor, or any other information capable of identifying a location of the inmate device 210(1). - In some embodiments, the
tracking module 236 generates a graphical representation of the location of inmate device 210(1), and sends the graphical representation to the agent device 206(1) within thelocation information 262. In some instances, the graphical representation includes a map of a geographical region corresponding to thelocation identifier 272, and a graphical indicator corresponding to the location of the inmate device 210(1) within the geographical region. - Additionally, in some embodiments, the
tracking module 236 monitors whether the inmate device 210(1) remains in the geographic region determined by the trackinginitialization module 234. Further, if the inmate device 210(1) is detected outside of the geographic region, thetracking module 236 sends awarning communication 274 to the agent device 206(1) indicating that the inmate device 210(1) is currently outside of the geographic region. In some instances, thetracking module 236 sends thewarning communication 274 to the agent device 206(1) based on thetracking module 236 determining that the inmate device 210(1) has been detected outside of the geographic region for a period of time longer than a predetermined amount. In some other instances, thetracking module 236 sends thewarning communication 274 to the agent device 206(1) based on thetracking module 236 determining that the inmate device 210(1) has been detected more than a predetermined distance outside of the geographic region. By sending thewarning communication 274 to the agent device 206(1), thekiosk management service 204 provides the inmate agent 208(1) an opportunity to communicate with the inmate 212(1) during a potential attempt to abscond, and/or locate the inmate 212(1) during a potential attempt to abscond. Additionally, or alternatively, thetracking module 236 notifies a law enforcement agency of the location of the inmate 212(1). For instance, thetracking module 236 sends thewarning communication 274 to a device associated with a law enforcement agency and/or law enforcement officer. - Further, in some embodiments, the
tracking module 236 verifies that the inmate 212(1) is currently in possession of the inmate device 210(1). For example, the inmate 212(1) may leave the inmate device 210(1) within the geographic region and travel to another geographic region as a means of circumventing the location monitoring. Further, circumvention of location monitoring may be indicative of an attempt by the inmate 212(1) to abscond, and risks the inmate agent 208(1) being responsible for paying the full bond amount. - As such, the
tracking module 236 sends apossession request 276 to the inmate device 210(1). In response, the inmate device 210(1) sends apossession response 278 to thetracking module 236. In some embodiments, thepossession response 278 includes activity information of the inmate device 210(1) that can be used to determine that the inmate device 210(1) has not been dispossessed or abandoned by the inmate 212(1). In some other embodiments, thepossession response 278 includes authentication information, such as facial recognition, fingerprint identification information, palm print identification information, iris recognition information, retina recognition information, voice recognition information, cryptographic hashes, credentials, secrets, passwords, etc. Further, the possession response includes adevice identifier 270 that identifies the inmate device 210(1), and atimestamp 280 representing the time the possession information was captured by the inmate device 210(1). - Upon receipt of the
possession response 278, thetracking module 236 verifies that the inmate 212(1) is in possession of the inmate device 210(1). In some embodiments, thetracking module 236 uses the activity information (e.g., data collected by sensors of the inmate device 210(1) to determine that that inmate 212(1) is currently using the inmate device 210(1). For example, the activity data may reveal that one or more applications of the inmate device 210(1) have been recently used by the inmate 212(1), or recent use of a telephonic function of the inmate device 210(1). In some other embodiments, thetracking module 236 verifies that the authentication information provided in thepossession response 278 is valid based on at least one of thesecurity module 224 and the inmate profile 256(1). For instance, thesecurity module 224 compares thepossession response 278 to authentication information stored in the inmate profile 256(1) to determine whether the inmate 212(1) is in possession of the inmate device 210(1). - As an example, in response to receipt of the
possession request 276, the inmate device 210(1) captures facial data using a biometric sensor and sends the facial data to thetracking module 236 in thepossession response 278. Further, thesecurity module 224 compares a number of the facial data points included in thepossession response 278 to a number of facial data points included in the inmate profile 256(1) using machine learning and/or pattern recognition techniques. Facial data included but is not limited to facial data information representing the characteristics of a person's face such as distances between eyes, nose, and mouth, and shapes of the eyes, nose, mouth, jaw. Facial data also includes facial information created from, for example, a hash function, of the facial data points. If the facial data points in thepossession response 278 match the facial data points in the inmate profile 256(1) within a predetermined threshold, thetracking module 236 determines that the inmate 212(1) is currently in possession of the inmate device 210(1). - If the tracking module determines that the inmate is not in possession of the inmate device 210(1), the tracking module 236(1) sends the
warning communication 274 to the agent device 206(1) indicating that the inmate 212(1) may no longer be in possession of the inmate device 210(1). Further, if the tracking module does not receive thepossession response 278, or thetimestamp 280 indicates that thepossession response 278 does not meet predetermined freshness requirements, thetracking module 236 sends thewarning communication 274 to the agent device 206(1) indicating that the inmate 212(1) may no longer be in possession of the inmate device 210(1). - As shown in
FIG. 2 , thekiosk devices 204 include akiosk application 282, apayment interface 284, input/output (I/O) devices 286 (e.g., display, microphone, camera, biometric sensors, etc.), and acommunication interface 288. In some embodiments, theinmates 212 utilize thekiosk application 282 to receive assistance from theinmate agents 208. For example, as described with respect toFIG. 1 , theinmates 212 utilize thekiosk device 204 to view theagent information 228 via the display 290,select inmate agents 208 via the I/O devices 286, and establish a communication channel (e.g., out of band communication channel 252) with theinmate agent devices 206 via thecommunication interface 288. - Further, the
kiosk application 282 identifies theinmates 212 using thekiosk devices 204. For example, thekiosk application 282 collectsauthentication information 292 from the inmate 212(1) using the I/O devices 286(1) of thekiosk device 204. Further, thekiosk application 282 sends aninmate information request 294 to thekiosk management server 202, wherein theinmate information request 294 includes theauthentication information 292 and aninmate identifier 296 of the inmate 212(1). Upon receipt of theinmate information request 294, thesecurity module 224 authenticates the inmate 212(1) by comparing theauthentication information 292 with inmate information 230 (i.e., inmate profile 256(1)) associated with theinmate identifier 296. Further, thekiosk management server 202 sends aninmate information response 298 to thekiosk device 204. In some examples, theinmate information response 298 includes the charges brought against the inmate 212(1), a bail amount set for release of the inmate 212(1), and/or a fine amount levied against the inmate 212(1). - In some embodiments, upon receipt of the
inmate information response 298, thekiosk device 204 presents the inmate 212(1) with the ability to share theinmate information response 298 with theinmate agents 208. For example, if the inmate 212(1) and the inmate agent 208(1) have executed a service agreement, theinmate 212 may authorize thekiosk device 204 or thekiosk management server 202 to send theinmate information response 298 to the inmate agent 206(1). - In some other embodiments, the inmate 212(1) can make a payment based upon the
inmate information response 298. For example, theinmate information response 298 may indicate that inmate 212(1) has a fine and/or bond amount associated with release of the inmate 212(1) from theinmate booking environment 220. Further, thekiosk device 204 may present a graphical user interface via the I/O device 286(1) that instructs the inmate 212(1) on payment of the fine and/or bond. - Additionally, the inmate 212(1) may use the
payment interface 284 for payment of the fine and/or bond. For example, the inmate 212(1) may use a payment card or payment card information to make payment of the fine and/or bond via thepayment interface 284. As described in detail above, in some embodiments, thekiosk device 204 sends thepayment communication 258 to thekiosk management server 202 in response to receipt of payment from the inmate 212(1). Further, the inmate 212(1) may use thepayment interface 284 to pay for services rendered by the inmate agent 208(1) or future services to be rendered by the inmate agent 208(1). For example, the inmate 212(1) may use a payment card or payment card information to make payment of a service fee to the inmate agent 208(1). As described in detail above, in some embodiments, thekiosk device 204 sends thepayment communication 258 to thekiosk management server 202 in response to receipt of payment from the inmate 212(1). Additionally, or alternatively, thekiosk application 282 may also present a payment interface to theinmate associate device 214 via thecommunications network 222 for payment of a fine, bond, and or service fee. -
FIG. 3 illustrates aprocess 300 for providing inmate assistance via a video kiosk inmate system, according to some implementations. Theprocess 300 is illustrated as a collection of blocks in a logical flow graph, which represent a sequence of operations that can be implemented in hardware, software, or a combination thereof. The blocks are referenced by numbers 302-314. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable media that, when executed by one or more processing units (such as hardware microprocessors), perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations is described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the process. - At 302, a kiosk management server receives, from a client device, a login request to a presence based service, the login request including a client identifier associated with a client and client credentials. For example, the
agent device 106 sends thelogin request 118 to the presence basedservice 116 via thecommunication network 114. In some embodiments, the login request includes theclient identifier 120 and theclient credential 120. - At 304, the kiosk management server authenticates the client device based on the client identifier and the client credential. For example, upon receipt of the
login request 118, the presence basedservice 116 authenticates theagent device 106 based on theclient identifier 120 and theclient credential 122. - At 306, the kiosk management server sets a presence status of a client to available. For example, if the
agent device 106 successfully authenticates to the presence basedservice 116, theagent device 106 is logged into the presence basedservice 116. - At 308, the kiosk management server determines client information corresponding to the client based on the client identifier. For example, the kiosk management server 20 202 identifies the inmate agent profile 254(1) corresponding to the inmate agent associated with the
client identifier 120. - At 310, the kiosk management server transmits the client information to a kiosk located in a booking facility. For example, the
kiosk management server 102 sendsinmate agent information 124 associated with theinmate agent 108 to thekiosk device 104 via thecommunication network 114. In certain embodiments, upon receipt of theinmate agent information 124, thekiosk device 104 presents a graphical representation of theinmate agent information 124 via a display interface of thekiosk device 104. - At 312, the kiosk management server receives a selection of the client from the kiosk. For example, the inmate 112 may view the
inmate agent information 124 via thekiosk device 104, and select to communicate with theinmate agent 108. In response, thekiosk device 104 sends the inmate agent selection 128 to thekiosk management server 102 via thecommunication network 114, wherein the inmate agent selection 128 indicates that the inmate 112 requests to communicate with theinmate agent 108. - At 314, the kiosk management server initializes an out of band communication channel between the client device and the kiosk. For example, the
kiosk management server 102 establishes the out of band communication channel 130 between theagent device 106 and thekiosk device 104. - In some embodiments, the
kiosk management server 102 assists thekiosk device 104 andagent device 106 in establishing the out of band communication channel 130 by facilitating an encryption key exchange. For instance, thekiosk management server 102 may provide encryption information (e.g., certificates, encryption keys, secrets, etc.) to thekiosk device 104 andagent device 106 that thekiosk device 104 andagent device 106 employ in a handshake protocol to establish a symmetric encryption key for transmission of data over the out of band communication channel 130. -
FIG. 4 illustrates aprocess 400 for providing inmate assistance via a video kiosk inmate system, according to some implementations. Theprocess 400 is illustrated as a collection of blocks in a logical flow graph, which represent a sequence of operations that can be implemented in hardware, software, or a combination thereof. The blocks are referenced by numbers 402-416. In the context of software, the blocks represent computer-executable instructions stored on one or more computer-readable media that, when executed by one or more processing units (such as hardware microprocessors), perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations is described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the process. - At 402, the kiosk management server transmits the client information to a kiosk located in a booking facility. For example, the
kiosk management server 202 sends contents of the inmate agent profile 254(1) associated with the inmate agent 208(1) to the kiosk device 204(1). In certain embodiments, upon receipt of the contents of the inmate agent profile 254(1), thekiosk device 204 presents a graphical representation of the contents of the inmate agent profile 254(1) via a display interface of the kiosk device 204(1). - At 404, the kiosk management server receives a selection of the client from the kiosk. For example, the inmate 212(1) may view the contents of inmate agent profile 254(1) via the kiosk device 204(1), and request the assistance of the inmate agent 208(1). In response, the kiosk device 204(1) sends an inmate agent selection (e.g., the inmate agent selection 128) to the kiosk management server.
- At 406, a kiosk management server determines the integrity value of an inmate device associated with an inmate. In some embodiments, the inmate agent 208(1) and the inmate 212(1) enter an agreement for the inmate agent 208(1) to post bond for the inmate 212(1), and the inmate 212(1) to periodically provide the
location information 262 to the inmate agent 208(1) via thelocation monitoring application 264. Further, thekiosk management server 202 facilitates location monitoring by managing the installation of thelocation monitoring application 264 on the inmate device 210(1). - For example, the
kiosk management server 202 sends an integrity request 238 to the inmate device 210(1). In response, the inmate device 210(1) sends an integrity response to thekiosk management server 202. Upon receipt of theintegrity response 240, thesecurity module 224 verifies the integrity of theinmate device 210 based upon theintegrity response 240. Further, in some embodiments, theintegrity response 240 includesproof information 242 that can be used to determine the integrity of the inmate device 210(1). - At 408, the kiosk management server transmits, to the inmate device, an installation executable associated with a location monitoring application based on the integrity value. For example, the tracking
initialization module 234 sends aninstallation executable 266 corresponding to thelocation monitoring application 264 to the inmate device 210(1). Additionally, or alternatively, thekiosk device 204 may provide theinstallation executable 266 to the inmate device 210(1). - At 410, the kiosk management server confirms installation of the location monitoring application on the inmate device. For example, the tracking
initialization module 234 receives theinstallation confirmation 268 from thelocation monitoring application 264. Upon receipt of theinstallation confirmation 268, the trackinginitialization module 234 updates the inmate profile 256(1) to include a mapping of the inmate 212(1) to an identifier of thelocation monitoring application 264 on the inmate device 210(1). - At 412, the kiosk management server associates the inmate agent with the location monitoring application on the inmate device. For example, the
kiosk management server 202 modifies the inmate agent profile 254(1) to indicate that the inmate agent 208(1) is authorized to receive location information 262(1) received from thelocation monitoring application 264 installed on the inmate device 210(1). - At 414, the kiosk management server receives current location information from the location monitoring application. For example, after the inmate 212(1) is released from the
inmate booking environment 220, thetracking module 236 receives the location information 262(1) from thelocation monitoring application 264 as the inmate 212(1) travels with the inmate device 210(1). In some embodiments, thelocation information 262 includes adevice identifier 270 corresponding to the inmate device 210(1) (e.g., the identifier of the installation of thelocation monitoring application 264 on the inmate device 210(1)), and alocation identifier 272 that identifies a location of the inmate device 210(1). - At 416, the kiosk management server transmits the current location information to an inmate agent device associated with the inmate agent. For example, the
tracking module 236 sends the inmate agent device 206(1) thelocation information 262 based upon the association between the inmate agent 208(1) and thelocation monitoring application 264 installed on the inmate device 210(1). -
FIG. 5A illustrates an example graphical user interface 500, displayed on a kiosk device, for providing inmate agent information to an inmate, according to exemplary embodiments. As shown inFIG. 5A , the graphical user interface 500 includes an agent information section 502, anavigation bar 504, and acontrol section 506. The agent information section 502 includes agent information 508 (e.g., the inmate agent information 120) corresponding to inmate agents (e.g., the inmate agents 108) within the video kiosk inmate assistance system. In some embodiments, theagent information 508 includes a name of an inmate agent, pricing information of an inmate agent, user reviews corresponding to an inmate agent, contact information corresponding to an inmate agent, and any other information that describes the services offered by an inmate agent to an inmate. Further, individual inmate agents are associated with particular agent information. For example, a first inmate agent is associated with the agent information 508(1); an nth inmate agent is associated with the agent information 508(N), and so forth. - Further, the
navigation bar 504 provides functionality for browsing through theavailable agent information 508 within the video kiosk inmate assistance system. In some embodiments, theagent information 508 is ranked or filtered according to one or more attributes of the corresponding inmate agents. For example, inmate agents having experience or good reviews with respect to a criminal charge associated with the inmate may be ranked higher. As another example, inmate agents offering services in a geographic region associated with the inmate may be ranked higher. - As further shown in
FIG. 5A , thecontrol section 506 includes aselect agent control 509, abookmark agent control 510, apayment control 512, aninmate information control 514, and a configure device control 516. When the inmate selects theselect agent control 508, the kiosk device 204 (not shown inFIG. 5A ) sends the information agent selection 124 (not show inFIG. 5A ) to the kiosk management server 102 (not show inFIG. 5A ). When an inmate selects thebookmark agent control 510, thekiosk device 204 adds a highlighted inmate agent to a list of favorited inmate agents. Further, thekiosk device 204 can filter theinmate agent information 508 by the list of favorited inmate agents. When an inmate selects thepayment control 512, thekiosk device 204 displays another graphical user interface with functionality for payment of a bond or fee associated with the conditions for release of the inmate. Additionally, thekiosk device 204 may display another graphical user interface with functionality for payment of services provided by an inmate agent. When an inmate selects theinmate information control 514, thekiosk device 204 displays another graphical user interface with information about the terms and conditions of the inmate's arrest (e.g., a bond or fine amount associated with the conditions of the inmate release). When an inmate selects the configure device control 416, thekiosk device 204 displays another graphical user interface with functionality for configuring location monitoring via a device associated with the inmate. -
FIG. 5B illustrates an example graphical user interface 500, displayed on a kiosk device, for providing a communication interface to an inmate, according to exemplary embodiments. As shown inFIG. 5B , the graphical user interface 500 includes avideo chat interface 518, atext chat interface 520, and acontrol panel 522. Thevideo chat interface 518 provides an interface for audio visual communications between the inmate and an inmate agent. In some embodiments, the audio visual communications are transmitted over an out of band communication channel (e.g., the out of band communication channels 252), as described herein. Thetext chat interface 520 provides an interface for textual communications with an inmate agent. In some embodiments, the text communications are transmitted over an out of band communication channel (e.g., the out of band communication channels 252), as described herein. - As further shown in
FIG. 5B , thecontrol section 522 includes a pause control 524 for placing communication with an inmate agent on hold, anend control 526 for terminating communication with an inmate agent, a configure device control 516, apayment control 512, and ashare information control 526. When an inmate selects theshare information control 514, thekiosk device 204 requests that that thekiosk management server 202 sends inmate information (e.g., the inmate information response 298) to the inmate agent. -
FIG. 6 illustrates select components of the kiosk management server 500, such askiosk management server 104 andkiosk management server 202. Thekiosk management server 600 includes one or more servers or other types of computing devices that may be embodied in any number of ways. For instance, the modules, other functional components, and data may be implemented on a single server, a cluster of servers, a server farm or data center, a cloud-hosted computing service, and so forth, although other computer architectures may additionally or alternatively be used. - Further, while the figures illustrate the components and data of the
kiosk management server 600 as being present in a single location, these components and data may alternatively be distributed across different computing devices and different locations in any manner. Consequently, the functions may be implemented by one or more computing devices, with the various functionality described above distributed in various ways across the different computing devices. Multiplekiosk management servers 600 may be located together or separately, and organized, for example, as virtual servers, server banks and/or server farms. The described functionality may be provided by the servers of a single entity or enterprise, or may be provided by the servers and/or services of multiple different entities or enterprises. - In the illustrated example, the
kiosk management server 600 includes one ormore processors 602, one or more computer-readable media 604, and one or more communication interfaces 606. Eachprocessor 602 is a single processing unit or a number of processing units, and may include single or multiple computing units or multiple processing cores. The processor(s) 602 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. For instance, the processor(s) 602 may be one or more hardware processors and/or logic circuits of any suitable type specifically programmed or configured to execute the algorithms and processes described herein. The processor(s) 602 can be configured to fetch and execute computer-readable instructions stored in the computer-readable media 604, which can program the processor(s) 602 to perform the functions described herein. - The computer-
readable media 604 include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Such computer-readable media 604 include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, network attached storage, storage area networks, cloud storage, or any other medium that can be used to store the desired information and that can be accessed by a computing device. Depending on the configuration of thekiosk management server 600, the computer-readable media 604 may be a type of computer-readable storage media and/or may be a tangible non-transitory media to the extent that when mentioned, non-transitory computer-readable media exclude media such as energy, carrier signals, electromagnetic waves, and signals per se. - The computer-
readable media 604 is used to store any number of functional components that are executable by theprocessors 602. In many implementations, these functional components comprise instructions or programs that are executable by the processors and that, when executed, specifically configure the one ormore processors 602 to perform the actions attributed above to thekiosk management server 600. In addition, the computer-readable media 604 store data used for performing the operations described herein. - In the illustrated example, the functional components stored in the computer-
readable media 604 include asecurity module 608, a presence basedservice 610, apayment service 612, a trackinginitialization module 614, and atracking module 616. Further, the computer-readable media 604 includeinmate agent information 618 andinmate information 620. In addition, theinmate agent information 618 includes inmate agent profiles 622, and theinmate information 620 includes inmate device profiles 624. - Additional functional components stored in the computer-
readable media 604 include anoperating system 626 for controlling and managing various functions of thekiosk management server 600. Thekiosk management server 600 also include or maintain other functional components and data, such as other modules anddata 628, which include programs, drivers, etc., and the data used or generated by the functional components. Further, thekiosk management server 600 includes many other logical, programmatic and physical components, of which those described above are merely examples that are related to the discussion herein. - The communication interface(s) 606 include one or more interfaces and hardware components for enabling communication with various other devices, such as the
kiosk devices agent device 106, theagent devices 206, theinmate device 110, theinmate devices 210, or other computing devices, over the network(s) 114 and 222. For example, communication interface(s) 606 facilitate communication through one or more of the Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi, cellular) and wired networks. As several examples, thekiosk management server 600 and thekiosk device 204 communicate and interact with one another using any combination of suitable communication and networking protocols, such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth. Examples of communication interface(s) include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. - The
kiosk management server 600 may further be equipped with various input/output (I/O)devices 630. Such I/O devices include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports and so forth. -
FIG. 7 illustrates select example components of the inmate agent device 700 (e.g., theagent device 106 and the agent devices 206) that implements the functionality described above, according to an exemplary embodiment. Theinmate agent device 700 may be any of a number of different types of personal computing devices. Some examples of theinmate agent device 700 include smart phones and mobile communication devices, tablet computing devices, desktops, laptops, netbooks and other portable computers, wearable computing devices, and any other portable device capable of sending communications and performing the functions according to the techniques described herein. - In the illustrated example, the
inmate agent device 700 includes one ormore processors 702, one or more computer-readable media 704, one ormore communication interfaces 706, amicrophone 708, and acamera 710. Eachprocessor 602 is a single processing unit or a number of processing units, and may include single or multiple computing units or multiple processing cores. The processor(s) 702 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. For instance, the processor(s) 702 may be one or more hardware processors and/or logic circuits of any suitable type specifically programmed or configured to execute the algorithms and processes described herein. The processor(s) 702 can be configured to fetch and execute computer-readable instructions stored in the computer-readable media 704, which can program the processor(s) 702 to perform the functions described herein. - The computer-
readable media 704 include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Such computer-readable media 704 include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, network attached storage, storage area networks, cloud storage, or any other medium that can be used to store the desired information and that can be accessed by a computing device. Depending on the configuration of theinmate agent device 700, the computer-readable media 704 may be a type of computer-readable storage media and/or may be a tangible non-transitory media to the extent that when mentioned, non-transitory computer-readable media exclude media such as energy, carrier signals, electromagnetic waves, and signals per se. - The computer-
readable media 704 is used to store any number of functional components that are executable by theprocessors 702. In many implementations, these functional components comprise instructions or programs that are executable by the processors and that, when executed, specifically configure the one ormore processors 702 to perform the actions attributed above to the inmate agent devices (e.g., theagent device 106 and the agent devices 206). In addition, the computer-readable media 704 store data used for performing the operations described herein. - In the illustrated example, the functional components stored in the computer-
readable media 704 include aclient agent application 712. Theclient agent application 712 manages theinmate agent device 700 within a video kiosk inmate system, such as the video kiosk inmate system 100 and the video kiosk inmate system 200. In some embodiments, theclient agent application 712 manages the sending of integrity information (e.g., the integrity response 240), presence information (e.g., the presence status 248), and payment information (e.g., the payment communication 258). Further, theclient agent application 712 manages the creation of secure memory locations in the computerreadable media 704, and the storing of inmate information (e.g., the inmate information response 298) in the secure memory locations. Additionally, theclient agent application 712 may locally perform the functions of thesecurity module 224. - Additional functional components stored in the computer-
readable media 704 include anoperating system 714 for controlling and managing various functions of theinmate agent device 700. Theinmate agent device 700 also includes or maintains other functional components and data, such as other modules anddata 716, which include programs, drivers, etc., and the data used or generated by the functional components. Further, theinmate agent device 700 includes many other logical, programmatic and physical components, of which those described above are merely examples that are related to the discussion herein. - The communication interface(s) 706 includes one or more interfaces and hardware components for enabling communication with various other devices, such as the
kiosk management server 102, thekiosk management server 202, thekiosk management server 600, thekiosk device 104, thekiosk devices 204, theinmate device 110, theinmate devices 210, or other computing devices, over the network(s) 114 and 222. For example, communication interface(s) 706 facilitates communication through one or more of the Internet, cable networks, cellular networks, wireless networks (e.g., Wi-Fi, cellular) and wired networks. As several examples, thekiosk management server 600 and theagent device 700 communicate and interact with one another using any combination of suitable communication and networking protocols, such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth. Examples of communication interface(s) include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. -
FIG. 7 further illustrates that theinmate agent device 700 includes adisplay 718. Depending on the type of computing device used as theinmate agent device 700, thedisplay 718 may employ any suitable display technology. For example, thedisplay 718 may be a liquid crystal display, a light emitting diode display, or any other suitable type of display able to present digital content thereon. In some embodiments, thedisplay 718 includes touch sensor with thedisplay 718 to provide a touchscreen display configured to receive touch inputs for enabling interaction with a graphic interface presented on thedisplay 718. Accordingly, implementations herein are not limited to any particular display technology. Alternatively, in some other embodiments, theinmate agent device 700 may not include adisplay 718. - Furthermore, the
inmate agent device 700 is equipped with various input/output (I/O)devices 720. Such I/O devices 720 include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports, sensors (e.g., accelerometer, gyroscope, a compass, localization sensors, photometer, magnetometer, fingerprint sensors, etc.), and so forth. Additionally, theinmate agent device 700 includes various other components that are not shown, examples of which include removable storage, a power source, such as a battery and power control unit, and so forth. - It will be apparent to persons skilled in the relevant art(s) that various elements and features of the present disclosure, as described herein, can be implemented in hardware using analog and/or digital circuits, in software, through the execution of computer instructions by one or more general purpose or special-purpose processors, or as a combination of hardware and software.
-
FIG. 8 illustrates select example components of the inmate device 800 (e.g., theinmate device 110 and the inmate devices 210) that implements the functionality described above, according to an exemplary embodiment. Theinmate device 800 may be any of a number of different types of personal computing devices. Some examples of theinmate device 800 include smart phones and mobile communication devices, tablet computing devices, desktops, laptops, netbooks and other portable computers, wearable computing devices, and any other portable device capable of sending communications and performing the functions according to the techniques described herein. - In the illustrated example, the
inmate device 800 includes one ormore processors 802, one or more computer-readable media 804, one ormore communication interfaces 806, amicrophone 808, and acamera 810. Eachprocessor 802 is a single processing unit or a number of processing units, and may include single or multiple computing units or multiple processing cores. The processor(s) 802 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. For instance, the processor(s) 802 may be one or more hardware processors and/or logic circuits of any suitable type specifically programmed or configured to execute the algorithms and processes described herein. The processor(s) 802 can be configured to fetch and execute computer-readable instructions stored in the computer-readable media 804, which can program the processor(s) 802 to perform the functions described herein. - The computer-
readable media 804 include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. Such computer-readable media 804 include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, network attached storage, storage area networks, cloud storage, or any other medium that can be used to store the desired information and that can be accessed by a computing device. Depending on the configuration of theinmate device 800, the computer-readable media 804 may be a type of computer-readable storage media and/or may be a tangible non-transitory media to the extent that when mentioned, non-transitory computer-readable media exclude media such as energy, carrier signals, electromagnetic waves, and signals per se. - The computer-
readable media 804 is used to store any number of functional components that are executable by theprocessors 802. In many implementations, these functional components comprise instructions or programs that are executable by the processors and that, when executed, specifically configure the one ormore processors 802 to perform the actions attributed above to the inmate devices (e.g., theinmate device 110 and the inmate devices 210). In addition, the computer-readable media 804 store data used for performing the operations described herein. - In the illustrated example, the functional components stored in the computer-
readable media 804 include alocation monitoring application 812, alocation module 814, apossession module 816, and abiometric module 818. - In some embodiments, the
location monitoring application 812 manages the sending of installation information (e.g., the installation confirmation 268), location information (e.g., the location information 262) and possession information (e.g., the possession response 278) to thekiosk management servers location module 814 determines a location identifier (e.g., the location identifier 272) of theinmate device 800. In some embodiments, the location module includes a global positioning system (GPS), an indoor positioning system (IPS) device, or a global'naya navigatsionnaya sputnikovaya sistema (GLONASS) device. - In some embodiments, the
possession module 816 locally performs functions of thetracking module 236. For example, thepossession module 816 locally determines whether an inmate is in possession of theinmate device 800 and sends the result to thekiosk management server 202. Further, thebiometric module 818 captures and authenticates biometric information using components of the inmate device 800 (e.g., the microphone, the camera, etc.). For example, thebiometric module 818 directs themicrophone 808 andcamera 810 to capture biometric samples from a user of theinmate device 800. Further, thebiometric module 818 authenticates a user of theinmate device 800 based on the captured biometric samples, or sends the authentication information to thekiosk management server 600 for completion of an authentication process. - Additional functional components stored in the computer-
readable media 804 include anoperating system 820 for controlling and managing various functions of theinmate device 800. For example, theoperating system 820 may manage the sending of integrity information (e.g., integrity response 240) associated with theinmate device 800. Theinmate device 800 also includes or maintains other functional components and data, such as other modules anddata 822, which include programs, drivers, etc., and the data used or generated by the functional components. For example, the other modules and data may include modules for sending payment information (e.g., the payment communication 258). Further, theinmate device 800 includes many other logical, programmatic and physical components, of which those described above are merely examples that are related to the discussion herein. - The communication interface(s) 806 includes one or more interfaces and hardware components for enabling communication with various other devices, such as the
kiosk management servers agent devices kiosk management server 202 and theinmate device 800 communicate and interact with one another using any combination of suitable communication and networking protocols, such as Internet protocol (IP), transmission control protocol (TCP), hypertext transfer protocol (HTTP), cellular or radio communication protocols, and so forth. Examples of communication interface(s) include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. -
FIG. 8 further illustrates that theinmate device 800 includes adisplay 824. Depending on the type of computing device used as theinmate device 800, thedisplay 824 may employ any suitable display technology. For example, thedisplay 824 may be a liquid crystal display, a light emitting diode display, or any other suitable type of display able to present digital content thereon. In some embodiments, thedisplay 824 includes touch sensor with thedisplay 824 to provide a touchscreen display configured to receive touch inputs for enabling interaction with a graphic interface presented on thedisplay 824. Accordingly, implementations herein are not limited to any particular display technology. Alternatively, in some other embodiments, theinmate device 800 may not include adisplay 824. - Furthermore, the
inmate device 800 is equipped with various input/output (I/O)devices 826. Such I/O devices 826 include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports, sensors (e.g., accelerometer, gyroscope, a compass, localization sensors, photometer, magnetometer, fingerprint sensors, etc.), and so forth. Additionally, theinmate device 800 includes various other components that are not shown, examples of which include removable storage, a power source, such as a battery and power control unit, and so forth. - It will be apparent to persons skilled in the relevant art(s) that various elements and features of the present disclosure, as described herein, can be implemented in hardware using analog and/or digital circuits, in software, through the execution of computer instructions by one or more general purpose or special-purpose processors, or as a combination of hardware and software.
- The following description of a general purpose computer system is provided for the sake of completeness. Embodiments of the present disclosure can be implemented in hardware, or as a combination of software and hardware. Consequently, embodiments of the disclosure may be implemented in the environment of a computer system or other processing system. For example, the methods of
FIGS. 3-4 can be implemented in the environment of one or more computer systems or other processing systems. An example of such acomputer system 900 is shown inFIG. 9 . One or more of the modules depicted in the previous figures can be at least partially implemented on one or moredistinct computer systems 900. -
Computer system 900 includes one or more processors, such asprocessor 904.Processor 904 can be a special purpose or a general purpose digital signal processor.Processor 904 is connected to a communication infrastructure 902 (for example, a bus or network). Various software implementations are described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art(s) how to implement the disclosure using other computer systems and/or computer architectures. -
Computer system 900 also includes amain memory 906, preferably random access memory (RAM), and may also include asecondary memory 908.Secondary memory 908 may include, for example, ahard disk drive 910 and/or aremovable storage drive 912, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, or the like.Removable storage drive 912 reads from and/or writes to aremovable storage unit 916 in a well-known manner.Removable storage unit 916 represents a floppy disk, magnetic tape, optical disk, or the like, which is read by and written to byremovable storage drive 912. As will be appreciated by persons skilled in the relevant art(s),removable storage unit 916 includes a computer usable storage medium having stored therein computer software and/or data. - In alternative implementations,
secondary memory 908 may include other similar means for allowing computer programs or other instructions to be loaded intocomputer system 900. Such means may include, for example, aremovable storage unit 918 and aninterface 914. Examples of such means may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, a thumb drive and USB port, and otherremovable storage units 918 andinterfaces 914 which allow software and data to be transferred fromremovable storage unit 918 tocomputer system 900. -
Computer system 900 may also include acommunications interface 920. Communications interface 920 allows software and data to be transferred betweencomputer system 900 and external devices. Examples ofcommunications interface 920 may include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. Software and data transferred viacommunications interface 920 are in the form of signals which may be electronic, electromagnetic, optical, or other signals capable of being received bycommunications interface 920. These signals are provided tocommunications interface 920 via acommunications path 922.Communications path 922 carries signals and may be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels. - As used herein, the terms “computer program medium” and “computer readable medium” are used to generally refer to tangible storage media such as
removable storage units hard disk drive 910. These computer program products are means for providing software tocomputer system 900. - Computer programs (also called computer control logic) are stored in
main memory 906 and/orsecondary memory 908. Computer programs may also be received viacommunications interface 920. Such computer programs, when executed, enable thecomputer system 900 to implement the present disclosure as discussed herein. In particular, the computer programs, when executed, enableprocessor 904 to implement the processes of the present disclosure, such as any of the methods described herein. Accordingly, such computer programs represent controllers of thecomputer system 900. Where the disclosure is implemented using software, the software may be stored in a computer program product and loaded intocomputer system 900 usingremovable storage drive 912,interface 914, orcommunications interface 920. - In another embodiment, features of the disclosure are implemented primarily in hardware using, for example, hardware components such as application-specific integrated circuits (ASICs) and gate arrays. Implementation of a hardware state machine so as to perform the functions described herein will also be apparent to persons skilled in the relevant art(s).
- It is to be appreciated that the Detailed Description section, and not the Abstract section, is intended to be used to interpret the claims. The Abstract section may set forth one or more, but not all exemplary embodiments, and thus, is not intended to limit the disclosure and the appended claims in any way.
- The disclosure has been described above with the aid of functional building blocks illustrating the implementation of specified functions and relationships thereof. The boundaries of these functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternate boundaries may be defined so long as the specified functions and relationships thereof are appropriately performed.
- It will be apparent to those skilled in the relevant art(s) that various changes in form and detail can be made therein without departing from the spirit and scope of the disclosure. Thus, the disclosure should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims (20)
1. A method performed by a kiosk management server, comprising:
receiving, from a client device and via a first communication channel, a login request to a presence based service, wherein the presence based service monitors an availability of a plurality of inmate agents and the login request includes a client identifier associated with an inmate agent and a client credential;
authenticating the client device based on the client identifier and the client credential;
setting a presence status of the inmate agent to available;
determining client information corresponding to the inmate agent based on the client identifier;
transmitting the client information to a kiosk device located in a booking facility based on the presence status;
receiving a selection of the inmate agent by a user of the kiosk device;
initializing an out of band communication channel between a user device, the client device, and the kiosk device, the out of band communication channel being independent of the first communication channel of the presence based service and having an end to end encryption to protect communication via the out of band communication channel;
based on an establishment of the out of band communication channel, transmitting an installation executable to the user device associated with the user of the kiosk device via the out of band communication channel, wherein the installation executable is associated with an application configured to monitor a location of the user via the user device;
monitoring the location of the user;
modifying a boundary an inmate associated with the client device can travel based on the inmate agent indicating a preference as a condition for posting a bond; and
sending a warning communication to the inmate agent based on the client device being outside the boundary by a predetermined distance.
2. The method of claim 1 , further comprising generating a warning communication to the inmate agent based on the client device being outside the boundary for a period of time longer than a predetermined amount.
3. The method of claim 1 , further comprising notifying a law enforcement agency based on the client device being outside the boundary by the predetermined distance.
4. The method of claim 1 , further comprising periodically further authenticating the client device by sending a possession request to the client device.
5. The method of claim 4 , further comprising
in response to the possession request, receiving a possession response,
wherein the possession response comprises: a facial recognition information, fingerprint identification information, palm print identification information, iris recognition information, retina recognition information, voice recognition information, cryptographic hashes, credentials, secrets, or passwords.
6. The method of claim 4 , further comprising:
in response to the possession request, not receiving a possession response; and
based on not receiving the possession response, notifying a law enforcement agency.
7. The method of claim 4 , further comprising:
in response to the possession request, not receiving a possession response; and
based on not receiving the possession response, notifying the inmate agent.
8. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device of a kiosk management server, causes the at least one computing device to perform operations comprising:
receiving, from a client device and via a first communication channel, a login request to a presence based service, wherein the presence based service monitors an availability of a plurality of inmate agents and the login request includes a client identifier associated with an inmate agent and a client credential;
authenticating the client device based on the client identifier and the client credential;
setting a presence status of the inmate agent to available;
determining client information corresponding to the inmate agent based on the client identifier;
transmitting the client information to a kiosk device located in a booking facility based on the presence status;
receiving a selection of the inmate agent by a user of the kiosk device;
initializing an out of band communication channel between a user device, the client device, and the kiosk device, the out of band communication channel being independent of the first communication channel of the presence based service and having an end to end encryption to protect communication via the out of band communication channel;
based on an establishment of the out of band communication channel, transmitting an installation executable to the user device associated with the user of the kiosk device via the out of band communication channel, wherein the installation executable is associated with an application configured to monitor a location of the user via the user device;
monitoring the location of the user;
modifying a boundary an inmate associated with the client device can travel based on the inmate agent indicating a preference as a condition for posting a bond; and
sending a warning communication to the inmate agent based on the client device being outside the boundary by a predetermined distance.
9. The non-transitory computer readable medium of claim 8 , wherein the operations further comprise generating a warning communication to the inmate agent based on the client device being outside the boundary for a period of time longer than a predetermined amount.
10. The non-transitory computer readable medium of claim 8 , wherein the operations further comprise notifying a law enforcement agency based on the client device being outside the boundary by the predetermined distance.
11. The non-transitory computer readable medium of claim 8 , wherein the operations further comprise periodically further authenticating the client device by sending a possession request to the client device.
12. The non-transitory computer readable medium of claim 11 , wherein the operations further comprise:
in response to the possession request, receiving a possession response,
wherein the possession response comprises: a facial recognition information, fingerprint identification information, palm print identification information, iris recognition information, retina recognition information, voice recognition information, cryptographic hashes, credentials, secrets, or passwords.
13. The non-transitory computer readable medium of claim 11 , wherein the operations further comprise:
in response to the possession request, not receiving a possession response; and
based on not receiving the possession response, notifying a law enforcement agency.
14. The non-transitory computer readable medium of claim 11 , wherein the operations further comprise:
in response to the possession request, not receiving a possession response; and
based on not receiving the possession response, notifying the inmate agent.
15. An inmate assistance system comprising:
a memory storing instructions; and
one or more processors of a kiosk management server coupled to the memory and configured to process the stored instructions to:
receive, from a client device and via a first communication channel, a login request to a presence based service, wherein the presence based service monitors an availability of a plurality of inmate agents and the login request includes a client identifier associated with an inmate agent and a client credential;
authenticate the client device based on the client identifier and the client credential;
set a presence status of the inmate agent to available;
determine client information corresponding to the inmate agent based on the client identifier;
transmit the client information to a kiosk device located in a booking facility based on the presence status;
receive a selection of the inmate agent by a user of the kiosk device;
initialize an out of band communication channel between a user device, the client device, and the kiosk device, the out of band communication channel being independent of the first communication channel of the presence based service and having an end to end encryption to protect communication via the out of band communication channel;
based on an establishment of the out of band communication channel, transmit an installation executable to the user device associated with the user of the kiosk device via the out of band communication channel, wherein the installation executable is associated with an application configured to monitor a location of the user via the user device;
monitor the location of the user;
modify a boundary an inmate associated with the client device can travel based on the inmate agent indicating a preference as a condition for posting a bond; and
send a warning communication to the inmate agent based on the client device being outside the boundary by a predetermined distance.
16. The inmate assistance system of claim 15 , wherein the one or more processors are further configured to generate a warning communication to the inmate agent based on the client device being outside the boundary for a period of time longer than a predetermined amount.
17. The inmate assistance system of claim 15 , wherein the one or more processors are further configured to notify a law enforcement agency based on the client device being outside the boundary by the predetermined distance.
18. The inmate assistance system of claim 15 , wherein the one or more processors are further configured to periodically further authenticate the client device by sending a possession request to the client device.
19. The inmate assistance system of claim 18 , wherein the one or more processors are further configured to:
in response to the possession request, receive a possession response,
wherein the possession response comprises: a facial recognition information, fingerprint identification information, palm print identification information, iris recognition information, retina recognition information, voice recognition information, cryptographic hashes, credentials, secrets, or passwords.
20. The inmate assistance system of claim 18 , wherein the one or more processors are further configured to:
in response to the possession request, not receiving a possession response; and
based on not receiving the possession response, notifying a law enforcement agency or the inmate agent.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/210,230 US20230379403A1 (en) | 2017-08-31 | 2023-06-15 | Video kiosk inmate assistance system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/692,157 US11729298B2 (en) | 2017-08-31 | 2017-08-31 | Video kiosk inmate assistance system |
US18/210,230 US20230379403A1 (en) | 2017-08-31 | 2023-06-15 | Video kiosk inmate assistance system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/692,157 Continuation US11729298B2 (en) | 2017-08-31 | 2017-08-31 | Video kiosk inmate assistance system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230379403A1 true US20230379403A1 (en) | 2023-11-23 |
Family
ID=65434228
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/692,157 Active US11729298B2 (en) | 2017-08-31 | 2017-08-31 | Video kiosk inmate assistance system |
US18/210,230 Pending US20230379403A1 (en) | 2017-08-31 | 2023-06-15 | Video kiosk inmate assistance system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/692,157 Active US11729298B2 (en) | 2017-08-31 | 2017-08-31 | Video kiosk inmate assistance system |
Country Status (1)
Country | Link |
---|---|
US (2) | US11729298B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190138558A1 (en) * | 2017-09-29 | 2019-05-09 | Axwave, Inc. | Artificial intelligence assistant context recognition service |
US20190304446A1 (en) * | 2017-09-29 | 2019-10-03 | Axwave, Inc. | Artificial intelligence assistant recommendation service |
US20190304447A1 (en) * | 2017-09-29 | 2019-10-03 | Axwave, Inc. | Artificial intelligence assistant recommendation service |
US11587086B1 (en) * | 2019-11-12 | 2023-02-21 | Tech Friends, Inc. | Payment distribution system and method |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5666442A (en) | 1993-05-23 | 1997-09-09 | Infoglide Corporation | Comparison system for identifying the degree of similarity between objects by rendering a numeric measure of closeness, the system including all available information complete with errors and inaccuracies |
US20030195806A1 (en) | 1998-11-12 | 2003-10-16 | Ad Response Micromarketing Corporation | Manufacturer's coupon ordering system |
US6704699B2 (en) | 2000-09-05 | 2004-03-09 | Einat H. Nir | Language acquisition aide |
US7529357B1 (en) | 2003-08-15 | 2009-05-05 | Evercom Systems, Inc. | Inmate management and call processing systems and methods |
US8996620B2 (en) * | 2005-11-18 | 2015-03-31 | Aol Inc. | Promoting interoperability of presence-based systems through the use of ubiquitous online identities |
US7874005B2 (en) | 2006-04-11 | 2011-01-18 | Gold Type Business Machines | System and method for non-law enforcement entities to conduct checks using law enforcement restricted databases |
US8502643B2 (en) | 2006-07-18 | 2013-08-06 | L-I Identity Solutions Operating Company | Methods and apparatus for self check-in of items for transportation |
US20110213618A1 (en) * | 2009-08-26 | 2011-09-01 | Ron Hodge | System and Method for Automating Correctional Facilities |
US20120079045A1 (en) * | 2010-09-24 | 2012-03-29 | Robert Plotkin | Profile-Based Message Control |
TWI627987B (en) * | 2012-02-28 | 2018-07-01 | Cfph有限責任公司 | Method and apparatus of providing gameing service |
US20160019555A1 (en) | 2014-07-15 | 2016-01-21 | Boles Thomas | Automated system for rating employee screening practices and corporate management |
US9275370B2 (en) | 2014-07-31 | 2016-03-01 | Verizon Patent And Licensing Inc. | Virtual interview via mobile device |
US20170193478A1 (en) * | 2015-12-30 | 2017-07-06 | Paypal, Inc. | Checkout kiosk connected to a mobile payment application for expedited transaction processing |
US9763271B1 (en) * | 2016-06-23 | 2017-09-12 | Minutepros.Com Corp. | Networked Wi-Fi stations having multi-level displays and multiple antennas |
US10250649B2 (en) * | 2017-07-11 | 2019-04-02 | Chatalyze, Inc. | Communications system with sequenced chat, interactive and digital engagement functions |
-
2017
- 2017-08-31 US US15/692,157 patent/US11729298B2/en active Active
-
2023
- 2023-06-15 US US18/210,230 patent/US20230379403A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US11729298B2 (en) | 2023-08-15 |
US20190065286A1 (en) | 2019-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230379403A1 (en) | Video kiosk inmate assistance system | |
US11888839B1 (en) | Continuous authentication through orchestration and risk calculation post-authentication system and method | |
US11250530B1 (en) | Method and system for consumer based access control for identity information | |
US20180218454A1 (en) | Managing participation in a monitored system using blockchain technology | |
US9875592B1 (en) | Drone used for authentication and authorization for restricted access via an electronic lock | |
US9531710B2 (en) | Behavioral authentication system using a biometric fingerprint sensor and user behavior for authentication | |
US10824702B1 (en) | System and method for continuous passwordless authentication across trusted devices | |
US11133929B1 (en) | System and method of biobehavioral derived credentials identification | |
US9301140B1 (en) | Behavioral authentication system using a secure element, a behaviometric server and cryptographic servers to authenticate users | |
US20170230363A1 (en) | Method, computer program, and system for identifying multiple users based on their behavior | |
US11727518B2 (en) | Systems and methods for location fencing within a controlled environment | |
US11457017B2 (en) | System and method of determing persistent presence of an authorized user while performing an allowed operation on an allowed resource of the system under a certain context-sensitive restriction | |
US10185816B2 (en) | Controlling user access to electronic resources without password | |
US10027648B2 (en) | Geolocation dependent variable authentication | |
US20130042298A1 (en) | System and method for generating trust among data network users | |
US11687898B2 (en) | Systems and methods for autonomous banking resources | |
EP3676134A1 (en) | Method and system for managing access of vehicle compartment | |
US11367323B1 (en) | System and method for secure pair and unpair processing using a dynamic level of assurance (LOA) score | |
US20180308342A1 (en) | Emergency alert system for controlled environment | |
US11706627B2 (en) | System and method for encounter identity verification | |
CN113259111B (en) | Method, system and computer program product for re-provisioning digital security certificates | |
EP3616359B1 (en) | System and method for iot device authentication and secure transaction authorization | |
EP3619904B1 (en) | Smart card thumb print authentication | |
US10038727B1 (en) | Controlled environment communication system | |
US20230186291A1 (en) | Apparatus and methods for non-fungible tokens as universal digital identification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |