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

Registration-Error: Credentials are required to access this resource #29

Open
jdelker opened this issue Aug 9, 2021 · 15 comments
Open

Comments

@jdelker
Copy link

jdelker commented Aug 9, 2021

I followed your registration procedure but got stuck on the final "register" action, when I receive the following error:

"Signal client error: {"name":"HTTPError","code":401,"response":"Credentials are required to access this resource."}"

These are the steps I performed:

  1. Created a new account configuration wiith a fixed-line phonenumber and a random password
  2. Gathered a captcha code as described and filled that into your example "request-voice" node.
  3. Deployed config and triggered the "requst-voice" node.
  4. Received automated voice call and noted the verification code.
  5. Filled in account and verification code into the "register" node.
  6. Deployed confg and triggered "register" node, which provided the error message above.

Did I miss anything, or is this a bug on client or service side?

@jdelker
Copy link
Author

jdelker commented Aug 10, 2021

Nevermind, the procedure succeeded on another attempt with a more simple password.
I assume that either the client or server had trouble with particular special chars contained in the password. After removing them (and shortened) the password, the registration performed without error.

@markus-hi
Copy link

The same problem here! Tried many times with simple password, but no success so far. Does somebody have an idea how to fix this problem?

@cameo69
Copy link

cameo69 commented Aug 28, 2021

The same problem here! Flow not working anymore since yesterday evening.
When trying to reregister I get msg "Signal client error: {"name":"HTTPError","code":401,"response":"Credentials are required to access this resource."}"
Did not change any settings, let alone the password.
Version 2.4.2

@Heiner629
Copy link

Same here. The modul stopped working on Friday. Trying to Re-Register the number again, same error. Version 2.4.2

@bubi1311
Copy link

bubi1311 commented Aug 29, 2021

Same here. Module-Version 2.4.0. Created a new password, just numbers and letters. Length 8. Re-registered the number but got the same error message as @cameo69 described.
I guess something is wrong with the used library https://github.com/gausma/libsignal-service-javascript. @gausma Do you have any clue what has changed? Does @signalapp changed something?

@Heiner629
Copy link

Heiner629 commented Aug 29, 2021

The sending function stopped for me since friday 08/27/21. I did not change anything on an existing config, just using the sender module in node-red to send a message per day. On friday it stopped. Re-Registering is not possible, got the error-message from @cameo69. With a completly new fixed number, i could get the captcha, could receive the Code via phone. But if i try to register i get "Signal client error: {"name":"HTTPError","code":401,"response":"Credentials are required to access this resource."}"

@bubi1311
Copy link

The sending function stopped for me since friday 08/27/21. I did not change anything on an existing config, just using the sender module in node-red to send a message per day. On friday it stopped. Re-Registering is not possible, got the error-message from @cameo69. With a completly new fixed number, i could get the captcha, could receive the Code via phone. But if i try to register i get "Signal client error: {"name":"HTTPError","code":401,"response":"Credentials are required to access this resource."}"

Yeah, that's also my problem.

@staude666
Copy link

sending function stopped for me since friday 08/27/21. I did not change anything on an existing config, just using the sender module in node-red to send a message per day. On friday it stopped. Re-Registering is not possible, got the error-message from @cameo69. With a completly new fixed number, i could get the captcha, could receive the Code via phone. But if i try to register i get "Signal client error: {"name":"HTTPError","code":401,"response":"Credentials are required to access this resource."}"

I have the same Problem. Please help.

@bubi1311
Copy link

bubi1311 commented Sep 5, 2021

So, it seems that the issue comes up with a call to the Signal-Server endpoint https://textsecure-service.whispersystems.org/v1/accounts/code/

The next step should be to figure out what changes to the @signalapp code at this method have been made just before August 27th 2021.

Maybe I've found something:
It seems that there have been some changes to the authorization at this endpoint. You can see it in the commit history (line 328/329) of service/src/main/java/org/whispersystems/textsecuregcm/controllers/AccountController.java (Maybe the link directly displays it: [https://github.com/signalapp/Signal-Server/commit/d1735c7e57c4111516cbdc8a6ca69eaf73cf8290#diff-1930f0e12a3248859cbe444051589f7836a00e76b0247ce0ad5549fb8d8bfbb7](Diff of AccountController.java).

Maybe that's the solution but I think that it would be a good idea to analyze it more deeply than I can do. I'm not a (JS) developer so any help would be appreciated.

@cameo69
Copy link

cameo69 commented Sep 9, 2021

Because nodered-contrib-signal-client does not work for me for almost 2 weeks, I looked for an alternative.
I used https://github.com/bbernhard/signal-cli-rest-api as my first replacement. Check out my example flow on flows.nodered.org.

@Heiner629
Copy link

Perfect! Thanks a lot! I have only a few sending nodes, so I will send the JSON API HTTP Call directly from NodeRed. But the link to the container was the key. I tried to install signal-cli-rest-api directly on my server, but failed at the end on some lib dependencies. But the container runs perfect! Thanks cameo69!

@ernie-sys
Copy link

are there any solutions?

@vore
Copy link

vore commented Oct 14, 2021

Hello! Same problem for me. I get this message when trying to register:
"Signal client error: {"name":"HTTPError","code":401,"response":"Credentials are required to access this resource."}"
Is there any solution?
Thanks!

@JsBergbau
Copy link

JsBergbau commented Jan 23, 2022

I'm using now signal-cli with this flow

[{"id":"e624eca0ac8c0afc","type":"inject","z":"ddd38a48.2e949","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":true,"onceDelay":"5","topic":"","payloadType":"date","x":90,"y":2800,"wires":[["72050444743009be"]]},{"id":"72050444743009be","type":"exec","z":"ddd38a48.2e949","command":"/home/pi/signal-cli-0.10.2/bin/signal-cli -a <Phonenumber> jsonRpc","addpay":"","append":"","useSpawn":"true","timer":"","winHide":false,"oldrc":false,"name":"","x":530,"y":2800,"wires":[["671468606f90b3df","5358d0962adf7f35"],["dc37056e8e0eac75"],[]]},{"id":"5358d0962adf7f35","type":"json","z":"ddd38a48.2e949","name":"","property":"payload","action":"","pretty":false,"x":990,"y":2780,"wires":[["c176b48e02a6cce3","e4ee88cd1830d841"]]},{"id":"e4ee88cd1830d841","type":"switch","z":"ddd38a48.2e949","name":"Only messages","property":"payload.params.envelope.dataMessage","propertyType":"msg","rules":[{"t":"nempty"}],"checkall":"true","repair":false,"outputs":1,"x":1160,"y":2780,"wires":[["035dc27777fbd0a5","d5262268.ad2528"]]}]

grafik

Note: signal-cli needs Java 17 wich is currently not available for Raspberry PI Zero W. For Java 17 I use Zulu https://www.azul.com/downloads/?package=jdk#download-openjdk
Signal-cli is java and thus very resource intensive, virtual memory over 1100 MB (!) and about 112 MB resident memory. Thats almost the memory of the whole node-red process. There is also a node library https://github.com/signalapp/libsignal-client#node which seems to work without all the Java stuff and should be much more ressource efficient. Sadly there is currently no documentation available, otherwise I'd try to build based upon this a Node-RED node.

signal-cli only contains binaries for x86 or x64 cpus. You have to compile it for yourself or use my compiled version on Raspberry PI4, which should als work on Raspberry PI 3. Put / replace this file into signal-cli-0.10.2/lib
signal-client-java-0.11.0.zip

This is for receiving only. Sending can also be done quite easily via the deamon mode and json requests, see https://github.com/AsamK/signal-cli/blob/master/man/signal-cli-jsonrpc.5.adoc

@JsBergbau
Copy link

OpenJDK 17 is now available for Raspberry PI Zero W, so this solution works now even on Raspberry PI Zero W. For OpenJDK 17, see https://github.com/JsBergbau/OpenJDK-Raspberry-Pi-Zero-W-armv6

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

9 participants