Read the statement by Michael Teeuw here.
MMM-GoogleAssistant help?
-
@infinity2437 you are missing a few trailing commas
in the MagicMirror folder do
npm run config:checkit will report an error
check the line before the reported line for a trailing comma
(ie, if it says 150, check line 149)do this until the errors are gone
-
what GA are you trying to get to work if GAv3 did you read the WiKi?
I’m happy to help im just installing GAv3 to another pi now. -
@djboob66 yes it is v3 and i checked and followed the wiki
-
@sdetweil it says line 100 column 6 but i dont see anything wrong
-
@infinity2437 because its on line 99
unexpected token
means the previous line did not have a trailing comma
-
@sdetweil I fixed that one now it says unexpected token node on touch
-
@infinity2437 there are 3 errors… all the same problem
-
Well you need to add " , " on a number of lines read WiKi config [http://wiki.bugsounet.fr/en/MMM-GoogleAssistant/Configuration](link url)
and [http://wiki.bugsounet.fr/en/MMM-GoogleAssistant/ConfigurationStructure](link url) -
@Infinity2437 @djboob66 the text config.js formatting rules are as follows
the thing to the
leftof : only needs quotes if it contains special characters, like - or .ifthe thing to therightof : is a number or true or false, it shouldnotbe quotedotherwise,
ifthe thing to therightcontains letters or special chars then itmustbe quoted
single or double doesn’t matter as long as both ends matchifthe thing on thenextline starts with a word, see rule part1, thenTHISlineMUSThave a comma at the end, signifying more is coming -
@sdetweil I meant he missing ( , )
-
@djboob66 yes, i said that before, and told him how to find them and fix them
-
@sdetweil ok now i have a new problem when trying to get MMM-Detection to work and now it says there is an error which is the
:inmodule: -
post config
-
@djboob66 line 140 column 10
/* Magic Mirror Config Sample * * By Michael Teeuw https://michaelteeuw.nl * MIT Licensed. * * For more information on how you can configure this file * see https://docs.magicmirror.builders/getting-started/configuration.html#general * and https://docs.magicmirror.builders/modules/configuration.html */ let config = { address: "localhost", // Address to listen on, can be: // - "localhost", "127.0.0.1", "::1" to listen on loopback interface // - another specific IPv4/6 to listen on a specific interface // - "0.0.0.0", "::" to listen on any interface // Default, when address config is left out or empty, is "localhost" port: 8080, basePath: "/", // The URL path where MagicMirror is hosted. If you are using a Reverse proxy // you must set the sub path here. basePath must end with a / ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"], // Set [] to allow all IP addresses // or add a specific IPv4 of 192.168.1.5 : // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"], // or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format : // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"], useHttps: false, // Support HTTPS or not, default "false" will use HTTP httpsPrivateKey: "", // HTTPS private key path, only require when useHttps is true httpsCertificate: "", // HTTPS Certificate path, only require when useHttps is true language: "en", locale: "en-US", logLevel: ["INFO", "LOG", "WARN", "ERROR"], // Add "DEBUG" for even more logging timeFormat: 24, units: "metric", // serverOnly: true/false/"local" , // local for armv6l processors, default // starts serveronly and then starts chrome browser // false, default for all NON-armv6l devices // true, force serveronly mode, because you want to.. no UI on this device modules: [ { module: "alert", }, { module: "updatenotification", position: "top_bar" }, { module: "clock", position: "top_left" }, { module: "calendar", header: "US Holidays", position: "top_left", config: { calendars: [ { symbol: "calendar-check", url: "webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics" } ] } }, { module: "compliments", position: "lower_third" }, { module: "weather", position: "top_right", config: { weatherProvider: "openweathermap", type: "hourly", units: "imperial", location: "", locationID: "5098135", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city apiKey: "YOUR_OPENWEATHER_API_KEY" } }, { module: "weather", position: "top_right", header: "Weather Forecast", config: { weatherProvider: "openweathermap", type: "forecast", units: "imperial", location: "", locationID: "5098135", //ID from http://bulk.openweathermap.org/sample/city.list.json.gz; unzip the gz file and find your city apiKey: "YOUR_OPENWEATHER_API_KEY" } }, { module: "MMM-GoogleAssistant", position: "bottom_bar", configDeepMerge: true, config: { assistantConfig: { lang: "en-US", latitude: 40.8614432, longitude: -73.9624286 }, responseConfig: { useFullscreen: false, useResponseOutput: true, responseOutputCSS: "response_output.css", screenOutputTimer: 5000, activateDelay: 250, useAudioOutput: true, useChime: true, confirmationChime: true, useInformations: true }, Extended: { touch: { useTouch: true, mode: 2 }, spotify: { usespotify: true, player: { type: "Raspotify", email: "", password: minVolume: 10, maxVolume: 90, usePause: true } }, visual: { updateInterval: 1000, idleInterval: 10000, useBottomBar: false, CLIENT_ID: "", CLIENT_SECRET: "", } } } }, module: "MMM-Detector", position: "top_left", configDeepMerge: true, config: { debug: false, autoStart: true, useLogos: true, micConfig: { recorder: "auto", device: "default", audioGain: 2.0, applyFrontend: true // When you use only `snowboy` and `smart_mirror`, `false` is better. But with other models, `true` is better. }, newLogos: { default: "default.png" }, detectors: [ { detector: "Snowboy", Model: "jarvis", Sensitivity: null, Logo: "google", autoRestart: false, onDetected: { notification: "GA_ACTIVATE" } }, { detector: "Porcupine", Model: "ok google", Sensitivity: null, Logo: "google", autoRestart: false, onDetected: { notification: "GA_ACTIVATE" } }, { detector: "Porcupine", Model: "hey google", Sensitivity: null, Logo: "google", autoRestart: false, onDetected: { notification: "GA_ACTIVATE" } } ], NPMCheck: { useChecker: true, delay: 10 * 60 * 1000, useAlert: true } } } ] }; /*************** DO NOT EDIT THE LINE BELOW ***************/ if (typeof module !== "undefined") {module.exports = config;} -
@infinity2437 You should read the Wiki mate
you have}, module: "MMM-Detector", position: "top_left", configDeepMerge: trueshould be
}, { module: "MMM-Detector", position: "top_left", configDeepMerge: true -
@djboob66 thank you so much it finally works
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login