fasp-client

Control Friendly Audio Streaming Protocol (FASP) receivers in the local network.

Usage no npm install needed!

<script type="module">
  import faspClient from 'https://cdn.skypack.dev/fasp-client';
</script>

README

fasp-client

Control Friendly Audio Streaming Protocol receivers in the local network.

Use fasp-client-cli if you want to control receivers from the command line.

npm version ISC-licensed support me via GitHub Sponsors chat with me on Twitter

Installing

npm install fasp-client

Usage

You need to have a fasp-receiver-compatible server (e.g. fasp-server) running somewhere.

const createClient = require('fasp-client')

const receiverUrl = 'ws://localhost:60123/'
const client = createClient(receiverUrl, (status) => {
    console.log(status.title || status.filename, status.progress)
})

client.play('http://example.org/path/to/audio.ogg')

Using the code above, you will only be able to let the receiver play files from a remote location. If you want to play local files, you need to serve them via HTTP and tell the receiver to fetch them from you. There is a straightforward helper for this:

const withLocalFiles = require('fasp-client/with-local-files')

withLocalFiles(client)

You can now pass file paths to client.play and client.queue. An HTTP server will be started on a random port, serving only these files.

Contributing

If you have a question or have difficulties using fasp-client, please double-check your code and setup first. If you think you have found a bug or want to propose a feature, refer to the issues page.