-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Fix with nine number brazil #382
Fix with nine number brazil #382
Conversation
Poderia implementar na query para já fazer a pesquisa com e sem o 9 dígito, diminuiria as regras lógicas necessárias e uma segunda consulta ao banco caso não exista :) |
Pode ser também, mas para isso preciso modificar o método search para o filter, pois o search não busca múltiplos números, vou fazer aqui e subir. |
Fiz a alteração, preciso de uma ajuda para testar, não foi testado. |
Aguardando a validação e testes para aprovação |
@DavidsonGomes chegou a fazer um teste? Não sei exatamente como testar a evolutionAPI com o chatwoot. |
Opa, acabei de instalar aqui a versão develop e gerou um erro. Acredito que seja desta PR, ou então pode ser meu ambiente. Qual versão do chatwoot vocês estão usando? O erro é este: NoMethodError Api::V1::Accounts::ContactsController#filter undefined method each_with_index for nil:NilClass Valeu! |
Amigo, você consegue me ajudar a testar? Faço o fix, eu não consegui fazer o teste. |
Você não tem o chatwoot instalado amigo? Se você for testar localmente teria que ter ele instalado, ou então, usar o chatwoot online e configurar uma caixa do tipo API: https://www.chatwoot.com |
NPM install não roda em mac por algum motivo.. se tiver alguém tiver a disposição para me ajudar a testar faço o fix, se não so remover a pr da branch develop. |
Mas isso pode ser algo do meu ambiente também. O ideal seria uma terceira pessoa testar para verificar se é algo global mesmo. Depois vou tentar dar uma olhada com mais calma. |
Tive o mesmo erro. O Chatwoot deixou de receber mensagens após o PR. Voltei à versão anterior. |
O SDK do chatwoot que está sendo usado está com problemas no payload do método filter, esse é um dos problemas, já enviei um pull lá pra resolver figurolatam/chatwoot-sdk#7 essa é uma regressão da versão na 1.1.15 está correto. |
Fiz um hotfix nesta PR: #392 até sair correção no SDK. Dá para voltar esta PR atual ou então usar esta correção. |
No processo de debug aqui notei que o payload montado em getFilterPayload não está funcionando, nele é colocado múltiplos valores no array values, que apesar de ser um array, aparentemente não funciona como pensamos. Se fizer um filtro direto pelo chatwoot olhando pela aba network vai ver que ele não coloca múltiplos números lá dentro quando se usa um OR. Correto é um objeto com attribute_key pra cada numero, ex: {"payload":[{"attribute_key":"phone_number","filter_operator":"contains","values":["+553499999999"],"query_operator":"or","attribute_model":"standard","custom_attribute_type":""},{"attribute_key":"phone_number","filter_operator":"contains","values":["+5534999999999"],"custom_attribute_type":""}]} outra duvida é, não é necessário fazer a busca por nome e e-mail não é? Tenho ate duvidas sobre o identifier |
Na PR que fiz, é para utilizar 4 campos Tinha feito a consulta no Postman antes de fazer na pr, tinha dado certo, multiplos campos com multiplos numeros |
Existe cenários onde é utilizado no ChatWoot com numeros que não são providos pela EvolutionAPI.
Por exemplo, na Cloud API, os numeros utilizados estão com 9.
Quando envia uma nova mensagem para esses números utilizando a EvolutionAPI, a mensagem é enviada normalmente, mas quando recebe, é criado um novo contato, pois o número está sem o 9.
Com isso, fiz a implementação para buscar novamente o número caso for DDI do Brasil, não pode ser grupo e que tenha mais de 13 caracteres.
+55 XX X XXXXXXXX
Será feito a remoção do 9 e feito uma nova busca no Chatwoot.