Re: [generic-sensor] - Sensors API - core

by the way...what about self?

self.sensors...

On Mon, Nov 28, 2016 at 8:37 PM, Felipe Nascimento de Moura <
felipenmoura@gmail.com> wrote:

> Hi.
> well, that's a good point, indeed!
> But
>
> window.addEventListener('deviceorientation', ... )  // depends on window.
> navigator.battery.level // depends on navigator
> window.addEventListener('deviceproximity', ... ) // depends on window
> navigator.getUserMedia( ... ) // depends on navigator
> window.addEventListener('devicelight', ... ) // depends on window
> navigator.geolocation.getCurrentPosition( ... ) // depends on navigator
>
> We got the same problem.
> Maybe the global `Sensors` is indeed the best option.
>
>
>
> On Mon, Nov 28, 2016 at 8:19 PM, Menard, Alexis <alexis.menard@intel.com>
> wrote:
>
>> Hi,
>>
>> The fact also that it doesn’t depends on navigator is I believe so that
>> it can address JavaScript environments where navigator is not available,
>> think of NodeJS in an IoT world. This is typically a place where your
>> NodeJS app will query the sensors on the board and do something with it.
>> Depending on the DOM is also not really an option.
>>
>> Thanks.
>>
>> On Nov 25, 2016, at 5:48 AM, Felipe Nascimento de Moura <
>> felipenmoura@gmail.com> wrote:
>>
>> Hi.
>>
>> Reading this e-mail: http://lists.w3.org/Archives/Public/public-device-ap
>> is/2016Nov/0024.html
>> I could add now, yet a new different pattern to the list I showed in the
>> first e-mail:
>>
>> ```
>> let sensor = new Magnetometer(); // new instance of a global Constructor
>> sensor.start();
>>
>> sensor.onchange = function(event) { ... };
>> ```
>>
>> I think this is the moment for us to think about a `core` for sensors,
>> like `navigator.sensors....` :)
>>
>>
>> On Thu, Nov 24, 2016 at 1:06 PM, Felipe Nascimento de Moura <
>> felipenmoura@gmail.com> wrote:
>>
>>> > https://github.com/w3c/sensors  ... some are already supported in
>>> Chrome ;)
>>>
>>> nice, I have already done some tests with the currently supported ones,
>>> but even though, I think an aggregator for all the sensors is very
>>> important. Even for hacking and discoverability.
>>>
>>> navigator.sensors.tirePressure().then( ... )
>>>
>>> Actually, navigator.sensors could even have a "getter" for any method
>>> that does not exist to return a rejected promise, instead of a "undefined
>>> is not a function" error.
>>> This way, calling `navigator.sensors.anInexistin
>>> gSensor().then(...).catch(...)` would reject until the sensors was
>>> created or supported.
>>>
>>> Thinking it further, we could even have a `navigator.sensors.create`
>>> with a pattern for developers to create their own sensors based in other
>>> information...let's say:
>>>
>>> ```
>>> navigator.sensors.create("darkRoom", function(mySensor){
>>>   Promise.all([
>>>     navigator.sensors.light(),
>>>     navigator.sensors.proximity()
>>>   ]).then(function([lightSensor, proximitySensor]){
>>>     // combine lightSensor and proximity to identify when the room is
>>> dark
>>>     // and the device is not inside a pocket, for example
>>>     // you can dispatch events here on mySensor
>>>   });
>>> });
>>>
>>> // then, afterwards
>>>
>>> navigator.sensors.darkRoom().then(darkRoomSensor=>{
>>>   darkRoomSensor.addEventListener(...);
>>> });
>>> ```
>>>
>>> Did I go too far? :p
>>>
>>>
>>> On Thu, Nov 24, 2016 at 3:04 AM, Marcos Caceres <marcos@marcosc.com>
>>> wrote:
>>>
>>>> On November 24, 2016 at 3:41:07 PM, Felipe Nascimento de Moura
>>>> (felipenmoura@gmail.com) wrote:
>>>> > I think I should be able to type "navigator.sensors" in my console
>>>> and see
>>>> > even an autocomplete with the possibilities.
>>>>
>>>> https://github.com/w3c/sensors  ... some are already supported in
>>>> Chrome ;)
>>>>
>>>
>>>
>>>
>>> --
>>> [ ]s
>>>
>>> *--*
>>>
>>> *Felipe N. Moura*
>>> Web Developer, Google Developer Expert
>>> <https://developers.google.com/experts/people/felipe-moura>, Founder of
>>> BrazilJS <https://braziljs.org/> and Nasc <http://nasc.io/>.
>>>
>>> Website:  http://felipenmoura.com / http://nasc.io/
>>> Twitter:    @felipenmoura <http://twitter.com/felipenmoura>
>>> Facebook: http://fb.com/felipenmoura
>>> LinkedIn: http://goo.gl/qGmq
>>> ---------------------------------
>>> *Changing  the  world*  is the least I expect from  myself!
>>>
>>
>>
>>
>> --
>> [ ]s
>>
>> *--*
>>
>> *Felipe N. Moura*
>> Web Developer, Google Developer Expert
>> <https://developers.google.com/experts/people/felipe-moura>, Founder of
>> BrazilJS <https://braziljs.org/> and Nasc <http://nasc.io/>.
>>
>> Website:  http://felipenmoura.com / http://nasc.io/
>> Twitter:    @felipenmoura <http://twitter.com/felipenmoura>
>> Facebook: http://fb.com/felipenmoura
>> LinkedIn: http://goo.gl/qGmq
>> ---------------------------------
>> *Changing  the  world*  is the least I expect from  myself!
>>
>>
>>
>
>
> --
> [ ]s
>
> *--*
>
> *Felipe N. Moura*
> Web Developer, Google Developer Expert
> <https://developers.google.com/experts/people/felipe-moura>, Founder of
> BrazilJS <https://braziljs.org/> and Nasc <http://nasc.io/>.
>
> Website:  http://felipenmoura.com / http://nasc.io/
> Twitter:    @felipenmoura <http://twitter.com/felipenmoura>
> Facebook: http://fb.com/felipenmoura
> LinkedIn: http://goo.gl/qGmq
> ---------------------------------
> *Changing  the  world*  is the least I expect from  myself!
>



-- 
[ ]s

*--*

*Felipe N. Moura*
Web Developer, Google Developer Expert
<https://developers.google.com/experts/people/felipe-moura>, Founder of
BrazilJS <https://braziljs.org/> and Nasc <http://nasc.io/>.

Website:  http://felipenmoura.com / http://nasc.io/
Twitter:    @felipenmoura <http://twitter.com/felipenmoura>
Facebook: http://fb.com/felipenmoura
LinkedIn: http://goo.gl/qGmq
---------------------------------
*Changing  the  world*  is the least I expect from  myself!

Received on Monday, 28 November 2016 22:40:12 UTC