ZHA & Aqara Vibration Sensor DJT11LM missing values/sensors

When using ZHA, here are all the sensors that can be created based on anything issued on the zha_event topic, which seems to be the only way to create sensors for orientation, tilt, drop, and vibration strength when you don’t use the zigbee2mqtt integration:

template:
  - trigger:
      - platform: event
        event_type: "zha_event"
        event_data:
          device_id: 32digitalphanumericcodegoeshere
          command: 'current_orientation'
    sensor:
      - name: "Aqara Vibration Sensor X Orientation"
        state: "{{ trigger.event.data.args.X }}"
        unique_id: aqara_vibration_sensor_x_orientation
        state_class: measurement
        unit_of_measurement: "°"
        attributes:
          time_fired: "{{ trigger.event.time_fired }}"
      - name: "Aqara Vibration Sensor Y Orientation"
        state: "{{ trigger.event.data.args.Y }}"
        unique_id: aqara_vibration_sensor_y_orientation
        state_class: measurement
        unit_of_measurement: "°"
        attributes:
          time_fired: "{{ trigger.event.time_fired }}"
      - name: "Aqara Vibration Sensor Z Orientation"
        state: "{{ trigger.event.data.args.Z }}"
        unique_id: aqara_vibration_sensor_z_orientation
        state_class: measurement
        unit_of_measurement: "°"
        attributes:
          time_fired: "{{ trigger.event.time_fired }}"
  - trigger:
      - platform: event
        event_type: "zha_event"
        event_data:
          device_id: 32digitalphanumericcodegoeshere
          command: 'Drop'
    binary_sensor:
      - name: "Aqara Vibration Sensor Drop"
        state: "true"
        unique_id: aqara_vibration_sensor_drop
        auto_off: 5
        attributes:
          time_fired: "{{ trigger.event.time_fired }}"
  - trigger:
      - platform: event
        event_type: "zha_event"
        event_data:
          device_id: 32digitalphanumericcodegoeshere
          command: 'Tilt'
    sensor:
      - name: "Aqara Vibration Sensor Tilt"
        state: "{{ trigger.event.data.args.degrees }}"
        unique_id: aqara_vibration_sensor_tilt
        state_class: measurement
        unit_of_measurement: "°"
        attributes:
          time_fired: "{{ trigger.event.time_fired }}"
  - trigger:
      - platform: event
        event_type: "zha_event"
        event_data:
          device_id: 32digitalphanumericcodegoeshere
          command: 'vibration_strength'
    sensor:
      - name: "Aqara Vibration Sensor Vibration Strength"
        state: "{{ trigger.event.data.args.strength }}"
        unique_id: aqara_vibration_sensor_vibration_strength
        state_class: measurement
        attributes:
          time_fired: "{{ trigger.event.time_fired }}"

Edit: added state_class and unit_of_measurement where applicable, which affects how the frontend displays them.