🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Sign inDemoInstall
Socket

github.com/Towsif12/dbus-media-http-api

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/Towsif12/dbus-media-http-api

v0.0.0-20240128082109-a1a9da3232b4
Source
Go
Version published
Created
Source

DBus Mris MediaPlayer HTTP API

This HTTP API connects to the host's DBus to retrieve current media information. It exposes an endpoint where this information can be accessed, and various methods can be executed.

Endpoints

GET /get Returns a list of all available Mris MediaPlayer2 objects.

Response

{
  "error": false,
  "result": [
    {
      "service": "org.mpris.MediaPlayer2.APPLICATION",
      "mpris:artUrl": "BASE64 DATA",
      "mpris:length": 1230,
      "mpris:trackid": "TRACK ID",
      "playback_status": "Playing",
      "position": 1230,
      "volume": 1,
      "xesam:album": "",
      "xesam:artist": [
        "ARTIST"
      ],
      "xesam:title": "TITLE"
    }
  ]
}
GET /{action}/{service} Triggers a specified action in the provided service.

Valid actions:

  • playpause
  • play
  • pause
  • stop
  • next
  • previous
Response
{"error": false, "message": "ACTION executed successfully"}

[!NOTE] If you have AUTH=true and AUTH_KEY=KEY set in your .env file, you will need to add an Authorization header with the authentication key to your requests.

Usage

To run this HTTP API, you need a Linux machine with DBus installed. This project integrates with the DBus Mris Media Player for media player interaction. You will also need to compile this project.

To compile and run this project, follow these commands:

git clone https://github.com/Towsif12/dbus-media-http-api.git
cd dbus-media-http-api

go build -o dbus-media-api ./src
chmod +x dbus-media-api

./dbus-media-api

Optionally, you can use a .env file to configure the port, authentication, and authentication key:

PORT=10004
AUTH=true
AUTH_KEY=key123

Development

The development process is similar to the usage instructions. Start by cloning the repository, and then you can modify the code in the src/ directory.

To run the project during development, use the following command:

go run ./src

Feel free to submit a Pull Request (PR) or post an issue if you encounter any bugs or errors.

Sources

These links were helpful resources throughout the development of this project:

FAQs

Package last updated on 28 Jan 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts