{"id":1296,"date":"2022-03-02T15:08:03","date_gmt":"2022-03-02T15:08:03","guid":{"rendered":"https:\/\/blog.ultramsg.com\/receber-whatsapp-api-messages-use-webhook-nodejs\/"},"modified":"2022-03-10T05:53:21","modified_gmt":"2022-03-10T05:53:21","slug":"receber-whatsapp-api-messages-use-webhook-nodejs","status":"publish","type":"post","link":"https:\/\/blog.ultramsg.com\/pt-br\/receber-whatsapp-api-messages-use-webhook-nodejs\/","title":{"rendered":"Receba mensagens do WhatsApp usando Webhook e Node.js"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"introduction\">Introdu\u00e7\u00e3o<\/h2>\n\n<p>Neste tutorial, criaremos uma p\u00e1gina para lidar com webhooks de mensagens do WhatsApp recebidas usando Node.js<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"dependencies\">Depend\u00eancias<\/h2>\n\n<p>para fins de desenvolvimento local, \u00e9 necess\u00e1rio um servi\u00e7o de tunelamento. Este exemplo usa o ngrok, voc\u00ea pode baixar o ngrok aqui: <a href=\"https:\/\/ngrok.com\/download\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/ngrok.com\/download<\/a><\/p>\n\n<h2 class=\"wp-block-heading\" id=\"set-up-your-project\">Configure seu projeto<\/h2>\n\n<p>instale express e body-parser:<\/p>\n\n<pre class=\"wp-block-code\"><code>npm install express body-parser<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\" id=\"a-simple-example-of-receiving-whatsapp-messages-from-ultramsg\">Um exemplo simples de recebimento de mensagens do WhatsApp do Ultramsg <\/h2>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"js\" class=\"EnlighterJSRAW\">const express = require('express')\nconst bodyParser = require('body-parser')\nconst app = express()\nconst PORT = 3000\n\/\/ Setup a webhook route\napp.use(bodyParser.json())\napp.post('\/ultramsgwebhook', (req, res) =&gt; {\n  console.log(req.body) \/\/ print all response\n\n  \/\/messageFrom=req.body&#91;'data']&#91;'from'] \/\/ sender number\n  \/\/messageMsg=req.body&#91;'data']&#91;'body'] \/\/ Message text\n  res.status(200).end()\n})\n\napp.use(bodyParser.json())\napp.listen(PORT, () =&gt; console.log(`\ud83d\ude80 Server running on port ${PORT}\ud83d\ude80 `))<\/code><\/code><\/pre>\n\n<h2 class=\"wp-block-heading\" id=\"start-ngrok-node-js-project\">Iniciar projeto ngrok e Node.js <\/h2>\n\n<p>Inicie o Ngrok para Windows:<\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"powershell\" class=\"EnlighterJSRAW\">ngrok http 3000<\/code><\/code><\/pre>\n\n<p>Inicie o Ngrok para Mac:<\/p>\n\n<pre class=\"wp-block-preformatted\"><code data-enlighter-language=\"powershell\" class=\"EnlighterJSRAW\">.\/ngrok http 3000<\/code><\/pre>\n\n<p>Inicie o projeto Nodejs: <\/p>\n\n<pre class=\"wp-block-code\"><code>node index.js<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\" id=\"set-webhook-url-to-your-instance-in-ultramsg\">Defina o URL do Webhook para sua inst\u00e2ncia no ultramsg<\/h2>\n\n<p>Criamos um novo endpoint do webhook: http:\/\/your-ngrok.io.com\/ultramsgwebhook para tratar da requisi\u00e7\u00e3o, agora as urls do webhook devem ser colocadas na inst\u00e2ncia no Ultramsg e habilitar a op\u00e7\u00e3o Webhook on Received, conforme imagem a seguir: <\/p>\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"570\" src=\"https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/02\/image-1024x570.png\" alt=\"Receba mensagens do WhatsApp usando Webhook e Node.js - API do WhatsApp\" class=\"wp-image-1246\" title=\"\" srcset=\"https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/02\/image-1024x570.png 1024w, https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/02\/image-300x167.png 300w, https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/02\/image-768x427.png 768w, https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/02\/image.png 1334w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n<h2 class=\"wp-block-heading\" id=\"example-json-response\">EXEMPLO DE RESPOSTA JSON<\/h2>\n\n<pre class=\"wp-block-preformatted\"><code data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">{\n  event_type: 'message_received',\n  instanceId: '1150',\n  data: {\n    id: 'false_17692426345@c.us_3EB0FF54790702367270',\n    from: '17692426340@c.us',\n    to: '17692426345@c.us',\n    ack: '',\n    type: 'chat',\n    body: 'Hello, World!',\n    fromMe: false,\n    time: 1644957719\n  }\n}<\/code><\/pre>\n\n<p>Parab\u00e9ns. Voc\u00ea recebeu sua primeira mensagem do WhatsApp.<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"types-of-webhooks-to-use-with-whatsapp-api-ultramsg\">Tipos de webhooks para usar com a API do WhatsApp e Ultramsg <\/h2>\n\n<ul class=\"wp-block-list\"><li><strong>webhook_message_received<\/strong> : notifica\u00e7\u00f5es em webhooks quando a mensagem \u00e9 recebida.<\/li><li><strong>webhook_message_create<\/strong> : notifica\u00e7\u00f5es em webhooks quando a mensagem \u00e9 criada.<\/li><li><strong>webhook_message_ack<\/strong> : notifica\u00e7\u00f5es ack (mensagem entregue e mensagem visualizada) em webhooks.<\/li><\/ul>\n\n<ul class=\"wp-block-list\"><li>finalmente, voc\u00ea pode ver <a href=\"https:\/\/docs.ultramsg.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">a documenta\u00e7\u00e3o completa da API do Whatsapp<\/a> e as <a href=\"https:\/\/blog.ultramsg.com\/whatsapp-api-by-ultramsg-faq\/\" data-type=\"URL\" data-id=\"https:\/\/blog.ultramsg.com\/whatsapp-api-by-ultramsg-faq\/\">perguntas frequentes<\/a> .<\/li><li><a href=\"https:\/\/blog.ultramsg.com\/pt-br\/whatsappapi-message-with-node-js-and-ultramsg\/\" data-type=\"URL\" data-id=\"https:\/\/blog.ultramsg.com\/whatsappapi-message-with-node-js-and-ultramsg\/\">Como enviar uma mensagem pela API do WhatsApp usando o Node.js facilmente<\/a> .<\/li><\/ul>\n\n<p>Voc\u00ea pode ver as etapas anteriores neste v\u00eddeo:<\/p>\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Receive WhatsApp messages using Webhook and Node.js\" width=\"1200\" height=\"675\" src=\"https:\/\/www.youtube.com\/embed\/c0_U_OcAPKw?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Introdu\u00e7\u00e3o Neste tutorial, criaremos uma p\u00e1gina para lidar com webhooks de mensagens do WhatsApp recebidas &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Receba mensagens do WhatsApp usando Webhook e Node.js\" class=\"read-more button\" href=\"https:\/\/blog.ultramsg.com\/pt-br\/receber-whatsapp-api-messages-use-webhook-nodejs\/#more-1296\" aria-label=\"Read more about Receba mensagens do WhatsApp usando Webhook e Node.js\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":1248,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[111],"tags":[118,117,125],"class_list":["post-1296","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-api-do-whatsapp","tag-node-js-pt-br","tag-tutoriais","tag-webhook-pt-br","infinite-scroll-item","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-25","no-featured-image-padding"],"_links":{"self":[{"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/posts\/1296","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/comments?post=1296"}],"version-history":[{"count":11,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/posts\/1296\/revisions"}],"predecessor-version":[{"id":1658,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/posts\/1296\/revisions\/1658"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/media\/1248"}],"wp:attachment":[{"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/media?parent=1296"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/categories?post=1296"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ultramsg.com\/pt-br\/wp-json\/wp\/v2\/tags?post=1296"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}