Bonjour,
Je suis tombé sur la même erreur 'Cannot read property' lors du lancement en ligne de commande. La seule solution est d'investiguer sur le Karotz sur le fonctionnement de la KarotzVM. J'ai identifié le script (binaire) /usr/karotz/bin/controller comme étant celui qui se connecte aux serveurs Violet et en réception ne les programmes et les configurations.
J'ai modifié le script /usr/yaffs_start.sh pour lancer le controller principal "à l'ancienne" et regarder ce que la log donne avec la ligne de commande "/usr/karotz/bin/controller 2>&1 > /tmp/controller.log".
Il semble que le controller se connecte au serveur Karotz, et ce dernier:
- Vérifie si les apps sont à jour
- Les télécharge (si elles ne sont pas synchronisées)
- Envoie la configuration de toutes les App (à travers des variables 'configInstance')
- Envoie le schedule de chaque app, je veux dire toutes les 5 minutes, toutes les 3 heures..... Cela se voit dans la variable 'scheduleApp'
- Mets à jour l'heure
- et autres...
Je travaille sur la possibilité de charger ces variables d'une manière extérieure (globale surement, ou pré inclusion) avant le lancement manuel de l'application (en ligne de commande).
En gros, voici les parties intéressantes selon moi:
config {
configapp {
apiKey: "1cedc104-f8b0-11df-8f63-0019d145fb1e"
version: "0.9.3"
name: "Mon Podcast"
deployment: "hosted"
callback: ""
author: "Karotz by Violet"
access: "button"
access: "http"
access: "led"
access: "multimedia"
access: "tts"
configInstance {
interruptible: true
awake: true
name: "config"
uuid: "59df5b70-a8ae-4447-bd1e-189b3ae47df9"
params {
key: "awake"
value: "true"
}
params {
key: "interruptible"
value: "true"
}
params {
key: "permanentTriggerActivator"
value: "false"
}
params {
key: "scheduledDateTriggerActivator"
value: "false"
}
params {
key: "scheduledTriggerActivator"
value: "false"
}
params {
key: "url"
}
}
}
}
scheduleConfig {
scheduleApp {
apiKey: "53bb36f4-2391-466c-98a5-e5f8aa54215e"
instance: "config"
schedule {
schedulePeriodic {
period: 60
delta: 3
}
}
}
scheduleApp {
apiKey: "bd4f6fe4-3839-11e0-bdd5-001fc63cfdff"
instance: "config"
schedule {
schedulePeriodic {
period: 10800
delta: 540
}
}
}
scheduleApp {
apiKey: "cddd23fe-d135-41ee-9b93-a276d2222b98"
instance: "config"
schedule {
schedulePeriodic {
period: 10800
delta: 540
}
}
}
scheduleApp {
apiKey: "75d840ac-1e28-49bd-86a8-fa89f3e314e5"
instance: "config"
schedule {
scheduleDate {
year: -1
month: -1
day: -1
hour: -1
minute: 0
second: 0
}
}
}
scheduleApp {
apiKey: "09a0ad85config {
configapp {
apiKey: "1cedc104-f8b0-11df-8f63-0019d145fb1e"
version: "0.9.3"
name: "Mon Podcast"
deployment: "hosted"
callback: ""
author: "Karotz by Violet"
access: "button"
access: "http"
access: "led"
access: "multimedia"
access: "tts"
configInstance {
interruptible: true
awake: true
name: "config"
uuid: "59df5b70-a8ae-4447-bd1e-189b3ae47df9"
params {
key: "awake"
value: "true"
}
params {
key: "interruptible"
value: "true"
}
params {
key: "permanentTriggerActivator"
value: "false"
}
params {
key: "scheduledDateTriggerActivator"
value: "false"
}
params {
key: "scheduledTriggerActivator"
value: "false"
}
params {
key: "url"
}
}
}-1ffc-4ece-b4c3-9bf4cfba777a"
instance: "config"
schedule {
scheduleDate {
year: -1
month: -1
day: -1
hour: -1
minute: 0
second: 0
}
}
}
scheduleApp {
apiKey: "46d55bc4-f7d1-11df-8c26-0019d145fb1e"
instance: "config"
schedule {
schedulePeriodic {
period: 10800
delta: 540
}
}
}
scheduleWakeup {
dayweek: 5
wakeuphour: 7
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
scheduleWakeup {
dayweek: 1
wakeuphour: 7
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
scheduleWakeup {
dayweek: 6
wakeuphour: 10
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
scheduleWakeup {
dayweek: 0
wakeuphour: 10
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
scheduleWakeup {
dayweek: 4
wakeuphour: 7
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
scheduleWakeup {
dayweek: 2
wakeuphour: 7
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
scheduleWakeup {
dayweek: 3
wakeuphour: 7
wakeupminute: 0
sleephour: 23
sleepminute: 50
}
time: 1414743976435
gmt: "Europe/Paris"