Privacy Policy
This Privacy Policy explains what data the RWA Bridge app for Meta Quest and the RWA Session Platform (the website at rwa.jonasludorf.dev and its Microsoft Teams app) process, why, how long it is kept, and how you can have it deleted. Together they are called “the Service” below.
The Service lets a person wearing a Meta Quest headset call a group of experts on Microsoft Teams by scanning a QR code, for example one attached to a machine. The experts can request still frames of the headset wearer’s surroundings, view them and place labelled markers on them, which then appear in the headset wearer’s view.
1. Who is responsible
The Service is operated by Jonas Ludorf, who is responsible for the data described here. For any question about this policy or your data, including deletion requests, write to [show email address].
2. What data we collect
We only process the data needed to run the Service:
- Camera frames. Still images from the headset’s passthrough camera, taken only when an expert in the call requests a frame. A frame shows whatever is in front of the headset, which can include objects, documents, screens and other people in the room. Each frame is stored with its capture time, resolution, the headset’s position and orientation at that moment (head pose) and the camera’s calibration values (intrinsics).
- Device information. When an administrator pairs a headset, we store an identifier we assign to it, the name it gives itself (for example “Headset-7KQ2XM”), its model, its Android device identifier, the public part of a signing key the headset creates for itself, when it was paired, when it last contacted us, whether it is blocked, and the Azure Communication Services identity we create for it so that it can place calls.
- Call and session information. The queue the headset called (taken from the QR code), a randomly generated session identifier, when the call started and when it was answered. For each call we create a one-time Microsoft Teams meeting in the organisation’s Microsoft 365 tenant and store its identifier and join link.
- Chat messages and images. Texts and images the experts send to the headset during a call, with the sender’s name and Microsoft identifier and the time. Images can show whatever the sender chose to share.
- Intrusion reports. If someone who is not an expert of the queue joins a call, the headset removes them and reports their Microsoft or Azure Communication Services identifier, with the time, the session and the headset.
- Administrator data. Administrators who pair or block headsets sign in with their Microsoft account. We check through Microsoft Graph whether they hold an administrator role, and store the name of the administrator who created a pairing code.
- Expert list. For each queue, the organisation using the Service names the experts to be called by their Microsoft work account. We look up their Microsoft Entra object identifiers through Microsoft Graph.
- Participant list. The Microsoft Entra object identifiers of the people connected to the call, sent by the headset, so that we know the call was answered and who is in it.
- Notifications. When a call is answered, the experts of the queue receive a Microsoft Teams notification that names the headset and the queue and links to the session.
- Connection status. When a headset connects, goes on standby, reconnects or leaves, with timestamps.
- Account data of experts. When you open a session in the browser or in Microsoft Teams, you sign in with your Microsoft work or school account. We receive your Microsoft Entra object identifier and your display name from that sign-in.
- Markers. The position and label of each marker placed on a frame, the name of the person who placed it, and when.
- Data stored in your browser. A cookie named
rwa_consentthat remembers whether you chose to stay signed in (kept for one year), and your Microsoft sign-in tokens, kept in the browser’s local storage if you chose to stay signed in, otherwise only for the current tab. - Audit log. Which administrator created a pairing code or blocked or unblocked a headset, and when headsets were paired. It also records which expert opened which session, and when.
- Technical data. Like any website, the servers that deliver the Service see your IP address, browser type and the time of each request. Our server log also records session, queue and device identifiers to diagnose connection problems.
We do not record the audio or video of the call, and we do not collect eye tracking, hand tracking, voice, location, contacts or Meta account data. The Service contains no advertising and no analytics or tracking tools.
3. How we use the data
- To ring the experts of the queue the headset called and to tell them when a call was answered.
- To deliver requested camera frames to the experts of that call, and the experts’ chat messages and images to the headset and to the other experts of the call.
- To show markers in the headset wearer’s view at the right spot in the room, which is what the head pose and camera calibration values are used for.
- To let only the experts listed for the queue open a session, and to let the headset rejoin its session after a lost connection.
- To recognise paired headsets, so that only they can place calls, and to let administrators see, block and re-pair them.
- To keep people who are not experts of the queue out of a call, and to tell administrators when a headset had to remove someone.
- To show who placed a marker and whether a headset is connected.
- To keep the Service secure and working, and to fix errors.
We do not sell your data, do not use it for advertising or profiling, and do not use it to train machine-learning models.
4. Who we share data with
Frames, markers and connection status are visible only to the experts listed for the queue of the call, once the call has been answered, and to the headset that took the frame. Chat messages and images are shown to the headset and to the experts of the call in Microsoft Teams, not on the session web page. Beyond that, the following providers process data on our behalf or as part of the services you already use:
- Microsoft — sign-in with Microsoft Entra ID; Microsoft Graph, to look up the experts’ accounts, send their Teams notifications, create and delete the call’s Teams meeting and check administrator roles; Azure Communication Services, which carries the call from the headset; and Microsoft Teams itself, where the experts take the call.
- Cloudflare — delivers the website and protects it against attacks.
- Our hosting provider — runs the server and database that store the data.
We disclose data to authorities only where the law requires us to.
5. How we protect the data
All connections use encryption (HTTPS and secure WebSockets). Stored camera frames, chat messages, chat images, marker labels and the names stored with them are encrypted with AES-256-GCM. Only the signed-in experts of the queue and the headset that started the call can access a session. A headset proves who it is with a key that never leaves its protected key store, and each call’s Teams meeting is deleted when the call ends.
6. How long we keep the data
- Camera frames and their markers are deleted automatically 90 days after the frame was taken.
- Connection status records are deleted automatically after 90 days.
- A session, including its participant list and call information, is deleted 90 days after the call started, once it holds no frames, and right away if the call ends without any frame.
- The call’s Teams meeting is deleted when the call ends, and at the latest two hours after it started.
- Chat messages and images are stored with the call, encrypted like the camera frames, and deleted automatically after 90 days.
- Intrusion reports and the audit log are deleted automatically after 90 days.
- The service log, which names users, headsets and sessions but no IP addresses, is kept for 14 days. Backups follow the same deletion periods once they rotate out.
- Device information, including the headset’s Azure Communication Services identity, is kept while the headset is paired, so that it keeps its name and identity, and is deleted on request. Pairing codes are deleted a day after they expire.
- The expert list is kept for as long as the organisation using the Service keeps it configured.
- Server logs are rotated and deleted in the normal course of operation.
- Data in your browser stays until you sign out, clear your browser data, or, for the cookie, one year has passed.
7. How to delete your data
Everyone, in every country, can ask us to delete their data, free of charge. To do so:
- Send an email to [show email address] with the subject “Data deletion request”.
- Tell us what should be deleted and help us find it, for example the session identifier (shown at the top of the session page), the date and time of the call, the queue, or the name of your headset.
- We delete the data within 30 days and confirm by email once it is done.
You can also remove data yourself at any time:
- Frames, markers, chat messages and images are deleted automatically after 90 days, sessions and intrusion reports after90 days (see above).
- Signing out on the session page removes your sign-in tokens from the browser.
- Uninstalling RWA Bridge removes all data the app keeps on the headset.
We may not be able to fulfil a deletion request, or only in part, if:
- we cannot identify the data you mean from the information given — we will then ask you for more details rather than refuse;
- the data has already been deleted automatically;
- we are legally required to keep it, or need it to establish or defend legal claims.
In each case we tell you which data we could not delete and why.
8. Your other rights
You may ask us for a copy of the data we hold about you, have incorrect data corrected, restrict or object to its processing, and receive it in a portable format. Write to [show email address]. If you are in the European Union or the United Kingdom, you also have the right to complain to a data protection supervisory authority.
Where the GDPR applies, we process the data to provide the Service you or your organisation chose to use (Art. 6(1)(b) GDPR) and on the basis of our legitimate interest in running it securely and reliably (Art. 6(1)(f) GDPR). Staying signed in on a device is based on your consent, which you can withdraw by signing out.
9. Children
The Service is meant for work use and is not directed at children. We do not knowingly collect data from children under 13. If you believe a child has used the Service, contact us and we will delete the data.
10. Changes to this policy
We update this policy when the Service changes. The date at the top shows the latest version. Significant changes are also announced in the app’s release notes.
11. Contact
Jonas Ludorf
[show email address]