This page explains the types of data (telemetry) sent and received by the MouseMux program, as well as other network-related data.
Note: This telemetry documentation applies to MouseMux version 2.2.x and later.
Note: In MouseMux, a "user" refers to a virtual user - a pointer device (mouse) combined with a keyboard. This is not an actual person, but rather the logical pairing of input devices that MouseMux manages.
When MouseMux starts, it checks for updates by contacting the MouseMux update server. It downloads a JSON file with update metadata and may fetch individual update packages.
MouseMux sends crash dumps (.dmp) and log files when a crash is detected.
MouseMux sends telemetry data to our servers. A unique system identifier is generated by hashing the computer name and the username. In paid versions, telemetry can be disabled completely.
Telemetry includes the following data:
| Key | Description |
|---|---|
| Application Events | |
| app.start | Application started |
| app.exit.okay | Clean application exit |
| app.license | License type on startup |
| app.license.edition | License edition (free/home/pro/business/industry/trial) |
| app.running | Total session duration (timer) |
| app.boot-{version} | Startup duration by version (timer) |
| app.calibration | Mouse calibration duration (timer) |
| app.fps.frames | Frame count (timer) |
| app.fps.time | FPS time (timer) |
| app.fps.average | Average FPS (timer) |
| ---------------------------------------- | ---------------------------------------------------------------- |
| App Launcher Events | |
| app.launcher.open | Launcher dialog opened |
| app.launcher.close | Launcher dialog closed |
| app.launcher.run.{name} | Specific app launched by name |
| ---------------------------------------- | ---------------------------------------------------------------- |
| Mode Events | |
| mode.native | Switched to native mode |
| mode.switched | Switched to switched mode |
| mode.multiplex | Switched to multiplex mode |
| mode.kb.multi | Keyboard multi-mode enabled |
| mode.time.native | Time spent in native mode (timer) |
| mode.time.switched | Time spent in switched mode (timer) |
| mode.time.multiplex | Time spent in multiplex mode (timer) |
| ---------------------------------------- | ---------------------------------------------------------------- |
| User Events | |
| user.add.{number} | Mouse added and becomes active |
| user.active | User active duration (timer) |
| user.name.change | User name changed |
| user.cursor.change | Cursor theme changed (includes theme name) |
| user.cursor.flag | Cursor flag changed |
| ---------------------------------------- | ---------------------------------------------------------------- |
| Program Events | |
| program.enter | Program (executable name) |
| program.leave | Program (executable name and duration) |
| ---------------------------------------- | ---------------------------------------------------------------- |
| Feature Events | |
| feature.macro.record | Macro recording started |
| feature.macro.play | Macro playback started |
| feature.coalesce.enable | Input coalescing enabled |
| ---------------------------------------- | ---------------------------------------------------------------- |
| Settings Events | |
| main.settings | Settings screen opened |
| main.settings.register.activate | License activate button pressed |
| settings.start.automatic | Auto-start enabled |
| settings.start.minimized | Start minimized enabled |
| settings.start.tray | Start to tray enabled |
| settings.start.logo.disable | Logo disabled |
| settings.users.load | Load users enabled |
| settings.users.save | Save users enabled |
| settings.users.hash.base | Hash base enabled |
| settings.users.keyboard.restore | Keyboard restore enabled |
| settings.performance.loop.speed | Loop speed configured |
| settings.performance.priority.thread | Thread priority enabled |
| settings.performance.priority.multiplex | Multiplex priority enabled |
| settings.features.buffered.disable | Buffered input disabled |
| settings.features.pointers.disable | Pointers disabled |
| settings.features.capture.disable | Capture disabled |
| settings.features.telemetry.disable | Telemetry disabled |
| settings.features.dpi.disable | DPI awareness disabled |
| settings.cursor.native | Native cursor enabled |
| settings.cursor.delta.motion | Delta motion enabled |
| settings.cursor.inactive.hide | Hide inactive cursor enabled |
| settings.sdk.win.enabled | Window SDK enabled |
| settings.sdk.web.enabled | WebSocket SDK enabled |
| settings.sdk.web.port | WebSocket SDK port configured |
| settings.advanced.launcher.disable | App launcher disabled |
| settings.advanced.browser.* | App launcher browser launch method |
| ---------------------------------------- | ---------------------------------------------------------------- |
| Device Events | |
| devices.pointer.count | Number of pointer devices connected |
| devices.keyboard.count | Number of keyboards connected |
| ---------------------------------------- | ---------------------------------------------------------------- |
| WebSDK Events | |
| websdk.connect | WebSocket SDK client connected |
| websdk.disconnect | WebSocket SDK client disconnected |
| websdk.login | WebSocket SDK client app name registration |
| ---------------------------------------- | ---------------------------------------------------------------- |
| License Events | |
| license.limit.pointer | Hit maximum pointer device limit |
| license.limit.keyboard | Hit maximum keyboard limit |
| license.trial.start | User chose Trial mode |
| license.trial.free | User chose Free mode |
| license.trial.buy | User clicked Buy button |
| ---------------------------------------- | ---------------------------------------------------------------- |
| User Config Events | |
| config.user.winject.{type} | Injection method (sendinput, touch.win8, touch.win10, pen.win10) |
| config.user.meta.{flag} | Meta flags (emulate.pressure, enable.delta, etc.) |
| config.user.keyboard.{flag} | Keyboard flags (force.hardware, force.altgr, etc.) |
| ---------------------------------------- | ---------------------------------------------------------------- |
| Error Tracking | |
| (crash reports) | Errors and warnings with file/line/text via crash reporting |