This commit upgrades the project to Node.js 24 (LTS) and performs a major refactoring of the documentation to support both advanced users and AI-based automation (MCP). Changes: - Environment & CI/CD: - Set Node.js version to >=24 in package.json and .nvmrc. - Updated Dockerfile to use Node 24 base image. - Updated @types/node to ^24.10.9. - Documentation: - Refactored README.md with comprehensive technical reference, configuration details, and Zabbix-to-GraphQL mapping. - Created docs/howtos/cookbook.md with practical recipes for common tasks and AI test generation. - Updated docs/howtos/mcp.md to emphasize GraphQL's advantages for AI agents and Model Context Protocol. - Added readme.improvement.plan.md to track documentation evolution. - Enhanced all how-to guides with improved cross-references and up-to-date information. - Guidelines: - Updated .junie/guidelines.md with Node 24 requirements and enhanced commit message standards (Conventional Commits 1.0.0). - Infrastructure & Code: - Updated docker-compose.yml with Apollo MCP server integration. - Refined configuration and schema handling in src/api/ and src/datasources/. - Synchronized generated TypeScript types with schema updates.
74 lines
1.8 KiB
GraphQL
74 lines
1.8 KiB
GraphQL
|
|
|
|
"""
|
|
Represents the payload for a sensor distance measurement.
|
|
"""
|
|
type SensorDistanceValue implements DeviceValue {
|
|
"""
|
|
Represents the name of the device that reports or provides distance sensor data.
|
|
Uniquely identifies the device within the context of the SensorDistanceValue.
|
|
"""
|
|
deviceName: String
|
|
|
|
"""
|
|
Represents the MAC address of the device. Typically formatted as a 12-character
|
|
hexadecimal string (e.g. "00:1A:2B:3C:4D:5E").
|
|
"""
|
|
mac: String
|
|
|
|
"""
|
|
Represents the measured or calculated distance value, typically in meters.
|
|
Should be non-negative.
|
|
"""
|
|
distance: Float
|
|
|
|
"""
|
|
Represents the time at which the sensor measurement was recorded.
|
|
"""
|
|
time: String
|
|
|
|
"""
|
|
Dummy field to allow for empty interfaces.
|
|
"""
|
|
_empty: String
|
|
}
|
|
|
|
"""
|
|
Represents a coordinate in 3D space with x, y, and z components.
|
|
"""
|
|
type Position {
|
|
"""X coordinate."""
|
|
x: Float
|
|
"""Y coordinate."""
|
|
y: Float
|
|
"""Z coordinate."""
|
|
z: Float
|
|
}
|
|
|
|
"""
|
|
Represents the result of a position calculation, including the calculated position and accuracy.
|
|
"""
|
|
type PositionCalculatorResult {
|
|
"""The calculated 3D position."""
|
|
position: Position
|
|
"""The estimated accuracy of the calculation."""
|
|
accuracy: Float
|
|
}
|
|
|
|
"""
|
|
Concrete implementation of a DeviceValueMessage for sensor distance data.
|
|
"""
|
|
type SensorDistanceMessage implements DeviceValueMessage {
|
|
"""The unique identifier of the device."""
|
|
deviceKey: String
|
|
"""Timestamp of the message."""
|
|
timestamp: String
|
|
"""Name of the attribute."""
|
|
attributeName: String
|
|
"""Name of the topic."""
|
|
topicName: String
|
|
"""Type of the device."""
|
|
deviceType: String
|
|
"""The sensor distance value payload."""
|
|
value: SensorDistanceValue
|
|
}
|