yowsup down since 5pm Thusday 23. Jan. 2019

Created on 23 Jan 2019  ·  100Comments  ·  Source: tgalal/yowsup

Hello

yowsup down since 5pm UTC Thusday 23. Jan. 2019 and tries to reconnect periodicly.

I have following mesage in the logfile:

Disconnect
read: error during sysread: No child processes
read: end of file reached while sysread

What's wrong?

Best Regards
Heinz

Most helpful comment

hi everyone, I propose each one donate to the developer team try to fix this issue if the team agree. I can donate 100 USD.

All 100 comments

i have the same problem, all my numbers were blocked today.

Same issue, is there any update on this?

Hello all,

Are you also seeing the following error?

"yowsup.layers.auth.autherror.AuthError: not-authorized"

Yes

Hello

Are you also seeing the following error?
"yowsup.layers.auth.autherror.AuthError: not-authorized"

No ! I think this is another issue!

Regards
Heinz

I think they finally blocked S40 as mention in
https://blog.whatsapp.com/10000617/WhatsApp-support-for-mobile-devices
-> Nokia S40 after December 31, 2018

I forgot the link but someone in this forum still can use andoid mode, but didnt open the source code.

Hello all,

I'm see this errors:

Auth Error, reason Unhandled stream:error node:

general: Login Failed, reason: not-authorized
Auth Error, reason not-authorizes

Yes, auth error is coming

Any alternatives?

@ataquino, you are also getting the same error?

I updated version of WhatsApp in env_android for 2.19.15, but same errors.

@akshit-pradhan no, I haven't tried it yet

Same thing happened with me... Hope he'll fix it soon!

Same error here: Authorisation rejected.

I get the same error:

[offline]:/L
general: Login Failed, reason: not-authorized
Auth Error, reason not-authorized

Has anyone had success with -E android?

Has anyone had success with -E android?

No. Requesting and registering a new code works. Actually using the API with the provided password after registering that code results in the aforementioned authentication error:

yowsup.layers.network.layer - DEBUG - Disconnected, reason: Authentication Failure

and

yowsup.layers.auth.autherror.AuthError: not-authorized

a) I have done the registration for Android device as follow:

/opt/fhem/backup $ /opt/yowsup-master/yowsup-cli registration -c /opt/yowsup-config/yowsup.config -r voice -E android

yowsup-cli v2.0.15
yowsup v2.5.7

Copyright (c) 2012-2016 Tarek Galal
http://www.openwhatsapp.org

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://openwhatsapp.org/yowsup/donate

INFO:yowsup.common.http.warequest:{"login":"49123456789","status":"sent","length":6,"method":"voice""retry_after":65,"sms_wait":65,"voice_wait":65}

status: sent
retry_after: 65
length: 6
login: 49123456789
method: voice

b) I get the new registration number XXXXXX per phone call

c) I try to register with this number and get an status: fail with reason old_version:

/opt/yowsup-master/yowsup-cli registration -c /opt/yowsup-config/yowsup.config -R XXXXXX
yowsup-cli v2.0.15
yowsup v2.5.7

Copyright (c) 2012-2016 Tarek Galal
http://www.openwhatsapp.org

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://openwhatsapp.org/yowsup/donate

INFO:yowsup.common.http.warequest:{"login":"49123456789,"status":"fail","reason":"old_version"}

status: fail
reason: old_version
login: 49123456789

What is the actual version?

@HeinzFo

What happens if you follow the instruction in #2566 and #2564?

HeinzFo notifications@github.com writes:

a) I have done the registration for Android device as follow:

`pi@raspberrypi:/opt/fhem/backup $ /opt/yowsup-master/yowsup-cli registration -c
/opt/yowsup-config/yowsup.config -r voice -E android
yowsup-cli v2.0.15
yowsup v2.5.7

Copyright (c) 2012-2016 Tarek Galal
http://www.openwhatsapp.org

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://openwhatsapp.org/yowsup/donate

INFO:yowsup.common.http.warequest:
{"login":"49123456789","status":"sent","length":6,"method":"voice","retry_after":65,"sms_wait":65,"voice_wait":65}

status: sent
retry_after: 65
length: 6
login: 49123456789
method: voice`

b) I get the new registration number XXXXXX per phone call

c) I try to register with this number and get an status: fail with reason old_version:

`/opt/yowsup-master/yowsup-cli registration -c /opt/yowsup-config/yowsup.config -R XXXXXX
yowsup-cli v2.0.15
yowsup v2.5.7

Copyright (c) 2012-2016 Tarek Galal
http://www.openwhatsapp.org

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://openwhatsapp.org/yowsup/donate

INFO:yowsup.common.http.warequest:
{"login":"49123456789,"status":"fail","reason":"old_version"}

status: fail
reason: old_version
login: 49123456789`

What is the actual version?


You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

@HeinzFo What happens if you follow the instruction in #2566 and #2564? HeinzFo notifications@github.com writes:

a) I have done the registration for Android device as follow: @.*:/opt/fhem/backup $ /opt/yowsup-master/yowsup-cli registration -c /opt/yowsup-config/yowsup.config -r voice -E android yowsup-cli v2.0.15 yowsup v2.5.7 Copyright (c) 2012-2016 Tarek Galal http://www.openwhatsapp.org This software is provided free of charge. Copying and redistribution is encouraged. If you appreciate this software and you would like to support future development please consider donating: http://openwhatsapp.org/yowsup/donate INFO:yowsup.common.http.warequest: {"login":"49123456789","status":"sent","length":6,"method":"voice","retry_after":65,"sms_wait":65,"voice_wait":65} status: sent retry_after: 65 length: 6 login: 49123456789 method: voiceb) I get the new registration number XXXXXX per phone call c) I try to register with this number and get an status: fail with reason old_version:/opt/yowsup-master/yowsup-cli registration -c /opt/yowsup-config/yowsup.config -R XXXXXX yowsup-cli v2.0.15 yowsup v2.5.7 Copyright (c) 2012-2016 Tarek Galal http://www.openwhatsapp.org This software is provided free of charge. Copying and redistribution is encouraged. If you appreciate this software and you would like to support future development please consider donating: http://openwhatsapp.org/yowsup/donate INFO:yowsup.common.http.warequest: {"login":"49123456789,"status":"fail","reason":"old_version"} status: fail reason: old_version login: 49123456789` What is the actual version? — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

@HeinzFo

It didn't work.
WIth the newest Android version "2.19.15" the same error occurs:

  • general: Disconnected: Connection Closed
  • (9, 'Bad file descriptor')

@alexvong1995

Now I can register with the code XXXXXX and get an Password, this step is now possible with
modifying the env.py with DEFAULT = "android"

No error occurs during this process.

But the yowsup instance on my Raspberry is not online.
I see this on the Smartphone Whatsapp status " last connection time ...".

Sending an message will no produce an error, but is not sending to the Smartphone.

What is this now?

When I am using env s40 the message Auth error occurs and when I use the env android it does not send and it does not receive messages, I already updated the version of whatsapp, but unsuccess

No problem over the SMS and the PSW

yowsup-cli registration --requestcode sms --phone 5xxxxxxxxx --cc 5xx -E android
yowsup-cli registration --register 92XX65 --phone 5xxxxxxxxx --cc 5xx -E android

But one I do try to put the "phone" online i do get "Auth Error, reason not-authorized"

Hello

Properly are the necessary data not up to date right now?

(https://coderus.openrepos.net/whitesoft/whatsapp_scratch)

Regards
Heinz

Confirming similar change in behavior since yesterday wrt authentication failure. Here's what I'm seeing (and did):

  • s40 stopped working, so switched to android (this seems to be the likely cause)
  • updated _VERSION and _MD5_CLASSES to current values (based on downloaded apk) using this script
  • i'm able to request a new code and register using that code (through the yowsup-cli) w/ no errors
  • my number does NOT appear to be banned since i'm able to still use it through the whatsapp instance in my emulator to send/receive messages.

However, any requests I try to make through yowsup-cli (login, send message, etc.) error out with the following:
general: Login Failed, reason: not-authorized DEBUG:yowsup.layers.network.layer:Disconnected, reason: Authentication Failure Auth Error, reason not-authorized

Same
Had the "old_version" issue with s40, so tried android
It worked, i got my 6-digit code, and then the password
But when i tried to run the "run.py" file, got yowsup.layers.auth.autherror.AuthError: not-authorized

Has anyone managed to replace the S40 with another device that works? I believe it's the way.

the only way to replace the s40 is with an android and it does not work either.

It should be possible to use another device in place of the s40, we are trying here.

Is someone also trying this?

@brunovribeiro agree, should be possible to use another device. these are the supported devices/OSes. If anyone know how the Jio phone communicates, that might be something to try.

does anyone know why Android wouldn't work? I've always had trouble getting it to work (used to be flaky for me), so would usually default to s40 in the past.

right now, i'm trying to see if i can mimic an older android version and see if that gets past whatever bot checks WhatsApp has in place... though I don't quite understand the various env fields yet.

I tried android with current Version and md5 and was able to register. But it does not send anything, with no error message.

I tried android with current Version and md5 and was able to register. But it does not send anything, with no error message.

me too.

@brunovribeiro agree, should be possible to use another device. these are the supported devices/OSes. If anyone know how the Jio phone communicates, that might be something to try.

does anyone know why Android wouldn't work? I've always had trouble getting it to work (used to be flaky for me), so would usually default to s40 in the past.

right now, i'm trying to see if i can mimic an older android version and see if that gets past whatever bot checks WhatsApp has in place... though I don't quite understand the various env fields yet.

I think this is the way to solve the problem, but I have not figured it out yet.

Anyone know how the _SIGNATURE field in env_android.py is generated? Does it need to change if the if the Android _OS_VERSION specified is changed?

Changed the env.py variable DEFAULT = "android"
Changed env_android.py with new _MD5_C and Version..
Get a new long PSW for the phone via yowsup-cli registration --register using the -E android

Now I do not get "not-authorized" I do get :Disconnected, reason: Connection Closed

Changed the env.py variable DEFAULT = "android"
Changed env_android.py with new _MD5_C and Version..
Get a new long PSW for the phone via yowsup-cli registration --register using the -E android

Now I do not get "not-authorized" I do get :Disconnected, reason: Connection Closed

how to convert old short code to new long?

Today I reinstalled on a fresh server. Not getting auth error but also not receiving messages.

Hello all,

Are you also seeing the following error?

"yowsup.layers.auth.autherror.AuthError: not-authorized"

No, I got a message (disconnected: connection closed). Dose somebody successfully send message using Yowsup today?

Hello all,

I've same here: successfully registered, to / L "general: Disconnected: Connection Closed"
I try to send message, without an error, without the message gr

facing the same issue since morning IST.. since s40 is not available I have registered with Android but unable to send messages, it is always disconnected reason: connection closed.

Hi! I have the same issue listed here: "general: Disconnected: Connection Closed". First, the problem "old_version" was solved with an updated on _MD5_CLASSES and _VERSION to 2.19.15. Now I have the problem "general: Disconnected: Connection Closed" since yesterday. Is there some update? Did someone solve this issue? :)

Hi guys, I have the situation.

Registration is perfect with "-E android" but I can get send the messages.

@stanforddesi

stanforddesi notifications@github.com writes:

Anyone know how the _SIGNATURE field in env_android.py is generated? Does it need to
change if the if the Android _OS_VERSION specified is changed?

The _SIGNATURE field is obtained by RE:
https://github.com/mgp25/RE-WhatsApp

Following the hint in https://github.com/mgp25/RE-WhatsApp/issues/3, I
am able to verify that the signature hasn't been changed. We need to try
something else.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@alexvong1995 what needs to be done here ? And what about the noise encryption?

Still no news guys?

news about it please

YOWSUP DEAD

Hello

On my Android Phone the WhatsApp application is Version 2.19.17 but what is the right MD5_CLASSES in env_android.py ?

https://coderus.openrepos.net/whitesoft/whatsapp_scratch

Regards
Heinz

What I want to say is, the data in the link is still valid for 2.19.17 or not?

I think the new Version 2.19.17 requires an new MD5_CLASSES

But unfortunately, it is only poking in the fog!

@HeinzFo

HeinzFo notifications@github.com writes:

What I want to say is, the data in the link is still valid for 2.19.17 or not?

I think the new Version 2.19.17 requires an new MD5_CLASSES

In general, using the version and md5 class provided in
https://coderus.openrepos.net/whitesoft/whatsapp_scratch should work
(which is currently 2.19.15 and 5eItLCbGXx3CKpybxo81/A==).

But if you really want to set the version to 2.19.17, you need to
find out the md5 class corresponding to version 2.19.17 from the 2.19.17
apk. The steps are as followed:

First, install pyaxmlparser: https://github.com/appknox/pyaxmlparser
(the python 3 version)
Then, clone this repo: https://github.com/mgp25/classesMD5-64
Finally, move the 2.19.17 apk to the

classesMD5-64/
directory and run
python3 ./dexMD5.py
I don't think this will make yowsup work again though.

But unfortunately, it is only poking in the fog!


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I have the same issue. Just hoping someone will find a solution. I was just about the launch a project - low usage, but I was excited that everything was working. :(

Dears,
Try with this numbers:

_VERSION = "2.19.17"
_MD5_CLASSES = "VUpNmANXqATvkqJS+WVpeA=="

Don't work, same behaviour like 2.19.15 and 5eItLCbGXx3CKpybxo81/A==

Dears,
Try with this numbers:

_VERSION = "2.19.17"
_MD5_CLASSES = "VUpNmANXqATvkqJS+WVpeA=="

I tried with this credentials with no success :(

I have tried to test configurations of all kinds, including old configurations found in this same repository without having satisfactory results. Has anyone been able to move forward with this issue? How can we keep active and in contact, in search of finding a solution to revive yowsup?

The results I get now are the following:

DEBUG:yowsup.env.env:Env not set, setting it to s40
DEBUG:yowsup.env.env:Current env changed to s40 
DEBUG:yowsup.stacks.yowstack:Initializing stack
DEBUG:yowsup.stacks.yowstack:Constructed Network Layer
DEBUG:yowsup.stacks.yowstack:Constructed Stanza Regulator Layer
DEBUG:yowsup.stacks.yowstack:Constructed Crypt Layer
DEBUG:yowsup.stacks.yowstack:Constructed Coder Layer
DEBUG:yowsup.stacks.yowstack:Constructed Logger Layer
DEBUG:yowsup.stacks.yowstack:Constructed <yowsup.layers.axolotl.layer_control.AxolotlControlLayer object at 0x10e80b8d0>
DEBUG:yowsup.stacks.yowstack:Constructed Axolotl Layer - <yowsup.layers.axolotl.layer_receive.AxolotlReceivelayer object at 0x10e8030f0>
DEBUG:yowsup.stacks.yowstack:Constructed Authentication Layer - Messages Layer - Receipt Layer - Ack Layer - Presence Layer - Ib Layer - Iq Layer - notification Ib Layer - Iq Layer - Chatstate Layer - call Layer - Groups Iq Layer - Media Layer - Privacy Layer - Profiles Layer
DEBUG:yowsup.stacks.yowstack:Constructed Interface Layer
[Whatsapp] Mac started

DEBUG:yowsup.layers.network.layer:Connecting to e6.whatsapp.net:443
DEBUG:yowsup.layers.logger.layer:tx:
<stream:features>
</stream:features>

DEBUG:yowsup.layers.logger.layer:tx:
<auth user="57311XXXXXXX" mechanism="WAUTH-2" passive="false">
ᎏN]y”b–ޏ$-ÿví > .¯µ‚ŠÒ3¸É]Ðêz¨Œ´N(Պ uވ-þF1¡<§„ÓC„táùŸ­ÐÓÁ!
HEX3:b'e18e8f4e5d79941c6296de8f242dff76ed203ea02eafb5828ad233b8c95d16d0ea7aa88c03b44e13700828d58a0975de882dfe4631a13c7fa784d3438474e1f99fadd0d3c121'
</auth>

DEBUG:yowsup.layers.network.layer:Disconnected, reason: Connection Closed

Using this configuration in env.py

import abc
import logging
from six import with_metaclass

logger = logging.getLogger(__name__)

DEFAULT = "android"

class YowsupEnvType(abc.ABCMeta):
    def __init__(cls, name, bases, dct):
        if name != "YowsupEnv":
            YowsupEnv.registerEnv(cls)
        super(YowsupEnvType, cls).__init__(name, bases, dct)
...

And next configuration in env_android.py

from .env import YowsupEnv
import base64
import hashlib


class AndroidYowsupEnv(YowsupEnv):
    _SIGNATURE = "MIIDMjCCAvCgAwIBAgIETCU2pDALBgcqhkjOOAQDBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFDASBgNV" \
        "BAcTC1NhbnRhIENsYXJhMRYwFAYDVQQKEw1XaGF0c0FwcCBJbmMuMRQwEgYDVQQLEwtFbmdpbmVlcmluZzEUMBIGA1UEAxMLQnJ" \
        "pYW4gQWN0b24wHhcNMTAwNjI1MjMwNzE2WhcNNDQwMjE1MjMwNzE2WjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5" \
        "pYTEUMBIGA1UEBxMLU2FudGEgQ2xhcmExFjAUBgNVBAoTDVdoYXRzQXBwIEluYy4xFDASBgNVBAsTC0VuZ2luZWVyaW5nMRQwEg" \
        "YDVQQDEwtCcmlhbiBBY3RvbjCCAbgwggEsBgcqhkjOOAQBMIIBHwKBgQD9f1OBHXUSKVLfSpwu7OTn9hG3UjzvRADDHj+AtlEm" \
        "aUVdQCJR+1k9jVj6v8X1ujD2y5tVbNeBO4AdNG/yZmC3a5lQpaSfn+gEexAiwk+7qdf+t8Yb+DtX58aophUPBPuD9tPFHsMCN" \
        "VQTWhaRMvZ1864rYdcq7/IiAxmd0UgBxwIVAJdgUI8VIwvMspK5gqLrhAvwWBz1AoGBAPfhoIXWmz3ey7yrXDa4V7l5lK+7+jr" \
        "qgvlXTAs9B4JnUVlXjrrUWU/mcQcQgYC0SRZxI+hMKBYTt88JMozIpuE8FnqLVHyNKOCjrh4rs6Z1kW6jfwv6ITVi8ftiegEkO" \
        "8yk8b6oUZCJqIPf4VrlnwaSi2ZegHtVJWQBTDv+z0kqA4GFAAKBgQDRGYtLgWh7zyRtQainJfCpiaUbzjJuhMgo4fVWZIvXHaS" \
        "HBU1t5w//S0lDK2hiqkj8KpMWGywVov9eZxZy37V26dEqr/c2m5qZ0E+ynSu7sqUD7kGx/zeIcGT0H+KAVgkGNQCo5Uc0koLRW" \
        "YHNtYoIvt5R3X6YZylbPftF/8ayWTALBgcqhkjOOAQDBQADLwAwLAIUAKYCp0d6z4QQdyN74JDfQ2WCyi8CFDUM4CaNB+ceVXd" \
        "KtOrNTQcc0e+t"

    _MD5_CLASSES = "5eItLCbGXx3CKpybxo81/A=="
    _KEY = "eQV5aq/Cg63Gsq1sshN9T3gh+UUp0wIw0xgHYT1bnCjEqOJQKCRrWxdAe2yvsDeCJL+Y4G3PRD2HUF7oUgiGo8vGlNJOaux26k+A2F3hj8A="
    _VERSION = "2.19.15"
    _OS_NAME = "Android"
    _OS_VERSION = "4.3"
    _DEVICE_NAME = "armani"
    _MANUFACTURER = "Xiaomi"
    _BUILD_VERSION = "JLS36C"
    _AXOLOTL = True

    def getVersion(self):
        return self.__class__._VERSION

...

Another alternative that I propose is the following:

Is it possible to reverse engineer this GBWhatsapp source code to identify the connection form and implement it in Yowsup?
GBWhatsapp Cource Code

Hi,
yowsup ? Don't work, i try with new version apk registration is happening but getting disconnect.
DEBUG:yowsup.layers.network.layer:Disconnected, reason: Connection Closed
Version: 2.19.15
ClassesDex: 5eIsLCfGXx3CKpybxo81/A==

Is there anyone who can solve the problem?
Help pls @tgalal

Guys, this information that I managed to obtain from my device could be used as something to test?

If someone makes the connection, please share it.

{  
   "type":"whatsapp_message_received",
   "message":[  
      "Conn",
      {  
         "lg":"es",
         "serverToken":"1@oYmyyhWGjuD0fHGf8QdM1FD+he7c4Uk8zO/BDfBMZzvj4zD2R6ycCpalXgs49F3iZmtQVSDxzPHKxg==",
         "lc":"US",
         "phone":{  
            "device_model":"harpia",
            "wa_version":"2.18.184",
            "mcc":"732",
            "os_version":"7.1.1",
            "os_build_number":"NPIS26.48-43-2",
            "device_manufacturer":"motorola",
            "mnc":"123"
         },
         "battery":32,
         "tos":0,
         "clientToken":"VY8uvU2knrJKHfOmvAvOPmDiHZFv43Ycdx6VVB7nmpY=",
         "pushname":"Alexander Daza",
         "protoVersion":[  
            0,
            17
         ],
         "plugged":false,
         "platform":"smba",
         "secret":"uyHcPZq5x9mLmiDtTQ+aOffUjLiIlPDrf/48JhpcsHWYqX3yknN2q/wNRk3S32eBdg6+BzWMgni6p+BBemdGPUvIjffPh2gfsNk5ZpaSWZkfftcNccLxty5Om/SMzjM6CVqB9CglFRzfZ1UZdBRvL3/eZPnehKn/LtdHSnusqbzGtg933jazSb0gC4uZz2Jr",
         "wid":"[email protected]",
         "connected":true,
         "browserToken":"1@1N6KisyT606TM+yTr5wIX/a+NMxKtYxFSWJ9A9YMyRZUqSdHFvM1laGJj0DAUmJu3Jpr2fjp+cXgXE7C4hg6UkXb2fkS4++iOereQlp77vgdawMKleRMOARWG848ExPZexEi9YovoGWFwpd+wEDBPg==",
         "isResponse":"false",
         "binVersion":10,
         "ref":"1@51N7xYnx1FaVQxghsmVO6AyTz+QNqb4uvuiMhoT4a2nra1rosSrUFd3G",
         "locales":"es-US",
         "features":{  
            "URL":true,
            "FLAGS":"CAEQARgBKAE4AUgBUAFYAmABaAJwAZgBAaABAg=="
         }
      }
   ],
   "message_type":"json",
   "timestamp":1548790789291,
   "from":"api2client"
}

Guys, this information that I managed to obtain from my device could be used as something to test?

If someone makes the connection, please share it.

{  
   "type":"whatsapp_message_received",
   "message":[  
      "Conn",
      {  
         "lg":"es",
         "serverToken":"1@oYmyyhWGjuD0fHGf8QdM1FD+he7c4Uk8zO/BDfBMZzvj4zD2R6ycCpalXgs49F3iZmtQVSDxzPHKxg==",
         "lc":"US",
         "phone":{  
            "device_model":"harpia",
            "wa_version":"2.18.184",
            "mcc":"732",
            "os_version":"7.1.1",
            "os_build_number":"NPIS26.48-43-2",
            "device_manufacturer":"motorola",
            "mnc":"123"
         },
         "battery":32,
         "tos":0,
         "clientToken":"VY8uvU2knrJKHfOmvAvOPmDiHZFv43Ycdx6VVB7nmpY=",
         "pushname":"Alexander Daza",
         "protoVersion":[  
            0,
            17
         ],
         "plugged":false,
         "platform":"smba",
         "secret":"uyHcPZq5x9mLmiDtTQ+aOffUjLiIlPDrf/48JhpcsHWYqX3yknN2q/wNRk3S32eBdg6+BzWMgni6p+BBemdGPUvIjffPh2gfsNk5ZpaSWZkfftcNccLxty5Om/SMzjM6CVqB9CglFRzfZ1UZdBRvL3/eZPnehKn/LtdHSnusqbzGtg933jazSb0gC4uZz2Jr",
         "wid":"[email protected]",
         "connected":true,
         "browserToken":"1@1N6KisyT606TM+yTr5wIX/a+NMxKtYxFSWJ9A9YMyRZUqSdHFvM1laGJj0DAUmJu3Jpr2fjp+cXgXE7C4hg6UkXb2fkS4++iOereQlp77vgdawMKleRMOARWG848ExPZexEi9YovoGWFwpd+wEDBPg==",
         "isResponse":"false",
         "binVersion":10,
         "ref":"1@51N7xYnx1FaVQxghsmVO6AyTz+QNqb4uvuiMhoT4a2nra1rosSrUFd3G",
         "locales":"es-US",
         "features":{  
            "URL":true,
            "FLAGS":"CAEQARgBKAE4AUgBUAFYAmABaAJwAZgBAaABAg=="
         }
      }
   ],
   "message_type":"json",
   "timestamp":1548790789291,
   "from":"api2client"
}

I don't think this information you get through Whatsapp web (store object) will work. :(

i think the problem is related to the "stream: features" sent in the login.
i am slowly going crazy..

What does it do? @antonio070592

Hello @tgalal

Is there an chance to know if you working on this issue?
Can we hope for an solution?

Best Regards
Heinz

@antonio070592 You should inform us what you mean with that image and if it is a solution, share how to implement it and not generate an expectation.

i am able to register but not able to log in or send message.

Any workable solution?

Guys, this information that I managed to obtain from my device could be used as something to test?

If someone makes the connection, please share it.

{  
   "type":"whatsapp_message_received",
   "message":[  
      "Conn",
      {  
         "lg":"es",
         "serverToken":"1@oYmyyhWGjuD0fHGf8QdM1FD+he7c4Uk8zO/BDfBMZzvj4zD2R6ycCpalXgs49F3iZmtQVSDxzPHKxg==",
         "lc":"US",
         "phone":{  
            "device_model":"harpia",
            "wa_version":"2.18.184",
            "mcc":"732",
            "os_version":"7.1.1",
            "os_build_number":"NPIS26.48-43-2",
            "device_manufacturer":"motorola",
            "mnc":"123"
         },
         "battery":32,
         "tos":0,
         "clientToken":"VY8uvU2knrJKHfOmvAvOPmDiHZFv43Ycdx6VVB7nmpY=",
         "pushname":"Alexander Daza",
         "protoVersion":[  
            0,
            17
         ],
         "plugged":false,
         "platform":"smba",
         "secret":"uyHcPZq5x9mLmiDtTQ+aOffUjLiIlPDrf/48JhpcsHWYqX3yknN2q/wNRk3S32eBdg6+BzWMgni6p+BBemdGPUvIjffPh2gfsNk5ZpaSWZkfftcNccLxty5Om/SMzjM6CVqB9CglFRzfZ1UZdBRvL3/eZPnehKn/LtdHSnusqbzGtg933jazSb0gC4uZz2Jr",
         "wid":"[email protected]",
         "connected":true,
         "browserToken":"1@1N6KisyT606TM+yTr5wIX/a+NMxKtYxFSWJ9A9YMyRZUqSdHFvM1laGJj0DAUmJu3Jpr2fjp+cXgXE7C4hg6UkXb2fkS4++iOereQlp77vgdawMKleRMOARWG848ExPZexEi9YovoGWFwpd+wEDBPg==",
         "isResponse":"false",
         "binVersion":10,
         "ref":"1@51N7xYnx1FaVQxghsmVO6AyTz+QNqb4uvuiMhoT4a2nra1rosSrUFd3G",
         "locales":"es-US",
         "features":{  
            "URL":true,
            "FLAGS":"CAEQARgBKAE4AUgBUAFYAmABaAJwAZgBAaABAg=="
         }
      }
   ],
   "message_type":"json",
   "timestamp":1548790789291,
   "from":"api2client"
}

@devalexanderdaza How did you manage to get this information. Can you please share the steps? Which network analysis tool you are using which shows the response in json format?

@hiwaleakshay It is reverse engineering of web whatsapp. There are some projects that use this methodology to connect to WhatsApp Web, however it is required whenever a phone is switched on and connected to the internet to work.

@devalexanderdaza Yes, i know its reverse engineering. How to do that? I want same thing when one tries to login to whatsapp.

I believe you can do it by using wireshark and capturing all data on your network card as you are using the WhatsApp-web. I'm following Chat2Desk on Telegram and yesterday they released a note saying that their engineers were repairing broken calls to WhatsApp api. So this is affecting other commercial companies too.

@markdueck Wireshark gives you hex representation. I want the json. Like one @devalexanderdaza shared.
However this is what i get when i try to connect using yowsup now

`got event org.openwhatsapp.yowsup.event.cli.start
DEBUG:yowsup.stacks.yowstack:Initializing stack
creating connection...
DEBUG:yowsup.stacks.yowstack:Constructed Network Layer
DEBUG:yowsup.stacks.yowstack:Constructed Stanza Regulator Layer
DEBUG:yowsup.stacks.yowstack:Constructed Crypt Layer
DEBUG:yowsup.stacks.yowstack:Constructed Coder Layer
DEBUG:yowsup.stacks.yowstack:Constructed Logger Layer
DEBUG:yowsup.stacks.yowstack:Constructed
DEBUG:yowsup.stacks.yowstack:Constructed Axolotl Layer -
DEBUG:yowsup.stacks.yowstack:Constructed Authentication Layer - Messages Layer - Receipt Layer - Ack Layer - Presence Layer - Ib Layer - Iq Layer - notification Ib Layer - Iq Layer - Chatstate Layer - call Layer - Groups Iq Layer - Media Layer - Privacy Layer - Profiles Layer
DEBUG:yowsup.stacks.yowstack:Constructed Interface Layer
DEBUG:yowsup.layers.network.layer:Connecting to e16.whatsapp.net:443
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
DEBUG:yowsup.layers.logger.layer:tx:
got nonce = None

got event org.openwhatsapp.yowsup.event.network.connected

got event org.openwhatsapp.yowsup.event.network.connected

DEBUG:yowsup.layers.logger.layer:tx:

got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
got event org.openwhatsapp.yowsup.event.network.connected
DEBUG:yowsup.layers.network.layer:Disconnected, reason: Connection Closed
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
got event org.openwhatsapp.yowsup.event.network.disconnected
Disconnected: Connection Closed
`

I debug and got this inside "onEvent", this means we can still connect to their servers, but whatsapp disconnects us immediately. (using android env to connect)

Same problem here :(

DEBUG:yowsup.env.env:Current env changed to android
yowsup-cli v2.0.15
yowsup v2.5.7

Copyright (c) 2012-2016 Tarek Galal
http://www.openwhatsapp.org

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://openwhatsapp.org/yowsup/donate

DEBUG:yowsup.stacks.yowstack:Initializing stack
DEBUG:yowsup.stacks.yowstack:Constructed Network Layer
DEBUG:yowsup.stacks.yowstack:Constructed Stanza Regulator Layer
DEBUG:yowsup.stacks.yowstack:Constructed Crypt Layer
DEBUG:yowsup.stacks.yowstack:Constructed Coder Layer
DEBUG:yowsup.stacks.yowstack:Constructed Logger Layer
DEBUG:yowsup.stacks.yowstack:Constructed
DEBUG:yowsup.stacks.yowstack:Constructed Axolotl Layer -
DEBUG:yowsup.stacks.yowstack:Constructed Authentication Layer - Messages Layer - Receipt Layer - Ack Layer - Presence Layer - Ib Layer - Iq Layer - notification Ib Layer - Iq Layer - Chatstate Layer - call Layer - Groups Iq Layer - Media Layer - Privacy Layer - Profiles Layer
DEBUG:yowsup.stacks.yowstack:Constructed Interface Layer
DEBUG:yowsup.layers.network.layer:Connecting to e11.whatsapp.net:443
DEBUG:yowsup.layers.logger.layer:tx:

DEBUG:yowsup.layers.logger.layer:tx:

DEBUG:yowsup.layers.network.layer:Disconnected, reason: Connection Closed>

@hiwaleakshay Hi, im get a json log using this project

And make this node server for test connection.

/**
 * ===================================================================
 * AUTHOR: Neyib Alexander Daza Guerrero
 * POSITION: Senior Developer
 * ===================================================================
 * DESCRIPTION:
 *
 * ===================================================================
 */

'use strict';

// Importamos las librerías requeridas
let express = require('express');
let ws = require('ws');
let rest = require('restler');
let path = require('path');
let base64 = require('base64-to-image');
var fs = require('fs');
var svg2img = require('svg2img');
var btoa = require('btoa');
require('console-png').attachTo(console);

const { createCanvas, loadImage } = require('canvas');
const canvas = createCanvas(200, 200);
const ctx = canvas.getContext('2d');

const app = express();
const port = 3000;

app.use(express.static(path.join(__dirname, 'public')));
app.get('/', (req, res) => res.send('Hello World!'));

app.listen(port, () => console.log(`Example app listening on port ${port}!`));

// Definimos la URL del socket de conexión con el Gateway NodeJS
// let url = "http://157.230.223.171:2019";
// let url = "http://www.rabbiot.co:2019";
let url = "http://localhost:2019";
let clientId = makeid(13);

// Creamos la conexión con el servidor socket
const connection = new ws(url);

// Si la conexión es exitosa
connection.onopen = () => {
    console.log(`Socket conectado`);
};

// Cuando se reciban mensajes del socket
connection.onmessage = e => {
    console.log("Mensaje de entrada:");
    console.log(e.data);
    console.log("Fin Mensaje de entrada:");
    let actualMsg = e.data;
    let tag = actualMsg.split(",")[0];
    let obj = JSON.parse(actualMsg.substr(tag.length + 1));
    // console.log(obj);
    // Enviamos la solicitud de conexión con el Backend
    if (obj.type === 'connected' && obj.from === 'api2client') {
        connection.send(`${makeid(13)},{"command":"api-connectBackend","from":"client","type":"call"}`);
    }
    // Enviamos la solicitud de conexión con Whatsapp
    if (obj.type === 'resource_connected' && obj.resource === 'backend' && obj.from === 'api2client') {
        connection.send(`${makeid(13)},{"command":"backend-connectWhatsApp","from":"client","type":"call"}`);
    }
    // Enviamos la para obtener el código QR de whatsapp web
    if (obj.type === 'resource_connected' && obj.resource === 'whatsapp' && obj.from === 'api2client') {
        console.log('Enviando solicitud de código QR de whatsapp');
        connection.send(`${makeid(13)},{"command":"backend-generateQRCode","from":"client","type":"call"}`);
    }
    // Obtenemos el código QR de whatsapp
    if (obj.type === 'generated_qr_code' && obj.from === 'api2client') {
        let fileId = makeid(10);
        svg2img(obj.image, function (error, buffer) {
            fs.writeFileSync(`./public/${fileId}.png`, buffer);
            console.log(`Accede al código QR a través de la web: http://localhost:3000/${fileId}.png`);
        });

        //var image = require('fs').readFileSync(__dirname + '/nodejs-green.png');
        /*let image = `./qr-codes/${fileId}.png`;
        pngStringify(image, function (err, string) {
            if (err) throw err;
            console.log(string);
        })*/

        /*var qrImage = obj.image;
        qrImage = qrImage.replace("data:image/svg+xml;base64,", "");
        qrImage = qrImage.replace(" ", "");
        console.log(qrImage);
        console.log('Accede al código QR a través de la web: https://www.rabbiot.co/activatebot.php?qr='+qrImage);*/
    }
};

// Si hubo algún error al conectarnos al socket
connection.onerror = error => {
    console.log(`Error de conexión al web socket: ${JSON.stringify(error)}`)
};

function makeid(number) {
    var text = "";
    var possible = "0123456789";
    for (var i = 0; i < number; i++)
        text += possible.charAt(Math.floor(Math.random() * possible.length));
    return text;
}

Can someone tell me how can I know how to implement this project from scratch? I am a newbie so I might learn a few things until this issue gets resolved

@hiwaleakshay Hi, im get a json log using this project

And make this node server for test connection.

/**
 * ===================================================================
 * AUTHOR: Neyib Alexander Daza Guerrero
 * POSITION: Senior Developer
 * ===================================================================
 * DESCRIPTION:
 *
 * ===================================================================
 */

'use strict';

// Importamos las librerías requeridas
let express = require('express');
let ws = require('ws');
let rest = require('restler');
let path = require('path');
let base64 = require('base64-to-image');
var fs = require('fs');
var svg2img = require('svg2img');
var btoa = require('btoa');
require('console-png').attachTo(console);

const { createCanvas, loadImage } = require('canvas');
const canvas = createCanvas(200, 200);
const ctx = canvas.getContext('2d');

const app = express();
const port = 3000;

app.use(express.static(path.join(__dirname, 'public')));
app.get('/', (req, res) => res.send('Hello World!'));

app.listen(port, () => console.log(`Example app listening on port ${port}!`));

// Definimos la URL del socket de conexión con el Gateway NodeJS
// let url = "http://157.230.223.171:2019";
// let url = "http://www.rabbiot.co:2019";
let url = "http://localhost:2019";
let clientId = makeid(13);

// Creamos la conexión con el servidor socket
const connection = new ws(url);

// Si la conexión es exitosa
connection.onopen = () => {
    console.log(`Socket conectado`);
};

// Cuando se reciban mensajes del socket
connection.onmessage = e => {
    console.log("Mensaje de entrada:");
    console.log(e.data);
    console.log("Fin Mensaje de entrada:");
    let actualMsg = e.data;
    let tag = actualMsg.split(",")[0];
    let obj = JSON.parse(actualMsg.substr(tag.length + 1));
    // console.log(obj);
    // Enviamos la solicitud de conexión con el Backend
    if (obj.type === 'connected' && obj.from === 'api2client') {
        connection.send(`${makeid(13)},{"command":"api-connectBackend","from":"client","type":"call"}`);
    }
    // Enviamos la solicitud de conexión con Whatsapp
    if (obj.type === 'resource_connected' && obj.resource === 'backend' && obj.from === 'api2client') {
        connection.send(`${makeid(13)},{"command":"backend-connectWhatsApp","from":"client","type":"call"}`);
    }
    // Enviamos la para obtener el código QR de whatsapp web
    if (obj.type === 'resource_connected' && obj.resource === 'whatsapp' && obj.from === 'api2client') {
        console.log('Enviando solicitud de código QR de whatsapp');
        connection.send(`${makeid(13)},{"command":"backend-generateQRCode","from":"client","type":"call"}`);
    }
    // Obtenemos el código QR de whatsapp
    if (obj.type === 'generated_qr_code' && obj.from === 'api2client') {
        let fileId = makeid(10);
        svg2img(obj.image, function (error, buffer) {
            fs.writeFileSync(`./public/${fileId}.png`, buffer);
            console.log(`Accede al código QR a través de la web: http://localhost:3000/${fileId}.png`);
        });

        //var image = require('fs').readFileSync(__dirname + '/nodejs-green.png');
        /*let image = `./qr-codes/${fileId}.png`;
        pngStringify(image, function (err, string) {
            if (err) throw err;
            console.log(string);
        })*/

        /*var qrImage = obj.image;
        qrImage = qrImage.replace("data:image/svg+xml;base64,", "");
        qrImage = qrImage.replace(" ", "");
        console.log(qrImage);
        console.log('Accede al código QR a través de la web: https://www.rabbiot.co/activatebot.php?qr='+qrImage);*/
    }
};

// Si hubo algún error al conectarnos al socket
connection.onerror = error => {
    console.log(`Error de conexión al web socket: ${JSON.stringify(error)}`)
};

function makeid(number) {
    var text = "";
    var possible = "0123456789";
    for (var i = 0; i < number; i++)
        text += possible.charAt(Math.floor(Math.random() * possible.length));
    return text;
}

@devalexanderdaza Tried this, and before I start playing with it whatsapp blocked my number :(

Any news about this?

I'm not sure if I'm understanding exactly how this yowsup works, but it seems that it's using some android libraries which are fairly old. If we can get updated libraries and an updated (Whatsapp apk library files)? -- not sure if that's correct - then it should work. I'm overbooked to be looking into this full-time, so I'm just hoping someone will find a solution.

@tgalal At least tell us if we can make this library work again. I know its impossible now to connect via s40.
Can we modify the code so that it will work with android env? Registration still works using android env. You are the developer, you must know the details. Really loved your work man. Will appreciate your input.

Endpoint rejects the connection?
Change the endpoint?

@alejandroguille I do not think their is problem with endpoint. Their is problem with "auth" mechanism.
Socket is created for "s.whatsapp.net" (server) and then we get connection from "e[1-16].whatsapp.net" for few -milliseconds and then server disconnects us.

@alejandroguille I do not think their is problem with endpoint. Their is problem with "auth" mechanism.
Socket is created for "s.whatsapp.net" (server) and then we get connection from "e[1-16].whatsapp.net" for few -milliseconds and then server disconnects us.

OK, thanks for answering.
Patch for this problem?

@antonio070592 Whats this?

@antonio070592 Are you using Blaster?

hi everyone, I propose each one donate to the developer team try to fix this issue if the team agree. I can donate 100 USD.

There is no solution my friend!!

Saludos,
Pablo

On Wed, Feb 6, 2019 at 3:50 PM magnussolution notifications@github.com
wrote:

hi everyone, I propose each one donate to the developer team try to fix
this issue if the team agree. I can donate 100 USD.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tgalal/yowsup/issues/2635#issuecomment-461141084, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEymzSyhUvknn_8rWD7J0tml9YuUl-4Dks5vKyPfgaJpZM4aONhc
.

Hey guys!
@danielcardeenas posted a new change to the env_android.py file regarding yowsup.
I did not get to test for being at work.

https://github.com/danielcardeenas/whatsapp-framework/blob/master/libs/yowsup/yowsup/env/env_android.py

Has anyone ever tested this?

Nope, it wont work. Yowsup has only registration part in android. We need to implement android login solution.

Nope, it wont work. Yowsup has only registration part in android. We need to implement android login solution.

:/

I was using this library with this git for my course work.
But by the way, I'll have to change .

i wanted to present a project for my institute with this y,y now i need to look new project then

the dream is over.

donate

http://openwhatsapp.org/yowsup/donate

hi, I donate € 50 to help this project. I hope more people collaborate with you. Thanks.

Paypal transaction ID 7WL30057JH210652E

Obligatory notice:

Im attaching this warning here for everyone seeing this issue. The person behind this https://www.chat-api.net/ is a pathetic attempt for a fraud. I received many reports of people getting scammed and lost a lot of money. He goes by different account names, creates different links for his scam services and repeatedly posts them in different issues.

DO NOT GIVE ANY CREDIT CARD INFO OR OTHER PAYMENT DETAILS.

For all the people looking for an alternative solution I recommend telepot based on Telegram communicator which fully supports bots and it is easy to integrate. I already migrate my project and seems to be stable as well.

I'm willing to donate, but I have concerns that the donation above is going to the right person. I don't see @tgalal posting about where to donate. And I would like a bit of commitment that progress will be made on it.

agree. @markdueck

I just looked at this some more, and it looks like WhatsApp has opened the API now for public? Here's the directions for it all: https://developers.facebook.com/docs/whatsapp/getting-started
I will spend some time trying that tonight to see if I make progress in that.

@markdueck Thats business api. WhatsApp has released it for a long time now.

Can you not do something similar with that as with this library? I don't mind. I'm doing it for a business anyway. They are even willing to pay. I'm in Belize, so in my previous searches for getting this business api it showed up as not available yet.

I apologize for not commenting sooner. I intend to look into the issue next week because unfortunately I don't have any time until then. With that said however, the change is major, and there is unfortunately no estimation how long it would take to fix things, or even a guarantee that yowsup would ever work again. Therefore regarding donations, please don't donate expecting full commitment or a fixed yowsup in return. While the support is appreciated and does inspire some motivation, keeping the project alive is not dependent on it and I'm going to work on getting things working again anyway.

Finally I conclude with a warning for everyone here:

The person behind this https://www.chat-api.net/ is a pathetic attempt for a fraud. I received many reports of people getting scammed and lost a lot of money. He goes by different account names, creates different links for his scam services and repeatedly posts them in different issues.

DO NOT GIVE ANY CREDIT CARD INFO, OR DO ANY PAYPAL PAYMENTS

Fixed

Was this page helpful?
0 / 5 - 0 ratings