Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MQTT Topic Hierarchy #46

Closed
tisoft opened this issue Feb 13, 2023 · 3 comments
Closed

MQTT Topic Hierarchy #46

tisoft opened this issue Feb 13, 2023 · 3 comments

Comments

@tisoft
Copy link
Collaborator

tisoft commented Feb 13, 2023

Proposed structure for the MQTT topic hierarchy:

  • saic
    • email
      • messages (one subtopic for every message, currently stored on the server)
        • messageId
          • messageType
          • title
          • messageTime
          • sender
          • content
          • status (read/unread)
            • set (read/unread/delete)
          • vin
      • vehicles (one subtopic for every vehicle)
        • VIN
          • info
            • brand
            • model
            • year
            • series
            • color
            • lastMessage (read only, to delete use account topic)
              • messageId
              • messageType
              • title
              • messageTime
              • sender
              • content
              • status (read/unread)
          • refresh
            • mode (off, periodic, auto)
              • set (accepts values from above. Additionally force will trigger a single fetch, but keep the
                current mode)
            • lastChargeState
            • lastVehicleState
            • period (only used if in periodic mode)
              • active (period in seconds to query the API, if the car is active, if not set the inActive period is used)
                • set
              • inActive
                • set
          • configuration (subtopic for each entry from the modelConfigurationJsonStr field from the API)
            • code
              • name
              • value
          • location
            • position (GPOS position as JSON object)
            • heading
            • speed
          • drivetrain
            • charging
              • set
            • chargerConnected
            • chargingType (slow/fast)
            • running
            • auxiliaryBatteryVoltage
            • mileage
            • range
            • current
            • voltage
            • power
            • soc
          • climate
            • interiorTemperature
            • exteriorTemperature
            • remoteTemperature (The temperature used in remote preheat commands)
              • set
            • remoteClimateState (off, front, on)
              • set
            • backWindowHeat (off, on)
              • set
          • windows
            • driver
              • set
            • passenger
              • set
            • rearLeft
              • set
            • rearRight
              • set
            • sunRoof
              • set
          • doors
            • locked
              • set
            • driver
            • passenger
            • rearLeft
            • rearRight
            • bonnet
            • boot
          • tyres
            • frontLeftPressure
            • frontLeftPressure
            • rearLeftPressure
            • rearRightPressure
          • lights
            • mainBeam
            • dippedBeam

Topic names in Italic are placeholders for the actual content. E.g. VIN is replaced by the actual VIN from the
vehicle. Not all vehicles support all functionality, so some of the subtopics will not be available for each type of
vehicle.

@tisoft
Copy link
Collaborator Author

tisoft commented Mar 3, 2023

          I have worked on the new structure. I suggest the following changes:
  • milage -> mileage
  • backWindowHeat -> rearWindowDefrosterHeating
  • auxillaryBatteryVoltage -> auxiliaryBatteryVoltage

Originally posted by @tosate in #54 (comment)

@tisoft
Copy link
Collaborator Author

tisoft commented Mar 3, 2023

I have fixed mileage and auxiliaryBatteryVoltage.

What about remoteRearWindowDefrost to distinguish it from someone activating the rear window defrost from within the car? (I have to double check, that that is the actual behavior)

Also I've thought of replacing the position (GPOS position as JSON object)topic with single latitude, longitude and elevation topics, since we don't have JSON anywhere else.

tisoft added a commit to tisoft/SAIC-API-Documentation that referenced this issue Mar 3, 2023
tisoft added a commit to tisoft/SAIC-API-Documentation that referenced this issue Mar 17, 2023
@tisoft
Copy link
Collaborator Author

tisoft commented Mar 29, 2023

We have splitted this project up in several subprojects under the https://github.com/SAIC-iSmart-API organization.

Please open a thread in the discussions over there, if your question/issue is still unsolved: https://github.com/orgs/SAIC-iSmart-API/discussions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant