Skylar-Tech / node-red-contrib-matrix-chat

Matrix chat server support for Node-RED
GNU General Public License v3.0
31 stars 10 forks source link

Can't get incoming texts #93

Open K-RAD opened 10 months ago

K-RAD commented 10 months ago

I connected it to my own beeper account and I have a weird issue, where I can send messages, I can get incoming emojis, but not the incoming text messages.

wuast94 commented 10 months ago

can you rovide more information on this?

skylord123 commented 10 months ago

Yeah I can't replicate this.

What version of Node-RED are you running? What version of NodeJS is Node-RED running on? Is the server you are connecting to self hosted or a public one? If self hosted what server type and version is it?

I upgraded my server to the latest matrix release to see if I could replicate this and I could not.

K-RAD commented 10 months ago

I'm running node-red 3.0.2 in docker (on a synology nas) nodejs 16.20.1 node-red-contrib-matrix-chat 0.7.0

Could it be something related to encryption? I can see that the reactions are not encrypted

skylord123 commented 10 months ago

Could it be something related to encryption? I can see that the reactions are not encrypted

If it is an issue with encryption you will see it in your logs for Node-RED. Check there and see if you have anything after receiving the message.

K-RAD commented 10 months ago

If it is an issue with encryption you will see it in your logs for Node-RED. Check there and see if you have anything after receiving the message.

You're right, there's a lot of [m.bad.encrypted] logs, depending on which chat platform they originate.

Update: SMS seems to work even if it's marked as "encrypted: true", but facebook messenger, insta, telegram, no.. only reactions

skylord123 commented 8 months ago

no.. only reactions

I believe this is because reactions aren't encrypted currently. There is no real good way around this. Once a client breaks because it was used elsewhere and not strictly in node-red you will start having encryption keys stored on the other client that node-red has no clue about. This is why it's important to strictly only use the user with Node-RED if you are going the encryption route.

87 is for adding the ability to verify devices and do key sharing. I've looked into it a few times and have not had much success with it. The matrix-js-sdk library doesn't have the best built in support for handling it so we have to do it manually and I do not have enough expertise in the matrix spec to make it happen.

There is another solution by using pantalaimon as a proxy between Node-RED and your matrix server. It will handle all the encryption for you.

Would love for someone to step up and help us with getting device validation and key sharing working.