> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anny.co/llms.txt
> Use this file to discover all available pages before exploring further.

# anny Presence

> The desktop app that checks you in to your booked desk automatically as soon as you plug your laptop into the monitor or dock.

anny Presence is a small app for macOS, Windows and Linux that runs in your menu bar or system tray. It checks you in to your booked desk automatically as soon as you plug your laptop into the monitor or dock at your desk. There's nothing to click and no QR code to scan.

> [!NOTE]
>
> **anny Presence is currently in a private beta.** Access is available on request via [support@anny.co](mailto:support@anny.co).

This article is for employees who use the app and for admins and IT teams who set it up and roll it out. The sections for admins and IT are further down.

## What anny Presence does

The app detects what your laptop is connected to and reports it to anny. anny then decides whether you have a matching booking and checks you in. The monitor and dock are the most precise signals, because each one sits at exactly one desk. Wi-Fi and the office network are only a fallback.

| Signal | Precision | What it can do |
| - | - | - |
| Monitor | One desk | Check in your booking, suggest moving it, book a free desk, check you out when you unplug |
| Dock | One desk | Same as the monitor |
| Wi-Fi access point | Area or floor | Only check in a booking you already have in that area |
| Network | Building | Same as the Wi-Fi access point |

> [!NOTE]
>
> Wi-Fi and the network only check in a booking you already have. They never create a booking and never move one.

## When should I use this?

* **You don't want to think about checking in anymore**: The check-in happens as soon as you plug in your laptop.
* **Your organization releases bookings that aren't checked in**: A check-in through the app protects your booking just like any other check-in.
* **You'd like to work at a free desk on the spot**: anny books the desk when you plug in and releases it after you unplug.
* **Not suitable for**: Visitors and people without their own laptop. For those, use the [check-in terminal](https://docs.anny.co/en/check-in-setup.md) or self check-in in the [anny mobile app](https://docs.anny.co/en/anny-mobile-app.md).

## Signing in

You need an anny account and must be a member of a community of your organization. Your organization also needs to have turned on anny Presence. You never have to enter an organization, because anny finds it through your communities.

**1. Open the app**

Open anny Presence from its icon in the menu bar (macOS) or system tray (Windows, Linux).

**2. Sign in through your browser**

Click **Sign in with anny**. Your browser opens and you sign in with your anny account as usual, including single sign-on. You can come back to the app afterwards.

**3. Choose your organization**

If you belong to more than one organization that uses anny Presence, choose one under **Choose your organization**. You can change it later in the ⋯ menu with **Switch organization**.

If you're not in a community of your organization, the app shows **You're not part of a community yet**. See [Troubleshooting](#troubleshooting) for what to do.

### Data region

The **Data region** decides which anny your account lives on. You'll find it on the sign-in screen and in **Settings**. You can choose `anny.co`, `anny.eu` or **Custom domain**, which is the domain your organization uses for anny.

Accounts are separate per region, so switching the region in **Settings** signs you out (**Switch and sign out**). If your IT department has set the region, you can't change it.

## anny Presence day to day

After you plug in, the check-in takes about 30 to 90 seconds, because the app waits briefly to see that the connection stays stable. You then get the notification **Checked in at** with the name of your desk.

For this to work, the booking must already be within the check-in period. If you're early, the app shows **Too early** and checks you in on its own once the period opens.

### The first time at a new monitor or dock

If anny doesn't know your device yet, the app asks **Which desk is this?** once. It suggests your booked desk first, then the desks next to it. You can also find another desk with **Search desks**. Pick the desk and click **Save**. **Skip** closes the question, and the app won't ask again for this device.

When your answer takes effect depends on your organization:

* If it trusts the first answer, you're checked in at this desk from now on.
* If it wants confirmation, the link only counts once three different people have named the same desk or an admin has confirmed it. Until then, the monitor doesn't check you in.

### At a different desk than the one you booked

If you're at a known desk but booked a different one, the app asks whether you want to move your booking. **Move your booking** opens the booking in your browser, where you can change it. **Not now** leaves everything as it is. You aren't checked in in this case.

### At a free desk without a booking

If you plug in at a free desk with a known monitor or dock and you don't have a booking right now, anny books the desk for you and checks you in right away. The booking lasts for the rest of the day if the desk can be booked that long, otherwise for the period that's currently open. Your organization can turn this off.

![anny Presence asks: Which desk is this? The list shows Desk 4.12 as Your booking and other desks, with the buttons Save and Skip below](https://mintcdn.com/anny-85c98540/Plf6YdaOQhCc24oo/images/anny-presence/en-learn.png?fit=max\&auto=format\&n=Plf6YdaOQhCc24oo\&q=85\&s=ce8079657873d4bfec6171a72d94860c)

Pick the desk once.

![anny Presence shows: You're at Desk 3.07. Your booking is for Desk 4.12. Move it here? Below are the buttons Move your booking and Not now](https://mintcdn.com/anny-85c98540/Plf6YdaOQhCc24oo/images/anny-presence/en-move.png?fit=max\&auto=format\&n=Plf6YdaOQhCc24oo\&q=85\&s=0fd6a80074e0f98a0939c3b14374351d)

At the wrong desk, the app suggests moving your booking.

![anny Presence shows Desk 3.07 as Checked in since 1:02 PM via your monitor, with today's booking below](https://mintcdn.com/anny-85c98540/Plf6YdaOQhCc24oo/images/anny-presence/en-booked_free.png?fit=max\&auto=format\&n=Plf6YdaOQhCc24oo\&q=85\&s=1c3abdddb9c4c06d35c879cc59db93d3)

At a free desk, the app books and checks you in automatically.

![anny Presence shows Leaving for Desk 4.12: You'll be checked out unless you plug back in, with a countdown](https://mintcdn.com/anny-85c98540/Plf6YdaOQhCc24oo/images/anny-presence/en-leaving.png?fit=max\&auto=format\&n=Plf6YdaOQhCc24oo\&q=85\&s=4aba119f052f52b101b4d68599d5b493)

After you unplug, the time until check-out runs.

### When you unplug

When you unplug your laptop or it goes to sleep, a grace period begins. It's 15 minutes by default, and your organization can change it. During this time the app shows **Leaving**. If you plug back in in time, nothing else happens and you stay checked in.

When the grace period ends, it depends on the booking:

* **Regular booking**: You're checked out if **Allow self check-out** is on for the resource and the **Minimum duration before check-out** has passed. Otherwise you stay checked in. The booking itself stays in place, unless **Release capacity after checkout** is on for the resource.
* **Booking created by the app**: You're checked out and the desk becomes free for others.

The app only checks you out if it also checked you in on this device.

### Pausing for today

In the ⋯ menu, **Pause for today** stops anny Presence until the end of the day. The app sends nothing during this time. **Resume** turns it back on earlier.

### What the indicators mean

The icon in the menu bar shows the state at a glance:

| Icon | Meaning |
| - | - |
| Butterfly outline | Not signed in, no booking, or waiting for you to plug in |
| Filled butterfly | Checked in, including while the grace period before check-out runs |
| Outline with a dot | The app needs your attention, for example a question or an update |
| Dimmed outline | Paused for today |

On Windows and Linux the icon is in color and shows the state as a dot. In the app you'll also see these labels:

| Label | Meaning |
| - | - |
| **Checked in** | You're checked in. The app shows since when and through which signal. |
| **Waiting** | You have a booking, but your laptop isn't connected to the monitor or dock yet. |
| **Too early** | The check-in period hasn't started yet. anny checks you in then, on its own. |
| **Leaving** | You've unplugged and the grace period is running. |
| **Checked out** | You've been checked out. |
| **Action needed** | Your booking needs a few details. Add them with **Add details**. |
| **Payment open** | Pay for your booking with **Open payment** to finish checking in. |

## Privacy

A check-in through the app is stored on your booking like any other check-in, together with the type of signal, for example monitor or network.

The IDs of your monitor, dock and network are hashed on your device with your organization's key. Raw serial numbers, Wi-Fi identifiers and Wi-Fi names don't leave your device. With each signal, anny only receives the hash, the type of signal, this install's ID, the app version and the time.

There is one exception: when you answer **Which desk is this?**, the app also sends the desk you picked and the model name of your monitor or dock, for example "DELL U2723QE", as a label. The serial number is not part of it.

The app sends nothing while paused. If your IT department has set **Active networks**, the app also doesn't look for anything or send anything outside those networks.

Open **What is sent?** in the ⋯ menu to see what the app detects right now, whether it's matched to a desk and what was sent last. **Show payload** shows the complete message. In **Settings**, you can turn individual signals off under **Check in with**, unless your IT department has locked them.

![The What is sent? view with monitor DELL U2723QE matched to Desk 4.12 and network 10.20.0.0/22, with the time, event and answer of the last send below](https://mintcdn.com/anny-85c98540/Plf6YdaOQhCc24oo/images/anny-presence/en-transparency.png?fit=max\&auto=format\&n=Plf6YdaOQhCc24oo\&q=85\&s=6dc32d02aa05a45ed6ab92228395ad4a)

What is sent? shows each signal and the last message.

![anny Presence settings with the signals Monitor, Dock, Wi-Fi access point and Network, the data region and the values managed by the organization, each with a lock icon](https://mintcdn.com/anny-85c98540/Plf6YdaOQhCc24oo/images/anny-presence/en-settings.png?fit=max\&auto=format\&n=Plf6YdaOQhCc24oo\&q=85\&s=39224423003fcd6d3341d439451bcf9c)

Settings shows what your IT department has set.

## For admins: setting up anny Presence

### Turning it on and configuring it

You'll find the settings in the admin area under **Settings** → **anny Presence**. anny Presence is on by default. You can also set the settings through the anny API, which is why the technical names are listed below.

| Setting and technical name | Default | What it does |
| - | - | - |
| Automatic check-in with anny Presence `desktopApp.enabled` | On | Turns the app on for your organization. |
| Assigning new monitors and docks `desktopApp.anchorLearning` | `confirm` | Decides how an answer in the app becomes a lasting link (see below). |
| Check-out after unplugging `desktopApp.checkOutGraceMinutes` | 15 | Minutes after unplugging until check-out, from 0 to 240. |
| Book free desks automatically `desktopApp.allowInstantBooking` | On | Books a free desk with a known monitor or dock and checks in right away. |
| Use Wi-Fi and network as a fallback `desktopApp.wifiFallback` | On | Allows checking in an existing booking over Wi-Fi or the network. |

**Assigning new monitors and docks** has three values:

| Value | Behavior |
| - | - |
| **The first answer counts** `trust` | The first answer counts immediately. |
| **After three matching answers** `confirm` | The link counts once three different people have named the same desk or an admin confirms it. |
| **Don't ask** `off` | The app doesn't ask. Only admins create links. |

If someone names a different desk for a device that isn't confirmed yet, the link is marked as a conflict and is no longer used until an admin resolves it. In the **Monitors and docks** list under **Settings** → **anny Presence**, you can confirm a link, assign it to another desk or area, or delete it. Confirming also resolves a conflict.

The app doesn't learn Wi-Fi access points or network ranges. They have to be linked to an area or location once, centrally. They can only be created through the anny API for now, so during the private beta we set this up together with you. After that, you can adjust them in the **Monitors and docks** list.

### Requirements on the resource

On every desk that should take part, **Check in and check out bookings** must be on under **Resource** → **Check-In**, and **Allow self check-in** must be on in the **Self Check-In** section. Without them, the app neither checks in there nor books automatically.

You can exclude individual resources from anny Presence under **Resource** → **Check-In** → **Self Check-In** with **Allow check-in with anny Presence**. It's on by default, and the technical name is `selfCheckIn.desktopAppEnabled`.

These existing settings under **Resource** → **Check-In** also apply:

| Setting | Effect on anny Presence |
| - | - |
| **Allowed check-in before start of the booking** | The app can check in from this point on. Before that it shows **Too early**. |
| **Automatic expiry of bookings** | Stays independent of anny Presence. A check-in through the app prevents expiry like any other check-in. |
| **Allow self check-out** | Without it, regular bookings aren't checked out when you unplug. |
| **Minimum duration before check-out** | The app doesn't check out before this time has passed. |
| **Release capacity after checkout** | Releases the remaining time of regular bookings after check-out. |

anny can only book desks automatically if they're confirmed immediately and the booking option allows instant booking. There must also be no other booking on the desk in the next 30 minutes.

## For IT: rolling out anny Presence

Installers are available for macOS (`.dmg`, `.pkg`, macOS 11 or later), Windows (`.msi`, `.exe`, x64 and arm64) and Linux (`.deb`, `.rpm`, AppImage). During the private beta, you can get the installers and MDM templates on request via [support@anny.co](mailto:support@anny.co).

All platforms use the same keys. For each key, the first value in this order applies:

1. MDM policy: locked, the app shows the setting with a lock and **Set by IT policy**
2. Organization settings from anny
3. The person's own setting, only for signals, **Open at login** and **Updates**
4. IT defaults: not locked
5. Built-in default

Invalid values are ignored and the next entry applies.

### Key settings

| Key | Default | Purpose |
| - | - | - |
| `OrganizationId` | empty | Binds the app to an organization (ID or slug). The choice is skipped. |
| `DataRegion` | `anny.co` | `anny.co`, `anny.eu` or a custom domain. Locks the choice in the app. |
| `LoginHint` | empty | Pre-filled email on the sign-in page. |
| `SsoProvider` | empty | Goes straight to the SSO provider and skips the password page. |
| `Mode` | `personal` | With `off`, the app doesn't collect or send anything. |
| `SignalMonitor`, `SignalDock`, `SignalWifi`, `SignalSubnet` | True | Turns individual signals on or off. |
| `ActiveNetworks` | empty | Only collects on these networks, as IPv4 CIDRs (`10.20.0.0/16`) or Wi-Fi names. Empty means everywhere. |
| `AllowAnchorLearning` | True | Asks **Which desk is this?** for unknown devices. |
| `LaunchAtLogin` | True | Starts the app at login. |
| `PreventQuit` | False | Hides **Quit anny Presence**. |
| `UpdateMode` | `auto` | With `managed`, your IT department delivers updates and the built-in updater stays quiet. |
| `UpdateChannel` | `stable` | Channel for the built-in updater. |
| `OrgSalt` | empty | Optional key of your organization, so hashing works before the first sign-in. |

> [!NOTE]
>
> anny decides the time until check-out and automatic booking on the server, based on the organization settings. You can't control them reliably through MDM, so use the settings above under "For admins".

> [!TIP]
>
> Set `ActiveNetworks` to your office networks if the app shouldn't collect anything at home. Employees then also won't get the desk question at their private monitor.

### macOS

The preference domain is `com.anny.presence`. There's a `.mobileconfig` template and a JSON schema for Jamf Pro. Values in the `Forced` section are locked.

* **Jamf Pro**: **Configuration Profiles** → **Application & Custom Settings** → **External Applications** → **Custom Schema**, domain `com.anny.presence`.
* **Intune**: **Devices** → **macOS** → **Configuration** → **Templates** → **Preference file**, domain `com.anny.presence`, as a plist with the keys above.

> [!WARNING]
>
> Wi-Fi on macOS needs Location permission, which MDM can't grant. The current version of the app doesn't ask for it on its own yet either. So set `SignalWifi` to `false` and rely on the monitor, dock and network.

### Windows

Locked values go under `HKLM\SOFTWARE\Policies\anny\Presence`, IT defaults under `HKLM\SOFTWARE\anny\Presence`. Load the ADMX and ADML templates into Group Policy or import them in Intune under **Devices** → **Configuration** → **Import ADMX**. The category is **anny** → **anny Presence**. You can also set defaults at install time:

```bash theme={null}
msiexec /i anny-presence.msi /qn ORG_ID=123 SIGNAL_WIFI=0
```

On Windows 11 24H2 and later, Wi-Fi needs Location access. In Intune, allow it with the policy **Privacy** → **Let apps access location**.

### Linux

Locked values live in `/etc/anny-presence/policy.json`:

```json theme={null}
{
  "OrganizationId": "123",
  "SsoProvider": "azure",
  "SignalWifi": false,
  "ActiveNetworks": ["10.20.0.0/16"],
  "UpdateMode": "managed",
  "PreventQuit": true
}
```

## Limits

* **Only people running the app are counted.** Presence is only visible for people with the app running, so you can't rely on it for complete occupancy figures.
* **Wi-Fi names in `ActiveNetworks` don't work on macOS without Location permission.** The app can't see the name and treats the device as outside your networks. Use IPv4 ranges instead.
* **Windows and Linux aren't tested on real hardware yet.** The installers exist, but macOS is the most thoroughly tested. On Windows, Thunderbolt-only docks aren't detected yet, and on Linux, Wi-Fi needs `nmcli`.
* **Not every device can be recognized.** Built-in displays and hubs without a serial number don't count. Monitors without a serial number are identified by model and port and are marked **Weak** in **What is sent?**.
* **Automatic booking only works through the monitor or dock**, never through Wi-Fi or the network.

## FAQ

> [accordion] Does the app have to run all the time?
>
> Yes. By default it starts when you sign in to your computer and runs in the menu bar or system tray. You can change this in **Settings** under **Open at login**, unless your IT department has set it.

> [accordion] Can I use anny Presence without a booking?
>
> Yes, at a free desk with a known monitor or dock, anny books the desk for you if your organization allows it. This never happens through Wi-Fi or the network.

> [accordion] What happens if my laptop loses its connection for a moment?
>
> If you're offline, the app keeps signals for up to 10 minutes and sends them later. When you unplug, the grace period before check-out runs first, so a brief disconnect doesn't change anything.

> [accordion] Can my employer see where I am?
>
> The app doesn't send a location, serial numbers or Wi-Fi names. anny only compares the hashes with known desks and areas, and a check-in is stored on your booking like any other. You can see exactly what is sent at any time under **What is sent?**.

> [accordion] Does anny Presence change how bookings expire?
>
> No. The setting **Automatic expiry of bookings** stays as it is. A check-in through the app prevents expiry just like any other check-in.

## Troubleshooting

> [accordion] You're not part of a community yet
>
> anny Presence works once you belong to a community of your organization. Ask your workplace admin to add you, then check again in the app.

> [accordion] Not enabled for your organization
>
> Your organization has turned off anny Presence. Ask your workplace admin to turn the app back on.

> [accordion] Update required
>
> Your version can no longer check you in. Quit and reopen anny Presence to install the update. If your IT department delivers updates, the app says so and your IT department installs the update.

> [accordion] No booking right now
>
> There's no booking the app could check in right now. Plug in at a desk with a known monitor or dock, and anny checks you in or books the desk if that's possible. If the message stays, the desk doesn't allow instant booking or your organization has turned automatic booking off. In that case, book as usual through anny.

> [accordion] Nothing happens after I plug in
>
> Wait up to 90 seconds, or click **Check now** in the ⋯ menu. If that doesn't help, open **What is sent?** and check the following:
>
> * Does your monitor or dock appear under **Detected now**? If not, the app can't detect the device right now. Plug it in again.
> * Does it say **Unknown**? Then the device isn't linked yet or is waiting for more confirmations.
> * Is the app paused? Then click **Resume**.
> * Does the app show **Too early**? Then it checks you in when the check-in period opens.
> * Does the app show **Not on an office network**? Then your current network is outside the allowed networks.
>
> Also ask your admin to check that **Check in and check out bookings** and **Allow self check-in** are on for the resource.

> [accordion] I'm not being checked out
>
> Check that **Allow self check-out** is on for the resource and the **Minimum duration before check-out** has passed. The app also only checks out bookings it checked in itself.

> [accordion] Wi-Fi details need Location access
>
> On macOS the app can only see the Wi-Fi access point with Location permission. Check-in through the monitor, dock and network works without it.

> Important information for agents:
>
> * Status: private beta, access on request via [support@anny.co](mailto:support@anny.co)
> * Platforms: macOS (tested on Apple Silicon), Windows and Linux (installers exist; monitor, dock and Wi-Fi readers not verified on hardware)
> * Organization settings: `desktopApp.enabled` (true), `desktopApp.mode` (`personal`; `occupancy` is not built), `desktopApp.anchorLearning` (`off`, `trust`, `confirm`, default `confirm`), `desktopApp.checkOutGraceMinutes` (15, 0 to 240), `desktopApp.allowInstantBooking` (true), `desktopApp.wifiFallback` (true)
> * Resource: `selfCheckIn.desktopAppEnabled` (default true), requires `checkIn.isEnabled` and `selfCheckIn.isEnabled`
> * Admin UI: settings and anchors under Settings → anny Presence, the resource switch under Resource → Check-In → Self Check-In. API: `presence-anchors` (JSON:API), organization settings.
> * `confirm`: learned anchors become `confirmed` after 3 matching answers from different accounts, or through an admin.
> * Automatic booking: desk anchors only, no current booking, no booking on the desk in the next 30 minutes, resource with auto-accept and a service with instant booking; rest of the day, otherwise the current period. A failed attempt isn't retried for 15 minutes.
> * Check-out: `disconnected` plus grace period, only if the check-in came from this install, and with `selfCheckIn.checkOutEnabled` or an automatically created booking. Automatically created bookings are released at check-out.
> * MDM keys `CheckOutGraceMinutes` and `AllowInstantBooking` don't change server behavior.
> * macOS Wi-Fi: BSSID and SSID need Location permission; the app doesn't request it yet.
> * Related articles: /en/check-in-overview, /en/check-in-setup, /en/anny-mobile-app, /en/communities


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.