Jacob Oliveira Postado Dezembro 22, 2014 Denunciar Share Postado Dezembro 22, 2014 (editado) Fala pessoal, estou tentando desenvolver uma aplicação de envio de mensagens whatsapp mas não estou conseguindo pelo seguindo erro: object(stdClass)#1 (2) { ["status"]=> string(4) "fail" ["reason"]=> string(9) "bad_token" } esse ai é o resultado do var_dump() e aqui abaixo é o codigo : <?php codeRequest(); function codeRequest() { // Build the token. $token = generateRequestToken('BR', '91XXXXXXXX'); // Build the url. $host = 'https://v.whatsapp.net/v2/code'; $query = array( 'method' => 'sms', 'in' => '9192278836', 'cc' => '55', 'id' => '%40%bd%00%15c%08_%c3qe2%9e%a1%ff%5c%5e%cb%db%be%ef&', 'lg' => 'pt', 'lc' => 'BR', 'token' => urlencode($token), 'sim_mcc' => '000', //$phone['mcc'] 'sim_mnc' => '000', // 001 ); $response = getResponse($host, $query); if ($response->status == 'ok') { var_dump($response); } else { var_dump($response); } } function generateRequestToken($country, $phone) { $signature = "MIIDMjCCAvCgAwIBAgIETCU2pDALBgcqhkjOOAQDBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFDASBgNVBAcTC1NhbnRhIENsYXJhMRYwFAYDVQQKEw1XaGF0c0FwcCBJbmMuMRQwEgYDVQQLEwtFbmdpbmVlcmluZzEUMBIGA1UEAxMLQnJpYW4gQWN0b24wHhcNMTAwNjI1MjMwNzE2WhcNNDQwMjE1MjMwNzE2WjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLU2FudGEgQ2xhcmExFjAUBgNVBAoTDVdoYXRzQXBwIEluYy4xFDASBgNVBAsTC0VuZ2luZWVyaW5nMRQwEgYDVQQDEwtCcmlhbiBBY3RvbjCCAbgwggEsBgcqhkjOOAQBMIIBHwKBgQD9f1OBHXUSKVLfSpwu7OTn9hG3UjzvRADDHj+AtlEmaUVdQCJR+1k9jVj6v8X1ujD2y5tVbNeBO4AdNG/yZmC3a5lQpaSfn+gEexAiwk+7qdf+t8Yb+DtX58aophUPBPuD9tPFHsMCNVQTWhaRMvZ1864rYdcq7/IiAxmd0UgBxwIVAJdgUI8VIwvMspK5gqLrhAvwWBz1AoGBAPfhoIXWmz3ey7yrXDa4V7l5lK+7+jrqgvlXTAs9B4JnUVlXjrrUWU/mcQcQgYC0SRZxI+hMKBYTt88JMozIpuE8FnqLVHyNKOCjrh4rs6Z1kW6jfwv6ITVi8ftiegEkO8yk8b6oUZCJqIPf4VrlnwaSi2ZegHtVJWQBTDv+z0kqA4GFAAKBgQDRGYtLgWh7zyRtQainJfCpiaUbzjJuhMgo4fVWZIvXHaSHBU1t5w//S0lDK2hiqkj8KpMWGywVov9eZxZy37V26dEqr/c2m5qZ0E+ynSu7sqUD7kGx/zeIcGT0H+KAVgkGNQCo5Uc0koLRWYHNtYoIvt5R3X6YZylbPftF/8ayWTALBgcqhkjOOAQDBQADLwAwLAIUAKYCp0d6z4QQdyN74JDfQ2WCyi8CFDUM4CaNB+ceVXdKtOrNTQcc0e+t"; $classesMd5 = "oCtjlSonS+4H16h9HW6nNA=="; // 2.11.378 [*] $key2 = base64_decode("/UIGKU1FVQa+ATM2A0za7G2KI9S/CwPYjgAbc67v7ep42eO/WeTLx1lb1cHwxpsEgF4+PmYpLd2YpGUdX/A2JQitsHzDwgcdBpUf7psX1BU="); $data = base64_decode($signature) . base64_decode($classesMd5) . $phone; $opad = str_repeat(chr(0x5C), 64); $ipad = str_repeat(chr(0x36), 64); for ($i = 0; $i < 64; $i++) { $opad[$i] = $opad[$i] ^ $key2[$i]; $ipad[$i] = $ipad[$i] ^ $key2[$i]; } $output = hash("sha1", $opad . hash("sha1", $ipad . $data, true), true); return base64_encode($output); } function buildIdentity($identity) { return strtolower(urlencode(sha1($identity, true))); } function getResponse($host, $query) { // Build the url. $url = $host . '?'; foreach ($query as $key => $value) { $url .= $key . '=' . $value . '&'; } $url = rtrim($url, '&'); // Open connection. $ch = curl_init(); // Configure the connection. curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_USERAGENT, 'WhatsApp/ 2.11.476 Android/4.3 Device/GalaxyS3'); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: text/json')); // This makes CURL accept any peer! curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Get the response. $response = curl_exec($ch); // Close the connection. curl_close($ch); return json_decode($response); } ?> há algumas funcoes que não estou usando como buildIdentity() Estou a dias procurando na net uma solução para envio de mensagens whatsapp mas não encontro Desde já obrigado Editado Julho 12, 2015 por Jacob Oliveira Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JJI Postado Janeiro 6, 2015 Denunciar Share Postado Janeiro 6, 2015 não sei se funciona.. mas de uma olhada nesta API https://github.com/venomous0x/WhatsAPI pelo que entendi o problema de envio com o watsapp é saber a senha interna que muda de tempos em tempos e tem que ter um espaço em segundos para não ser bloqueado o numero por spam de mensagens esta api pelo pouco que vi é completa com exemplos de funcionamento, não testei nem sei como funciona.. apenas salvei aqui para ver caso de necessidade mas de uma pesquisada no google por whatsapp send message api Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 EduFilgueira Postado Março 15, 2015 Denunciar Share Postado Março 15, 2015 (editado) Erro whatsappAPI retorna PollMessages(); vazio Estava com o mesmo problema, mas ao atualizar a API deu certo o envio, mas ainda não estou conseguindo desenvolver a responsa. API atualizada: https://github.com/mgp25/WhatsAPI-Official/ Estou usando o seguinte código que baixei: <?php // This file is part of a tutorial on the blog of Philipp C. Heckel, July 2013 // http://blog.philippheckel.com/2013/07/07/send-whatsapp-messages-via-php-script-using-whatsapi/ require_once 'src/whatsprot.class.php'; $username = "558585021877"; //fone usuario $userIdentity = "012345678901234"; $password = "gbnn16gcOu0ZCVZMdf5r6zv3W60="; $userName = "Emporio do Bolo"; $w = new WhatsProt($username, $userIdentity, $userName, $debug); $w->Connect(); $w->LoginWithPassword($password); echo "antes de entrar"; while (true) { echo "depois do while"; $w->PollMessages(); $msgs = $w->GetMessages(); foreach ($msgs as $m) { echo "depois do foreach"; $time = date("m/d/Y H:i", $m->_attributeHash['t']); $from = str_replace("@s.whatsapp.net", "", $m->_attributeHash['from']); $name = "(unknown)"; $body = ""; foreach ($m->_children as $child) { if ($child->_tag == "body") { $body = $child->_data; echo "edu 01 <br>"; } else if ($child->_tag == "notify") { if (isset($child->_attributeHash) && isset($child->_attributeHash['name'])) { $name = $child->_attributeHash['name']; echo "edu 02 <br>"; } } } if (!empty($body)) { echo "[$time] From: $from, Name: $name, Message: $body\n"; echo "body <br>"; } if (strtolower($body) == "exit") { exit; } // print_r($m); } } ?> A parte de enviar mensagens esta funcionando perfeitamente, mas receber as mensagens ainda não. Se vocês perceberem escrevi até uns echo "debug"; pra debugar, mas o código percorre listas vazias. Tecnicamente o código esta correto, mas esta retornando listas vazias de acordo com os nós abaixo: tx <stream:features> tx <readreceipts></readreceipts> tx <groups_v2></groups_v2> tx <privacy></privacy> tx <presence></presence> tx </stream:features> tx <auth mechanism="WAUTH-2" user="558585021877">W-e#558585021877z[A৯ú`êÓAM –Uz$?*1426383207WhatsApp/2.12.61 S40Version/14.26 Device/Nokia302 MccMnc/724002</auth> rx <start from="s.whatsapp.net"></start> rx <stream:features></stream:features> rx <challenge>`:ÏòÿÑêÙ¬X¥aôç¥æ</challenge> tx <response>™ÄÛÃ#¹ùLlyZ´ß×±3CGSCR8US ¥½ÚiÔ3</response> rx <success t="1426383207" props="4" kind="free" status="active" creation="1394452866" expiration="1457960949">ÿBB‹°„Wä¤]|¸…þoj</success> tx <presence name="012345678901234"></presence> alguém pode me ajudar a descobrir porque esta retornando vazio? Editado Março 15, 2015 por EduFilgueira Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 elvisgoncalves Postado Junho 17, 2015 Denunciar Share Postado Junho 17, 2015 <script type='text/javascript'>window.mod_pagespeed_start = Number(new Date());</script> Erro whatsappAPI retorna PollMessages(); vazio Estava com o mesmo problema, mas ao atualizar a API deu certo o envio, mas ainda não estou conseguindo desenvolver a responsa. API atualizada: https://github.com/mgp25/WhatsAPI-Official/ Estou usando o seguinte código que baixei: <?php // This file is part of a tutorial on the blog of Philipp C. Heckel, July 2013 // http://blog.philippheckel.com/2013/07/07/send-whatsapp-messages-via-php-script-using-whatsapi/ require_once 'src/whatsprot.class.php'; $username = "558585021877"; //fone usuario $userIdentity = "012345678901234"; $password = "gbnn16gcOu0ZCVZMdf5r6zv3W60="; $userName = "Emporio do Bolo"; $w = new WhatsProt($username, $userIdentity, $userName, $debug); $w->Connect(); $w->LoginWithPassword($password); echo "antes de entrar"; while (true) { echo "depois do while"; $w->PollMessages(); $msgs = $w->GetMessages(); foreach ($msgs as $m) { echo "depois do foreach"; $time = date("m/d/Y H:i", $m->_attributeHash['t']); $from = str_replace("@s.whatsapp.net", "", $m->_attributeHash['from']); $name = "(unknown)"; $body = ""; foreach ($m->_children as $child) { if ($child->_tag == "body") { $body = $child->_data; echo "edu 01 <br>"; } else if ($child->_tag == "notify") { if (isset($child->_attributeHash) && isset($child->_attributeHash['name'])) { $name = $child->_attributeHash['name']; echo "edu 02 <br>"; } } } if (!empty($body)) { echo "[$time] From: $from, Name: $name, Message: $body\n"; echo "body <br>"; } if (strtolower($body) == "exit") { exit; } // print_r($m); } } ?> A parte de enviar mensagens esta funcionando perfeitamente, mas receber as mensagens ainda não. Se vocês perceberem escrevi até uns echo "debug"; pra debugar, mas o código percorre listas vazias. Tecnicamente o código esta correto, mas esta retornando listas vazias de acordo com os nós abaixo: tx <stream:features> tx <readreceipts></readreceipts> tx <groups_v2></groups_v2> tx <privacy></privacy> tx <presence></presence> tx </stream:features> tx <auth mechanism="WAUTH-2" user="558585021877">W-e#558585021877z[A৯ú`êÓAM –Uz$?*1426383207WhatsApp/2.12.61 S40Version/14.26 Device/Nokia302 MccMnc/724002</auth> rx <start from="s.whatsapp.net"></start> rx <stream:features></stream:features> rx <challenge>`:ÏòÿÑêÙ¬X¥aôç¥æ</challenge> tx <response>™ÄÛÃ#¹ùLlyZ´ß×±3CGSCR8US ¥½ÚiÔ3</response> rx <success t="1426383207" props="4" kind="free" status="active" creation="1394452866" expiration="1457960949">ÿBB‹°„Wä¤]|¸…þoj</success> tx <presence name="012345678901234"></presence> alguém pode me ajudar a descobrir porque esta retornando vazio? Olá amigo você conseguiu resolver, você pode liberar o codigo?, estou precisando muito para implementar em um painel que estou desenvolvendo. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Jacob Oliveira
Fala pessoal, estou tentando desenvolver uma aplicação de envio de mensagens whatsapp mas não estou conseguindo pelo seguindo erro:
object(stdClass)#1 (2) { ["status"]=> string(4) "fail" ["reason"]=> string(9) "bad_token" }
esse ai é o resultado do var_dump()
e aqui abaixo é o codigo :
há algumas funcoes que não estou usando como buildIdentity()
Estou a dias procurando na net uma solução para envio de mensagens whatsapp mas não encontro
Desde já obrigado
Editado por Jacob OliveiraLink para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.