Marca Posted August 20, 2021 Report Share Posted August 20, 2021 Bom dia pessoal. Alguém teria alguma sugestão de algum fonte que de integração ao WatsApp sem ser a do Handel ? Quote Link to comment Share on other sites More sharing options...
sygecom Posted August 20, 2021 Report Share Posted August 20, 2021 Estou usando o MEGA-API tem atendido bem até o momento. Megaapi API Whatsapp (getpostman.com) Quote Link to comment Share on other sites More sharing options...
Marca Posted August 20, 2021 Author Report Share Posted August 20, 2021 Obrigado Sysgecom E vc ai utiliza Harbour ou xHarbour com ela ? Quote Link to comment Share on other sites More sharing options...
sygecom Posted August 20, 2021 Report Share Posted August 20, 2021 xharbour Quote Link to comment Share on other sites More sharing options...
mkyx Posted August 21, 2021 Report Share Posted August 21, 2021 Sygecom poderia postar o exemplo em xharbour Obrigado. Quote Link to comment Share on other sites More sharing options...
sygecom Posted August 28, 2021 Report Share Posted August 28, 2021 Isso está no meio do sistema e e, posso postar aqui, mas não sei se vai ajudar ou atrapalhar, mas segue em anexo para ver se ajuda. Nota: o colega João Alpande que desenvolveu tudo. #include "hwgui_sagi.ch" ********************** #DEFINE httpGet 1 #DEFINE httpPost 2 ********************** /* MEGAAPI API WHATSAPP Manual: https://documenter.getpostman.com/view/7432615/Tzedh4uW#intro Acesso do painel: https://megaapi-painel.com.br/sec_Login/ */ CLASS TWhatsapp_MegaAPI DATA cToken INIT GET_PARAMETRO('SYG_TOKEN_WHATSAPP',.T.) DATA cEndPoint INIT GET_PARAMETRO('SYG_URL_WHATSAPP',.T.) DATA cRet INIT '' DATA hHash INIT Hash() DATA cValue_qrcode INIT '' DATA cFile_qrcode INIT '' METHOD New(nIDUSER) CONSTRUCTOR METHOD PegaConfAPI(lMsg,nNr_Enviou) METHOD ComunicaAPI(oObj,cUrl, nMetodo, cContato, cMsg, cFilename,cTipo_Arq,cNomeArq) METHOD Status(oObj) METHOD OBTER_QRCODE(oObj) METHOD VerSeContatotemWhats(oObj) METHOD Reiniciar(oObj) METHOD Desconectar(oObj) METHOD EnviarMsg(oObj,cContato, cMsg, cFilename,lLink,lMsg,cNomeArq) Method End() INLINE Self := Nil EndClass ************************************** METHOD New(nIDUSER) CLASS TWhatsapp_MegaAPI ************************************** LOCAL aSQL:={} nIDUSER:=IF(nIDUSER=Nil,_pnIDUSER(),nIDUSER) ::cRet := '' ::hHash := Hash() ::cToken := GET_PARAMETRO('SYG_TOKEN_WHATSAPP',.T.) ::cEndPoint := GET_PARAMETRO('SYG_URL_WHATSAPP',.T.) aSQL:=ES("select usa_api_whatsapp, "+; " syg_url_whatsapp, "+; " syg_token_whatsapp, "+; " syg_numero_whatsapp "+; "from sagi_whatsapp_usuario "+; "where id_usuario="+CS(nIDUSER)+ " limit 1 ") IF LEN(aSQL) > 0 IF ALLTRIM(aSQL[1,1]) <> 'DESABILITADO' ::cEndPoint:= aSQL[1,2] ::cToken := aSQL[1,3] ENDIF ENDIF return self *********************************************************** METHOD PegaConfAPI(lMsg,nNr_Enviou) CLASS TWhatsapp_MegaAPI *********************************************************** LOCAL aSQL:={}, lRET:=.F., lSemAPI:=.F. lMsg:=IF(lMsg=Nil,.T.,lMsg) nNr_Enviou:=IF(nNr_Enviou=Nil,'',nNr_Enviou) aSQL:=ES("select usa_api_whatsapp, "+; " syg_url_whatsapp, "+; " syg_token_whatsapp, "+; " syg_numero_whatsapp "+; "from sagi_whatsapp_usuario "+; "where id_usuario="+CS(_pnIDUSER())+ " limit 1 ") IF LEN(aSQL) > 0 IF ALLTRIM(aSQL[1,1]) <> 'DESABILITADO' .AND. ALLTRIM(aSQL[1,2])<>'' .AND. ALLTRIM(aSQL[1,3])<>'' lRET:=.T. nNr_Enviou:=aSQL[1,4] ENDIF IF ALLTRIM(aSQL[1,1]) = 'DESABILITADO' IF !EMPTY(GET_PARAMETRO('SYG_TOKEN_WHATSAPP',.T.)) .AND. !EMPTY(GET_PARAMETRO('SYG_URL_WHATSAPP',.T.)) lRET:=.T. ENDIF ENDIF ELSE IF !EMPTY(GET_PARAMETRO('SYG_TOKEN_WHATSAPP',.T.)) .AND. !EMPTY(GET_PARAMETRO('SYG_URL_WHATSAPP',.T.)) lRET:=.T. ENDIF ENDIF IF !lRET .AND. lMsg ShowMsg("Favor preencher os parâmetros do sistema ou no Usuário com o token e endereço URL para uso do WhatsApp, "+ HB_OsNewLine()+; "caso ainda não tenha contratado o serviço, favor entrar em contato com a Sygecom.") ENDIF Return(lRET) **************************************** METHOD Status(oObj) Class TWhatsapp_MegaAPI **************************************** LOCAL lRET:=.T., cFileQRCode:='', lQrCode:=.F., lConectado:=.F. IF !::PegaConfAPI() RETURN(.T.) ENDIF ::ComunicaAPI(oObj,"/status", httpGet) IF VALTYPE(::hHash) != 'H' RETURN(.T.) ENDIF IF HHasKey( ::hHash, 'accountStatus' ) IF ::hHash['accountStatus'] = .F. lRET:=.F. IF ALLTRIM(::hHash['state']) = 'disconnected' .OR. ALLTRIM(::hHash['state']) = 'connecting' lQrCode:=.T. ENDIF ELSE IF ALLTRIM(::hHash['state']) = 'connected' .OR. ALLTRIM(::hHash['state']) = 'connecting' lConectado:=.T. ENDIF ENDIF IF lConectado cFileQRCode:=PEGA_ARQUIVO_SAGI(1075,.T.) ENDIF IF lQrCode cFileQRCode:=PEGA_ARQUIVO_SAGI(1076,.T.) ENDIF ::cFile_qrcode :=cFileQRCode IF oObj <> Nil oObj:oBitmap1:Hide() IF lConectado .OR. lQrCode oObj:oBitmap1:nStretch:= 0 oObj:oBitmap1:ReplaceBitmap( cFileQRCode , .F. ) ENDIF oObj:oBitmap1:REFRESH() oObj:oBitmap1:SHOW() ENDIF ENDIF Return(lRET) ******************************************************** METHOD OBTER_QRCODE(oObj) Class TWhatsapp_MegaAPI ******************************************************** LOCAL cFileQRCode:='', lRET:=.T. , cQrCodeBase64:='' IF !::PegaConfAPI() RETURN(.T.) ENDIF oObj:oRetorno:SETTEXT("Obtendo QRCode...") oObj:oRetorno:REFRESH() IF ::ComunicaAPI(oObj,'/qrcode', httpGet)=.F. lRET:=.F. ENDIF IF lRET IF 'connected' = ALLTRIM(::hHash['state']) oObj:oRetorno:SETTEXT("Já existe um celular conectado à API. Use Desconectar para sair") oObj:oRetorno:REFRESH() lRET:=.F. ELSEIF 'disconnected'= ALLTRIM(::hHash['state']) cQrCodeBase64:= STRTRAN(::hHash['qrCode'], "data:image/png;base64,") cFileQRCode:= SYG_GERAFILE()+".png" MemoWrit( cFileQRCode , SYG_BASE64DECODE(cQrCodeBase64), .F. ) ::cFile_qrcode :=cFileQRCode ELSE oObj:oRetorno:SETTEXT("Erro ao gerar QR CODE") oObj:oRetorno:REFRESH() lRET:=.F. ENDIF ENDIF Return(lRET) ******************************************************************* METHOD EnviarMsg(oObj,cContato, cMsg, cFilename,lLink,lMsg,cNomeArq) Class TWhatsapp_MegaAPI ******************************************************************* LOCAL cUrl, lRET:=.T., nNr_Enviou:='' LOCAL cRetErro:='',cTipoArq:='' , cExtensao:='' DEFAULT cMsg TO '' DEFAULT cFilename TO '' IF !::PegaConfAPI(lMsg,@nNr_Enviou) RETURN(.T.) ENDIF nNr_Enviou:=IF( ALLTRIM(nNr_Enviou)='' , GET_PARAMETRO('SYG_NUMERO_WHATSAPP',.T.) ,nNr_Enviou) lLink:=IF(lLink=Nil,.F.,lLink) lMsg :=IF(lMsg =Nil,.T.,lMsg ) cNomeArq:=IF(cNomeArq =Nil,'',cNomeArq ) IF EMPTY(cFilename) .AND. EMPTY(cMsg) IF lMsg showmsg('Digite Mensagem ou selecione arquivo para enviar.') ENDIF RETURN(.F.) ENDIF IF EMPTY(cFilename) IF lMsg sygDialogo("Enviando mensagem de texto...") ENDIF cUrl := "/sendmessage" ELSE cExtensao:= UPPER(Subs(cFilename,RAT(".",cFilename)+1)) IF cExtensao= 'PDF' cTipoArq:='PDF' ELSEIF cExtensao='MP3' cTipoArq:='AUDIO' ELSEIF cExtensao='MP4' cTipoArq:='VIDEO' ELSEIF cExtensao='PNG' .OR. cExtensao='BMP' .OR. cExtensao='JPG' .OR. cExtensao='JPEG' cTipoArq:='IMAGEM' ELSE cTipoArq:='LINK' ENDIF IF lMsg sygDialogo("Enviando arquivo...") ENDIF cUrl := IF(lLInk ,"/sendfile", "/sendfilebase64") ENDIF IF ::ComunicaAPI(oObj,cUrl, httpPost, cContato, cMsg, cFilename,cTipoArq,cNomeArq,@cRetErro) = .F. lRET:=.F. IF lMsg Showmsg_Edit("Não Enviou a Mensagem."+hb_osnewline()+ALLTRIM(cRetErro) ) ENDIF ELSE IF oObj = Nil // se não é na tela de teste dos parâmetros IF !EMPTY(cFilename) cMsg:='Enviou arquivo ' + cMsg ENDIF cMsg:= STRTRAN( cMsg , '\n' ,' ') SYG_BEGINTRANSACTION() ES( " insert into sagi_log_whatsapp( nr_enviou, nr_recebeu, mensagem, data, hora, usuario, empresa) " + ; " values ( " + CS( nNr_Enviou) + "," + ; CS( cContato) + "," + ; CS( cMsg ) + "," + ; CS( My_Date() ) + "," + ; CS( Time() ) + "," + ; CS( _Usuario() ) + "," + ; CS( _Filial() ) + ")" ) SYG_ENDTRANSACTION() ENDIF ENDIF IF lMsg sygDialogo() ENDIF Return(lRET) ******************************************** METHOD VerSeContatotemWhats(oObj) Class TWhatsapp_MegaAPI ******************************************** LOCAL cContato:='',cMsg:='',cFilename:='', lRET:=.T. IF !::PegaConfAPI() RETURN(.T.) ENDIF WITH OBJECT oObj cContato:= ALLTRIM(:oTel:VARGET()) cMsg:= ALLTRIM(:oTexto:VARGET()) cFilename:= ALLTRIM(:oArq:VARGET()) END IF ::ComunicaAPI(oObj, "/checknumber", httpPost, '55'+cContato,cMsg,cFilename) = .F. lRET:=.F. ENDIF Return(.t.) ***************************************** METHOD Reiniciar(oObj) Class TWhatsapp_MegaAPI ***************************************** LOCAL lRET:=.T. IF !::PegaConfAPI() RETURN(.T.) ENDIF IF ::ComunicaAPI(oObj,"/takeover", httpGet ) = .F. lRET:=.F. ENDIF IF lRET oObj:oRetorno:SETTEXT("Desconectado") oObj:oRetorno:REFRESH() oOBJ:oBitmap1:Hide() oOBJ:oBitmap1:nStretch:= 0 oOBJ:oBitmap1:ReplaceBitmap( PEGA_ARQUIVO_SAGI(1076,.T.) , .F. ) oOBJ:oBitmap1:REFRESH() oOBJ:oBitmap1:SHOW() ENDIF Return(.t.) ******************************************* METHOD Desconectar(oObj) Class TWhatsapp_MegaAPI ******************************************* LOCAL lRET:=.T. IF !::PegaConfAPI() RETURN(.T.) ENDIF IF !::ComunicaAPI(oObj,"/logout", httpGet) lRET:=.F. ENDIF IF lRET oObj:oRetorno:SETTEXT("Desconectado") oObj:oRetorno:REFRESH() oOBJ:oBitmap1:Hide() oOBJ:oBitmap1:nStretch:= 0 oOBJ:oBitmap1:ReplaceBitmap( PEGA_ARQUIVO_SAGI(1076,.T.) , .F. ) oOBJ:oBitmap1:REFRESH() oOBJ:oBitmap1:SHOW() ENDIF Return(lRET) *********************************************************************************************************************** METHOD ComunicaAPI(oObj,cUrl, nMetodo, cContato, cMsg, cFilename, cTipo_Arq,cNomeArq,cRetErro) Class TWhatsapp_MegaAPI ************************************************************************************************************************ LOCAL cMetodo, oWeb, sContent := '', lRET:=.T., cRETLINK:='' , cJSON:='', cRetorno:='' LOCAL cExtensao:='' , lVerSeTemWhats:=.F. , lQrCode:=.F. IF !::PegaConfAPI() RETURN(.T.) ENDIF cRetErro:=IF(cRetErro=Nil,'',cRetErro) cNomeArq:=IF(cNomeArq=Nil,'',cNomeArq) cTipo_Arq:=IF(cTipo_Arq=Nil,'PDF',cTipo_Arq) IF oObj<> NIl cTipo_Arq:=ALLTRIM(oObj:oTipo_Arq:VARGET()) ENDIF TRY oWeb := xhb_CreateObject("MSXML2.ServerXMLHTTP.6.0") CATCH // NAO FAZ NADA END if oWeb=nil ShowMsg('Erro ao tentar realizar a consulta, favor verificar se as DLL usada para NFe está registradas') RETURN(.F.) endif IF EMPTY(cContato) .AND. nMetodo = httpPost showmsg("Falta telefone de destino") RETURN(.F.) ENDif IF !EMPTY(GET_CONFIG_INI('Proxy','url','')) oWeb:SetProxy( 2, GET_CONFIG_INI('Proxy','url','')+":"+ALLTRIM(STR(GET_CONFIG_INI('Proxy','porta',0)))) IF !EMPTY(GET_CONFIG_INI('Proxy','user','')) oWeb:setProxyCredentials(GET_CONFIG_INI('Proxy','url','')+"\\"+GET_CONFIG_INI('Proxy','user',''), GET_CONFIG_INI('Proxy','pass','')) ENDIF ENDIF IF cUrl = "/checknumber" lVerSeTemWhats:=.T. ENDIF IF ALLTRIM(cUrl) = '/qrcode' lQrCode:=.T. ENDIF cUrl := ALLTRIM(::cEndPoint) + ALLTRIM(cUrl) +"?token=" + ALLTRIM(::cToken) cMetodo := IIF( nMetodo == httpGet, 'GET', 'POST') IF _SemSenha()='N' showmsg_edit(cUrl) ENDIF TRY //https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms760403(v%3Dvs.85) oWeb:setTimeouts(1000*60, 1000*60, 0, 0) // PARAMETRO ZERO É INFINITO oWeb:Open( cMetodo, cUrl, .F.) // True = pra vir o ResponseBody CATCH ShowMSG('ERRO : Não conseguiu abrir o Web Service :'+Ole2TxtError() ) RETURN(.F.) END IF nMetodo = httpPost oWeb:setRequestHeader( "Content-Type", "application/json" ) IF lVerSeTemWhats cJSON:='{'+; '"phone": "' +ALLTRIM(cContato)+'"'+; '}' ELSE IF !EMPTY(cFilename) IF cTipo_Arq <> 'LINK' sContent := MemoRead(cFilename) sContent := SYG_BASE64ENCODE(sContent) sContent := Syg_Limpa( ALLTRIM( sContent ) ) ENDIF cJSON:='{'+; '"phone": "' +ALLTRIM(cContato)+'",' cExtensao:= STRTRAN( LOWER(Subs(cFilename,RAT(".",cFilename)+1)), 'jpg' ,'jpeg') IF !EMPTY(cNomeArq) cNomeArq:= ALLTRIM(cNomeArq)+'.' ELSE cNomeArq:= 'arquivo.' ENDIF cNomeArq+= cExtensao IF cTipo_Arq = 'PDF' cJSON+= '"body": "' +'data:application/pdf;base64,'+ALLTRIM(sContent)+'",' ELSEIF cTipo_Arq = 'IMAGEM' cJSON+= '"body": "' +'data:image/'+cExtensao+';base64,'+ALLTRIM(sContent)+'",' ELSEIF cTipo_Arq = 'AUDIO' cJSON+= '"body": "' +'data:audio/mpeg;base64,'+ALLTRIM(sContent)+'",' ELSEIF cTipo_Arq = 'VIDEO' cJSON+= '"body": "' +'data:video/mp4;base64,'+ALLTRIM(sContent)+'",' ELSEIF cTipo_Arq = 'LINK' cJSON+= '"body": "' +ALLTRIM(cFilename)+'",' ENDIF cJSON+= '"filename":"'+ ALLTRIM(cNomeArq) +'",'+; '"caption":"' +ALLTRIM(cMsg)+'"'+; '}' ELSE IF !EMPTY(cMsg) cJSON:='{'+; '"phone": "' +ALLTRIM(cContato)+'",'+; '"body": "' +ALLTRIM(cMsg)+'"'+; '}' ENDIF ENDIF ENDIF ENDIF TRY IF EMPTY(cJSON) oWeb:Send() ELSE oWeb:Send( cJSON ) ENDIF CATCH lRET:=.F. END IF _SemSenha()='N' .AND. !EMPTY(cJSON) showmsg_edit('JSON: ' + cJSON) ENDIF IF lRET DO WHILE oWeb:readyState <> 4 millisec(500) ENDDO cRETLINK := oWeb:responseText ENDIF IF _SemSenha()='N' showmsg_edit('RESPOSTA: ' + cRETLINK) ENDIF IF !EMPTY(cRETLINK) ::cRet := cRETLINK hb_jsondecode( ::cRet, @::hHash ) IF VALTYPE(::hHash) != 'H' cRetorno:='Algo deu errado, verifique Endereço/token da API' IF oObj<>Nil oObj:oRetorno:SETTEXT(cRetorno) oObj:oRetorno:REFRESH() ENDIF RETURN(.F.) ENDIF IF len(::hHash)<0 cRetorno:='Algo deu errado, verifique Endereço/token da API ou retorno vazio, tente novamente' IF oObj<>Nil oObj:oRetorno:SETTEXT(cRetorno) oObj:oRetorno:REFRESH() ENDIF RETURN(.F.) ENDIF IF HHasKey( ::hHash, 'error' ) cRetorno:="ERRO: "+ALLTRIM(::hHash['error']) cRetErro:="ERRO: "+ALLTRIM(::hHash['error']) lRET:=.F. ENDIF IF !lQrCode IF HHasKey( ::hHash, 'accountStatus' ) IF ::hHash['accountStatus'] lRET:=.T. ELSE lRET:=.F. cRetErro:="ERRO: "+IF(HHasKey( ::hHash, 'message' ) , ALLTRIM(::hHash['message']),'') ENDIF ENDIF ENDIF IF lRET cRetorno:= IF(HHasKey( ::hHash, 'state' ) , ALLTRIM(::hHash['state']),'') + ' ' +; IF(HHasKey( ::hHash, 'message' ) , ALLTRIM(::hHash['message']),'') ENDIF ELSE RETURN(.F.) ENDIF IF oObj<>Nil oObj:oRetorno:SETTEXT(cRetorno) oObj:oRetorno:REFRESH() ELSE // showmsg_edit(cRetorno) ENDIF oWeb:=NIL RETURN(lRET) Quote Link to comment Share on other sites More sharing options...
Marca Posted September 9, 2021 Author Report Share Posted September 9, 2021 Pessoal. Bom dia Somente para que outros não tenham o mesmo problema que eu tive aqui A respeito desta Api do tal Handel pra os que pensam em utilizar que saibam que o suporte dele simplesmente inexiste. Estamos aguardando a pelo menos uns 20 dias uma situação que se consiga capturar os áudios enviados e o mesmo ficou de liberar e até hoje nada. Na semana passada alguns clientes que começaram a utilizar o módulo que utiliza a Api dele reclamaram de mensagens enviadas que simplesmente não chegam no cliente. Entramos em contato com os clientes que não receberam e se quer .JPG chega para estas pessoas. A resposta dele é que havia tido uma atualização e que isso resolveria o problema. Indaguei a ele sobre estas mensagens que não chegaram como eu faria pra saber quais não foram entregues e o mesmo respondeu que não tem o que fazer. Resumo. O cara vende um produto que não consegue dar suporte e que profissionalmente não atende com seriedade nossas necessidades. Fica ai a Dica. Quote Link to comment Share on other sites More sharing options...
vilian Posted September 10, 2021 Report Share Posted September 10, 2021 Amigos, Apenas API Oficiais realmente funcionam bem com whatszap. API(s) como essa da MEGA API não conseguem entregar todos os recursos que o APP disponibiliza e vc ainda corre o risco de ficar sem o serviço, pq toda vez que é descoberta a brecha através da qual essas API(s) não oficiais acessam o serviço, a empresa simplesmente derruba o serviço e todos os seus clientes vão ficar a ver navios... uma verdadeira dor de cabeça. Quote Link to comment Share on other sites More sharing options...
Marca Posted September 10, 2021 Author Report Share Posted September 10, 2021 1 hora atrás, vilian disse: Amigos, Apenas API Oficiais realmente funcionam bem com whatszap. API(s) como essa da MEGA API não conseguem entregar todos os recursos que o APP disponibiliza e vc ainda corre o risco de ficar sem o serviço, pq toda vez que é descoberta a brecha através da qual essas API(s) não oficiais acessam o serviço, a empresa simplesmente derruba o serviço e todos os seus clientes vão ficar a ver navios... uma verdadeira dor de cabeça. Pois é Vilian. Este é o grande problema Passei uma informação a meu cliente que não consegui cumprir. O Tal Handel citado ai inclusive agora bloqueou minha API mesmo eu tendo pago por ela. Procurarei meus direitos de alguma maneira e ainda bem que temos credibilidade com nossos clientes e explicamos +- isso no início para eles. Sendo que um cliente que não entende nada ainda vinculou o problema a mim. Quote Link to comment Share on other sites More sharing options...
hcunha Posted December 1, 2021 Report Share Posted December 1, 2021 Ola a todos, Sei que essa conversa é de setembro e já faz alguns meses, mas só pra informar que eu também fiquei na mão com o Hendel e ele me deixou sem nenhum suporte, porem soube pela esposa dele que ele está hospitalizado e que um cara chamado Fabio vai atender. Eu não vou mais precisar pois já fiz com outra plataforma. Quote Link to comment Share on other sites More sharing options...
Marca Posted December 1, 2021 Author Report Share Posted December 1, 2021 3 horas atrás, hcunha disse: Ola a todos, Sei que essa conversa é de setembro e já faz alguns meses, mas só pra informar que eu também fiquei na mão com o Hendel e ele me deixou sem nenhum suporte, porem soube pela esposa dele que ele está hospitalizado e que um cara chamado Fabio vai atender. Eu não vou mais precisar pois já fiz com outra plataforma. HCunha. Esta esposa dele já matou o tal Hendel 3x ressuscitou outras 4 e ai por diante. Nada que venha deles acredite pôs simplesmente é mais uma história. Quote Link to comment Share on other sites More sharing options...
exata Posted December 2, 2021 Report Share Posted December 2, 2021 Bom dia, Também tivemos vários problemas com o Hendell. Compramos a API e a Central dele em abril do ano passado, para atender a demanda de nossos clientes, e acabaram nos vencendo pelo cansaço. Como disse o Marcelo, ele já morreu algumas vezes. Com isso acabamos desenvolvendo nossa própria API REST, com integração de forma bem simples com o FiveWin. Se alguém tiver interesse em usá-la é só entrar em contato (21) 9 9239-4998. Quote Link to comment Share on other sites More sharing options...
sygecom Posted December 2, 2021 Report Share Posted December 2, 2021 Tenho usado cada vez mais a MEGA API , está muito boa, nunca tivemos problemas e, tem bastante recurso Quote Link to comment Share on other sites More sharing options...
Marca Posted December 2, 2021 Author Report Share Posted December 2, 2021 4 horas atrás, sygecom disse: Tenho usado cada vez mais a MEGA API , está muito boa, nunca tivemos problemas e, tem bastante recurso O Problema é em um momento como este gerarmos mais um custo ao cliente. Não sei ai na região de vcs mais por aqui está tudo muito parado. Falar com o cliente em mais 100,00 150,00 reais a mais é praticamente um tiro no pé. Theotokos 1 Quote Link to comment Share on other sites More sharing options...
sygecom Posted December 6, 2021 Report Share Posted December 6, 2021 @Marca Acredito que precisa avaliar isso, que citou, crie boas ideias/soluções no seu software que justifique o cliente investir, na integração da MEGA tem um WEBHOOK, que você consegue deixar o cara inclusive falando no chat do sistema como se tivesse no whatsapp. Ainda acho que vale a pena Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted February 22, 2022 Report Share Posted February 22, 2022 Pessoal poderiam citar alguns APIs oficiais, quais usam e se possivel, preços? Pesquisei e achei vários mas queria uma opinião para uma melhor integração com o fivewin. E achei inrteressante uma coisa, em quase todos os forum (inclusive do Toledo), se fala pouco no assunto. Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted February 22, 2022 Report Share Posted February 22, 2022 Em 20/08/2021 at 13:23, sygecom disse: Estou usando o MEGA-API tem atendido bem até o momento. Megaapi API Whatsapp (getpostman.com) Amigo ele identifica mensagens que chegam? Se intrega a uma conta comercial onde poderíamos colocar como um robô para responder automaticamente enviando também um PDF ou JPG?? Quote Link to comment Share on other sites More sharing options...
sygecom Posted February 22, 2022 Report Share Posted February 22, 2022 com webhook consegue receber sim as mensagens, no meu caso eu já tinha as api prontas, então foi mais fácil de integrar isso. Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted February 22, 2022 Report Share Posted February 22, 2022 4 horas atrás, sygecom disse: com webhook consegue receber sim as mensagens, no meu caso eu já tinha as api prontas, então foi mais fácil de integrar isso. Bom meu caro, poderia me passar seu skype! Quote Link to comment Share on other sites More sharing options...
sygecom Posted February 24, 2022 Report Share Posted February 24, 2022 não fico on-line no skype, uso ele raramente. chama no whatsapp: 51-99191-3474 Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted February 24, 2022 Report Share Posted February 24, 2022 2 horas atrás, sygecom disse: não fico on-line no skype, uso ele raramente. chama no whatsapp: 51-99191-3474 blz Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.