Add processes services to System Bridge (#29739)

* Add processes services to System Bridge

* Update system_bridge.markdown

* Update system_bridge.markdown

* tiny tweak

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
This commit is contained in:
Aidan Timson 2024-03-14 08:45:46 +00:00 committed by GitHub
parent 0d705076cc
commit e4cefdd189
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -23,18 +23,28 @@ ha_integration_type: device
---
[System Bridge](https://system-bridge.timmo.dev) is an application that runs on your local machine to share system information via its API/WebSocket. You can also send commands to the device such as opening a URL or sending keyboard keypresses.
## Prerequisites
### Version
This integration requires System Bridge 3.1.1 and above. Any older version will not work.
### API key
You will need your API key. This can be found following the documentation [here](https://system-bridge.timmo.dev/docs/running).
This integration requires System Bridge 4.0.2 and above. Any older version will not work.
### Token
You will need your token. For instructions on finding your token, follow the steps in the [System Bridge documentation](https://system-bridge.timmo.dev/docs/running).
{% include integrations/config_flow.md %}
## Binary sensors
This integration provides the following binary sensors:
| Name | Description |
| --------------------- | ---------------------------------- |
| Battery Is Charging | Whether the battery is charging |
| New Version Available | Whether a new version is available |
## Sensors
This integration provides the following sensors:
@ -151,6 +161,62 @@ Here is an example action that will open a URL in the device's browser:
This is an object containing the `source` and `volume` (0-100). The source must be a URL to a playable audio file (an MP3 for example).
### Service `system_bridge.get_process_by_id`
Returns a process by its pid.
{% my developer_call_service service="system_bridge.get_process_by_id" title="Show service in your Home Assistant instance." %}
```yaml
service: system_bridge.get_process_by_id
data:
bridge: "deviceid"
id: 17752
```
This returns [Response Data](https://www.home-assistant.io/docs/scripts/service-calls#use-templates-to-handle-response-data) like the following:
```yaml
id: 17752
name: steam.exe
cpu_usage: 0.9
created: 1698951361.6117153
memory_usage: 0.23782578821487121
path: C:\Program Files (x86)\Steam\steam.exe
status: running
username: hostname\user
working_directory: null
```
### Service `system_bridge.get_processes_by_name`
Returns a count and a list of processes matching the name provided.
{% my developer_call_service service="system_bridge.get_processes_by_name" title="Show service in your Home Assistant instance." %}
```yaml
service: system_bridge.get_processes_by_name
data:
bridge: "deviceid"
name: discord
```
This returns [Response Data](https://www.home-assistant.io/docs/scripts/service-calls#use-templates-to-handle-response-data) like the following:
```yaml
count: 1
processes:
- id: 11196
name: Discord.exe
cpu_usage: 0.3
created: 1698951365.770648
memory_usage: 0.07285296297215042
path: C:\Users\user\AppData\Local\Discord\app\Discord.exe
status: running
username: hostname\user
working_directory: null
```
### Service `system_bridge.open_path`
Open a URL or file on the server using the default application.