LogoLogo
Developer HubGitHubContact Us
  • Welcome!
  • Olive Helps
    • Platform
      • How Olive Helps Works
      • Installation
      • Account Creation
      • Distributing Olive Helps
    • FAQs
      • General Loop FAQs
      • Loop Development FAQs
      • Olive Helps User FAQs
      • Security / IT FAQs
    • Data Security
      • User Data
      • Antivirus and Firewalls
  • Loop Development Kit
    • Your First Loop
      • Become a Loop Author
      • Creating a Loop
      • Build Your Loop
      • Local Loop Installation
      • Restarting Local Loops
    • Troubleshooting
    • Loop Security
      • Permissions
      • Environment Permissions
    • Loop Publication
      • Loop Approval Checklist
    • Loop Analytics Library
    • Examples
  • Documentation
  • Interfaces
  • Type Alias
  • Enumerations
  • Whisper Components
    • Base Attributes
    • Autocomplete
    • Box
    • Breadcrumb
    • Button
    • Chart
    • CollapseBox
    • Grid
    • Checkbox
    • Date Time
    • Divider
    • DropZone
    • Email
    • Icon
    • List Pair
    • Link
    • Pagination
    • Number
    • Markdown
    • Message
    • Password
    • Progress
    • Radio
    • Rating
    • RichTextEditor
    • Section Title
    • Select
    • Text Input
    • Telephone
    • Typography
  • APTITUDES
    • What are Aptitudes?
    • Browser
    • Clipboard
    • Config
    • Cursor
      • Screen Scaling Behavior
    • Document
    • Filesystem
    • Keyboard
    • Network
    • Process
    • Screen
    • Search
      • Index
    • System
    • UI
      • Loop UI Handlers
    • User
      • JWT
    • Vault
    • Whisper
      • Whisper Updates
      • JSX Whispers
    • Window
      • Screen Scaling Behavior
  • Release Notes
    • What's New
      • Olive Helps v0.55.0
      • Olive Helps v0.54.1
      • Olive Helps v0.53.1
      • Olive Helps v0.51.2
      • LDK v4.0.0
      • Olive Helps v0.50.3
      • Olive Helps v0.49.5
      • LDK v 3.18.0
      • Olive Helps v0.47.2
      • Olive Helps v0.46.2
      • LDK v 3.17.0
      • Olive Helps v0.45.4
      • Olive Helps v0.44.2
      • Olive Helps v0.43.1
      • Olive Helps v0.42.1
      • Olive Helps v0.41.4
      • Olive Helps v0.40.2
      • Olive Helps v0.39.4 & LDK v3.16.0
      • Olive Helps v0.38.8 & LDK v3.15.0
      • Olive Helps v0.36.5
      • Olive Helps v0.36.4
    • Archive
      • Olive Helps v0.36.3 & LDK v3.14.0
      • Olive Helps v0.34.4
      • LDK v3.13.0
      • Olive Helps v0.32.2 & LDK v3.12.0
      • Olive Helps v0.31.2 & LDK v3.11.0
      • Olive Helps v0.30.2 & LDK v3.10.0
      • Olive Helps v0.29.4
      • Olive Helps v0.29.3 & LDK v3.9.0
      • Olive Helps v0.28.3 & LDK v3.8.0
      • Olive Helps v0.27.7
      • Olive Helps v0.27.5
      • Olive Helps v.027.4
      • Olive Helps v0.27.2 & LDK v3.7.0
      • Olive Helps v0.25.3 & LDK v3.5.1
      • Olive Helps v0.24.6 & LDK v3.4.0
      • Olive Helps v0.23.2 & LDK v3.3.0
      • Olive Helps v0.22.3 & LDK v3.2.0
Powered by GitBook
On this page

Was this helpful?

  1. APTITUDES

What are Aptitudes?

Aptitudes are the functionality that the LDK provides to the developers. They are the primary way that a Loop interacts with the system. Each aptitude serves a unique purpose and has different functions and triggers.

What are Sensors?

Sensors are functions that observe and relay data on your machine. They're built into the Olive Helps desktop application and are what allows Olive Helps to understand what to do in order to deliver value when it’s needed instead of when someone seeks it out.

Examples of a Sensor can be found in the Filesystem Aptitude with its exists() , listenDir() , listenFile() , or readFile() functions. All Sensors can receive information about the state of various parts of the system, and have callbacks to respond accordingly.

Other examples of Sensors:

  • Reading data from the clipboard

  • Watching what values are typed into the Olive Helps search bar

  • Monitoring what windows are being opened

  • Listening to data from a WebSocket connection

What is the relationship between Aptitudes and Sensors?

Aptitudes are a set of functionality meant to interact in one specific way with a your machine. Sensors are listeners set through an Aptitude that are meant to monitor for specific events and report when that event occurs. Not all Aptitudes have Sensors, and not all capabilities of an Aptitude are a Sensor.

Here's a simple example that illustrates the relationship between an Aptitude and a Sensor.

Imagine a Loop where we want to monitor a file on your system for changes and log those changes to another file. A Loop would use the File System Aptitude to detect when a file changes through the listenFile() Sensor. When one is detected, we would receive a FileEvent giving us metadata about the change. We would then use the File System Aptitude's writeFile() capability to copy those changes over to the logging file.

What happens to all that sensed data?

All the sensed data (ex. keystrokes) is not intrinsically sent to our API. Sensed data is kept in-memory in the local Olive Helps installation for short periods of time, but is then sent to any locally installed Loops that may listening for that kind of sensed data.

Metrics/metadata about sensed data will also be sent to Olive’s HIPAA cloud. For example, Olive Helps might collect things like how many words a person types or time spent in specific applications. These are meant to understand how people work and how Olive Helps can add more value over time -- they are not meant to record everything that someone types, for example.

PreviousTypographyNextBrowser

Last updated 3 years ago

Was this helpful?