[UPDATE] WHIN: New nodes for Whatsapp (Beta)

We'd like to share our enthusiasm about the new beta release that comes with additional nodes and functionality: node-red-contrib-whin (node) - Node-RED

The package includes three nodes: whin-send, to send out whatsapp texts from your NR flows to your whatsapp number. whin-receive, to inject whatsapp texts from your whatsapp client into your NR flows. whin-confirm, to allow you, in the middle of a flow, ask for an active user confirmation about something and use the response as data into the flow.

Please share your experiences and issues so we can fine tune this whatsapp service.

I just updated to 0.1.9 and it's failed. How di I uninstall it. I had it working with the previous version. There is no uninstall option in the palette manager?

Error message after update: "Flows stopped due to missing node types. Then bullet "Whin"

Hi @dougle03
today we've been doing some major updates on the backend, and probably most of the users lost connectivity. Now all should be back to normal, please check and see.
Release 0.1.9 is working, if you're migrating from a previous version I would recommend you run a fresh install if there errors. Do not forget deleting the current config-node before. Then install as usual and make sure your phone / token is selected on all nodes.
Check the videos we added on the instructions.

If you still are in troubles, let us know or open an issue on the repo.

:+1:

I used the palette manager to install, it won't let me uninstall the button is not there. For now I've removed the node-red-contrib-whin folder from the node_modules folder, and restarted the container.
Any reason why the uninstall button was not showing? Also, by removing the folder, have I left anything that also needs removing before attempting a re-install?
Thanks

@dougle03, if you removed the contrib folder from the home directory, you don't need to remove anything else.
Just make sure the config node is also removed (check on the node-red menu, under "configuration nodes", under "on all Flows", see if there's none called "whin-config".
Then install as usual.

Hi, yep, folder removed and the config node also removed. Might restart now and try again.

All should be fine now then.

Do not forget two things though:

  1. contrib-whin is still under beta, we're doing a lot of changes and fixing bugs almost daily. We expect the people using the nodes can help us identify improvements.
  2. the backend we are sharing is what we use for our own home Labs; this is why occasionally (mainly on the weekends) we will do changes that will stop the service. Monday to Friday you will find less of these planned outages.

Have a nice weekend.

Excellent all sorted now. I removed the folder, re-started NR then re-installed from the palette manager. Had to redo the auth token, but that's easy.
Thanks

L&G, a brief update... seems our beta project is killing it and it is scaling up just fine.
Hundreds of users sending thousands of whatsapps daily!

We're hungry for feedback from you guys. We're now opening the gateway to other communities but NR will always be our favourite :wink:

1 Like

I've tried your system out and it works as described on the packet :slight_smile:

But I don't really have a use case for it, as I only use WhatsApp on a burner phone to chat to my sister(who won't switch to Signal :frowning: ) and brother as our group chat

I currently use Tasker/MQTT on the phone and then Node-RED/Pushover to alert my real phone that a message has come in on WhatsApp

Thanks for the feedback. Really appreciate it!

We're using old threads to inspire these use cases. Just published this flow: "Are you sure?", confirm an action triggered on the Dashboard with whatsapp. Whin use case. (flow) - Node-RED

You can see a demo of it here: https://youtu.be/ePGRRq4VTz4

Have fun :wink:

Hi all,

I have some Node RED instances running in a TrueNAS (FreeBSD) Jail. So far every contrib node and every version of NR works fine. Currently I'm running version 2.2.2 and wanted to test this node-red-contrib-whin module.

Using the whin-send node runs fine and gives the expected output on the mobile phone.
But if you configure the whin-receive and whin-confirm nodes you immediately get an error message after deployement of the nodes:

Error: Cannot find module 'mqtt'
Require stack:
- /var/db/nodered/node_modules/node-red-contrib-whin/whin.js
- /usr/local/lib/node_modules/node-red/node_modules/@node-red/registry/lib/loader.js
- /usr/local/lib/node_modules/node-red/node_modules/@node-red/registry/lib/index.js
- /usr/local/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/nodes/index.js
- /usr/local/lib/node_modules/node-red/node_modules/@node-red/runtime/lib/index.js
- /usr/local/lib/node_modules/node-red/lib/red.js
- /usr/local/lib/node_modules/node-red/red.js

This is applicable for both nodes.
Of course these nodes do not function and you will not see the information "Listening to whatsapp" below the whin-receive node.

I have not been able, so far, to find the root cause of this missing 'mqtt' module.

So I removed this whin nodes from my Node RED instance in the TrueNAS Jail.

Running on a Raspberry Pi 3+ is fine and every node works as expected.

This is just for information.

Regards

Hi @FireWizard52 the whin-receive module relies on mqtt.js
The error you're getting is not usual, as mqtt.js is part of the core modules of node-red.
If for whatever reason you do not have it installed on your node-red instance, running a npm install mqtt from your userDir path, and restarting node-red, should solve this problem.
If after following these steps you keep getting this error msg, please open an issue on whin module repo and we will try to help you debug the problem.
Regards.

1 Like

Hello @lu4t,

I have no idea, why it not has been installed in the TrueNAS (freeBSD) jail. Perhaps it is not installed by default, but nevertheless running npm install mqtt and restarting Node-RED did the trick. The whin-receive node responded immediately with "Listening to whatsapp".

I tested it and it works

Thank you very much for the quick reply. Very helpful

Thanks and best regards

2 Likes

hi @alsak0de

i am using your excellent node and wondered if there were any plans to allow the changing of the confirm options "YES" and "NO" to user defined ones "ARM , "DISARM" etc?

hope you understand what i am trying to achieve?

Len (@magicman)

hiya... I think I do but I don't see how you need that to be part of the node. What prevents you from changing YES/NO to whatever works best for you right afterwards at next node?

hi @alsak0de ,
It is not in the flow i wish to change it . it is in the message sent to my phone , it appears on the phone as a YES or NO response, i was hoping to change it when sent to whatsapp?

Ah ok, I see.. now I understand. That could be done but it'd require several code changes. Let's keep it in the 'nice to have features' pocket to be considered on a future release. Request is not only noted but appreciated!

Hi there,

great service, thanks!
I noticed two things, I wanted to ask if that is "works as designed"

  1. The number that is used to send messages (number ending in 64) is different as the one for receiving (number ending in 97), can I influence that? It would be nice to be able to respond to the same number as where the alert is coming from.
  2. I signed up using the WhatsApp Webapp on Desktop (to do easy copy and paste). Now, unfortunately, the confirmation questions from the confirm node only pop-up on the Webapp and never show up on the phone :frowning: (even after logout on the Webapp, no confirmation on phone). Can I change that?

Thanks for your feedback, Olaf

Hi Olaf, on (1), we sometimes need to use a different line to support the traffic but, for now, the one ending with 64 is the main line. We try to use only that one as much as possible.
On (2), it has nothing to do with how you signed up. There is a bug in a library we're using that does not show complex messages (those with buttons, links, templates,..) on phones and messages are only showing up on whatsapp web and heavy clients.
We're doing our best to get this incident resolved but, again, not related to the signup process.