مطالب خود را با Contentful و Telegram به اشتراک بگذارید

درود و خوش آمد!
آنچه می خواهم ارائه کنم آخرین قسمت سفر من با تلگرام و محتواست.
پس از مقاله من منتشر شده در وبلاگ محتوا (شما می توانید اطلاعات بیشتر را در اینجا بخوانید)، در این پست به شما نشان خواهم داد که چگونه یک برنامه سفارشی برای ارسال پیام به کانال تلگرام شما درست از ورودی محتوای شما ایجاد کردم.
این یک بخش فنی نخواهد بود، بلکه بیشتر یک “نمایش و گفتن” خواهد بود. با این حال، اگر علاقه مند به دیدن کد هستید، در انتهای مقاله پیوندهایی به مخازن خواهید یافت.
نکات کلیدی برنامه
بیایید تعریف کنیم که برنامه ما چیست، چگونه و کجا کار می کند.
همانطور که بسیاری از شما قبلاً می دانید، App Framework به ما اجازه می دهد تا بخش های مختلف رابط وب محتوا را سفارشی کنیم. در مورد ما، صفحه پیکربندی خود برنامه را تغییر می دهیم تا برخی از پارامترهای لازم برای عملکرد کلی آن را تعریف کنیم. در حالی که برنامه واقعی در نوار کناری ورودی های ما قرار می گیرد.
برنامه ما این امکان را در اختیار کاربر قرار می دهد که محتوا را به یک نقطه پایانی خارجی ارسال کند و از داده های ورودی فعلی یا داده های کاملاً سفارشی استفاده کند. سپس نقطه پایانی مسئول بازیابی داده ها و ارسال آن به کانال تلگرام مرتبط خواهد بود (این قسمت در مقاله دیگر توضیح داده شده است).
صفحه پیکربندی
بیایید با پیکربندی اولیه شروع کنیم. همانطور که قبلا ذکر شد، بدون این، برنامه ما نمی تواند کار کند. چرا اینطور است؟ صرفاً به این دلیل که در اینجا، به کاربر این امکان را میدهیم که چندین نقطه پایانی را تعریف کند که برنامه ما میتواند از آنها برای ارسال اطلاعات استفاده کند.
هر نقطه پایانی می تواند منطق های مختلفی را تعریف کند. به عنوان مثال، ما می توانیم یک نقطه پایانی داشته باشیم که به یک کانال آزمایشی متکی است که می توانیم از آن برای ارسال پیام های آزمایشی استفاده کنیم. مثال دیگر می تواند داشتن کانال های مختلف برای موضوعات مختلف باشد که به ما انعطاف پذیری برای برقراری ارتباط اطلاعات مختلف را می دهد.
بیایید ببینیم صفحه اولیه چگونه به نظر می رسد:
از اینجا میتوانیم نقاط پایانی خود را اضافه، اصلاح یا حذف کنیم. فرم ورود شامل فیلدهای زیر است:
- نام: نام نقطه پایانی
- آدرس اینترنتی: URL سرویس خارجی ما.
- شناسه کانال: آیدی کانال تلگرام.
- نام کانال: نام کانال تلگرام.
با انجام این کار، لیستی از نقاط پایانی را به دست می آوریم که برنامه ما از آنها استفاده می کند:
اپلیکیشن نوار کناری
همانطور که قبلا ذکر شد، ما در یک مکان خاص، نوار کناری کار خواهیم کرد.
این اجازه می دهد تا برنامه ما در هر ورودی از یک نوع محتوای خاص (یا بیش از یک در صورت تمایل) در دسترس باشد.
پس از نصب برنامه، برای نمایش آن در نوار کناری، باید بخش “نوار کناری” نوع محتوای خود را تغییر دهیم:
.. و برنامه «فرستنده تلگرام» ما را به لیست سمت راست منتقل کنید، موقعیت را انتخاب کنید، و سپس نوع محتوا را ذخیره کنید:
حال، اگر به هر Entry از نوع Recipe برویم، برنامه ما را آماده استفاده خواهیم دید:
چگونه کار می کند؟
اکنون که برنامه خود را پیکربندی کردیم، بیایید ببینیم چگونه کار می کند.
پس از کلیک بر روی “پیکربندی پیام”، اولین مرحله مهم انتخاب نقطه پایانی برای ارسال داده های ما است:
پس از انتخاب کانال، فرمی با فیلدهای زیر خواهیم داشت:
- رسانه ها
- پیام متنی و حالت تجزیه
- لینک URL و نام پیوند
بیایید آنها را با جزئیات بررسی کنیم.
رسانه ها
این فیلد به ما امکان می دهد رسانه ها را به روش های مختلف انتخاب کنیم.
ما میتوانیم یک رسانه جدید از ابتدا ایجاد کنیم یا یکی از رسانههای موجود را انتخاب کنیم. این دو گزینه اول ثابت هستند و از طریق Contentful SDK تعامل دارند و رابط پیش فرض را نشان می دهند. به عنوان مثال، اگر “انتخاب رسانه موجود” را انتخاب کنیم، برنامه یک مدال با دارایی های ذخیره شده ما باز می کند:
ورودی های دیگری که با “فیلد ورودی: …” شروع می شوند، ورودی های پویا بر اساس ساختار نوع محتوای ما هستند. در مثال ما، دستور غذای ما، فقط یک فیلد از نوع رسانه به نام “تصویر” دارد. با کلیک بر روی این گزینه می توانیم مستقیماً تصویر مربوط به آن فیلد را انتخاب کنیم. اگر فیلد ورودی پر نباشد، گزینه انتخاب همچنان وجود دارد اما غیرفعال میشود:
پیام متنی و حالت تجزیه:
اینجاست که می توانید پیام متنی را برای ارسال به کانال پیکربندی کنید. مشابه حوزه رسانه، ما بر اساس ساختار نوع محتوای خود، فیلدهای پویا داریم. در بین گزینه ها، فیلدهایی از نوع Symbol/Text داریم. علاوه بر اینها، ما یک گزینه “مقدار سفارشی” داریم که به ما امکان می دهد متن آزاد را وارد کنیم:
گزینه “Parse Mode” مخصوص تلگرام است و فرمت متنی که وارد می کنیم را نشان می دهد. گزینه ها عبارتند از: HTML (پیش فرض)، Markdown و MarkdownV2.
لینک هایی وجود دارد که برای اطلاعات بیشتر در مورد این گزینه ها به اسناد تلگرام هدایت می شوند.
لینک URL و نام
این دو فیلد اختیاری به شما امکان می دهد یک پیوند و یک برچسب را برای درج در پیام ما تعریف کنید. دوباره، مشابه پیام متنی، ما این گزینه را داریم که از فیلدهای ورودی استفاده کنیم یا مقادیر سفارشی را وارد کنیم:
پیش نمایش و ارسال CTA
این برنامه همچنین پیش نمایشی از پیامی را که می خواهیم ارسال کنیم ارائه می دهد. این ویژگی می تواند برای کاربرانی که می خواهند قبل از ارسال پیام در کانال تلگرام نمایش داده شوند مفید باشد:
وقتی پیام آماده شد، میتوانیم روی CTA «ارسال پیام» کلیک کنیم، که دادهها را به نقطه پایانی خارجی ما که مسئول ارسال پیام به کانال تلگرام ما است، ارسال میکند. اجرای سرویس خارجی بسیار شبیه به آنچه در مقاله قبلی دیدیم خواهد بود.
نتیجه
و با این کار، سفر ما از طریق رباتها، Webhooks و برنامههای سفارشی به پایان میرسد.
ما دیدیم که چگونه با تنظیمات ساده میتوانیم حضور خود را در تلگرام تثبیت کنیم و تنها با چند خط کد از قدرت وب هوکها استفاده کنیم.
آخرین اما نه کماهمیت، به لطف قدرت App Framework، ما توانستهایم ایجاد یک برنامه کوچک را بررسی کنیم که همه چیزهایی را که در مقاله قبلی آموختهایم، در رابط Contentful به کار میبرد.
در زیر می توانید پیوندهای مخازن مورد استفاده در این مجموعه را بیابید: