dzg / matrix-googlevoice Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
The Google Voice relay currently sends texts from shortcodes to Gmail, but does not support responses.
The matrix-googlevoice client currently logs these messages as received, but does not send them to the client.
I haven't had a chance yet to look into why that's the case. It looks like the search filter looks for texts from both voice-[email protected] (two factor texts) and *@txt.voice.google.com. I think a preferred solution would be to send these to the client even though it can't handle responses. (maybe with a disclaimer?). Beeper has a built in auto copy to clipboard feature for 2FA codes that would be helpful for this.
I don't know what exactly needs to be changed, but for starters:
If I build a Dockerfile
and sample docker-compose.yml
for this would you be willing to keep it up to date on hub.docker.com?
Thanks for this project, I'd been looking for something like this ever since Google dropped Hangouts integration for SMS. Unfortunately I'm not a node programmer, so I'm not sure how I can help directly--is there any way to turn this into a plugin for libpurple? Perhaps this project might be relevant:
/matrix-googlevoice/node_modules/mailparser/node_modules/html-to-text/lib/html-to-text.cjs:1878
tableToString: (rows) => tableToString(rows, formatOptions.rowSpacing ?? 0, formatOptions.colSpacing ?? 3),
^
SyntaxError: Unexpected token ?
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object. (/mnt/c/Users/matt/matrix-googlevoice/node_modules/mailparser/lib/mail-parser.js:12:24)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
Hi, bot is working great, only issue I've experienced is after Gmail gets disconnected, it reconnects twice, resulting in messages sent to Voice being output twice on Matrix. A message sent from Matrix to Voice still gets sent once, so the issue is only one-way.
Thanks for coding this great project. I found it last week and was thrilled to see that there might be a way to integrate my GV SMSes with Matrix.
I have the bridge mostly working. The bridge bot room is created successfully, I can issue commands to the bot user, and they work. I have the green dots that show that both the matrix side and the gmail side are connected.
The problem happens when a new SMS comes into Gmail. it does not appear on the Matrix side, and viewing the console messages I see the following error:
2023-01-08 14:32:43 <= '* 1 FETCH (X-GM-THRID 1754484250231752428 X-GM-MSGID 1754487800804978311 X-GM-LABELS ("\\Important") UID 47560 MODSEQ (11313397) INTERNALDATE "08-Jan-2023 20:32:34 +0000" FLAGS (\Seen) )'
2023-01-08 14:32:43 GMAIL (in): {
"text": "\nhttps://voice.google.com\ntest1\nYOUR ACCOUNT https://voice.google.com HELP CENTER\nhttps://support.google.com/voice#topic=1707989 HELP FORUM\nhttps://productforums.google.com/forum/#!forum/voice\nThis email was sent to you because you indicated that you'd like to receive\nemail notifications for text messages. If you don't want to receive such\nemails in the future, please update your email notification settings\nhttps://voice.google.com/settings#messaging.\nGoogle LLC\n1600 Amphitheatre Pkwy\nMountain View CA 94043 USA\n",
"from": {
"address": "[redacted]",
"name": "[redacted]"
},
"subject": "New text message from [redacted]"
}
/home/me/matrix-googlevoice/matrix-googlevoice-bot.js:273
data.body = bodytxt.replace(/([a-z])\n/g, '$1 ')
^
ReferenceError: bodytxt is not defined
at MailListener. (/home/me/matrix-googlevoice/matrix-googlevoice-bot.js:273:19)
at MailListener.emit (node:events:513:28)
at EventEmitter. (/home/me/matrix-googlevoice/matrix-googlevoice-bot.js:222:27)
The contents of the text message were "test1"
Is this a known issue? Did google change something on their side or is this just something that I'm experiencing?
I tried using various versions of node.js to see if that affected the issue. I get the same issue no matter what version of node.js I'm on. The only difference is that in node.js node v14.21.2 or lower the error message doesn't cause the process to exit, but in higher versions this error will cause the process to stop because of the exit code.
But in all cases the error message about "bodytxt is not defined" is the same.
Thanks in advance!
The bot seems to not find my voice messages. I see the searching messages in my tty and I also made sure my voice emails show up in Gmail and they do. It also was from txt.voice.google.com like it was set in the config. Any help would be loved :D, thanks for making this!
I was unable to get replies working until setting the aliasSuffix variable to a blank string in the config file... it looks as if this is also being appended to the recipient email address during reply resulting in an invalid address and failed send.
Just wanted to highlight this for others who may be having similar issues - may want to consider modifying the example config accordingly until a complete fix is implemented.
Thanks for your work in putting this together!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.