Hi Tony,

Would it make sense to create a couple of Jiras for improving the virtual
sensor performer so that we can discuss the improvement in the jira?

I'm thinking one Jira for the REST interface. Then, it might make sense to
add a Jira covering features for; for examples, sensors you'd see in a
weather station: air speed and direction, precipitation type and depth, and
so on.

Thanks,

Gunnar


On Sat, Feb 11, 2017 at 9:48 PM, Tony Faustini <[email protected]> wrote:

> Hi Gunnar,  A Virtual Sensor is a Fey performer that can be configured via
> a Fey orchestration to mimic different types of sensors. You can configure
> it to be a numeric “environmental” sensor like temperature, humidity or air
> pressure. It can also be configured to be a sound, sight, or vibration
> sensor. I will add more information in the README.md file for the
> performer. This also relates to another question that was raised a few days
> ago about the resources folder for the virtual sensor performer folder
> (src/main/resources). The resources folder contains samples of the types of
> sounds or images that a virtual sensor would produce if it is configured to
> be an image or sound sensor. Going back to your question this virtual
> sensor is self contained and doesn’t need to go out to any other source to
> act as a sensor. When you create the instance of the virtual sensor in a
> fey orchestration you would specify the type of the sensor (environmental,
> wav, vib ), You would also specify the frequency with which the virtual
> sensor should operate. E.g. An environmental sensor called temperature
> producing a value for temperature every 10 seconds. Any performer getting
> input from this performer would get a temperature every 5 seconds. You can
> also specify ways in which the señor can behave differently at different
> times of the day. Perhaps overnight the temperature varies between 45 and
> 55 F, the morning hours 55 to 65 F, the afternoon 65 to 70F etc.
>
> If someone was interested in improving this basic virtual sensor performer
> it would be a great way of contributing to the project. Just a thought for
> anyone that would like to do that.
>
> You could also write augment the performer by adding restful call
> capabilities in which it would as you suggest go out to “things” on the
> internet to pull them in. I described this as a restful performer in a
> previous post. Think of it as Postman in a performer. Your suggestion would
> add restful capabilities to the virtual sensor performer.
>
> I hope this helps.
>
> Example orchestration using the VirtualSensor performer used in a fey
> orchestration - I made this up in the hope that it helps you and others
> connect the dots…
>
> -Tony
>
> {
>   "guid": “DEMO",
>   "command": "RECREATE",
>   "timestamp": "2319028301283018",
>   "name": "Keeps all performers under the same ensemble so the activeMQ 
> performer
> can be reused",
>   "ensembles": [
>     {
>       "guid": "SENSORS-PIPELINE",
>       "command": "NONE",
>       "performers": [
>         {
>           "guid": "AIR-PRESSURE",
>           "schedule": 10000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "environmental",
>               "name": "air_pressure",
>               "lrn": "78a1bc991a26416992d376a7e27401ee",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": "HUMIDITY",
>           "schedule": 10000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "environmental",
>               "name": "humidity",
>               "lrn": "7d6f770d4f24418eb664298d31d3085a",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": "SOUND-DB",
>           "schedule": 10000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "environmental",
>               "name": "sound_db",
>               "lrn": "7c1eccfa54db438684488f020c5c4911",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": "SOUND-WAV",
>           "schedule": 60000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "wav",
>               "name": "sound_db",
>               "lrn": "7c5b34a026e34277801149d5a1365321",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": "TEMPERATURE",
>           "schedule": 10000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "environmental",
>               "name": "temperature",
>               "lrn": "76b3ebdbaeeb4ebb8c8cdc7ab8c29449",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": "VIBRATION-STREAM",
>           "schedule": 30000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "vibration",
>               "name": "vibration",
>               "lrn": "774350123d5043f29972a9148089ecc7",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": "VIBRATION-STRENGTH",
>           "schedule": 10000,
>           "backoff": 0,
>           "source": {
>             "name": "fey-virtual-sensor.jar",
>             "classPath": "org.apache.iota.fey.performer.VirtualSensor",
>             "parameters": {
>               "sensor_type": "environmental",
>               "name": "vibration_strength",
>               "lrn": "7d7191323eb7456eb1f8f7c4983746b6",
>               "exceptions": "[ {\"start_time\":[9,28,30],\"
> end_time\":[9,29,0],\"expected_value\":900}, {\"start_time\":[11,0,0],\"
> end_time\":[11,21,3],\"expected_value\":99.0} ]"
>             }
>           }
>         },
>         {
>           "guid": “ACTIVEMQ-PUBLISHER",
>           "schedule": 0,
>           "backoff": 0,
>           "source": {
>             "name": “fey-activemq.jar",
>             "classPath": "org.apache.iota.fey.performer.activeMQ",
>             "parameters": {
>               "_port": "31883",
>               "port": "1883",
>               "_target": "54.200.218.146",
>               "target": "localhost",
>               "topic": “demo/data/viv7",
>               "user": “demo",
>               "password": “FROM_ENV_VARIABLE",
>               "max_in_flight": "10000"
>             }
>           }
>         }
>       ],
>       "connections": [
>         {
>           "AIR-PRESSURE": [
>             “ACTIVEMQ-PUBLISHER"
>           ]
>         },
>         {
>           "SOUND-DB": [
>             "ACTIVEMQ-PUBLISHER"
>           ]
>         },
>         {
>           "SOUND-WAV": [
>             "ACTIVEMQ-PUBLISHER"
>           ]
>         },
>         {
>           "HUMIDITY": [
>             "ACTIVEMQ-PUBLISHER"
>           ]
>         },
>         {
>           "VIBRATION-STREAM": [
>             "ACTIVEMQ-PUBLISHER"
>           ]
>         },
>         {
>           "VIBRATION-STRENGTH": [
>             "ACTIVEMQ-PUBLISHER"
>           ]
>         },
>         {
>           "TEMPERATURE": [
>             "ACTIVEMQ-PUBLISHER"
>           ]
>         }
>       ]
>     }
>   ]
>
>
> On Feb 10, 2017, at 10:13 PM, Gunnar Tapper <[email protected]>
> wrote:
>
> Hi,
>
> I'm trying to match the code with what's being said on
> http://iota.incubator.apache.org/features.html
>
> I'm not clear where I find; for example, docker and spark parts?
>
> What's your advise for someone who wants to contribute? It seems like a
> good idea to read up on akka but then what?
>
> I'm setting up my project to use eclipse. Is that the IDE of choice or is
> there something more appropriate?
>
>
> --
> Thanks,
>
> Gunnar
> *If you think you can you can, if you think you can't you're right.*
>
>
>


-- 
Thanks,

Gunnar
*If you think you can you can, if you think you can't you're right.*

Reply via email to