I have an appointment booking form which has a number of audio files included in the full version for such things as success, error, clicking on objects etc, mostly small sound files to enhance the users experience but as these delay loading of the page/system, in some cases for a couple of seconds or more on slow internet connections, I need to find a way to prevent the users system downloading these audio files if their system is unable to play the sound or has their volume set to mute or just have no audio drivers or hardware in their device and conversely, to show a message to those with audio systems that the system is downloading audio for their benefit or some message to that effect or even a button to skip loading them.
NOTE: Please be aware that many of my users have internet connections that run at or near 500KB/s or 0.5 Mb/s. Some have full 90MBPS but the majority are under 2MBPS as most are connected through "pensioner" or "restricted" internet plans that are very cheap but also VERY slow! - think dial-up @ 56K (x 10).
I have looked for ways to get the volume level from the device the page is displayed on but nothing seems to be a solution on how to stop their browsers downloading the files and then being unable to actually play them.
I also wanted to find out for the same users if the user has a restricted colour scheme or pallet eg, 16 colours in order to present them with a different page designed to work with their limited colours by disabling such things as gradients and images and enhancing the contrast of object classes so they show what was intended instead of showing empty white or black spaces in place of what were shades of various colours.
These requests are all for the same system to make my system as inclusive as possible for all my users regardless of their visual, auditory or physical dexterity or abilities so they can use my system with the least amount of effort as possible. I am quite happy to build multiple pages but I need a way to detect the users environment in order to automatically direct them to the right place for their abilities instead of asking them to click a button to go to high contrast colour scheme or another button to play louder sounds or another to have no sounds etc etc.
My users are a mix of mostly elderly people with vision and/or hearing limitations as well as those with substantial limitations in their ability to understand questions such as "do you use high contrast colours" or "does your device have audio devices installed" or other questions I would otherwise have to ask them in order for them to get to use the page that bests suits their abilities. NOTE: Some of my users are still using Pentium-4 systems with CRT 640x480 pixel screens.
In short, I want to create an "all abilities, inclusive, accessible website and booking system" that doesn't have to ask users too much about their abilities but can auto detect as much as possible about their devices environment and make it invisible to these end users. The majority of these users have had their carers or IT people set up their devices with these restricted or ease of access settings, I just want to be able to detect them to make their experience on my web site as simple and as non-stressful as possible.