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

SIGNAL desktop App doesn't display/receive pictures #3032

Closed
mkarcqus opened this issue Jan 11, 2019 · 27 comments
Closed

SIGNAL desktop App doesn't display/receive pictures #3032

mkarcqus opened this issue Jan 11, 2019 · 27 comments

Comments

@mkarcqus
Copy link

The Signal desktop app does not receive and/or display pictures of any kind anymore.

Even pictures that were sent or received on the Cell phone are not shown at all.

It worked till late 2018, not anymore in 2019.

Please fix!

@minnmann
Copy link

Maybe related to #2985?

At the least, I think a debug log is necessary to investigate your issue. Then it is also possible to check if it is the same issue.

@mkarcqus
Copy link
Author

mkarcqus commented Jan 14, 2019 via email

@minnmann
Copy link

minnmann commented Jan 14, 2019

In Signal Desktop, go to View > Debug Log and click on Submit. Then copy the link and post it here.
You can check the log, if there is any information you would not like to publish (e.g. usernames) and edit such parts before submitting.

More information is available in the official Signal support site: https://support.signal.org/hc/en-us/articles/360007318591-Debug-Logs-and-Crash-Reports.

If your client has connectivity issues (related to not receiving images), it might be possible that you can't upload a debug log. Then you could just copy-paste the text and upload it somewhere else (and share the link here).

Since the debug log only covers the last few days, it could be that the bug is not covered in there. So the best case is to submit the debug log right after the issue happened, e.g. you send a picture to a contact via your phone, wait a few minutes (until the image should be on your desktop) and then submit the log.

Note: I am not a Signal developer or connected to the Signal team in any way, but since I have a similar (maybe even the same) issue, I think we can do our best to help the developers fix the bug (and also prevent posting duplicate issues).

@mkarcqus
Copy link
Author

mkarcqus commented Jan 14, 2019 via email

@minnmann
Copy link

minnmann commented Jan 14, 2019

Thanks for uploading the log.

It indeed seems to be the same problem that has been reported in the linked issue. See here for example:

ERROR 2019-01-11T07:08:42.593Z GET https://whispersystems-textsecure-attachments.s3-accelerate.amazonaws.com/5242080064900092848?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20190111T070842Z&X-Amz-SignedHeaders=content-type%3Bhost&X-Amz-Expires=3600&X-Amz-Credential=AKIAJHWS3AOTJTASHBDA%2F20190111%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=39e4238b2273ef62c24ead9592f5b883b629d0cb3ad3da6074c4da2bb18a1071 500 Error 
ERROR 2019-01-11T07:08:42.593Z queueDecryptedEnvelope error handling envelope cfb22c99-2f6d-43ca-8d33-a10ab770c983 : HTTPError: promiseAjax: error response; code: 500

You also get the error code 500 for attachment downloads. The actual message is received, but due to this error it is not displayed.

Note that the file might be received successfully after some time as Signal tries to download the file upon each start up to three times. (In my case many missing images have been received after several restarts, but I did not notice.)

In the linked thread, it seems to be somewhat related to proxies (everybody reporting the issue is behind a proxy). So could it be that your desktop client is also behind a proxy, e.g. in a corporate environment?

In any case, if you also feel like it is the same issue, you might participate in the linked thread and close this one.

@mkarcqus
Copy link
Author

mkarcqus commented Jan 14, 2019 via email

@ghost
Copy link

ghost commented Jan 15, 2019

Same problem here, also with proxy. Please fix. Thanks.
Also would love to see improved proxy support. Keep up the good work guys.

@majkinetor
Copy link

majkinetor commented Jan 16, 2019

Have this problem since couple of versions too. Behind proxy.

This is from debug:

...
INFO  2019-01-16T13:12:47.477Z PUT https://whispersystems-textsecure-attachments.s3-accelerate.amazonaws.com/4959864450578749221?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20190116T131247Z&X-Amz-SignedHeaders=content-type%3Bhost&X-Amz-Expires=3600&X-Amz-Credential=AKIAJHWS3AOTJTASHBDA%2F20190116%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=5e4844c08c2850bb78159c3280e835d73ab71ff7d93b6c939bb52c6afe8f3394
ERROR 2019-01-16T13:12:48.463Z PUT https://whispersystems-textsecure-attachments.s3-accelerate.amazonaws.com/4959864450578749221?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20190116T131247Z&X-Amz-SignedHeaders=content-type%3Bhost&X-Amz-Expires=3600&X-Amz-Credential=AKIAJHWS3AOTJTASHBDA%2F20190116%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=5e4844c08c2850bb78159c3280e835d73ab71ff7d93b6c939bb52c6afe8f3394 500 Error
ERROR 2019-01-16T13:12:48.464Z Message.saveErrors: null MessageError: promiseAjax: error response; code: 500
    at MessageError.ReplayableError (file:///C:/Users/mmilic/AppData/Local/Programs/signal-desktop/resources/app.asar/js/libtextsecure.js:32:13)
    at new MessageError (file:///C:/Users/mmilic/AppData/Local/Programs/signal-desktop/resources/app.asar/js/libtextsecure.js:103:21)
    at Promise.all.then.catch.error (file:///C:/Users/mmilic/AppData/Local/Programs/signal-desktop/resources/app.asar/js/libtextsecure.js:40432:17)
    at process._tickCallback (internal/process/next_tick.js:68:7)
Original stack:
HTTPError: promiseAjax: error response; code: 500
    at HTTPError ([REDACTED]\app.asar\js\modules\web_api.js:316:13)
    at resultPromise.then.result ([REDACTED]\app.asar\js\modules\web_api.js:275:15)
    at process._tickCallback (internal/process/next_tick.js:68:7)
Original stack:
Error
    at _outerAjax ([REDACTED]\app.asar\js\modules\web_api.js:310:19)
    at _ajax.then.response ([REDACTED]\app.asar\js\modules\web_api.js:772:9)
    at process._tickCallback (internal/process/next_tick.js:68:7)
INFO  2019-01-16T13:12:48.478Z SQL channel job 1830 (saveMessage) succeeded in 12ms
...

I start signal via:

set HTTP_PROXY=http://*********
set HTTPS_PROXY=%HTTP_PROXY%

start %LOCALAPPDATA%\Programs\signal-desktop\Signal.exe --use-tray-icon --start-in-tray
System Info
Host Name:                 MM-OPTI17-W10
OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.14393 N/A Build 14393
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Member Workstation
OS Build Type:             Multiprocessor Free
Registered Owner:          N/A
Registered Organization:   N/A
Product ID:                00330-50431-53922-AAOEM
Original Install Date:     10.4.2017., 18.25.52
System Boot Time:          5.11.2018., 11.34.39
System Manufacturer:       Dell Inc.
System Model:              OptiPlex 7040
System Type:               x64-based PC
Processor(s):              1 Processor(s) Installed.
                           [01]: Intel64 Family 6 Model 94 Stepping 3 GenuineIntel ~3307 Mhz
BIOS Version:              Dell Inc. 1.5.10, 9.5.2017.
Windows Directory:         C:\Windows
System Directory:          C:\Windows\system32
Boot Device:               \Device\HarddiskVolume1
System Locale:             241a
Input Locale:              en-us;English (United States)
Time Zone:                 (UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague
Total Physical Memory:     32.633 MB
Available Physical Memory: 20.928 MB
Virtual Memory: Max Size:  37.497 MB
Virtual Memory: Available: 23.135 MB
Virtual Memory: In Use:    14.362 MB
Page File Location(s):     C:\pagefile.sys
Domain:                    mfin.trezor.rs
Logon Server:              \\PLDC03
Hotfix(s):                 6 Hotfix(s) Installed.
                           [01]: KB2693643
                           [02]: KB3150513
                           [03]: KB3199209
                           [04]: KB4013418
                           [05]: KB4033393
                           [06]: KB4019472
Network Card(s):           1 NIC(s) Installed.
                           [01]: Intel(R) Ethernet Connection (2) I219-LM
                                 Connection Name: Ethernet
                                 DHCP Enabled:    No
                                 IP address(es)
                                 [01]: 10.32.34.122
                                 [02]: fe80::bd8b:acc4:5a4a:281c
Hyper-V Requirements:      A hypervisor has been detected. Features required for Hyper-V will not be displayed.

@helltp
Copy link

helltp commented Jan 16, 2019

Same here, also with proxy.

@dlareau
Copy link

dlareau commented Jan 16, 2019

Also seeing this issue from behind a proxy.

@scottnonnenberg-signal
Copy link
Contributor

A couple questions for those running into this:

@dlareau
Copy link

dlareau commented Jan 16, 2019

I don't know the status of anything regarding S3 with the proxy, is there some easy way to test that?

I can say that when I connect outside of the proxy, upon startup signal downloads all of the missed media messages and places them out of order into the conversation (showing all media messages as the most recent messages received regardless of when they were sent.

@scottnonnenberg-signal
Copy link
Contributor

@dlareau Here's a random example of something you could try to download from S3: https://ryftcloud.zendesk.com/hc/en-us/articles/115009913207-Get-Sample-Data-from-AWS-S3-Bucket

Note that there are any number of firewall/proxy snooping mechanisms which might be in use to differentiate your test traffic vs. the real traffic from Signal Desktop. If you're in a small enough organization, you could reach out to the people in charge of your network to see what they think. This would be useful for us too, because we don't have access to firewalls/proxies like that.

@majkinetor
Copy link

  • It doesn't happen without a proxy so far.
  • I used Signal with the same TCP proxy before, this started to happen during last month or so for me and all others in my company. We shared bunch of files before in the same context.
  • This is on-premise proxy server, we don't use cloud. Its squid.

@majkinetor
Copy link

majkinetor commented Jan 17, 2019

FYI, I can no longer also:

  • Sync contacts
  • Send debug logs

All with the same HTTPError: promiseAjax: error response; code: 500 err and all working before.

Signal version 1.19.0

@minnmann
Copy link

minnmann commented Jan 17, 2019

I also reported some of the related issues (no direct debug log upload, no read receipts) including debug logs in #2985.

I first noticed this issue beginning / mid December and since everybody having this problem so far is behind a proxy, it seems very likely to be caused by some proxy problem.
So might it be possible that it is related to this commit? 3e0abe8

If it's not too much of a hassle and possible at all, we could easily test a "debug version" with the old proxy-agent.

I hope my thoughts help to figure out the problem!

@scottnonnenberg-signal Should I close #2985 in favor of this issue here? (Please feel free to close it yourself of course.)
To me it seems both are the same and I guess it would make sense to keep the information and discussion in one place.

Edit: We just tried the release build of 1.18.1 with no success (which should include the old proxy-agent, if I am not mistaken).
https://debuglogs.org/be7676ef4482af0a0ab0efed9c57c8c63b87b8b22dddd743e627fa8a02a65f31
The client could also not perform an initial contact sync. Besides error 500, the debug logs contains several more errors (401, 409).

@Vzaa
Copy link

Vzaa commented Jan 21, 2019

* It doesn't happen without a proxy so far.

* I used Signal **with the same TCP proxy before**, this started to happen during last month or so for me and all others in my company. We shared bunch of files before in the same context.

* This is on-premise proxy server, we don't use cloud. Its [squid](https://en.wikipedia.org/wiki/Squid_(software)).

The proxy my network is using is the same (squid version 3.4.8 according to the response headers). Similarly, it used to work without issues a few months ago. I don't have any issues when there's no proxy.

Here's a random example of something you could try to download from S3: https://ryftcloud.zendesk.com/hc/en-us/articles/115009913207-Get-Sample-Data-from-AWS-S3-Bucket

Didn't have any problems with this on the same network over the same proxy.

@ghost
Copy link

ghost commented Jan 22, 2019

I too can download the S3 sample file from behind my proxy, so that's not it.
I didn't see it mentioned, but I also cannot SEND pictures and I also don't see any GIFs.

@minnmann
Copy link

I did my best to do some further investigation. We checked the PAC file that is provided by the proxy server and checked that the environment variable is set correctly etc.

I assume the proxy server is also Squid (as in the case of @majkinetor), at least it is using the same port for connections. Doing a Google search about Squid, AWS and error 500, I found this thread: shirkdog/pulledpork#275, where the relevant part could be:

Squid supports all standard HTTP methods (GET, POST, HEAD, etc.) for HTTP requests, but for HTTPS requests it only supports CONNECT. So, if you are requesting the .gz, and .gz.md5 files through Squid over HTTPS, it should be sending a CONNECT to Squid, and a GET to the end server once squid has set up tunnel.

@dlareau
Copy link

dlareau commented Jan 25, 2019

I would hold off on closing this until there is some confirmation as to why it is working, but I want to say that with no changes to anything on my end, media seems to be working again. Still behind the same proxy on the same computer, except it just works now.

@majkinetor
Copy link

It is working for me too now ...

@minnmann
Copy link

It's also working for us again.

@ghost
Copy link

ghost commented Jan 29, 2019

Working again. Must have been a server problem.

@scottnonnenberg-signal
Copy link
Contributor

I'm going to close this. In the future, please don't paste your logs inline - use a gist, or host it somewhere else and link to it. I'm looking at you @mkarcqus. :0)

@csBlueChip
Copy link

csBlueChip commented Mar 8, 2024

Signal 7.1.1 on Windows

I recently enabled incoming calls (ctrl+, : enable incoming calls) ...and after that no binaries would download.

I disabled incoming calls ...now it will download all binaries on startup ...but every time I get another picture/zipfile/whatever I have restart signal to see it

Thought I'd share that much while I am hunting for the rest of the solution and found this...

probably something to do with this

ERROR 2024-03-08T21:53:25.147Z GET (WS) https://chat.signal.org/v1/profile/[REDACTED]a8e 404 Error
INFO  2024-03-08T21:53:25.147Z getProfile: failed to find a profile for [REDACTED]a8e ([REDACTED]08a)
WARN  2024-03-08T21:53:25.147Z ConversationModel.removeLastProfile: called for [REDACTED]a8e ([REDACTED]08a)
INFO  2024-03-08T21:53:25.147Z getProfile: marking [REDACTED]a8e ([REDACTED]08a) as unregistered
INFO  2024-03-08T21:53:25.147Z setUnregistered([REDACTED]a8e ([REDACTED]08a)): conversation is now unregistered, timestamp=1709934805147
WARN  2024-03-08T21:53:25.147Z getProfile failure: [REDACTED]a8e ([REDACTED]08a) code: 404
ERROR 2024-03-08T21:53:25.148Z routineProfileRefresh/2: refreshed profile for [REDACTED]a8e ([REDACTED]08a) HTTPError: promiseAjax: error response; code: 404
    at makeHTTPError ([REDACTED]\resources\app.asar\preload.bundle.js:88:951)
    at _promiseAjax ([REDACTED]\resources\app.asar\preload.bundle.js:88:111)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async _retryAjax ([REDACTED]\resources\app.asar\preload.bundle.js:88:696)
    at async L ([REDACTED]\resources\app.asar\preload.bundle.js:88:6071)
    at async Object.qt [as getProfile] ([REDACTED]\resources\app.asar\preload.bundle.js:88:9311)
    at async Gce.doGetProfile [as fetchProfile] ([REDACTED]\resources\app.asar\preload.bundle.js:91:198724)
    at async job ([REDACTED]\resources\app.asar\preload.bundle.js:91:203130)
    at async run ([REDACTED]\resources\app.asar\preload.bundle.js:43:30767)
Original stack:
Error
    at _outerAjax ([REDACTED]\resources\app.asar\preload.bundle.js:88:867)
    at L ([REDACTED]\resources\app.asar\preload.bundle.js:88:6077)
    at Object.qt [as getProfile] ([REDACTED]\resources\app.asar\preload.bundle.js:88:9317)
    at qr.getProfile ([REDACTED]\resources\app.asar\preload.bundle.js:89:166423)
    at Gce.doGetProfile [as fetchProfile] ([REDACTED]\resources\app.asar\preload.bundle.js:91:198732)
    at job ([REDACTED]\resources\app.asar\preload.bundle.js:91:203141)
    at run ([REDACTED]\resources\app.asar\preload.bundle.js:43:30636)
    at vte._tryToStartAnother ([REDACTED]\resources\app.asar\preload.bundle.js:43:29666)
    at vte._next ([REDACTED]\resources\app.asar\preload.bundle.js:43:28763)
    at run ([REDACTED]\resources\app.asar\preload.bundle.js:43:30795)
Caused by: undefined
INFO  2024-03-08T21:53:25.149Z changedConvoBatcher: deduped 1 into 1
INFO  2024-03-08T21:53:25.165Z GET (WS) https://chat.signal.org/v1/profile/[REDACTED]cd5/[REDACTED]adb (unauth) 200 Success
INFO  2024-03-08T21:53:25.165Z getProfile: setting sealedSender to ENABLED for conversation [REDACTED]cd5 ([REDACTED]9c2)

@scottnonnenberg-signal
Copy link
Contributor

@csBlueChip I'm sorry that's happening to you! If you share your full debug log with us, we'd better be able to help you. That error is expected in various cases, and doesn't have anything to do with media download/display.

@csBlueChip
Copy link

Hi,
Thank you so much for your offer, but the problem "magically fixed itself" over the weekend!

For posterity, let me share what I THINK was the sequence of events (just in case it ever crops up again):-

I made an outgoing call from my linked PC, where my friend shared his desktop.
I am used to Signal queuing attachments during a call.
Although, with images, it is weird: It shows a blurry square with a spinning circle in it ...but it has clearly already got some amount of image data, as the blurry image is always the same palette as the true image.

Anyway, when we were done, we both failed to notice the link got left up, and the call must've gone on for several hours.

When we were done, I noticed that the reason I always have to call him is because I had evidently (at some historical point) disabled calls to desktop ...So, I enabled it.

And from that moment on Signal insisted it will only ever do the blurry-image thing.
Unless I quit & restarted - then it would show all historic images, but still blurrify any new ones.

I thought to do a reinstall - but didn't want to lose my database - so I tried to load it in a SQL browser (pasting in my SQL Crypt key from the json config file) but the browser I was using (SQLite Browser iirc) said the database was corrupt ...an error that involved ">>" [sorry, it was a couple of weeks ago now]

So I decided to wait for an update ...which happened ...but did not fix it ...nor the next update ...and yet today, I go to reply to you, and it is working again ...the PC has been sitting idling for a couple of days - and I have been using Signal a lot on my phone.

I honestly don't know what changed, and I really don't want to try and recreate it - lol!

But the original trigger was apparently something related to call settings and/or desktop sharing.

My logfile is literally 10's of thousands of lines long - hence why "tailed" it [on Windows] and grabbed what seemed to be the important bit ...I am happy to dig through and get some lines around it if you would still like them, but given the problem has vanished, I feel it might be a moot effort on everybodies behalf.

Again. Thank you for your kind offer of help. I hope documenting my experience may help someone in the future.

BC

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

No branches or pull requests

8 participants