W3C Member Submission

Volkswagen Infotainment Web Interface service definition: viwi.service.mixer

W3C Member Submission

This version:
https://www.w3.org/submissions/2016/SUBM-viwi-service-mixer-20161213/
Latest published version:
https://www.w3.org/submissions/viwi-service-mixer/
Editor:
Dr. Patrick Bartsch, Volkswagen AG

Status of This Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications can be found in the W3C technical reports index at https://www.w3.org/TR/.

This is required.

By publishing this document, W3C acknowledges that the Submitting Members have made a formal Submission request to W3C for discussion. Publication of this document by W3C indicates no endorsement of its content by W3C, nor that W3C has, is, or will be allocating any resources to the issues addressed by it. This document is not the product of a chartered W3C group, but is published as potential input to the W3C Process. A W3C Team Comment has been published in conjunction with this Member Submission. Publication of acknowledged Member Submissions at the W3C site is one of the benefits of W3C Membership. Please consult the requirements associated with Member Submissions of section 3.3 of the W3C Patent Policy. Please consult the complete list of acknowledged W3C Member Submissions.

Volkswagen Infotainment Web Interface

service definition: viwi.service.mixer

 

viwi

© by Dr. Patrick Bartsch (EEC) 2013-2016

 

version: v1.5.3-W3C

 

This repo holds all audio maagement (mixer) related resources

Table of contents

General information

version: 1.5.3-W3C

Repository:

Author

Dr. Patrick Bartsch <patrick.bartsch@volkswagen.de>

Resources

/mixer/bindings/

This endpoint defines if a source will be played on output and on which. It is possible to use multiple sources on multiple outputs. Think of bindings like cable on your home stereo system.

audioBindingObject

Properties
name description type format unit(s) value(s)
id identifier string uuid -
name source name string -
uri object uri string uri -
volume current audio volume integer percent [-inf..100]
volumestepsize possible audio volume steps integer percent [-inf..100]
source the source that is bound object /mixer/audiosources/audioSourceObject
output the output the source is bound to object /mixer/outputs/audioOutputObject
muted muting state boolean -

Resource level access (/mixer/bindings/)

POST

Note: Use a http POST request on /mixer/bindings/ to create a new element of type audioBindingObject

Subscribe to /mixer/bindings/ to receive updates for element creations or removals from the collection.

Request parameters

The following parameters can be used with the request and subscriptions:

name type format mandatory
name string yes
volume integer yes
muted boolean no
source string uri yes
output string uri yes
Request/response example
POST /mixer/bindings/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}

=>

HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked
Location: /mixer/bindings/3901a278-ba17-44d6-9aef-f7ca67c04840


{
  "status": "ok"
}

GET

Note: Use a http GET request on /mixer/bindings/ to retrieve a list of available elements of type audioBindingObject

Subscribe to /mixer/bindings/ to receive updates for element creations or removals from the collection.

Request/response example
GET /mixer/bindings/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6

=>

HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/bindings/3901a278-ba17-44d6-9aef-f7ca67c04840"
    },
    {
      "id": "8901870-b526-11e3-a5e2-0800200c9a66",
      "name": "dolor sit",
      "uri": "/mixer/bindings/8901870-b526-11e3-a5e2-0800200c9a66"
    }
  ]
}

Element level access (/mixer/bindings/:uuid)

POST

Note:

Use a http POST request on /mixer/bindings/:uuid to update a particular audioBindingObject

Subscribe to /mixer/bindings/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
name string no
volume integer no
muted boolean no
source string no
output string no
Request/response example
POST /mixer/bindings/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok"
}

GET

Note:

Use a http GET request on /mixer/bindings/:uuid to retrieve a particular audioBindingObject

Subscribe to /mixer/bindings/:uuid to receive updates on element level changes.

Request/response example
GET /mixer/bindings/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/bindings/3901a278-ba17-44d6-9aef-f7ca67c04840"
    }
  ]
}

Events

This endpoint will not send any events. Therefor you can not register for them.

/mixer/audiosources/

Audio signal source, might be a bluetooth receiver, a CD player or the internal media renderer. Think of audio delivering blocks of a home stereo system. New Audio Sources like an external navigation announcement service might be added via POST and removed via DELETE. All standard source will return an error if a client tries to modify or remove them without permission.

audioSourceObject

Properties

name description type format unit(s) value(s)
id identifier string uuid -
name source name string main
tuner
mediaplayer
phone
navigation
bluetooth
speech
uri object uri string uri -
muted muting state boolean -
gainoffset input gain offset integer percent [-inf..100]

Resource level access (/mixer/audiosources/)

GET

Note: Use a http GET request on /mixer/audiosources/ to retrieve a list of available elements of type audioSourceObject

Subscribe to /mixer/audiosources/ to receive updates for element creations or removals from the collection.

Request parameters

The following parameters can be used with the request and subscriptions:

name type format mandatory
Request/response example
GET /mixer/audiosources/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6

=>

HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/audiosources/3901a278-ba17-44d6-9aef-f7ca67c04840"
    },
    {
      "id": "8901870-b526-11e3-a5e2-0800200c9a66",
      "name": "dolor sit",
      "uri": "/mixer/audiosources/8901870-b526-11e3-a5e2-0800200c9a66"
    }
  ]
}

POST

Note: Use a http POST request on /mixer/audiosources/ to create a new element of type audioSourceObject

Subscribe to /mixer/audiosources/ to receive updates for element creations or removals from the collection.

Request parameters

The following parameters can be used with the request and subscriptions:

name type format mandatory
muted boolean no
gainoffset integer no
Request/response example
POST /mixer/audiosources/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}

=>

HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked
Location: /mixer/audiosources/3901a278-ba17-44d6-9aef-f7ca67c04840


{
  "status": "ok"
}

Element level access (/mixer/audiosources/:uuid)

GET

Note:

Use a http GET request on /mixer/audiosources/:uuid to retrieve a particular audioSourceObject

Subscribe to /mixer/audiosources/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
Request/response example
GET /mixer/audiosources/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/audiosources/3901a278-ba17-44d6-9aef-f7ca67c04840"
    }
  ]
}

DELETE

Note:

Use a http DELETE request on /mixer/audiosources/:uuid to update a particular audioSourceObject

Subscribe to /mixer/audiosources/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
Request/response example
DELETE /mixer/audiosources/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok"
}

POST

Note:

Use a http POST request on /mixer/audiosources/:uuid to update a particular audioSourceObject

Subscribe to /mixer/audiosources/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
muted boolean no
gainoffset integer no
Request/response example
POST /mixer/audiosources/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok"
}

Events

The following events may be fired by client interaction or system side:

/mixer/outputs/

Audio outputs are sinks from the systems perspective like speakers, bluetooth streaming or headphones. A typical system has at least one output for the in-car speaker system (through amp) but can have multiple outputs. Clients may register for changes on outputs like on/off switching, volume changes or change of gala settings.

audioOutputObject

Properties

name description type format unit(s) value(s)
id identifier string uuid -
name output name string bluetooth
rearset
main
headphones
uri object uri string uri -
status output status (on/off) boolean -
positioner audio positioner object object /mixer/positioners/audioPositionerObject
equalizers audio equalizer EqualizerObject array /mixer/equalizers/equalizerObject
volume the master volume of the output integer percent [-inf..100]
volumestepsize possible audio volume steps integer percent [-inf..100]
gala gala status string off
auto
curve1
curve2
curve3
curve4
curve5
curve6
curve7
soundlabel property to determine the sound application and configuration for sound labeling string beats
dynaudio
bose
bangAndOlufsen

Resource level access (/mixer/outputs/)

GET

Note: Use a http GET request on /mixer/outputs/ to retrieve a list of available elements of type audioOutputObject

Subscribe to /mixer/outputs/ to receive updates for element creations or removals from the collection.

Request/response example
GET /mixer/outputs/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6

=>

HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/outputs/3901a278-ba17-44d6-9aef-f7ca67c04840"
    },
    {
      "id": "8901870-b526-11e3-a5e2-0800200c9a66",
      "name": "dolor sit",
      "uri": "/mixer/outputs/8901870-b526-11e3-a5e2-0800200c9a66"
    }
  ]
}

Element level access (/mixer/outputs/:uuid)

POST

Note:

Use a http POST request on /mixer/outputs/:uuid to update a particular audioOutputObject

Subscribe to /mixer/outputs/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
status boolean no
volume integer no
gala string no
Request/response example
POST /mixer/outputs/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok"
}

GET

Note:

Use a http GET request on /mixer/outputs/:uuid to retrieve a particular audioOutputObject

Subscribe to /mixer/outputs/:uuid to receive updates on element level changes.

Request/response example
GET /mixer/outputs/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/outputs/3901a278-ba17-44d6-9aef-f7ca67c04840"
    }
  ]
}

Events

The following events may be fired by client interaction or system side:

/mixer/positioners/

Audio center positioner provides access to the balance and fader settings of eachpositioner. The linking to an output is held by audioOutputObject.

audioPositionerObject

Properties

name description type format unit(s) value(s)
id identifier string uuid -
name audio positioner name string -
uri object uri string uri -
balance Balance settings integer percent [-100..100]
fader Fader settings integer percent [-100..100]

Resource level access (/mixer/positioners/)

GET

Note: Use a http GET request on /mixer/positioners/ to retrieve a list of available elements of type audioPositionerObject

Subscribe to /mixer/positioners/ to receive updates for element creations or removals from the collection.

Request/response example
GET /mixer/positioners/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6

=>

HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/positioners/3901a278-ba17-44d6-9aef-f7ca67c04840"
    },
    {
      "id": "8901870-b526-11e3-a5e2-0800200c9a66",
      "name": "dolor sit",
      "uri": "/mixer/positioners/8901870-b526-11e3-a5e2-0800200c9a66"
    }
  ]
}

Element level access (/mixer/positioners/:uuid)

POST

Note:

Use a http POST request on /mixer/positioners/:uuid to update a particular audioPositionerObject

Subscribe to /mixer/positioners/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
balance integer no
fader integer no
Request/response example
POST /mixer/positioners/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok"
}

GET

Note:

Use a http GET request on /mixer/positioners/:uuid to retrieve a particular audioPositionerObject

Subscribe to /mixer/positioners/:uuid to receive updates on element level changes.

Request/response example
GET /mixer/positioners/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/positioners/3901a278-ba17-44d6-9aef-f7ca67c04840"
    }
  ]
}

Events

This endpoint will not send any events. Therefor you can not register for them.

/mixer/equalizers/

Think of an equalizer as one single bar of a home stereos equalizer display. Every bar and thus equalizerObject inhere corresponds to a certain frequency and represents its level

equalizerObject

Properties

name description type format unit(s) value(s)
id identifier string uuid -
name equalizer name string -
uri object uri string uri -
level level integer decibel [-12..12]
freq frequency integer Hz [-inf..inf]

Resource level access (/mixer/equalizers/)

GET

Note: Use a http GET request on /mixer/equalizers/ to retrieve a list of available elements of type equalizerObject

Subscribe to /mixer/equalizers/ to receive updates for element creations or removals from the collection.

Request/response example
GET /mixer/equalizers/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6

=>

HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/equalizers/3901a278-ba17-44d6-9aef-f7ca67c04840"
    },
    {
      "id": "8901870-b526-11e3-a5e2-0800200c9a66",
      "name": "dolor sit",
      "uri": "/mixer/equalizers/8901870-b526-11e3-a5e2-0800200c9a66"
    }
  ]
}

Element level access (/mixer/equalizers/:uuid)

POST

Note:

Use a http POST request on /mixer/equalizers/:uuid to update a particular equalizerObject

Subscribe to /mixer/equalizers/:uuid to receive updates on element level changes.

Request parameters

The following parameters can be used with the request and subscriptions:

name type mandatory
level integer no
freq integer no
Request/response example
POST /mixer/equalizers/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6


{
  "viwi": "rockz.."
}
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok"
}

GET

Note:

Use a http GET request on /mixer/equalizers/:uuid to retrieve a particular equalizerObject

Subscribe to /mixer/equalizers/:uuid to receive updates on element level changes.

Request/response example
GET /mixer/equalizers/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/equalizers/3901a278-ba17-44d6-9aef-f7ca67c04840"
    }
  ]
}

Events

This endpoint will not send any events. Therefor you can not register for them.

/mixer/bluetoothdevices/

provides access to the mapping of bluetooth device to audiosource. Mappings are created on system side and thus read only.

bluetoothdeviceObject

Properties

name description type format unit(s) value(s)
id identifier string uuid -
name device name string -
uri object uri string uri -
audiosource audio source object /mixer/audiosources/audioSourceObject
mac device mac address string macaddress -

Resource level access (/mixer/bluetoothdevices/)

GET

Note: Use a http GET request on /mixer/bluetoothdevices/ to retrieve a list of available elements of type bluetoothdeviceObject

Subscribe to /mixer/bluetoothdevices/ to receive updates for element creations or removals from the collection.

Request/response example
GET /mixer/bluetoothdevices/ HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6

=>

HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/bluetoothdevices/3901a278-ba17-44d6-9aef-f7ca67c04840"
    },
    {
      "id": "8901870-b526-11e3-a5e2-0800200c9a66",
      "name": "dolor sit",
      "uri": "/mixer/bluetoothdevices/8901870-b526-11e3-a5e2-0800200c9a66"
    }
  ]
}

Element level access (/mixer/bluetoothdevices/:uuid)

GET

Note:

Use a http GET request on /mixer/bluetoothdevices/:uuid to retrieve a particular bluetoothdeviceObject

Subscribe to /mixer/bluetoothdevices/:uuid to receive updates on element level changes.

Request/response example
GET /mixer/bluetoothdevices/3901a278-ba17-44d6-9aef-f7ca67c04840 HTTP/1.1
Host: 127.0.0.1:9000
Connection: keep-alive
Accept: application/json
User-Agent: Chrome/34.0.1847.137 Safari/537.36
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8,de;q=0.6
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json; charset=utf-8
ETag: "-32550834"
Content-Encoding: gzip
Date: Tue, 07 Apr 1980 00:00:00 GMT
Connection: keep-alive
Transfer-Encoding: chunked


{
  "status": "ok",
  "data": [
    {
      "id": "3901a278-ba17-44d6-9aef-f7ca67c04840",
      "name": "lorem ipsum",
      "uri": "/mixer/bluetoothdevices/3901a278-ba17-44d6-9aef-f7ca67c04840"
    }
  ]
}

Events

The following events may be fired by client interaction or system side: