tgalal / yowsup

The WhatsApp lib
GNU General Public License v3.0
7.07k stars 2.23k forks source link

no_routes #370

Closed h1rule closed 9 years ago

h1rule commented 9 years ago

I recently get No_Routes as fail message.

Any clue?

dezember commented 9 years ago

Perfect. Working! Thank you @tgalal

rahulchipad06 commented 9 years ago

it is fixed for new numbers.what about alreadly register numbers.previously it was working

yowsup-cli registration -m 404 -n 20 -p 91**** -C 91 -e usage: registration [-h] [-v] [-d] [--help-config] [-c CONFIG] [-m MCC] [-n MNC] [-p PHONE] [-C CC] [-r (sms|voice) | -R code] registration: error: unrecognized arguments: -e

assegaf commented 9 years ago

its working, but its use user agent: Nokia S40 client, its possible to use different method/register for Android Client (Newest ) ?

tgalal commented 9 years ago

@assegaf why?

tgalal commented 9 years ago

@rahulchipad06 you cannot check exists explicitly using -e argument now, do a '-r sms' instead and it will automatically do the exists request for you before attempting to request sms code.

assegaf commented 9 years ago

@tgalal oh no need, but it seem register using User Agent S40 and login using other user agent like Android 2.11.x seem working,

maybe kinda weird, we register using S40 but use messaging E2E encryption axolotl (currently for android only), which currently Whatsapp Official S40 don't support yet.

tgalal commented 9 years ago

I agree probably it's not the best way, but it works, and e2e ecryption works, so for now it's ok I guess.

horaceho commented 9 years ago
$ python yowsup-cli registration -v
yowsup-cli v2.0.9
Using yowsup v2.2.15
$ python yowsup-cli registration -d -p 8526X9X4X1X -C 852 -m 454 -n 04 -r sms
DEBUG:yowsup.common.http.warequest:{'Accept': 'text/json', 'User-Agent': 'WhatsApp/2.12.60 S40Version/14.26 Device/Nokia302'}
DEBUG:yowsup.common.http.warequest:cc=852&in=8526X9X4X1X&lc=GB&lg=en&mcc=000&mnc=000&sim_mcc=454&sim_mnc=004&method=sms&network_radio_type=1&reason=self-send-jailbroken&token=3cd0f6a8eb104e6b0216630b2dddb5c5&id=%BCN%EB%AF%9C%3C%A5%9E%09s%2B%CA%A1%CD%91O%C3%E8U%1D
DEBUG:yowsup.common.http.warequest:Opening connection to v.whatsapp.net
DEBUG:yowsup.common.http.warequest:Sending GET request to /v2/code?cc=852&in=6X9X4X1X&lc=GB&lg=en&mcc=000&mnc=000&sim_mcc=454&sim_mnc=004&method=sms&network_radio_type=1&reason=self-send-jailbroken&token=3cd0f6a8eb104e6b0216630b2dddb5c5&id=%BCN%EB%AF%9C%3C%A5%9E%09s%2B%CA%A1%CD%91O%C3%E8U%1D
INFO:yowsup.common.http.warequest:{"status":"fail","reason":"no_routes","retry_after":3600}

status: fail
retry_after: 3600
reason: no_routes

no_routes for a Hong Kong number.

catch2patch commented 9 years ago

Same here, russian numbers:

DEBUG:yowsup.common.http.warequest:{'Accept': 'text/json', 'User-Agent': 'WhatsApp/2.12.60 S40Version/14.26 Device/Nokia302'} DEBUG:yowsup.common.http.warequest:cc=7&in=968xxxxxxx&lc=GB&lg=en&mcc=000&mnc=000&sim_mcc=250&sim_mnc=028&method=sms&network_radio_type=1&reason=self-send-jailbroken&token=5ca7d64bb2f1b0a4411208af6c66d591&id=M%D1%2B%5E%C0%5DH%9F%F3%FC%F1%F7b%3F9%0B%C1%DB%21%0B DEBUG:yowsup.common.http.warequest:Opening connection to v.whatsapp.net DEBUG:yowsup.common.http.warequest:Sending GET request to /v2/code?cc=7&in=968xxxxxxx&lc=GB&lg=en&mcc=000&mnc=000&sim_mcc=250&sim_mnc=028&method=sms&network_radio_type=1&reason=self-send-jailbroken&token=5ca7d64bb2f1b0a4411208af6c66d591&id=M%D1%2B%5E%C0%5DH%9F%F3%FC%F1%F7b%3F9%0B%C1%DB%21%0B INFO:yowsup.common.http.warequest:b'{"status":"fail","reason":"no_routes","retry_after":3600}\n' status: b'fail' retry_after: 3600 reason: b'no_routes'

It was working a week ago. Maybe they updated something like hashes or token generation way?

ashwinrath commented 9 years ago

I think the best way to get the password is to use WART . It sends a password or a 6 digit code . It also automatically detects if the code needs to be sent by SMS or by Voice.

Here are the steps i followed

1) Download WART , start exec and enter phone number with CC . Hit request code. 2) Got a prompt stating that the code would be sent by voice. 3) Got call on phone which gave me the 6 digit code. 4) Entered code in WART and got password. 5) Added password to config file . The config file format is the same as used in previous yowsup versions. 6) Ran the yowsup-cli to send a message.

ghost commented 9 years ago

Hi, I'm using a Vietnam phone number and still have the same issue.

italogf commented 9 years ago

My problem no_routes was solved after I make a new yowsup clone.

2015-02-10 3:19 GMT-02:00 T Nguyen notifications@github.com:

Hi, I'm using a Vietnam phone number and still have the same issue.

— Reply to this email directly or view it on GitHub https://github.com/tgalal/yowsup/issues/370#issuecomment-73646067.

ashwinrath commented 9 years ago

@toannq177 did you use WART ? using yowsup-cli gave me the no routes . WART however managed to get the password.

ghost commented 9 years ago

@ashwinrath hi new yowsup build now fixes the problem. I don't use WART btw.

ymys commented 9 years ago

Same here with cc 62 (Indonesia). yowsup-cli: 2.0.9 yowsup: 2.2.78

widnyana commented 9 years ago

@ymys i have no problem with Indonesian number.

$ yowsup-cli version                                                                                                                                                                
yowsup-cli v2.0.9
Using yowsup v2.2.78
ymys commented 9 years ago

@widnyana thanks for your info. After test on another machine, the problem was solved.

yniwly43 commented 8 years ago

Just a remark - sometimes the server's IP causes blocking, or no_routes.. in that case, just use a different IP.

I tried registering with 1 IP, got no_routes, tried another IP - exactly the same - it worked.

electronick-co commented 8 years ago

Hi! i trying it for Colombia but the no_routes error appear.

yowsup-cli v2.0.15 yowsup v2.5.0

yowsup-cli registration --requestcode sms --phone 573196193239 --cc 57 --mcc 732 --mnc 154

INFO:yowsup.common.http.warequest:{"status":"fail","reason":"no_routes","retry_after":3600,"sms_wait":3600,"voice_wait":3600}

status: fail retry_after: 3600 reason: no_routes

renato-farias commented 8 years ago

Hi Guys,

Just an update... I got the same problem, but, I tried using the debug command stdout (the URI [resource + attrs]) + the headers of that request and I passed it thru curl request, it worked perfectly:

curl 'https://v.whatsapp.net/v2/code?cc=55.......ED%E2eI%E0%3D%3F%CCO' -H 'Accept: text/json' -H 'User-Agent: WhatsApp/2.16.9 S40Version/14.26 Device/Nokia-302'.

The response was: {"status":"sent","length":6,"method":"sms","retry_after":64,"sms_wait":64,"voice_wait":64}.

I received the SMS correctly. But, When I tried to execute the register thru the cli, it raises with the following message:

Traceback (most recent call last):

File "/home/web/.virtualenvs/whatsapp/bin/yowsup-cli", line 5, in pkg_resources.run_script('yowsup2==2.5.0', 'yowsup-cli') File "/home/web/.virtualenvs/whatsapp/local/lib/python2.7/site-packages/distribute-0.6.24-py2.7.egg/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/home/web/.virtualenvs/whatsapp/local/lib/python2.7/site-packages/distribute-0.6.24-py2.7.egg/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/home/web/.virtualenvs/whatsapp/lib/python2.7/site-packages/yowsup2-2.5.0-py2.7.egg/EGG-INFO/scripts/yowsup-cli", line 368, in if not parser.process(): File "/home/web/.virtualenvs/whatsapp/lib/python2.7/site-packages/yowsup2-2.5.0-py2.7.egg/EGG-INFO/scripts/yowsup-cli", line 191, in process self.handleRegister(self.args["register"], config) File "/home/web/.virtualenvs/whatsapp/lib/python2.7/site-packages/yowsup2-2.5.0-py2.7.egg/EGG-INFO/scripts/yowsup-cli", line 215, in handleRegister req = WARegRequest(config["cc"], config["phone"], code) File "/home/web/.virtualenvs/whatsapp/local/lib/python2.7/site-packages/yowsup2-2.5.0-py2.7.egg/yowsup/registration/regrequest.py", line 35, in init raise ValueError("You have to request code first") ValueError: You have to request code first

jlguardi commented 8 years ago

@renato-farias You need to create the Id file. This file contains just the Id sent in the code request. This file I created by yowsup if response of code request is success so you don't have this file. Then, if you try to register with t code yo get w curl, you miss the Id.

dzfweb commented 7 years ago

@jlguardi i received the sms code, but when i register it, i get `ValueError("You have to request code first")

i need to manually create an id file?

jlguardi commented 7 years ago

@dzfweb you really need the same id file generated while sms was sent. Otherwise register doesn't work. Probably you used other computer or user. Search it.