3.1. Dispenser
This section provides the API specifications for dispensers. It applies to
- Toilet paper dispensers 
- Paper towel dispensers 
- Cotton towel dispensers 
- Soap dispensers 
- Lotion dispensers 
- Disinfectant dispensers 
3.1.1. Definitions
3.1.1.1. Dispenser Generic Definitions
- Dispenser
- A device that provides access to a consumer good
- The soap in a washroom is provided through a soap dispenser 
 
- Dispenser Category
- The type of consumer good accessed through the dispenser - toilet paper 
- paper towel 
- cotton towel 
- soap 
- disinfectant 
- lotion 
- room fragrance 
 
- Toilet Paper
- Tissue-paper used in a toilet paper dispenser - Can differ in - rolled or folded - perforation - number of plies - paper count - diameter of the roll or height of the paper container 
 - This toilet paper dispenser can hold 250 sheet of 3 plies paper 
- Paper Towel
- Disposable tissue-paper for drying hands used in a towel dispenser - Can differ in - folded or rolled - number of plies - paper count - diameter of the rolled paper or height of the paper container 
 - This dispensers contains multi-fold paper towels 
- Cotton Towel
- Washable fabric towel for drying hands used in a towel dispenser
- The cotton towel will be washed at the end of the roll 
 
- Soap
- Liquid for washing hands used in a soap dispenser
- The soap is very soft on my hands 
 
- Disinfectant
- Liquid antimicrobial agent to disinfect hands used in a disinfect dispenser
- This disinfectant kill 99.9% of the germs 
 
- Lotion
- A low-viscosity topical preparation intended for application to the skin for medicinal or cosmetic purposes
- Your skin is very dry. You should use a lotion to moisturize it 
 
- Room Fragrance
- A chemical or molecules of fragrance introduced into the air of interior spaces to mask or eliminate unpleasant odors
- A portion of the room fragrance will provide a fresh air for at least an hour 
 
- Chamber
- Compartment of a dispenser holding a (none-liquid) consumable
- This two-chambers toilet paper dispenser has a Left and right chamber 
 
- Bottle
- Container for a liquid consumable (soap or disinfectant) - Can differ in - refillable/disposable 
- amount of soap/size/height 
 - This soap bottle can hold 500 ml 
- Reservoir
- Little tank inside a dispenser for liquid consumables that can hold a certain amount of the respective consumable from the bottle
- The reservoir holds 160 portions 
 
- Portion
- The minimum amount of consumable a user will get from a dispenser
- A portion a soap is 0.4ml 
 
- Dispenser System
- Device consisting of a housing, storage for the consumable, mechanism for dispensing the consumable and possibly other electronics and sensors
- The CWS Paradise Foam NT is a non-touch soap dispenser system 
 
- Dispenser Filling Level
- The remaining available consumable in a dispenser reported in percent
- The soap dispenser has a filling level of 25% remaining soap 
 
- Dispenser Last Service
- The last time the consumable of a dispenser was refilled
- The toilet dispenser was last serviced an hour ago 
 
- Expected Next Service
- The next estimated time the consumable of a dispenser should be refilled
- The expected next service time to refill the soap dispenser is 8:00 
 
3.1.2. Use cases
Note
Join FDS to get access to examples and use cases.
3.1.3. FDS compliance requirements
3.1.3.1. Object Model
3.1.3.1.1. Specification object for the dispenser device type
- The device type in the generic device specification object must be - “dispenser” 
 
- The device information provider must provide a specification object that contains a device_type_specific object defined in the following diagram 
 
- The category must be one of: - “toilet_paper” 
- “paper_towel” 
- “cotton_towel” 
- “soap” 
- “lotion” 
- “disinfectant” 
- “room_fragrance” 
 
The detailed API specifications for each object can be found in the reference chapter.
3.1.3.1.2. Status object for the dispenser device type
- the device information provider must provide a status object that contains a device_type_specific object defined in the following diagram 
 
The detailed API specifications for each object can be found in the reference chapter.
3.1.3.1.3. Diagnostic object for the dispenser device type
- the device information provider must provide a diagnostic object that contains a device_type_specific object defined in the following diagram 
 
The detailed API specifications for each object can be found in the reference chapter.
3.1.3.1.4. Statistic object for the dispenser device type
Note
The Statistic object is not being defined for dispensers in FDS Version 2
3.1.3.2. Web API (Pull Model)
- The device information provider must expose the specifications endpoint to get the list of available devices and their specifications 
GET https://{Device Information Provider URL}/fds/v2/specifications
- The device information provider must expose the statuses endpoint to get the latest status for one or multiple devices 
GET https://{Device Information Provider URL}/fds/v2/statuses
- The device information provider must expose the diagnostics endpoint to get the diagnostic for one or multiple devices 
GET https://{Device Information Provider URL}/fds/v2/diagnostics
Note
The statistics endpoint to expose the statistics information is not being defined for dispensers in FDS Version 2
A call to:
GET https://{Device Information Provider URL}/fds/v2/statistics
must return an error object
{
    "status": 204,
    "message": "not_implemented"
}
- The device information provider must expose the POST request on the tag endpoint to let a client application create a new tag 
POST https://{Entity Information Provider URL}/fds/v2/tag
- The device information provider must expose the GET request on the tag endpoint to provide the content of a tag 
GET https://{Entity Information Provider URL}/fds/v2/tag
- The device information provider must expose the DELETE request on the tag endpoint 
DELETE https://{Entity Information Provider URL}/fds/v2/tag/<tag_id>
- The device information provider must expose the PUT request on the tag/<tag_id>/entities endpoint 
PUT https://{Entity Information Provider URL}/fds/v2/tag/<tag_id>/entities
- The device information provider must expose the DELETE request on the tag/<tag_id>/entities endpoint 
DELETE https://{Entity Information Provider URL}/fds/v2/tag/<tag_id>/entities
3.1.3.3. Publish/Subscribe (Push model)
3.1.3.3.1. Events
- The device information provider must publish the following alerts and notifications 
| Message code | Description | Message category | Message code specific object | 
|---|---|---|---|
| out_of_order | The device is out of order and needs service intervention | alert | out_of_order_details property - array of information provider codes | 
| offline | The device is not communicating | notification | last_contact property | 
3.1.3.3.2. Publish status information
The following data must be published by the information provider
fds/v2/<subscriber_id>/<tag_id>/bin/<device_id>/status/filling_level
- The payload must be: - The filling_level object 
 
3.1.3.3.3. Publish predictive and prognostic information
The following data must be published by the information provider
fds/v2/<subscriber_id>/<tag_id>/bin/<device_id>/diagnostics/expected_next_service
- The payload must be: - The expected_next_service property