Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Instructions for Noob #70

Open
Zofia22 opened this issue Oct 10, 2022 · 13 comments
Open

Instructions for Noob #70

Zofia22 opened this issue Oct 10, 2022 · 13 comments

Comments

@Zofia22
Copy link

Zofia22 commented Oct 10, 2022

Hello, I lost someone in my life and I would like to back up some important chats from Signal, otherwise, they will be gone by switching from android to iOS. Luckily I saw there might be ways to retrieve chat records, but unfortunately, I know nothing, literally nothing, about coding/scripting so I couldn't understand any of the steps.

I did my best to follow the steps...

$ pip install signal2html
I tried to run it with cmd but there was an error message.
after my research, turn out I need to install pip/python first, I have no idea what it is but I fellow steps on the internet and I guess I have installed it, and maybe the signal2html package. Tried to run it again it shows something like " requirement already satisfied....", so I guess I have made 1 step.

$ git clone https://github.com/bepaald/signalbackup-tools
$ cd signalbackup-tools
$ bash BUILDSCRIPT.sh
ran 1st script I saw there is some installation. nothing happens for the second script. Another error message saying g++ is missing.
I have no idea what it is but I researched and installed g++ based on https://code.visualstudio.com/docs/cpp/config-mingw.
now I can run the third script and some messages pop out like " Building (1/98).." and run until "Building (98/98)..."
Not sure what are they but at least it is loading something, so I guess this step is ok?

$ mkdir signal-backup/
$ signalbackup-tools signal-YYYY-MM-DD-HH-MM-SS.backup --output signal_backup/
I ran the first step and nothing happened.
I ran the second step and it shows the system can not locate the files. I have exported the backup file and marked the code that Signal provided to me. And I have followed the instruction to change the 2nd script with the file title and pass. But I have no idea where to place that backup file, seems the script needs to know where is it. I have been stuck on this for days and lost hope.

I hope you would point out any issues for steps, and way forward, those chats mean so much to me.

If you read until here, thanks a lot for your time.

@GjjvdBurg
Copy link
Owner

Hi @Zofia22, thank you for reporting this issue. I'm sorry for your loss. Let's see if I can help you get the programs to work.

First off, can you let me know what platform you're on? Is it Mac, Windows. or Linux?

From what you're reporting it seems that you've completed step 1 and 2 correctly. In the third step, the first command, mkdir signal-backup doesn't print anything, but should create a directory. Can you try the second part again, exactly as before, but using ./signalbackup-tools signal-YYYY-MM-DD-HH-MM-SS.backup <PASS> --output signal_backup? The ./ at the beginning might make a difference. It's also important that the signal-YYYY-MM-DD-HH-MM-SS.backup file is in the same directory as where the signalbackup-tools program is (and, of course, as you mention you did before, change the title and password as appropriate).

Let me know if this gets you beyond this step.

@Zofia22
Copy link
Author

Zofia22 commented Oct 13, 2022

Hi @GjjvdBurg, thanks for your reply and helping on this issue!!
I am using windows 11.
I believe the singalbackup-tools was installed under this directory:
C:\Users\xxxxx\signalbackup-tools, and yes I found a folder "signal-backup" created under this folder.
I have copied the singal backup file "signal-2022-10-01-23-19-23.backup" into the above folder, then run

  1. cd signalbackup-tools
  2. ./signalbackup-tools signal-2022-10-01-23-19-23.backup <30 digits code w/o spaces> --output signal_backup/
    but still it says something like the system could not locate the file

I have tried rename the backup file as "1.backup" under the signal-backup folder,
and run ./signalbackup-tools 1.backup <30 digits code w/o spaces> --output signal_backup/
still no luck
Screenshot 2022-10-13 232420

@GjjvdBurg
Copy link
Owner

Thanks for providing the further details and the screenshot @Zofia22! By the looks of it, there's no signalbackup-tools program in the directory, which is why the system can't find it. This means that Step 2 above didn't actually complete as it should have.

The author of signalbackup-tools has provided a Windows executable program here. You can download it, place it in the folder you're showing in the screenshot, and rename the file tosignalbackup-tools.exe. Then, try running the above command again to see if that works (if not, try it with signalbackup-tools.exe at the start).

Also, in your screenshot the command has --output signal_backup, but the directory itself does not contain a signal_backup folder, only a signalbackup and signal-backup one. You'd have to change the command to use --output signal-backup or create the signal_backup directory.

Let me know if this helps

@Zofia22
Copy link
Author

Zofia22 commented Oct 14, 2022

@GjjvdBurg Thanks again the next steps!
I have downloaded the signalbackup-tools.exe from the link you provided, the system recognizes it as a .exe so I didn't change the file name (I tried anyway). And created the signal-backup folder

Unfortunately below are the error results still:
Screenshot 2022-10-14 090730X

I tried to run the below commands
C:\Users\xxxxx\signalbackup-tools>signalbackup-tools
C:\Users\xxxxx\signalbackup-tools>signal-2022-10-01-23-19-23.backup
Both can open the files separately, but it just doesn't work once combined.

@GjjvdBurg
Copy link
Owner

Hi @Zofia22, thanks for the update and the screenshot.

From what I can see from the line where you typed just signalbackup-tools, the program is at least functional, because it prints out "signalbackup-tools (signalbackup-tools) source version 20220914.131721 (OpenSSL)". That's good to know!

I'm wondering if there's something causing signalbackup-tools to not be able to find the backup for some reason. Can you try these and see if that works?

signalbackup-tools --output ./signal_backup --input ./signal-2022-10-01-23-19-23.backup --password <YOUR-PASSWORD>

or:

signalbackup-tools --output signal_backup --input signal-2022-10-01-23-19-23.backup --password <YOUR-PASSWORD>

@Zofia22
Copy link
Author

Zofia22 commented Oct 17, 2022

Hi @GjjvdBurg, thanks for keep looking into this issue!
I firstly tried both codes but it shows "the syntax of the command is incorrect", so I kept trying different variations until I finally found that the passcode should not include the < >, i,e, should be ' --password 012345 ' instead of ' --password <012345> '
and finally, I think I made it works!!!

Now I can see there are .bin and .sbf files under the signal_backup folder, and there are 17,000 items in total! that's a lot.
so I tried "signal2html -i signal_backup/ -o signal_html/" and following shows up:

C:\Users\xxx\signalbackup-tools>signal2html -i signal_backup/ -o signal_html/
Traceback (most recent call last):
File "C:\Users\xxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in run_module_as_main
return run_code(code, main_globals, None,
File "C:\Users\xxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Users\xxx\AppData\Local\Programs\Python\Python310\Scripts\signal2html.exe_main
.py", line 4, in
File "C:\Users\xxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html_init
.py", line 4, in
from .core import process_backup
File "C:\Users\xxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\core.py", line 31, in
from .html import dump_thread
File "C:\Users\xxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\html.py", line 14, in
from emoji import emoji_lis as emoji_list
ImportError: cannot import name 'emoji_lis' from 'emoji' (C:\Users\xxx\AppData\Local\Programs\Python\Python310\lib\site-packages\emoji_init.py)

and I could not find the signal_html directory and was stuck in here.
I have gone this far, hope the finish line is not far away. @GjjvdBurg Thanks again for your patience!

@GjjvdBurg
Copy link
Owner

Hi @Zofia22, glad to hear that you made it work!

The error you're getting now is due to an error in signal2html. I've just updated the package and released a new version. To install it, you'll have to run the following command, which is similar to how you installed in the first time:

pip install --upgrade signal2html

You can check whether this worked by running:

signal2html -V

The version should be 0.2.10. After that, you can run the signal2html -i signal_backup -o signal_html command again.

This update should solve the issue you posted above, but might not be the last error we'll encounter. Just let me know the next issue and we'll figure it out :)

@Zofia22
Copy link
Author

Zofia22 commented Oct 22, 2022

@GjjvdBurg thanks for the update! I have run the update and sorry to say there are still errors, please see below error message:

C:\Users\xxxxx\signalbackup-tools>signal2html -V
0.2.10

C:\Users\xxxxx\signalbackup-tools>signal2html -i signal_backup -o signal_html
2022-10-22 12:57:20 | INFO - This is signal2html version 0.2.10
2022-10-22 12:57:20 | INFO - Found Signal database version: 155.
2022-10-22 12:57:20 | WARNING - This database version is untested, please report errors.
Traceback (most recent call last):
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return run_code(code, main_globals, None,
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\Scripts\signal2html.exe_main
.py", line 7, in
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html_main
.py", line 20, in main
sys.exit(main())
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\ui.py", line 35, in main
process_backup(args.input_dir, args.output_dir)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\core.py", line 674, in process_backup
addressbook = make_addressbook(db, versioninfo)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\addressbook.py", line 296, in make_addressbook
return AddressbookV2(db)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\addressbook.py", line 34, in init
self._load_groups()
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\signal2html\addressbook.py", line 130, in _load_groups
qry = self.db.execute("SELECT group_id, title FROM groups")
sqlite3.OperationalError: no such table: groups

Thank you!

@GjjvdBurg
Copy link
Owner

Thanks for letting me know @Zofia22! These errors are because the package hasn't been updated for a while, and Signal has made some changes that make the package no longer work. I'll take a look to see if I can fix this, but it might take a few weeks to find the time. Feel free to ping me if you haven't heard anything in a while.

@jb261
Copy link

jb261 commented Oct 31, 2022

I'm also interested in this project as it would be nice to have a HTML backup of my Signal chats.

@GjjvdBurg
Copy link
Owner

@jb261 are you having the same issue as Zofia22?

I've updated the package to v0.2.11. This adds two checks to see if the database is available and whether it's not empty (I was only able to reproduce @Zofia22's error above with an empty database). Please update the package as above and try again, this should tell you if the database file is empty or missing. If it is empty, make sure that it was exported properly from the signalbackup-tools command and the database.sqlite file in the signal_backup directory has a non-zero filesize.

Please let me know if you encounter further issues!

@olidie
Copy link

olidie commented Jan 17, 2023

Hi, I am a noob too but also managed to get to the very last stage. My signal_backup folder ist filled with database.sqlite, bin and sbf files. On running signal2html I get this error message. Any idea?

signal2html

@sshaikh
Copy link

sshaikh commented Jan 17, 2023

The output you pasted says it all. You're using a database version that isn't supported yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants
@sshaikh @GjjvdBurg @jb261 @olidie @Zofia22 and others