This code was something I quickly put together to archive over 5000 text messages in Google Messages. I have no idea if Google frowns on this or not, but it's basically the same as if a human sat there and archived all the messages by hand.
Tested and working as of Monday, November 4, 2019.
- Sign into https://messages.google.com/web/
- Open Chrome Developers console by going to
View
>Developer
>JavaScript Console
. - Copy and paste the code below into console. It should automatically run.
Don't run any code before you know what it does. Review it and make sure it's safe. I accept no fault if something goes wrong. Google may change their code at anytime and this code may not work. I provide no support.
hi, i what i was looking for, tnx/
but i get two errors:
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'click')
at archive (:11:59)
at :17:1
archive @ VM177:11
(anonymous) @ VM177:17
Promise {: TypeError: Cannot read properties of undefined (reading 'click')
at archive (:11:59)…}
[[Prototype]]
:
Promise
[[PromiseState]]
:
"rejected"
[[PromiseResult]]
:
TypeError: Cannot read properties of undefined (reading 'click') at archive (:11:59) at :17:1
message
:
"Cannot read properties of undefined (reading 'click')"
stack
:
"TypeError: Cannot read properties of undefined (reading 'click')\n at archive (:11:59)\n at :17:1"
[[Prototype]]
:
Error
constructor
:
ƒ TypeError()
message
:
""
name
:
"TypeError"
[[Prototype]]
:
Object
constructor
:
ƒ Error()
message
:
""
name
:
"Error"
toString
:
ƒ toString()
length
:
0
name
:
"toString"
arguments
:
(...)
caller
:
(...)
[[Prototype]]
:
ƒ ()
apply
:
ƒ apply()
arguments
:
(...)
bind
:
ƒ bind()
call
:
ƒ call()
caller
:
(...)
constructor
:
ƒ Function()
length
:
0
name
:
""
toString
:
ƒ toString()
Symbol(Symbol.hasInstance)
:
ƒ Symbol.hasInstance
get arguments
:
ƒ ()
set arguments
:
ƒ ()
get caller
:
ƒ ()
set caller
:
ƒ ()
[[FunctionLocation]]
:
[[Prototype]]
:
Object
[[Prototype]]
:
Object