No version for distro humble showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro jazzy showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro kilted showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro rolling showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro ardent showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro bouncy showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro crystal showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro eloquent showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro dashing showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro galactic showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro foxy showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro iron showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro lunar showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro jade showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro indigo showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro hydro showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

No version for distro kinetic showing melodic. Known supported distros are highlighted in the buttons above.
Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 0.2.5
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version melodic-devel
Last Updated 2022-08-25
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

When republishing an array of fields, you can include a set of mapping_options for each mapping. These include:

  • fields: a set of fields that you’d like to capture from each array element. For example, if each array element contains the elements [a, c, d, e] and you’d like to get a and c only, you can specify it as:
  mapping_options:
    fields: ["a", "c"]
  

If no fields are specified, the republisher will get all the fields in each array element.

  • filter: a lambda expression that can be used to pick certain array elements based on a condition. For example, if you’d like to republish array elements where c > 5 only, you can do it with:
  mapping_options:
    filter: 'lambda x: (x > 5)'
  

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: FlorGrosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#8) * Allow publishing package versions, environment variables or fixed strings (#8) * Allow using config_file parameter instead of config (#8) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: FlorGrosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange

Package symbol

inorbit_republisher package from ros_inorbit_samples repo

inorbit_republisher

ROS Distro
noetic

Package Summary

Tags No category tags.
Version 0.3.2
License MIT
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/inorbit-ai/ros_inorbit_samples.git
VCS Type git
VCS Version noetic-devel
Last Updated 2025-01-28
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS to InOrbit topic republisher

Additional Links

No additional links.

Maintainers

  • InOrbit

Authors

No additional authors.

InOrbit republisher for ROS 1

This directory includes a republisher that allows mapping from arbitrary ROS values to InOrbit custom data key/value pairs for application-specific observability.

Currently only mapping from ROS topics is supported. The republisher could be extended to map actions, services and parameters.

Usage

Create a YAML config file specifying the mappings you would like to use using this format:

  republishers:
  - topic: "/fruits_per_cubic_m"
    msg_type: "fruit_msgs/Citrus"
    mappings:
    - field: "num_oranges"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/custom_data/0"
        key: "oranges"
  - topic: "/hardware/status"
    msg_type: "hw_msgs/HardwareStatus"
    mappings:
    - field: "status"
      mapping_options:
        fields: ["lidar", "motor", "battery"]
        filter: 'lambda x: (x.status == 1)'
      mapping_type: "array_of_fields"
      out:
        topic: "/inorbit/custom_data/0"
        key: "hardware_error"
  - topic: "/cmd_vel"
    msg_type: "geometry_msgs/Twist"
    mappings:
    - field: "linear"
      mapping_type: "json_of_fields"
      mapping_options:
        fields: ["x", "y", "z"]
      out:
        topic: "/inorbit/linear_vel_test"
        key: "linear_vel"
  - topic: "/map_metadata"
    latched: true
    msg_type: "nav_msgs/MapMetaData"
    mappings:
    - field: "resolution"
      mapping_type: "single_field"
      out:
        topic: "/inorbit/map_res_test"
        key: "map_resolution"
  - topic: "/navsat"
    msg_type: "sensor_msgs/NavSatFix"
    mappings:
    - mapping_type: "serialize"
      mapping_options:  
        fields: ["status", "latitude", "longitude", "position_covariance_type"]
      out:
        topic: "/inorbit/custom_data/0"
        key: "navsat"
  static_publishers:
  - value: "this is a fixed string"
    out:
      topic: "/inorbit/custom_data/0"
      key: "greeting"
  - value_from:
      environment_variable: "PATH"
    out:
      topic: "/inorbit/custom_data/0"
      key: "env_path"

Then launch the republisher.py script passing the config file as the config param.

A suggested way to organize this is by creating the config file and launch file in your package, then the corresponding launch file would like like this:

<launch>
  <node name="inorbit_republisher" pkg="inorbit_republisher" type="republisher.py">
    <param name="config" textfile="$(find inorbit_republisher)/config/example.yaml" />
  </node>
</launch>

Mapping ROS topics

The republisher can map the ROS values to single field (e.g. 'fruit=apple') or to an array of fields (e.g. 'fruits=[{fruit1: apple, fruit2: orange}, {fruit1: melon, fruit2: apple}]'). The former is useful to capture simple fields and the latter to get data from an array of values.

Single field: mapping options

When republishing a single field, you can include a set of mapping_options for each mapping. These include:

  • mapping_type: this mapping option should be set to single_field.
  • filter: a lambda expression that can be used to control whether or not the value is published based on a condition. For example, if you’d like to republish only String values that are different than SPAMMY STRING, you can do it with:
  mapping_options:
    filter: 'lambda x: (x != "SPAMMY STRING")'
  

Array of fields: mapping options

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package inorbit_republisher

0.3.2 (2024-11-20)

  • Fix LatchPublisher publish to handle ROS String messages (#26)
  • Contributors: Leandro

0.3.1 (2024-11-13)

  • Fix LatchPublisher peer_subscribe to publish all key-values (#25)
  • Contributors: Leandro

0.3.0 (2023-06-03) -----------* Add an explicit latched property for republishers (#17) * Contributors: mechatheo

0.2.5 (2022-08-24) -----------* Add filtering in JSON mappings (#14) * Contributors: Elvio_Aruta

0.2.4 (2022-02-21) -----------* Add conditionals in package.xml dependencies (#11) * Contributors: Flor_Grosso

0.2.3 (2022-02-21) -----------* Allow filtering single_value mappings (#5) * Allow publishing package versions, environment variables or fixed strings (#5) * Allow using config_file parameter instead of config (#5) * Contributors: adamantivm

0.2.2 (2021-12-07) -----------* Add support for JSON of fields * Contributors: Flor_Grosso

0.2.1 (2021-07-20)

  • Initial Implementation
  • Contributors: Leandro Pineda

Dependant Packages

No known dependants.

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged inorbit_republisher at Robotics Stack Exchange