Conf
The Conf API gives scripts access to the static configuration — the merged
contents of wireplumber.conf and all of its fragment files. It binds the
WpConf C API.
This is how scripts read their own configuration sections. Almost every shipped script starts by reading the section it cares about, for example:
config.properties = Conf.get_section_as_properties ("monitor.bluez.properties")
config.rules = Conf.get_section_as_json ("monitor.bluez.rules", Json.Array {})
See The configuration file for how the configuration file and its fragments are located and merged, and Modifying configuration for how users are expected to override these sections.
Note
Unlike Settings, the static configuration is read once at startup and does not change while WirePlumber is running. Use settings for anything the user should be able to change at runtime.
Reading sections
All the get_section_* functions operate on the core's configuration by
default and can be called as static functions. They can also be called as
methods on a Conf object, in which case that object's configuration is used
instead.
- Conf.get_section_as_json(section, fallback)
Binds
wp_conf_get_section()Returns the raw JSON value of a configuration section. This is the most general accessor and the one to use for rules sections, which are arrays of match/update objects.
- Parameters:
section (string) -- the name of the section, e.g.
"monitor.v4l2.rules"fallback (Json) -- (optional) the value to return if the section does not exist
- Returns:
the section, the fallback, or nil if neither is available
- Return type:
Json, see Json
- Conf.get_section_as_properties(section, defaults)
Returns a JSON object section as a Properties object.
- Parameters:
section (string) -- the name of the section
defaults -- (optional) a table or
Propertiesobject with default values; values found in the configuration are applied on top of these
- Returns:
the properties of the section
- Return type:
Properties
- Conf.get_section_as_object(section, defaults)
Returns a JSON object section as a Lua table.
- Parameters:
section (string) -- the name of the section
defaults -- (optional) a table with default values
- Returns:
the contents of the section
- Return type:
table
- Conf.get_section_as_array(section, defaults)
Returns a JSON array section as a Lua table.
- Parameters:
section (string) -- the name of the section
defaults -- (optional) a table to return if the section does not exist or is not an array
- Returns:
the contents of the section
- Return type:
table
Opening a different configuration
These methods are only needed by code that works with a Conf object other
than the core's own configuration.
- Conf.open(self)
Binds
wp_conf_open()Opens the configuration file and its fragments.
- Returns:
nil on success, or an error message string on failure
- Return type:
string
- Conf.close(self)
Binds
wp_conf_close()Closes the configuration file.