Iniciar sesión

Ver la versión completa : Browse iPhone, unir chats de WhatsApp



swapd0
17/01/2021, 12:53
¿Hay alguna forma de unir dos chats de whatsapp en un solo?

Creo que si encuentro una aplicación para poder ver el iPhone como si fuera una memoria USB conectada al ordenador, podría hacer un copy&paste y tal vez funcione. ¿Existe eso? Llevo un rato buscando y no doy con la tecla.

Gracias de antebraso.

princemegahit
17/01/2021, 13:28
¿Hay alguna forma de unir dos chats de whatsapp en un solo?

Creo que si encuentro una aplicación para poder ver el iPhone como si fuera una memoria USB conectada al ordenador, podría hacer un copy&paste y tal vez funcione. ¿Existe eso? Llevo un rato buscando y no doy con la tecla.

Gracias de antebraso.

Te refieres a algo que haga un mirror de la pantalla? Si, me parece que si que hay...
Así en la primera busqueda, no se si te sirve
https://drfone.wondershare.com/mirror-to-pc/display-iphone-screen-on-pc.html

swapd0
17/01/2021, 13:49
Creo que si archivo los dos chats y después uno los ficheros, supongo que serán de texto, puede funcionar

josepzin
17/01/2021, 14:09
O te puedes enviar una conversacion al email, creo que es un texto plano.

swapd0
17/01/2021, 14:25
O te puedes enviar una conversacion al email, creo que es un texto plano.
Si, pero despues hay que "recuperarla"

Estoy haciendo un backup, lo malo es que lo hace de todo, despues vere que leches guarda y hare pruebas...

juanvvc
17/01/2021, 14:50
No he entendido qué quieres hacer y por qué no te sirve la solución de josepzin.

Si haces un backup, las conversaciones de WhatsApp no son archivos de texto sino que están en una base de datos SQLite (¿obvio?) Busca Chatstorage.db o algo así, que hablo de memoria. Aunque verás que la copia de seguridad tiene nombres de archivo como klñjawefioaf89y247861423oyui1234i32jasdf. Esos nombres de archivo no son más que el hash del nombre de archvivo original. O bien puedes "montarlo" todo con libimobile o similar, o bien mira en el Manifest a qué klñjawefioaf89y247861423oyui1234i32jasdf se corresponde el Chatstorage ése.


Y luego, pues eso, las conversaciones están dentro de esa base de datos. tabla ZWAMessage o algo así. Qué mala mamoria tengo. Para "mover" mensajes entre conversaciones, será suficiente con cambiar la columna "identificador de chat" de los mensajes que quieras mover. Podrías hacerlo con sentencias SQL pero, vamos, teniendo sqlitebrowser, para qué complicarse.

Luego el backup se puede recuperar y ya está, mensajes movidos.

swapd0
17/01/2021, 14:52
No he entendido qué quieres hacer y por qué no te sirve la solución de josepzin.

Tengo un contacto que ha cambiado de movil, y quiero que los mensajes del chat con su numero antiguo salgan en el chat del numero nuevo, unir los dos chat.

juanvvc
17/01/2021, 15:24
Vale, creo que podrás hacerlo como he dicho antes. Tendrás que saber un poco de SQL pero seguro que ya sabes. Pero por si acaso guarda al Chatstorage original, por si Whatsapp no puede recuperar tus modificaciones.

Dame un momento y miro cómo se llama ese Chatstorage en la copia de seguridad, así ni te preocupas de hacer el unback/reback

-----Actualizado-----

- Nombre de archivo original: AppDomainGroup-group.net.whatsapp.WhatsApp.shared/ChatStorage.sqlite
- PATH dentro de un backup que tenía por aquí (debería ser igual en el tuyo, pero confírmalo): PATHATUBACKUP/7c/7c7fba66680ef796b916b067077cc246adacf01d

En MAC los backups se guardan en ~/Library/Application\Support/MobileSync/Backup , en Linux donde hayas ejecutado el comando y en Windows en %userhome%\AppData\Roaming\Apple Computer\MobileSync\Backup

swapd0
17/01/2021, 15:25
Sabia SQL, llevo años sin tocarlo pero espero que sea como montar en bici, lleva 1h subiendo la copia de seguridad y aun no va por el 20% zzzz son 600MB

juanvvc
17/01/2021, 15:31
"subiendo"?

No la subas a ningún lado! Haz la copia a tu ordenador. 600MB son tan poco que no tendrás 600MB, lo has mirado mal, pero dudo que lleve más de 20 minutos si no subes la copia a ningún lado. Asegúrate de usar un puerto USB3

Por aclarar, no te digo que hagas una copia de seguridad de WhatsApp de esas que se hacen en iCloud. No estoy seguro de si esas podrás modificarlas. Digo que hagas una copia de seguridad del iPhone entero con iTunes (o similar) en tu ordenador

swapd0
17/01/2021, 15:33
"subiendo"?

No la subas a ningún lado! Haz la copia a tu ordenador. 600MB son tan poco que no tendrás 600MB, lo has mirado mal, pero dudo que lleve más de 20 minutos si no subes la copia a ningún lado.
Le he dado a hacer una copia de seguridad de los chats y los esta subiendo a la cuenta de iCloud. Antes estuvo un rato creando la copia de seguridad.

juanvvc
17/01/2021, 15:40
Yo cancelaría e intentaría lo que te digo: copia de seguridad con iTunes (o similar). Pero qué sabré yo.

swapd0
17/01/2021, 16:03
Ni se me había ocurrido lo de la copia de seguridad del iTunes.

-----Actualizado-----

Creo que va a estar mas complicado de lo que parece, he hecho una copia con el itunes y me crea esto, lo curioso es que si vas con la vista previa algunos de los ficheros se ven la imagen que guarda.

54148

juanvvc
17/01/2021, 16:13
Aunque verás que la copia de seguridad tiene nombres de archivo como klñjawefioaf89y247861423oyui1234i32jasdf. Esos nombres de archivo no son más que el hash del nombre de archvivo original. O bien puedes "montarlo" todo con libimobile o similar, o bien mira en el Manifest a qué klñjawefioaf89y247861423oyui1234i32jasdf se corresponde el Chatstorage ése.


- Nombre de archivo original: AppDomainGroup-group.net.whatsapp.WhatsApp.shared/ChatStorage.sqlite
- PATH dentro de un backup que tenía por aquí (debería ser igual en el tuyo, pero confírmalo): PATHATUBACKUP/7c/7c7fba66680ef796b916b067077cc246adacf01d

Tío, que te lo he dejado para rematar

swapd0
17/01/2021, 17:11
Tío, que te lo he dejado para rematar
Sip, es que he leído los mensajes desordenados y me he liado un poco.

-----Actualizado-----

Por fin, me ha costado pero ya tengo el fichero chatstorege.db abierto en un visor de SQLite.

Porras esto va a ser mas complicado de lo que creía.

-----Actualizado-----

Es curioso que en la tabla ZWAPROFILEPUSHNAME me salgan contactos que ya no tengo y algunos que nunca he tenido, creo que fue de alguna vez que me añadieron en un grupo para una fiesta...

-----Actualizado-----

mmmm...

Creo que con cambiar los campos ZTOJID al valor nuevo y los ZFROMJID es suficiente.

josepzin
17/01/2021, 17:15
Yo (en mi caso en particular) antes de pasar por todas estas movidas prefiero tirar todo a la basura y empezar de cero, pero supongo que habrá ciertos casos en que es necesario mantener el histórico.

juanvvc
17/01/2021, 17:34
Creo que con cambiar los campos ZTOJID al valor nuevo y los ZFROMJID es suficiente.

Posiblemente sí, pero prefiero no decirte que sí porque no recuerdo todos los detalles. Es a esto a lo que me refería en este mensaje:


será suficiente con cambiar la columna "identificador de chat" de los mensajes que quieras mover.

Guarda la base de datos sin modificar, por si acaso tienes que recuperarla.

swapd0
23/01/2021, 13:37
Me he puesto hoy con esto otra vez, y por ahora todo bien, pero cuando le doy a restaurar el iPhone con la copia de seguridad me sale un mensaje de que no tengo espacio en el "ordenador", wtf!?!? si la copia esta en el ordenador y tengo 1TB libre!!!!!!!!!!!

¿Tal vez se refiera de que no hay espacio en el iPhone? lo tengo bastante lleno. 120MB libres... voy a ver si borro cosas

-----Actualizado-----

Restaurando...

-----Actualizado-----

Pues no... no están unidos

josepzin
23/01/2021, 14:00
Vaya movida... a mi el iPhone me lia incluso con la copia de seguridad, que siempre me dice que esta desactualizada, que no tengo espacio, que su pvta madre... asi que desactivé todo como para que tenga espacio en su pita cloud y copie solo lo basico, que no se que será, y el muy iputo me sigue diciendo que la copia esta desactualizada bla bla... asi que paso.

swapd0
23/01/2021, 14:26
Creo que el problema esta en el campo ZSORT que van de 1..hasta el ultimo mensaje, y al unirlos tengo 1, 2, 3... ultimo mensaje del contacto antiguo, 1, 2, 3, 4... ultimo mensaje del contacto nuevo.

-----Actualizado-----

Según veo es lo único que desentona en la tabla de mensajes, así que o encuentro una forma de hacerlo mediante código o tengo que cambiar el campo a unos 1500 mensajes :(

-----Actualizado-----

Ok, con esto están cambiados.
UPDATE ZWAMESSAGE SET ZSORT = ZSORT + 8830 WHERE Z_PK > 22283;

juanvvc
23/01/2021, 14:31
Ostras, esto es muy interesante. No conocía ese campo ZSORT. Ya nos dirás si funciona.

De todas formas, creo que sería mucho mejor que cambieses el ZSORT solo de tu conversación, no de todas, no?

UPDATE ZWAMESSAGE SET ZSORT = ZSORT + 8830 WHERE Z_PK > 22283 AND ( ZTOJID = nanana OR ZFROMJID = nanana );

swapd0
23/01/2021, 14:47
Ostras, esto es muy interesante. No conocía ese campo ZSORT. Ya nos dirás si funciona.

De todas formas, creo que sería mucho mejor que cambieses el ZSORT solo de tu conversación, no de todas, no?

UPDATE ZWAMESSAGE SET ZSORT = ZSORT + 8830 WHERE Z_PK > 22283 AND ( ZTOJID = nanana OR ZFROMJID = nanana );
Cierto, la he cagado, como estaba viendo la tabla con un visor de SQL y tenia puesto un filtro para ver solo el contacto en cuestión no me he dado cuenta...

Ahora no puedo restaurar la copia de seguridad porque tengo que desactivar la opción de buscar mi iPhone y lleva 10 minutos intentando desactivarla. P*to Apple.

juanvvc
23/01/2021, 16:11
Si no has guardado copia, puedes executar el mismo comando pero restando

swapd0
23/01/2021, 16:41
He visto que la tabla ZWACHATSESSION, tienes el campo ZMESSAGECOUNTER con el numero de mensaje de cada chat, lo he modificado para poner la suma y he borrado la sesión correspondiente al chat antiguo, pero nada, ahora el chat antiguo no me aparece pero el chat nuevo se corta en el primer mensaje mensaje, no me aparecen los del otro chat... Ya no se que leches tengo que mirar.

Como curiosidad, al restaurar el whatsapp con estos cambios mientras estaba "scrollando" mirando los mensajes me salió un mensaje que decía que el movil no estaba registrado en WhatsApp y te pide tu numero, la primera de las veces lo metí y ya esta, la otra me mandaron un mensaje con un codigo.

juanvvc
23/01/2021, 16:44
He tenido discusiones recientes sobre el significado del ZMESSAGECOUNTER. En mi caso no he visto que se corresponda con los mensajes que hay en un chat. Si encuentras que tiene alguna utilidad, ya nos dirás.

Lo de que el móvil no esté registrado, lo hace cuando cree que la base de datos no es buena y tiene que resetearla. Si no te la ha reseteado vaiándola entera... bien por ti.

Te en cuenta que has estado mirando esas columnas ZTOJID y ZFROMJID, pero creo que en realidad lo que tienes que hacer es cambiar la columna que haga referencia a la tabla ZWACHATSESSION. Es decir, en la tabla de mensajes habrá un índice a esta tabla ZWACHATSESSION, y ése es el índice que tienes que cambiar en todos los mensajes que quieras cambiar.

La conversación en realidad es ZWACHATSESSION. ZTOJID y ZFROMJID se usan para distinguir quién ha enviado un mensaje dentro de una conversación. Una conversación de grupo, por ejemplo, puede tener muchos ZTOJID y ZFROMJID

Perdona que no sea más específico, es que hablo de memoria y no recuerdo los nombres de los campos :D

swapd0
23/01/2021, 17:18
Porras no vi ese campo, ya decía yo que seria muy enrevesado sacar los chats sin una conexión a la tabla de chats. Un ultimo intento...

-----Actualizado-----

Estoy hasta las narices de meter la clave el wifi y la del iCloud que es enrevesada con números y símbolos, espero que funcione.

Whatsapp... te conectastes recientemenete, vuelve a intentarlo en 6 horas y media XDXDXD

josepzin
23/01/2021, 18:55
Trolorolololololoooo

juanvvc
23/01/2021, 19:48
WhatsApp permite importar tu base de datos (normalmente, para cambiar de terminal) dos veces seguidas, si recuerdo bien. Si lo intentas más veces, te dice que te esperes 6 horas. Es por evitar que te roben la base de datos y se hagan pasar por ti sin que te des cuenta.

josepzin
23/01/2021, 21:21
Estos son la clase de trabajos por los que el Falso Anarchy recibe una pantalla curva y nosotros los pringados lo hacemos al cuñado que ni nos paga y sigue sin respetarnos :P

swapd0
24/01/2021, 01:07
Ya me han quitado el castigo y funciona!!!!!! Por si alguno quiere hacer lo mismo, hay que hacer esto.


UPDATE ZWAMESSAGE SET ZFROMJID = "numeroNuevo@s.whatsapp.net" WHERE ZFROMJID = "numeroViejo@s.whatsapp.net";

UPDATE ZWAMESSAGE SET ZTOJID = "numeroNuevo@s.whatsapp.net" WHERE ZTOJID = "numeroViejo@s.whatsapp.net";

UPDATE ZWAMESSAGE SET ZCHATSESSION = chatNuevo WHERE ZCHATSESSION = chatViejo;

UPDATE ZWAMESSAGE SET ZSORT = ZSORT + numeroMaximoDelMensajeViejo WHERE Z_PK > idMinimoDelMensajeNuevo AND ZCHATSESSION = grupoNuevo;

El ultimo paso no estoy seguro si es necesario. Yo en mi caso también borre el grupoViejo de la tabla ZWACHATSESSION.

La base de datos esta en el fichero 7c7fba66680ef796b916b067077cc246adacf01d en una copia de seguridad de un iPhone, ni idea de cual sera en Android pero se sabe mirando en el fichero Manifest.db buscando algo de ChatDatabase.db dentro de la aplicación WhatsApp.

-----Actualizado-----

Pues no, hay algo raro y los mensajes que me escribe no me salen al final, se meten en medio del chat WTF!?!?!?!

-----Actualizado-----

Y los mios cuando hago scroll me desaparecen de la parte de abajo WTF!?!?! supongo que se están metiendo en el punto de union de los dos chats... ***** que mal esta hecho para que unir los chats no sea trivial.

-----Actualizado-----

Se me están metiendo entre los mensajes del 5 de septiembre... ***** que mierda.

-----Actualizado-----

Ok el campo ZSORT esta mal, no se por que esta cogiendo desde 1495 en adelante en vez de seguir por 10324...

-----Actualizado-----

Creo que en la tabla ZWACHATSESSION el campo ZMESSAGECOUNTER esta a 1503 cuando debería estar en 10326...

-----Actualizado-----

Espero que whatsapp no me castigue otra vez... he hecho los cambios y estoy restaurando la copia...

-----Actualizado-----

Eh abierto el whatsapp y los mensajes me han salido bien (los últimos que he escrito estaban al final), pero me ha pedido otra vez el validar el tlf y ahora me han castigado con 12h XDXDXD

-----Actualizado-----

Por cierto, si los mensajes llevan una fecha, ¿por que no usan ese valor para ordenarlos? ¿para que guardan un valor para indicar la posición del siguiente mensaje si lo pueden sacar consultando la tabla?

juanvvc
24/01/2021, 12:31
Este hilo es muy interesante para mí, muchísimas gracias. Parte de mi trabajo es detectar si "los malos" han hecho modificaciones en la base de datos de WhatsApp y pocas veces tengo la posibilidad de observar a alguien activamente haciendo pruebas :D

¿Es posible que ZMESSAGECOUNTER indique el siguiente ZSORT que tiene que usar en una conversación?

Creo que ninguno de estos campos es índice, pero si sigue habiendo errores, prueba a reconstruir los índices. No sé cómo se haría en la aplicación que estás usando (sqlitebrowser?), supongo que en el mismo lugar en el que ejecutas SQL.



pragma integrity_check
reindex nodes
reindex pristine


Por cierto, nada de esto vale para Android porque en Android los backups se gestionan de una forma completamente diferente, no es tan sencillo modificar la base de datos, y además su estructura es completamente diferente.

swapd0
24/01/2021, 13:42
¿Es posible que ZMESSAGECOUNTER indique el siguiente ZSORT que tiene que usar en una conversación?

Creo que ninguno de estos campos es índice, pero si sigue habiendo errores, prueba a reconstruir los índices. No sé cómo se haría en la aplicación que estás usando (sqlitebrowser?), supongo que en el mismo lugar en el que ejecutas SQL.

En teoria si, ya que los mensajes se estaban metiendo por el valor ZSORT de 1500 aprox que eran los mensajes que había en el segundo chat, por eso cuando hacia scroll desaparecían del final de la conversación, y los que me llegaban no aparecían por ninguna parte, solo oía el sonido, cambie el valor de ZMESSAGECOUNTER pero como me salto el código de validación (o como se llame) no pude comprobarlo, en un rato se me levanta el castigo XD.

Para ver las tablas uso DB Browser for SQLite de mac.

-----Actualizado-----

Parece que ya funciona, al menos los mensajes que yo mando no se quitan del final del chat

-----Actualizado-----

Sip, ya va todo bien

josepzin
24/01/2021, 13:49
Felicidades :D

Drumpi
27/01/2021, 11:58
Por cierto, si los mensajes llevan una fecha, ¿por que no usan ese valor para ordenarlos? ¿para que guardan un valor para indicar la posición del siguiente mensaje si lo pueden sacar consultando la tabla?

Esta creo que me la sé, y es porque los emisores de los mensajes no tienen la hora sincronizada. Hay quien tendrá el móvil adelantado, otro atrasado... A mi me pasa que suelo tenerlo 8 minutos adelantado, y creo que ya me ha pasado con el chat de warrapop que se me han desordenado los mensajes al volver a abrir el chat.
Otra cosa es que se guarde la hora GMT, y que la APP calcule la desviación entre esa y la que tienes en el teléfono, y te muestre tu hora en el chat.

swapd0
19/02/2021, 23:50
juanvvc ¿Si se borra un chat este se borra de la base de datos o solo se marca como borrado? ¿Se puede recuperar una conversación borrada? Seria en un movil android.

juanvvc
20/02/2021, 00:54
Se borra de la base de datos, sí. Quedan rastros del borrado (lo digo por si es cosa de juicios, que es a lo que me dedico yo)

Las bases de datos son sqlite y usan las librerías del sistema. En Android se usa la librería con las opciones por defecto, "copia ceros encima de lo que borro". En iPhone, al menos hasta hace un año,la opción de borrado seguro con ceros está desactivada por defecto a nivel de sistema y WhatsApp no la activa para su base de datos específica (que podría hacerlo). Es decir: en iPhone no se pone a ceros al borrar. Es decir: no se puede recuperar en Android, pero sí (durante un corto periodo de tiempo) en iPhone o al menos se podía hace un año o así. Pero ojo: ni es fácil recuperar un mensaje borrado en iPhone (necesitas herramientas especiales), ni se puede siempre, y lo más normal es que solo se pueda recuperar en parte y no de forma útil (es decir, no aparecerá otra vez en la conversación)

En Android acceder a esa base de datos es considerablemente más difícil que en iPhone. La opción "fácil" es exportar la base de datos a un móvil rooteado... o mejor, a una máquina virtual Android rooteada.

swapd0
20/02/2021, 01:50
Una pena porque ha pasado un año :(

juanvvc
20/02/2021, 15:25
Recuperar algo que pasó hace un año y que se borró no es imposible porque probabilidades hay, igual que hay probabilidades de que te toque la lotería, pero sí que es irrealista y se necesitaría mucho tiempo y dinero simplemente para decidir si es o no es posible.

Imagino que no hay copia "de seguridad". No la de Android, que o bien no tiene o bien no alcanza tan lejos, sino "entonces usaba otro móvil que ahora está en el cajón".

swapd0
20/02/2021, 18:59
Hay copia de seguridad de la que hace el WhatsApp cada N días. También estuve mirando los metadatos de las fotos a ver si guardaban algo como el numero de serie del movil pero no, una pena, estaría bien poder identificar que una foto te la mando X contacto del WhatsApp aunque la conversación este borrada pero aun tengas la foto.