Microphone access from Dashboard

anyone have any idea why it does not work

How did you install dashboard and the microphone node on IBM Cloud?

The recommended way of doing it is by editing your package.json file and redeploying the whole application.

If you used the Manage Palette option from within the editor, due to way Node-RED has to dynamically reinstall modules every time the app is restarted on IBM Cloud, you can get into a state where the microphone node reinstalls before the dashboard node installs, causing it to fail to register properly.

This guide explains how to edit your package file to add nodes properly: Create a Node-RED starter application ā€“ IBM Developer

so i need to put the package name and the version in order for it to work

also, what does the "x" and "^", mean in the version number? also
I looked on the website and it says the latest version is

Latest version: v1.2.6 (npm)

but the package.json file is showing "version": "1.1.3", so if I understand correctly I am also not running the latest version of node-red

{
    "name": "node-red-app",
    "version": "1.1.3",
    "dependencies": {
        "@cloudant/cloudant": "^4.2.4",
        "bcrypt": "^5.0.0",
        "body-parser": "1.x",
        "ibm-cloud-env": "^0",
        "express": "4.x",
        "http-shutdown": "1.2.2",
        "node-red": "1.x",
        "node-red-node-cf-cloudant": "0.x",
        "node-red-node-openwhisk": "0.x",
        "node-red-node-watson": "0.x",
        "node-red-nodes-cf-sqldb-dashdb": "0.x",
        "node-red-contrib-ibm-db2": "0.x"
        
    },
    "scripts": {
        "start": "node --max-old-space-size=160 index.js --settings ./bluemix-settings.js -v"
    },
    "engines": {
        "node": "12.x"
    }
}

That is not the Node-RED version.

You can see node-red is listed in the dependencies section with a version of 1.x - that means it will install the latest 1.something version of Node-RED.

and you can also see that both dashboard and ui_microphone are not in that list so are not loaded at run time.

I know that was the code before I modified it
at that time I was installing everything through the palet manager but the truth is now my node-red server is not working properly(after I modified the config file) I'm going to be running a clean install today I'm wondering if manage pallet was messing with the config file

ok so sould i make the file like this or like the second one

{
    "name": "node-red-app",
    "version": "1.1.3",
    "dependencies": {
        "@cloudant/cloudant": "^4.2.4",
        "bcrypt": "^5.0.0",
        "body-parser": "1.x",
        "ibm-cloud-env": "^0",
        "express": "4.x",
        "http-shutdown": "1.2.2",
        "node-red": "1.x",
        "node-red-dashboard": "2.26.1",
       "node-red-node-ui-microphone": "0.2.4",
        "node-red-node-cf-cloudant": "0.x",
        "node-red-node-openwhisk": "0.x",
        "node-red-node-watson": "0.x",
        "node-red-nodes-cf-sqldb-dashdb": "0.x",
        "node-red-contrib-ibm-db2": "0.x"
    },
    "scripts": {
        "start": "node --max-old-space-size=160 index.js --settings ./bluemix-settings.js -v"
    },
    "engines": {
        "node": "12.x"
    }
}

in this second one, I used the x instead

{
    "name": "node-red-app",
    "version": "1.1.3",
    "dependencies": {
        "@cloudant/cloudant": "^4.2.4",
        "bcrypt": "^5.0.0",
        "body-parser": "1.x",
        "ibm-cloud-env": "^0",
        "express": "4.x",
        "http-shutdown": "1.2.2",
        "node-red": "1.x",
        "node-red-dashboard": "2.x",
       "node-red-node-ui-microphone": "0.x",
        "node-red-node-cf-cloudant": "0.x",
        "node-red-node-openwhisk": "0.x",
        "node-red-node-watson": "0.x",
        "node-red-nodes-cf-sqldb-dashdb": "0.x",
        "node-red-contrib-ibm-db2": "0.x"
    },
    "scripts": {
        "start": "node --max-old-space-size=160 index.js --settings ./bluemix-settings.js -v"
    },
    "engines": {
        "node": "12.x"
    }
}

Either one will work.

i don't know why it won't deploy when I update the file
I'm reaching out to support because when I update the package it won't deploy

If you are getting an error about exceeding your memory limit, then you need to stop your application before attempting to deploy the updated version.

Also - if you aren't using databases then you can probably remove the db2 node and maybe the sqldb node as they both eat up space... (and maybe openwhisk as well though that is much smaller.).

I ran a clean install and the default code is like this

{
    "name": "node-red-app",
    "version": "1.1.3",
    "dependencies": {
        "@cloudant/cloudant": "^4.2.4",
        "bcrypt": "^5.0.0",
        "body-parser": "1.x",
        "ibm-cloud-env": "^0",
        "express": "4.x",
        "http-shutdown": "1.2.2",
        "node-red": "1.x",
        "node-red-node-cf-cloudant": "0.x",
        "node-red-node-openwhisk": "0.x",
        "node-red-node-watson": "0.x",
        "node-red-nodes-cf-sqldb-dashdb": "0.x",
        "node-red-contrib-ibm-db2": "0.x"
    },
    "scripts": {
        "start": "node --max-old-space-size=160 index.js --settings ./bluemix-settings.js -v"
    },
    "engines": {
        "node": "12.x"
    }
}

when I ran it with the code above it worked but when I ran the code below it won't deploy I can't tell if its an issue with IBM or am I doing something wrong from my understanding I am doing what I'm told correctly and it just won't deploy for some reason

{
    "name": "node-red-app",
    "version": "1.1.3",
    "dependencies": {
        "@cloudant/cloudant": "^4.2.4",
        "bcrypt": "^5.0.0",
        "body-parser": "1.x",
        "ibm-cloud-env": "^0",
        "express": "4.x",
        "http-shutdown": "1.2.2",
        "node-red": "1.x",
        "node-red-node-cf-cloudant": "0.x",
        "node-red-node-openwhisk": "0.x",
        "node-red-node-watson": "0.x"
        
        
    },
    "scripts": {
        "start": "node --max-old-space-size=160 index.js --settings ./bluemix-settings.js -v"
    },
    "engines": {
        "node": "12.x"
    }
}

all I did was remove the lines o0f code below and for some reason, it won't deploy

"node-red-nodes-cf-sqldb-dashdb": "0.x",
        "node-red-contrib-ibm-db2": "0.x"

You must be getting some error message or notice in the log to give a hint what is wrong.

Did you try stopping the application completely before deploying the new version as I suggested?

no, I didn't how do I stop it

is this how?

thank you everyone for helping me after deleting the app and doing it a few times now it finally worked all the advice everyone gave me allowed me to succeed
thank you to everyone here

1 Like

hey i have a question in another topic maybe you can help me out

As I think I've said before, please do not link to unrelated threads like this. You don't get any extra attention. If I haven't replied to another thread of yours then maybe I'm busy, maybe I don't know the answer, maybe I'm happy to let others help.

I see you are also replying to a very old thread. Start a new thread that clearly explains what you are trying to do, and what your question is, and then you may get a response.