Geolocation is a way to launch a synapse when ENTERING a geolocated zone.
As Kalliope does not manage its own geolocation, this signal has been designed in view to be implemented from external clients (smartphones, watches, embedded devices, etc).
The syntax of a geolocation declaration in a synapse is the following.
signals: - geolocation: latitude: "46.204391" longitude: "6.143158" radius: "10000"
For example, if we want Kalliope to run the synapse when entering in Geneva
- geolocation: latitude: "46.204391" longitude: "6.143158" radius: "1000"
Parameters are keyword you can use to build your geolocation
List of available parameter:
Geolocation clock radio
Let's make a complete example. We want to Kalliope to : - welcome when coming back home - Play our favourite web radio
The synapse in the brain would be:
- name: "geolocation-welcome-radio" signals: - geolocation: latitude: "46.204391" longitude: "6.143158" radius: "10" neurons: - say: message: - "Welcome Home!" - shell: cmd: "mplayer http://18.104.22.168:6410/" async: True
After setting up a geolocation signal, you must restart Kalliope
python kalliope.py start
If the syntax is NOT ok, Kalliope will raise an error and log a message:
[Geolocation] The signal is missing mandatory parameters, check documentation
Note: this feature is supported by the Kalliope official smartphone application.