نحوه ارسال نوتیفیکیشن تلگرام و تنظیم ربات در تلگرام

نحوه ارسال نوتیفیکیشن تلگرام و تنظیم ربات در تلگرام

تلگرام یک پلتفرم عالی با تعداد زیادی کاربر است (من خودم یک کاربر تلگرام هستم) و بهترین راه برای دریافت نوتیفیکیشن و ارسال آن در تلگرام چیست؟ با اطمینان نمی توانیم بدانیم شاید آنها ایمیل یا چیز دیگری را دوست داشته باشند، اما می توان حدس زد که ارسال نوتیفیکیشن ها به تلگرام بسیار راحت خواهد بود.

ارسال نوتیفکیشن در تلگرام

اگر مایلید نوتیفیکیشن های تلگرام را از برنامه خود ارسال کنید ، به مکان مناسبی آمده اید و من این ویژگی را به برنامه خود اضافه کردم و آن را دوست دارم.

یک یادداشت سریع در این مقاله نمونه هایی از کد را در پایتون ارائه می کنم، اما ایده ها مختص پایتون نیستند و بدون هیچ عجله ای می توانند به زبان دیگری نیز ترجمه شوند.

بنابراین بدون آزار و اذیت بیشتر ، نحوه ارسال نوتیفیکیشن در ربات تلگرام را توضیح خواهیم داد.

یک ربات تلگرام ایجاد کنید

اول از همه ، شما نیاز به ایجاد یک ربات تلگرام دارید، برای این کار باید از یک ربات تلگرام استفاده کنید، میتوانید از BotFather استفاده کنید.

تبلیغات در کانال های پربازدید تلگرام

اکنون می بینید که چه کاری می تواند انجام دهد. اما آنچه مورد علاقه ماست ایجاد یک چیز جدید نیست ، بنابراین این چیزی است که ما می خواهیم انتخاب کنیم (/newbot).

تبلیغات در کانال های پربازدید تلگرام

شما به سرعت می فهمید که نام ربات باید به "bot" ختم شود. و از آنجا که شما مثل من هستید و خیلی دیر به بازی می آیید ، بیشتر نامهای ربات قبلاً گرفته شده است.

تبلیغات در کانال های پربازدید تلگرام

اما در نهایت ، شما می خواهید یک نام برای ربات خود پیدا کنید و یک نشانه دسترسی را که ما به آن نیاز داریم دریافت کنید.

اکنون که یک ربات دارید ، کاربران تلگرام می توانند آن را پیدا کرده و از آن استفاده کنند. اما یک مشکل وجود دارد، شما نمی توانید کاربرانی را که از تلگرام به کاربران برنامه شما وارد می شوند مرتبط کنید. بگذارید به شما نشان دهیم چرا؟

هنگامی که دکمه "شروع" را روی ربات خود فشار داد ، "بروزرسانی" دریافت خواهید کرد، با مراجعه به لینک زیر می توانید تمام به روزرسانی های bot را حتی در مرورگر خود بررسی کنید.

URL https://api.telegram.org/bot{bot_token}/getUpdates

(فراموش نکنید که از نشانه دسترسی خود در URL استفاده کنید)

نمی توانید چیزی بخوانید؟ نگران نباش با نصب برخی از پسوند پیشراننده JSON در مرورگر خود می توانید آن را تعمیر کنید، من از JSON Formatter برای کروم استفاده می کنم، به نظر خیلی بهتر میاد.

تبلیغات در کانال های پربازدید تلگرام

بنابراین همانطور که می بینید ما اطلاعات زیادی در مورد شخص دریافت نمی کنیم. از این اطلاعات می توانیم نام کامل آنها را بدست آوریم. اما خوشبختانه اگر کاربر نام کامل خود را در برنامه شما ارائه دهد ، و منحصر به فرد بودن آن را تضمین نمی کند. بنابراین ما نمی توانیم از آن استفاده کنیم تا کاربر را در برنامه های شما پیدا کنیم.

یکی دیگر از اطلاعاتی که به دست می آوریم نام کاربری است، این بسیار مفید است زیرا بین همه کاربران تلگرام بی نظیر است، اما به احتمال زیاد آن را در برنامه های خود ندارید، بنابراین ما باید از یک کاربر بخواهیم نام کاربری خود را در جایی از برنامه وارد کند. این کار خیلی زیاد است که من مطمئن نیستم کسی انجام دهد.

گزینه دیگر برای همراهی کاربر این است که از آنها بخواهید ایمیلی را که در برنامه شما استفاده کرده اند به ربات ارائه دهند، اما این دارای نقص های بسیار زیادی است: کاربر می تواند ضمن وارد کردن ایمیل تایپی را ایجاد کند ، کاربر می تواند ایمیل کاربر دیگری را وارد کرده و از سیستم سوءاستفاده کند. این خیلی بد است

آیا می توانیم بهتر عمل کنیم؟

با استفاده از یک کاربر

البته که میتونیم. برای ارتباط کاربر ، از تکنیکی به نام پیوند عمیق استفاده خواهیم کرد.

ابتدا باید یک علامت تصادفی منحصر به فرد برای هر کاربر ایجاد کنید، من از کد زیر برای تولید توکن با استفاده از پایتون استفاده کرده ام:

from secrets import token_urlsafetoken = token_urlsafe(8)token# => 'uEDbtJFHxKc'

افزایش ممبر کانال تلگرام

مطالعه بیشتر

سپس باید آن توکن را ذخیره کنید تا بعداً بتوانید کاربر را با آن پیدا کنید، می توانید آن را در پایگاه داده خود ذخیره کنید یا به عنوان مثال از مکانی دیگر استفاده کنید، من یک مدل نوتیفیکیشن دارم ، بنابراین فیلدی را به جدول مدل اضافه کردم.

class Notification(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE) # ... connect_token = models.CharField(max_length=64, null=True)

بنابراین ما توکن uEDbtJFHxKc ایجاد کرده و آن را ذخیره کرده ایم، اکنون ما باید از این توکن در URL به ربات تلگرام استفاده کنیم که کاربر برای کلیک بر روی آن باید کلیک کند تا همه کار انجام شود:

telegram_url = 'https://www.telegram.me'bot_name = 'music_notification_bot'token = 'uEDbtJFHxKc'url = f'{telegram_url}/{bot_name}?start={token}'

حالا که ما داریم

URL, 'https://telegram.me/music_notification_bot?start=uEDbtJFHxKc'

وقت آن است که آن را به کاربر نشان دهیم، فقط آن را در هر مکانی از برنامه خود نمایش داده و منتظر بمانید تا کاربر روی آن کلیک کند.

هنگامی که کاربر روی "شروع" کلیک کرد ، باید یک بروزرسانی دیگر را دریافت کنید:

{ "ok": true, "result": [ // ... // previous updates // ... { "update_id": 599162365, "message": { "message_id": 174, "from": { ... }, "chat": { ... }, "date": 1549788357, "text": "/start uEDbtJFHxKc", "entities": [ ... ] } } ]}

در نهایت می توانیم کاربر خود را شناسایی کنیم. اکنون قسمت متن حاوی نشان کاربر است. بیایید جلو برویم و آن را از این زمینه خارج کنیم:0

bot_token = 'your_bot_token'updates_url = f'https://api.telegram.org/bot{bot_token}/getUpdates'import requestsresponse = requests.get(updates_url).json()text = response['result'][0]['message']['text']text# => '/start uEDbtJFHxKc'splitted_text = text.split(' ')# => ['/start', 'uEDbtJFHxKc']token = splitted_text[-1]# => 'uEDbtJFHxKc'

از این توکن می توان برای یافتن کاربر استفاده کرد، اجرای شما بستگی به نحوه ذخیره توکن در وهله اول دارد، اما نحوه انجام این کار به شرح زیر است:

notification = Notification.objects.get(channel='telegram', connect_token=token)user = notification.user

بنابراین کاربر دکمه "شروع" را کلیک کرده بود، اما آنها می بینند که هیچ اتفاقی نیفتاده است، بیایید حداقل از آنها استقبال کنیم.

برای استقبال از کاربر ، باید بدانیم که کاربر مکالمه ای را با ربات ما آغاز کرده است، دو روش برای چگونگی انجام این کار وجود دارد: نظرسنجی و صفهات وب.

شما در حال حاضر می دانید که نظرسنجی چیست، شما قبلاً این کار را کرده اید یا حداقل دیده ام که این کار را انجام دهم.

صفحه https://api.telegram.org/bot{bot_token}/getUpdates ما یک نظرسنجی انجام دادیم، نظرسنجی به طور مرتب ، به عنوان مثال هر 2 ثانیه به روزرسانی ها را بررسی می کند. از این طریق همیشه می توانیم بدانیم چه کسی با ربات تعامل داشته است.

صفحات وب اندکی از روش دیگر استفاده می کنند، به جای بررسی هر 2 ثانیه برای به روزرسانی ها ، فقط منتظر می مانیم یک بروزرسانی اتفاق بیفتد، و هنگامی که اتفاق می افتد تلگرام با داده های به روزرسانی درخواستی را به URL ای که مشخص کرده ایم ارسال می کند، به این ترتیب می توانیم به سرورهای خودمان و تلگرام کمی استراحت بدهیم و فقط منتظر بمانیم تا بروزرسانی به دست بیاید

اگر ترافیک بالایی داشته باشید ، نظرسنجی می تواند بهتر باشد ، اما متأسفانه ، این یک استثناء است ، بنابراین تصمیم گرفته ام تا با صفحات وب برویم.

صفحات وب

تنظیم یک صفحه وب در تلگرام بسیار آسان است، شما فقط نیاز به ارسال درخواست دارید.

به https://api.telegram.org/bot{bot_token}/setWebhook؟url={your_server_url. باز کردن این پیوند در مرورگر شما نیز کار می کند. your_server_url URL است که تلگرام به روزرسانی ها را برای آنها ارسال می کند. در اینجا آنچه باید در پاسخ دریافت کنید:

{ "ok": true, "result": true, "description": "Webhook was set"}

اگر به خودتان اعتماد نکنید می توانید:

فقط برای تردید در این مورد به https://api.telegram.org/bot{bot_token}/getWebhookInfo مراجعه کنید تا همه چیز خوب باشد، شما باید چیزی شبیه به این را ببینید:

{ "ok": true, "result": { "url": "https://example.com/your_server_endpoint", "has_custom_certificate": false, "pending_update_count": 0, "max_connections": 40 }}

اکنون. اگر چیزی درستی نبود (مانند URL خطایی تنظیم کرده اید) ، می توانید با مراجعه به https://api.telegram.org/bot{bot_token}/deleteWebhook ، وب سایت را حذف کنید و دوباره تنظیم کنید.

توسعه محلی

قبل از ادامه می خواهم چند کلمه در مورد توسعه محلی بگویم، وب سایت ها برای آن بسیار مناسب نیستند و صفحات وب به URL ارسال می شوند و به احتمال زیاد URL اینترنتی رایانه خود را نمی شناسید. همچنین ، یک وب سایت Telegram به مجوز HTTPSنیاز دارد.

اما یک راه حل برای این مشکل وجود دارد، ngrok ابزاری است که محیط محلی شما را در معرض دید جهانیان قرار می دهد، ngrok را بارگیری کنید ، آن را نصب کنید و آن را با درگاهی که سرور شما در آن کار می کند شروع کنید. سرور من روی درگاه 8000 کار می کند ، بنابراین نیاز به اجرای آن در یک کنسول دارم.

/path/to/ngrok http 8000

سپس ngrok باید URL به شما بدهد که می توانید برای تنظیم یک وب سایت استفاده کنید.

استقبال کاربر

اکنون که شما آماده توسعه هستید ، به جمع کاربران ما خوش آمدید، چیزی که آنه منتظر آن هستند.

پس از کلیک کاربر روی "شروع" ، تلگرام شما به روزرسانی را به آدرس URL سرور شما ارسال می کند، قسمت های جالب بروزرسانی باید به صورت زیر باشد:

{ "message": { "chat": { "id": 457 }, "text": "/start uEDbtJFHxKc", }}

این زمان مناسب برای ارتباط کاربر با استفاده از متن پیام است، همچنین یک بخش جالب از اطلاعات ، ID چت وجود دارد، شناسه چت همان چیزی است که ما برای ارسال پیام به آن کاربر نیاز داریم. تلگرام دارای API انتهایی برای ارسال پیام است.

https://api.telegram.org/bot{bot_token}/sendMessage؟chat_id={chat_id}&text={text

من مطمئن نیستم که باید نحوه استفاده از آن را توضیح دهم ، اما این کد پرداش چیست که به نظر می رسد صفحه وب را پردازش می کند:

import jsonimport requestsdef callback(request): body = json.loads(request.body) text = body['message']['text'] token = text.split(' ')[-1] associate_user_by_token(token) bot_key = os.environ.get('TELEGRAM_API_KEY') chat_id = body['message']['chat']['id'] text = "Welcome!" send_message_url = f'https://api.telegram.org/bot{bot_key}/sendMessage?chat_id={chat_id}&text={text}' requests.post(send_message_url)

اگر بعد از کلیک کاربر دکمه معروف "شروع" ، یک پیام خوش آمدید برای شما ارسال شود ، کاربر دیگر فکر نمی کند که همه چیز کار می کند یا خیر.

نحوه ارسال پوش نوتیفیکیشن تلگرام

سرانجام ، به این نکته می رسیم که چرا همه این موارد را انجام می دهیم، ارسال نوتیفیکیشن تلگرام را می کنیم، ممکن است بخواهید درباره برخی اطلاعاتی که در برنامه شما رخ داده است به کاربر اطلاع دهید، به عنوان مثال ، شخصی پست کاربر یا هر چیز دیگری را دوست داشت. من برای اطلاع از انتشار جدید موسیقی از هنرمندان مورد علاقه کاربر از تلگرام استفاده می کنم.

تبلیغات بازدیدی تلگرام

مطالعه بیشتر

شما می دانید نحوه ارسال پوش نوتیفیکیشن تلگرام چگونه است. شما فقط نیاز به ارسال پیام دارید.

با استفاده از: https://api.telegram.org/bot{bot_token}/sendMessage?chat_id={chat_id}&text={notification_text}. البته ، اگر قصد دارید نوتیفیکیشن ها را نه تنها هنگام تعامل کاربر با ربات ارسال کنید ، باید چت آی دی را در پایگاه داده خود ذخیره کنید، همچنین ممکن است بخواهید پیغام یا قالب بندی دیگری را در پیام خود وارد کنید. در این حالت ، باید پارامتر دیگری را به آدرس URL ارسال کند و parse_mode اضافه کنید. 2 گزینه تجزیه وجود دارد:

Markdown یا HTML. من از Markdown استفاده می کنم زیرا استفاده از آن ساده تر است. اگر با Markdown آشنا نیستید می توانید از HMTL استفاده کنید ، اما توصیه می کنم Markdown را تا چه اندازه آسان بخوانید.

در اینجا آدرس پیام ارسال شده به شکل می باشد:

with parse_mode parameter https://api.telegram.org/bot{bot_token}/sendMessage?chat_id={chat_id}&text={notification_text}&parse_mode=markdown.

لینک هایی را به نسخه های جدید به متن نوتیفیکیشن اضافه می کنم

{release.date}: {release.artist.name} [{release.title}]({release.url}).

 

نظرات

بدون نظر
مهمان
چهارشنبه, 07 خرداد 1399

Captcha Image

شرکت هم سایت | توسعه کسب و کار اینترنتی

آشنایی با تیم هم سایت

آژانس دیجیتال مارکتینگ هم سایت، با یک تیم مجرب و با تجربه چندین ساله در حوزه طراحی سایت، سئو و بهینه سازی موتورهای جستجوگر و بازاریابی اینترنتی، پیشرو در رشد و توسعه کسب و کارهای اینترنتی می باشد. تیم هم سایت با برگزاری کمپین های دیجیتال مارکتینگ همیشه ارائه دهنده راهکار های بازاریابی اینترنتی با استاندارد های روز دنیا به هزاران مشتری می باشد، که حاصل آن هزاران مشتری وفادار در سرتاسر ایران بوده است.

بازدید سایتتان را چندین برابر کنید

افزایش ترافیک سایت تا 300 برابر

هم سایت | توسعه و رشد کسب و کار اینترنتی

راه حل برای انتخاب کلمات کلیدی هدفارائه راهکار بهینه سازی و سئو حرفه ایراهکار تولید محتوای قوی و استراتژیکارائه استراتژی موثر درج رپورتاژ آگهی

شماره همراه
ورودی نامعتبر

آدرس سایت
ورودی نامعتبر

خدمات هم سایت

نصب تضمینی اپلیکیشن موبایل

ارسال پوش نوتیفیکیشن تبلیغاتی

تبلیغات در تلگرام

تبلیغات در اینستاگرام

رپورتاژ آگهی

تبلیغات در گوگل ادوردز

تبلیغات اینترنتی

تبلیغات کلیکی

تبلیغات بنری

تبلیغات همسان

طراحی سایت

سئو سایت و بهینه سازی

بازاریابی اینترنتی

طراحی لوگو و آرم

طراحی بنر

طراحی کاتالوگ و بروشور و پوستر

ساخت موشن گرافیک

خرید پیج اینستاگرام

خرید کانال تلگرام

تولید محتوا سایت

افزایش ممبر تلگرام

افزایش فالوور اینستاگرام

 

یک فرصت طلایی در هم سایت

تنها با ثبت شماره تماس خودتان همین الان، 30 درصد کد تخفیف برای استفاده از همه‌ی خدمات هم سایت و یک تماس رایگان با کارشناسان هم سایت را هدیه بگیر.

شرکت هم سایت | توسعه کسب و کار اینترنتی
شماره تماس

مثال: ۰٩١٢٣۴۵۶٧٨٩

کمپین دیجیتال مارکتینگ

هدفمند و نتیجه گرا تبلیغ کنید

هم سایت | توسعه و رشد کسب و کار اینترنتی

راه حل مناسب برای نرخ تبدیل بیشتر استراتژی هدفمند برای صفحه فرود استفاده از راه حل های نوین تبلیغاتی بررسی، تحقیق و رقیب شناسی اصولی

شماره همراه
ورودی نامعتبر

مقاله‌های هم سایت

با ما در ارتباط باشید

 پشتیبانی هم سایت: 44978501 - 44965383 - (021)
 کارشناس فنی : ۰٩١٢۴٧٣٣٨۶٢

 info[at]hamsite.ir

 شنبه تا پنجشنبه: ٩:۰۰ - ١٧:٣۰

روش های پرداخت و مجوزها

logo-samandehi

عضویت در خبرنامه

با عضویت در خبرنامه هم سایت از تازه‌ترین مقالات و آخرین اخبار هم سایت مطلع باش
ایمیل:
ربات
کلیه حقوق این سایت متعلق به وبسایت هم سایت می باشد و استفاده از منابع این سایت تنها با ذکر منبع و لینک مستقیم بلامانع است.          طراحی سایت و سئو : هم سایت
1
شرکت هم سایت | توسعه کسب و کار اینترنتی