{"id":1527,"date":"2022-03-07T08:13:12","date_gmt":"2022-03-07T08:13:12","guid":{"rendered":"https:\/\/blog.ultramsg.com\/nasil-alinir-whatsapp-mesajlari-python-webhook\/"},"modified":"2022-05-03T01:40:53","modified_gmt":"2022-05-03T01:40:53","slug":"nasil-alinir-whatsapp-mesajlari-python-webhook","status":"publish","type":"post","link":"https:\/\/blog.ultramsg.com\/tr\/nasil-alinir-whatsapp-mesajlari-python-webhook\/","title":{"rendered":"Python ve webhook kullanarak WhatsApp mesajlar\u0131 nas\u0131l al\u0131n\u0131r"},"content":{"rendered":"\n<p><\/p>\n\n<h2 class=\"wp-block-heading\">Tan\u0131t\u0131m <br\/><\/h2>\n\n<p>Bu e\u011fitimde, python kullanarak gelen WhatsApp mesajlar\u0131n\u0131 i\u015flemek i\u00e7in basit bir uygulama olu\u015fturaca\u011f\u0131z.<\/p>\n\n<h2 class=\"wp-block-heading\">ba\u011f\u0131ml\u0131l\u0131klar<\/h2>\n\n<h3 class=\"wp-block-heading\">ngrok&#8217;u y\u00fckle<\/h3>\n\n<p>yerel kalk\u0131nma ama\u00e7lar\u0131 i\u00e7in bir t\u00fcnel a\u00e7ma hizmeti gereklidir. Bu \u00f6rnekte <a href=\"https:\/\/ngrok.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">ngrok<\/a> kullan\u0131lm\u0131\u015ft\u0131r, ngrok&#8217;u <a href=\"https:\/\/ngrok.com\/download\" target=\"_blank\" rel=\"noreferrer noopener\">buradan<\/a> indirebilirsiniz.<\/p>\n\n<h3 class=\"wp-block-heading\">FLASK&#8217;\u0131 kurun<\/h3>\n\n<pre class=\"wp-block-code\"><code>pip install flask<\/code><\/pre>\n\n<p>FLASK \u00e7er\u00e7evesini kullanarak sunucuyu da\u011f\u0131tmam\u0131z gerekiyor.<br\/>FLASK, gelen isteklere uygun \u015fekilde yan\u0131t verilmesini ve bunlar\u0131 i\u015flemesini sa\u011flar.<\/p>\n\n<h2 class=\"wp-block-heading\">1. ad\u0131m : Yeni \u015fi\u015fe uygulamas\u0131 olu\u015fturun<\/h2>\n\n<p>Dosyay\u0131 olu\u015fturaca\u011f\u0131z: <strong>app.py<\/strong> Ve i\u00e7ine a\u015fa\u011f\u0131daki kodu yaz\u0131yoruz<\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"python\" class=\"EnlighterJSRAW\">from flask import Flask, request, jsonify\nfrom test import Ultrawebhook\nimport json\n\napp = Flask(__name__)\n\n@app.route('\/', methods=&#91;'POST'])\ndef home():\n    if request.method == 'POST':\n        bot = Ultrawebhook(request.json)\n        return bot.processing()\n\nif(__name__) == '__main__':\n    app.run()<\/code><\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">2. ad\u0131m : Gelen mesaj i\u015fleme<\/h2>\n\n<p>Dosyay\u0131 olu\u015fturaca\u011f\u0131z: <strong>test.py<\/strong> Ve i\u00e7ine a\u015fa\u011f\u0131daki kodu yaz\u0131yoruz<\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"python\" class=\"EnlighterJSRAW\">import json\nimport requests\n\n\nclass Ultrawebhook():    \n    def __init__(self, json):\n        self.json = json\n        self.dict_messages = json&#91;'data']\n\n\n    def processing(self):\n        if self.dict_messages != &#91;]:\n            message = self.dict_messages\n            msg_from = message&#91;'from'].split()\n            msg_text = message&#91;'body'].split()\n            print(\"sender phone number : \" + msg_from&#91;0])\n            print(\"message : \" + msg_text&#91;0])\n            return ''\n<\/code><\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">3. ad\u0131m : Projeyi \u00e7al\u0131\u015ft\u0131r\u0131n<\/h2>\n\n<h3 class=\"wp-block-heading\">\u015ei\u015feyi ba\u015flat:<\/h3>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"powershell\" class=\"EnlighterJSRAW\">flask run<\/code><\/code><\/pre>\n\n<h3 class=\"wp-block-heading\">ngrok&#8217;u ba\u015flat<\/h3>\n\n<p>Pencereler i\u00e7in :<\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"powershell\" class=\"EnlighterJSRAW\">ngrok http 80<\/code><\/code><\/pre>\n\n<p>Mac i\u00e7in :<\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"powershell\" class=\"EnlighterJSRAW\">.\/ngrok http 5000<\/code><\/code><\/pre>\n\n<p>Bundan sonra, bir \u00f6rne\u011fin g\u00f6rmelisiniz:<\/p>\n\n<pre class=\"wp-block-code\"><code><code data-enlighter-language=\"powershell\" class=\"EnlighterJSRAW\">https:\/\/7647-115-83-121-164.ngrok.io<\/code><\/code><\/pre>\n\n<p>URL&#8217;nizi \u00d6rnek ayarlar\u0131na yap\u0131\u015ft\u0131r\u0131n \u060c A\u015fa\u011f\u0131daki resimdeki gibi <\/p>\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"612\" src=\"https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/03\/image-1024x612.png\" alt=\"Python ve webhook-ultramsg kullanarak WhatsApp mesajlar&#x131; al&#x131;n\" class=\"wp-image-1471\" title=\"\" srcset=\"https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/03\/image-1024x612.png 1024w, https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/03\/image-300x179.png 300w, https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/03\/image-768x459.png 768w, https:\/\/blog.ultramsg.com\/wp-content\/uploads\/2022\/03\/image.png 1432w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n<h2 class=\"wp-block-heading\" id=\"example-json-response\">\u00d6RNEK JSON YANIT<\/h2>\n\n<pre class=\"wp-block-preformatted\"><code data-enlighter-language=\"json\" class=\"EnlighterJSRAW\">{\n  \"event_type\": \"message_received\",\n  \"instanceId\": \"90\",\n  \"data\": {\n    \"id\": \"false_10172127174@c.us_7ECAED9EB68D3474BE591443134C2E3F\",\n    \"from\": \"10172127174@c.us\",\n    \"to\": \"10172127175@c.us\",\n    \"ack\": \"pending\",\n    \"type\": \"chat\",\n    \"body\": \"I can't send a message using php code\\nCan you help me\",\n    \"fromMe\": false,\n    \"isForwarded\": false,\n    \"time\": 1643311467\n  }\n}<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">Finley : Proje Testi ve WhatsApp mesajlar\u0131n\u0131 ilk mesaj al\u0131n<\/h2>\n\n<p>\u015eimdi \u00f6rne\u011fi ba\u011flad\u0131\u011f\u0131n\u0131z numaraya bir WhatsApp mesaj\u0131 g\u00f6nderin.<br\/>G\u00f6nderenin numaras\u0131 ve g\u00f6nderilen mesaj yazd\u0131r\u0131lacakt\u0131r.<\/p>\n\n<p>Tebrikler. \u0130lk WhatsApp mesaj\u0131n\u0131z\u0131 ald\u0131n\u0131z.<\/p>\n\n<p>Art\u0131k WhatsApp mesajlar\u0131n\u0131 ald\u0131ktan sonra Python ve Ultramsg API kullanarak kolayca bir sohbet robotu olu\u015fturabilirsiniz.<\/p>\n\n<h2 class=\"wp-block-heading\" id=\"types-of-webhooks-to-use-with-whatsapp-api-ultramsg\">WhatsApp API ve Ultramsg ile kullan\u0131lacak web kancas\u0131 t\u00fcrleri<\/h2>\n\n<ul class=\"wp-block-list\"><li><strong>webhook_message_received<\/strong> : mesaj al\u0131nd\u0131\u011f\u0131nda webhook&#8217;lardaki bildirimler.<\/li><li><strong>webhook_message_create<\/strong> : mesaj olu\u015fturuldu\u011funda web kancalar\u0131ndaki bildirimler .<\/li><li><strong>webhook_message_ack<\/strong> : webhook&#8217;larda ack (mesaj teslim edildi ve mesaj g\u00f6r\u00fcnt\u00fclendi) bildirimleri.<\/li><\/ul>\n\n<p>Tam <a href=\"https:\/\/docs.ultramsg.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Whatsapp API Belgelerini<\/a> ve <a href=\"https:\/\/blog.ultramsg.com\/whatsapp-api-by-ultramsg-faq\/\">SSS&#8217;yi<\/a> g\u00f6rebilirsiniz.<a href=\"https:\/\/user.ultramsg.com\/\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tan\u0131t\u0131m Bu e\u011fitimde, python kullanarak gelen WhatsApp mesajlar\u0131n\u0131 i\u015flemek i\u00e7in basit bir uygulama olu\u015fturaca\u011f\u0131z. ba\u011f\u0131ml\u0131l\u0131klar &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"Python ve webhook kullanarak WhatsApp mesajlar\u0131 nas\u0131l al\u0131n\u0131r\" class=\"read-more button\" href=\"https:\/\/blog.ultramsg.com\/tr\/nasil-alinir-whatsapp-mesajlari-python-webhook\/#more-1527\" aria-label=\"Read more about Python ve webhook kullanarak WhatsApp mesajlar\u0131 nas\u0131l al\u0131n\u0131r\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":1510,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[82],"tags":[85,88,162,84],"class_list":["post-1527","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-whatsapp-apisi","tag-ogreticiler","tag-piton-tr","tag-sise","tag-web-kancasi","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\/tr\/wp-json\/wp\/v2\/posts\/1527","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/comments?post=1527"}],"version-history":[{"count":9,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/posts\/1527\/revisions"}],"predecessor-version":[{"id":2347,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/posts\/1527\/revisions\/2347"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/media\/1510"}],"wp:attachment":[{"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/media?parent=1527"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/categories?post=1527"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ultramsg.com\/tr\/wp-json\/wp\/v2\/tags?post=1527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}