---
title: "ساخت Mini App در Telegram: راهنمای گام‌به‌گام TMA"
description: "ساخت Mini App در Telegram: راهنمای گام‌به‌گام TMA. یاد بگیرید چطور Mini App خودتان را در Telegram بسازید! در این راهنما هرآنچه برای ساخت یک TMA نیاز دارید، توضیح داده شده است."
image: https://image.adsgram.ai/site/maxresdefault-1024x576jpg.webp
---

# چطور یک مینی‌اپ تلگرام بسازیم

ساخت مینی‌اپ تلگرام: راهنمای گام‌به‌گام TMA. یاد بگیرید چطور مینی‌اپ تلگرام خودتان را بسازید! در این راهنما هر چیزی را که برای ساخت یک TMA نیاز دارید، توضیح می‌دهیم.

منتشر شده ۱۵ آبان ۱۴۰۴15 دقیقه مطالعه

![maxresdefault-1024x576.jpg](https://image.adsgram.ai/site/maxresdefault-1024x576jpg.webp)

[Telegram Mini Apps](https://adsgram.ai/fa)

 پلتفرمی قدرتمند برای توسعه اپلیکیشن‌های وبی است که مستقیماً در تلگرام ادغام می‌شوند. این راهنما قدم‌به‌قدم توضیح می‌دهد چطور Mini App خودتان را بسازید؛ از راه‌اندازی اولیه تا انتشار و کسب درآمد با AdsGram.

## Telegram Mini Apps چیست؟

Telegram Mini Apps اپلیکیشن‌های وبی هستند که در رابط تلگرام اجرا می‌شوند و بدون دانلود از فروشگاه اپلیکیشن یا نصب جداگانه، تجربه‌ای تعاملی به کاربران می‌دهند. این اپلیکیشن‌ها با فناوری‌های استاندارد وب ساخته می‌شوند و این امکانات را برای توسعه‌دهندگان فراهم می‌کنند:

-   توزیع در اکوسیستم جهانی تلگرام؛ البته دیده شدن خودکار نیست
-   ادغام بومی با رابط کاربری و قابلیت‌های تلگرام
-   سازگاری با پلتفرم‌های مختلف (iOS، Android، دسکتاپ و وب)
-   توزیع ساده از طریق لینک ربات‌ها و دکمه‌های منو

## مراحل توسعه اپلیکیشن

فرایند ساخت سه مرحله اصلی دارد:

1.  ثبت ربات و Mini App: پیکربندی ربات تلگرام و Mini App از طریق BotFather
2.  توسعه اپلیکیشن: ساخت با React، Vue یا JavaScript خالص؛ React و Vue ابزارهای اختیاری رابط کاربری هستند
3.  انتشار و ادغام: میزبانی اپلیکیشن و اتصال آن به اکوسیستم تلگرام

این مقاله برای هر مرحله دستورالعمل قدم‌به‌قدم می‌دهد و بهترین روش‌های توسعه، راهبردهای آزمایش و فرصت‌های کسب درآمد با AdsGram، پلتفرم تبلیغاتی تخصصی Telegram Mini Apps، را هم پوشش می‌دهد.

## راه‌اندازی محیط توسعه

تغییرات ناتمام را از کاربران واقعی دور نگه دارید. از یک محیط staging جداگانه و در صورت نیاز از محیط آزمایشی تلگرام استفاده کنید. بک‌اند آزمایشی یک گزینه است، نه الزامی برای همه مراحل توسعه رابط کاربری.

### آشنایی با محیط آزمایشی تلگرام

تلگرام یک محیط آزمایشی جداگانه دارد که مخصوص توسعه و آزمایش طراحی شده است. این محیط ایزوله قابلیت‌های محیط اصلی را شبیه‌سازی می‌کند و مزایای مهمی دارد: پشتیبانی از HTTP (بدون نیاز به گواهی SSL در توسعه محلی)، دسترسی مستقیم با نشانی IP بدون نام دامنه و جداسازی کامل از ربات‌های اصلی و داده‌های کاربران واقعی.

### محیط اصلی و محیط آزمایشی

**مورد**

**محیط اصلی**

**محیط آزمایشی**

الزامات URL

فقط HTTPS (گواهی SSL معتبر)

پشتیبانی از HTTP و HTTPS

دامنه

نشانی عمومی HTTPS با گواهی معتبر

سرور آزمایشی قابل دسترس؛ می‌توان از نشانی IP استفاده کرد

داده‌ها

کاربران و داده‌های واقعی

داده‌های آزمایشی ایزوله

کاربرد

اپلیکیشن‌های فعال

توسعه و آزمایش

### رفتن به محیط آزمایشی

این‌ها راه‌های ورودی هستند که در حال حاضر مستند شده‌اند. در Telegram Desktop: تنظیمات ← Shift + Alt + کلیک راست روی افزودن حساب ← سرور آزمایشی. در iOS: ۱۰ بار روی نماد تنظیمات بزنید ← حساب‌ها ← ورود به حساب دیگر ← آزمایش. اپلیکیشن بومی macOS مسیر خودش را از طریق منوی اشکال‌زدایی دارد. منوها بسته به کلاینت و نسخه فرق می‌کنند؛ فرض نکنید همین منوی پنهان در Android هم وجود دارد.

توجه داشته باشید که حساب‌های آزمایشی کاملاً از حساب‌های اصلی جدا هستند. باید در محیط آزمایشی با BotFather یک ربات آزمایشی جدید بسازید.

### روند توسعه

به‌صورت محلی یا روی یک محیط staging جداگانه توسعه دهید. محیط آزمایشی تلگرام استفاده از HTTP را برای Mini Apps مجاز می‌داند، اما دستگاه باید بتواند به سرور شما دسترسی داشته باشد؛ localhost به خود دستگاه اشاره می‌کند. پیش از انتشار، نشانی HTTPS اصلی و همه قابلیت‌های لازم را آزمایش کنید. ادغام با AdsGram اختیاری است و باید جداگانه آزمایش شود.

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

## آماده‌سازی برای توسعه

این مرحله تعیین می‌کند اپلیکیشن شما چقدر راحت و مفید باشد. نگران نباشید؛ فرایند نسبتاً ساده است و حتی بدون تجربه هم می‌توانید آن را یاد بگیرید. یاد می‌گیرید چطور از صفر مینی‌اپلیکیشن‌های کارآمد بسازید.

-   **تعیین هدف مینی‌اپلیکیشن**

اول از همه فکر کنید چرا به مینی‌اپلیکیشن نیاز دارید. می‌تواند این‌ها باشد:

بازی‌ای برای سرگرم کردن کاربران و افزایش تعامل. ابزاری کاربردی (مثلاً ماشین‌حساب، مترجم یا برنامه‌ریز کارها). سرویسی برای ارتباط (مثلاً رباتی برای کمک به مشتریان یا پرسش‌های متداول خودکار).

مهم است بدانید می‌خواهید با مینی‌اپلیکیشن چه مشکلی را حل کنید. هرچه هدف روشن‌تر باشد، طراحی ساختار و قابلیت‌های آن آسان‌تر است.

-   **انتخاب پلتفرم و فناوری توسعه**

حالا که هدف را مشخص کرده‌اید، وقت آن است انتخاب کنید اپلیکیشن را با چه چیزی توسعه می‌دهید. چند گزینه محبوب:

اگر مبانی برنامه‌نویسی را می‌دانید، JavaScript انتخابی عالی است. با آن می‌توانید اپلیکیشن وبی بسازید که در اکوسیستم تلگرام روان اجرا شود. تلگرام پشتیبانی خوبی از این فناوری دارد و برای شروع سریع بسیار راحت است. React. کتابخانه‌ای برای ساخت رابط کاربری است. برای توسعه مینی‌اپلیکیشن بسیار مناسب است، چون ساخت اجزا و تعامل با کاربر را ساده‌تر می‌کند. سایر فناوری‌های وب. برای ساخت رابط اپلیکیشن می‌توانید از HTML و CSS هم استفاده کنید. این عناصر پایه به جذاب و کاربردی شدن پروژه کمک می‌کنند.

فریم‌ورک‌های دیگر هم مناسب‌اند، به شرطی که اپلیکیشن وبی بسازند که در WebView تلگرام اجرا شود و از ادغام‌های لازم تلگرام پشتیبانی کند.

### ساخت ربات و ثبت Mini App

برای ساخت Telegram Mini App، ابتدا باید از طریق BotFather، ابزار رسمی تلگرام برای مدیریت ربات‌ها، یک ربات تلگرام راه‌اندازی کنید. BotFather مدیر مرکزی همه ربات‌ها و Mini Apps در این پلتفرم است.

### راه‌اندازی ربات

تلگرام را باز کنید و این را جست‌وجو کنید: 

[@BotFather](https://t.me/botfather)

. گفت‌وگو را شروع کنید و از دستور /newbot استفاده کنید. BotFather شما را برای تعیین نام نمایشی و نام کاربری یکتا راهنمایی می‌کند (نام کاربری باید با «bot» تمام شود، مثلاً MyCoolMiniApp\_bot).

پس از ساخت ربات، BotFather یک توکن احراز هویت می‌دهد. آن را با امنیت در متغیرهای محیطی نگه دارید، چون کنترل کامل ربات را می‌دهد.

### ثبت Mini App

با دستور /newapp در BotFather یک Mini App جدید ثبت کنید و آن را به ربات متصل کنید. نام کوتاه، توضیحات و نماد اپلیکیشن را وارد کنید. Mini App شما یک لینک مستقیم می‌گیرد: `https://t.me/{bot_username}/{app_short_name}.`

### دکمه منو یا لینک مستقیم: انتخاب روش ادغام

تلگرام دو راه برای دسترسی به Mini App ارائه می‌دهد که هرکدام هدف متفاوتی دارند.

**مورد**

**دکمه منو**

**لینک مستقیم**

روش دسترسی

از طریق دکمه منوی ربات در چت

نشانی قابل اشتراک t.me/{bot}/{app}

مسیر کاربر

کاربر ابتدا با ربات گفت‌وگو را شروع می‌کند

دسترسی مستقیم، بدون نیاز به گفت‌وگو با ربات

دیده شدن

همیشه در رابط ربات دیده می‌شود

نیاز به اشتراک‌گذاری یا پیدا کردن نشانی دارد

مناسب برای

اپلیکیشن‌هایی که قابلیت‌های ربات را گسترش می‌دهند

اپلیکیشن‌های مستقل، اشتراک‌گذاری ویروسی و بازی‌ها

کشف

از طریق جست‌وجوی ربات

لینک‌ها، کدهای QR و کمپین‌های بازاریابی

### ادغام با دکمه منو

وقتی کاربران با ربات تعامل می‌کنند، دکمه منو در پایین سمت چپ چت نمایش داده می‌شود. به این ترتیب Mini App ادامه طبیعی قابلیت‌های ربات به نظر می‌رسد.

**راه‌اندازی:** دستور /setmenubutton را به BotFather بفرستید ← ربات را انتخاب کنید ← نشانی اپلیکیشن وب را وارد کنید (در محیط اصلی HTTPS الزامی است) ← عنوان دکمه را بنویسید.

**مناسب برای:** اپلیکیشن‌های ادغام‌شده با ربات، داشبوردهای شخصی‌سازی‌شده، ابزارهای پشتیبانی مشتری و اپلیکیشن‌های مرتبط با روند کار ربات؛ دسترسی به تاریخچه چت خودکار نیست.

### ادغام با لینک مستقیم

لینک‌های مستقیم، Mini Apps مستقلی می‌سازند که بدون تعامل قبلی با ربات، از طریق نشانی‌های قابل اشتراک در دسترس‌اند. این روش برای اپلیکیشن‌های مستقلی که از انتشار ویروسی سود می‌برند عالی است.

**راه‌اندازی:** دستور /myapps را به BotFather بفرستید ← Mini App را انتخاب کنید ← روی «Edit Web App URL» کلیک کنید ← نشانی را وارد کنید (در محیط اصلی HTTPS الزامی است).

**مناسب برای:** بازی‌های مستقل، فروشگاه‌های آنلاین، ابزارهای کاربردی، اپلیکیشن‌های ویروسی و اپلیکیشن‌های متکی به بازاریابی.

### انتخاب نهایی

اگر اپلیکیشن شما مکمل دستورهای ربات است، دکمه منو را انتخاب کنید؛ این دکمه به‌طور خودکار دسترسی به تاریخچه چت نمی‌دهد. اگر اپلیکیشن مستقل کار می‌کند و از اشتراک‌گذاری مستقیم سود می‌برد، لینک مستقیم را انتخاب کنید. می‌توانید هر دو را با هم هم به کار ببرید: دکمه منو برای کاربران ربات و لینک مستقیم برای جذب کاربران جدید و رشد ویروسی.

روش هرچه باشد، مطمئن شوید نشانی شما در محیط اصلی از HTTPS با SSL معتبر استفاده می‌کند (HTTP فقط در محیط آزمایشی). هر دو روش از ادغام با AdsGram برای کسب درآمد پشتیبانی می‌کنند.

## توسعه مینی‌اپلیکیشن

برای توسعه TMA می‌توانید از فریم‌ورک‌های مختلفی مانند React استفاده کنید یا اپلیکیشن را از صفر با فناوری‌های وب و سرویس‌های تلگرام بسازید. چه ربات ساده بسازید چه اپلیکیشن تعاملی پیچیده، این راهنمای قدم‌به‌قدم در تمام مراحل کمکتان می‌کند.

این‌ها اپلیکیشن‌های وبی هستند که مستقیماً در رابط تلگرام اجرا می‌شوند و بدون نیاز به رفتن به فروشگاه اپلیکیشن، تجربه‌ای روان به کاربران می‌دهند.

یادتان باشد، کار به آن سختی که در نگاه اول به نظر می‌رسد نیست.

### گام ۱. ساخت پروژه

ابتدا باید یک پروژه Telegram Mini App بسازید که پایه مینی‌اپلیکیشن شما خواهد بود. ویرایشگرهای متن یا محیط‌های توسعه (IDE) مانند VS Code و WebStorm یا حتی ویرایشگرهای ساده‌ای مثل Sublime Text در این کار کمکتان می‌کنند. آن‌ها کد را منظم می‌کنند و نوشتن آن را راحت‌تر می‌سازند. برای اطمینان از درست کار کردن همه چیز، باید محیط آزمایشی مناسبی هم راه‌اندازی کنید.

یک پوشه برای پروژه بسازید و این فایل‌ها را داخل آن ایجاد کنید:

index.html: فایلی که کد HTML اپلیکیشن وب را در خود دارد. style.css: شامل سبک‌های رابط کاربری (CSS) است و در این نمونه ساده می‌تواند خالی باشد. app.js: کد اصلی اینجا قرار می‌گیرد و منطق اپلیکیشن و تعامل با سرویس‌های تلگرام را کنترل می‌کند.

### گام ۲. نوشتن کد

وقتی ساختار پروژه آماده شد، می‌توانید سراغ کد بروید. ببینیم چطور اپلیکیشن را راه‌اندازی و تعاملی کنیم. باید مطمئن شوید اپلیکیشن درست کار می‌کند و امکانات مناسبی برای اشکال‌زدایی دارد.

اتصال به سرویس‌های تلگرام

Telegraf یک کتابخانه Node.js برای ربات سمت سرور است، نه SDK مرورگر. توکن BotFather را فقط در متغیر محیطی BOT\_TOKEN در سمت سرور نگه دارید. آن را در index.html یا app.js قرار ندهید. برای هویت کاربر در Mini App باید Telegram initData جداگانه در سمت سرور اعتبارسنجی شود؛ Telegraf این کار را خودکار انجام نمی‌دهد.

Telegraf را با این دستور نصب کنید:

`bash`  
`npm install telegraf`  

این نمونه سمت سرور را با نام bot.js ذخیره کنید، BOT\_TOKEN را تنظیم کنید و node bot.js را اجرا کنید:

`javascript`  
`const { Telegraf } = require('telegraf');`  
`const bot = new Telegraf(process.env.BOT_TOKEN);`

`bot.start((ctx) => ctx.reply('Hello! This is your Mini App bot.'));`  
`bot.launch();`

  

این ربات وقتی کاربر /start بفرستد پاسخ می‌دهد؛ Mini App را باز نمی‌کند و هنگام راه‌اندازی به همه کاربران پیام نمی‌دهد. دکمه منو یا لینک مستقیم را جداگانه پیکربندی کنید. ادغام با Web3 و کیف‌پول اختیاری است و در این نمونه پیاده‌سازی نشده است.

ساخت رابط کاربری

پوشه public را با فایل‌های index.html، style.css و app.js بسازید. کد HTML زیر را با نام public/index.html ذخیره کنید. این رابط ساده هنوز احراز هویت یا اتصال به تلگرام ندارد:

`html`  
`<!DOCTYPE html>`  
`<html lang="en">`  
`<head>`  
`<meta charset="UTF-8">`  
`<meta name="viewport" content="width=device-width, initial-scale=1.0">`  
`<link rel="stylesheet" href="style.css">`  
`<title>My Mini App</title>`  
`</head>`  
`<body>`  
`<div id="app">`  
`<button id="startBtn">Start game</button>`  
`</div>`  
`<script src="app.js"></script>`  
`</body>`  
`</html>`

### گام ۳. نوشتن منطق اپلیکیشن

فایل app.js در سمت کلاینت تعامل‌های مرورگر را مدیریت می‌کند. نمونه بعدی فقط هنگام کلیک روی دکمه یک هشدار نشان می‌دهد؛ منطق واقعی بازی یا سرویس را جداگانه اضافه کنید. برای استفاده از APIهای تلگرام، اسکریپت Telegram WebApp را بارگذاری کنید و از روش‌های پشتیبانی‌شده آن استفاده کنید. پیش از اعتماد به هویت کاربر، initData را در بک‌اند اعتبارسنجی کنید.

رابط کاربری را روشن و در دسترس نگه دارید. پیام‌های ربات به تعامل قبلی کاربر یا مجوز نوشتن مناسب نیاز دارند؛ Mini App نمی‌تواند اعلان‌های دلخواه در پس‌زمینه بفرستد.

### گام ۴. راه‌اندازی و آزمایش

این کنترل‌کننده کلیک را با نام public/app.js ذخیره کنید، سپس دکمه را در مرورگر و داخل تلگرام آزمایش کنید:

`javascript`  
`document.getElementById('startBtn').addEventListener('click', function() {`  
`alert('The game has started!');`  
`// Add code here to start your game or other application logic.`  
`});`

برای رابط کاربری ایستا، Live Server کافی است. رباتی که از bot.launch() استفاده می‌کند به یک فرایند Node.js همیشه‌فعال نیاز دارد؛ این فرایند polling را بدون تغییر به‌صورت تابع serverless کوتاه‌مدت منتشر نکنید. برای رابط کاربری از میزبانی staging با HTTPS و برای ربات از فرایند مناسب یا انتشار با webhook استفاده کنید.

برای میزبانی با Node.js همیشه‌فعال، Express را با npm install express نصب کنید و کد زیر را با نام server.js کنار پوشه public/ ذخیره کنید. BOT\_TOKEN را تنظیم کنید و به‌جای bot.js، دستور node server.js را اجرا کنید؛ هر دو را با یک توکن اجرا نکنید. این نمونه ارائه فایل‌های ایستا را اضافه می‌کند و توکن را از محیط می‌خواند. HTTPS را در لایه میزبانی پیکربندی کنید:

`javascript`  
`const express = require('express');`  
`const { Telegraf } = require('telegraf');`  
`const path = require('node:path');`  
`const app = express();`  
`const bot = new Telegraf(process.env.BOT_TOKEN);`

`// Serve only the client files in the public directory.`  
`app.use(express.static(path.join(__dirname, 'public')));`

`// Bot logic`  
`bot.start((ctx) => ctx.reply('Hello! The bot is running on the server.'));`  
`bot.launch();`

`// Port configuration`  
`const PORT = process.env.PORT || 3000;`  
`app.listen(PORT, () => {`  
`console.log(Server running on port ${PORT});`  
`});`

حالا یک رابط کاربری پایه و نمونه‌ای از ربات و سرور دارید، نه یک اپلیکیشن آماده انتشار. نشانی HTTPS را در BotFather وارد کنید، مسیر راه‌اندازی را آزمایش کنید و پیش از انتشار، اعتبارسنجی بک‌اند، ذخیره داده‌ها و مدیریت خطاهای لازم را پیاده کنید. تبلیغات را پس از پایدار شدن اپلیکیشن، جداگانه آزمایش کنید.

## اشکال‌زدایی و آزمایش

پس از توسعه Mini App، اشکال‌زدایی و آزمایش کامل پیش از انتشار بسیار مهم است. تلگرام چند ابزار و روش برای شناسایی و رفع مشکلات در حین توسعه ارائه می‌دهد.

### روش‌های آزمایش

آزمایش را بسته به راه‌اندازی خود می‌توانید در مراحل مختلف انجام دهید. برای توسعه محلی، اپلیکیشن را با ابزارهایی مانند Live Server در VS Code روی سرور محلی اجرا کنید. در محیط آزمایشی می‌توانید برای آزمایش ساده، با لینک‌های HTTP و نشانی‌های IP به اپلیکیشن دسترسی پیدا کنید. برای آزمایش در شرایط نزدیک به محیط اصلی، آن را روی پلتفرم‌های staging مانند Vercel، Netlify یا Heroku منتشر کنید و رفتار Mini App را در شرایط واقعی تلگرام ببینید.

### ابزارهای اشکال‌زدایی

برای Console، Network و اشکال‌زدایی JavaScript از ابزارهای توسعه‌دهنده مرورگر استفاده کنید. پشتیبانی تلگرام از بازرسی به کلاینت، پلتفرم و تنظیمات اشکال‌زدایی بستگی دارد؛ دستورالعمل‌های فعلی اشکال‌زدایی Mini Apps را برای نسخه خود دنبال کنید. بازرسی WebView در Android و iOS ممکن است به تنظیمات بیشتری نیاز داشته باشد.

### مشکلات رایج و راه‌حل‌ها

**مشکل**

**راه‌حل**

خطای اتصال به API

مطمئن شوید توکن ربات درست است و به‌درستی در متغیرهای محیطی ذخیره شده است

خطاهای HTTPS

مطمئن شوید میزبان شما گواهی SSL معتبر ارائه می‌دهد (الزام محیط اصلی)

مشکلات Webhook

مطمئن شوید نشانی webhook در دسترس است و پاسخ‌های درست می‌فرستد

مشکلات بین پلتفرم‌ها

برای رفتار یکسان، روی iOS، Android، دسکتاپ و وب آزمایش کنید

### چک‌لیست آزمایش پیش از انتشار

پیش از انتشار مطمئن شوید همه قابلیت‌های اصلی درست کار می‌کنند، از جمله احراز هویت کاربر، عناصر تعاملی و ادغام‌های API. مطمئن شوید مدیریت خطا بازخورد مناسبی به کاربر می‌دهد و روی اندازه‌های مختلف صفحه و دستگاه‌ها آزمایش کنید. برای عملکرد روان، زمان بارگذاری و پاسخ‌گویی اپلیکیشن را زیر نظر داشته باشید.

### پایش در محیط اصلی

پس از انتشار، از ابزارهای پایش مانند Sentry یا LogRocket برای پیگیری خطاها و عملکرد استفاده کنید. زمان پاسخ API و رفتار کاربران را زیر نظر بگیرید و برای مشکلات حیاتی هشدار تنظیم کنید. پایش منظم کمک می‌کند مشکلات را سریع پیدا و رفع کنید و کیفیت سرویس را حفظ کنید.

## الزامات HTTPS و نکات انتشار

درک الزامات HTTPS برای انتشار موفق Mini App ضروری است. تلگرام در محیط اصلی استانداردهای امنیتی سخت‌گیرانه‌ای دارد و رعایت آن‌ها از رایج‌ترین مشکلات انتشار جلوگیری می‌کند.

### الزامات HTTPS در هر محیط

**محیط**

**پروتکل‌های پشتیبانی‌شده**

**الزامات گواهی**

**کاربرد**

محیط آزمایشی

HTTP و HTTPS

برای HTTP نیازی به گواهی نیست

توسعه محلی و آزمایش

محیط اصلی

فقط HTTPS

گواهی SSL/TLS معتبر الزامی است

اپلیکیشن‌های فعال و کاربران واقعی

تلگرام برای رمزگذاری داده‌های حساس، یعنی اطلاعات کاربران، توکن‌های احراز هویت و درخواست‌های API، استفاده از HTTPS را در همه Mini Apps محیط اصلی الزامی کرده است. محیط آزمایشی برای توسعه محلی، نشانی‌های HTTP و IP (مثلاً http://192.168.1.100:3000) را مجاز می‌داند. محیط اصلی به‌طور قطعی HTTPS با گواهی SSL معتبر می‌خواهد و نشانی‌های HTTP رد می‌شوند.

### دریافت گواهی SSL

بسیاری از پلتفرم‌های میزبانی HTTPS مدیریت‌شده ارائه می‌دهند، اما هزینه‌ها، پشتیبانی از گواهی و الزامات دامنه اختصاصی بسته به محصول و طرح فرق می‌کنند:

-   **Vercel** – SSL خودکار و نشانی‌های HTTPS فوری؛ عالی برای اپلیکیشن‌های React و Next.js.
-   **Netlify** – گواهی SSL رایگان و انتشار مداوم؛ مناسب برای سایت‌های ایستا.
-   **Heroku** – HTTPS و مدیریت گواهی دامنه اختصاصی به نوع انتشار و طرح بستگی دارد؛ فرض نکنید میزبانی رایگان یا گواهی خودکار در همه طرح‌ها وجود دارد.
-   **AWS/DigitalOcean** – بسته به محصول میزبانی انتخاب‌شده، ممکن است گواهی مدیریت‌شده یا پیکربندی دستی در دسترس باشد.

Let’s Encrypt گواهی رایگان برای نصب دستی ارائه می‌دهد. ارائه‌دهندگان تجاری (DigiCert و Sectigo) گواهی‌های پولی دارند که معمولاً برای بیشتر Mini Apps لازم نیستند.

### مشکلات رایج و راه‌حل‌ها

**مشکل**

**راه‌حل**

گواهی نامعتبر

نصب و تاریخ انقضا را با ابزارهای بررسی SSL (مانند SSL Labs) بررسی کنید

محتوای ترکیبی

مطمئن شوید همه منابع (تصاویر، اسکریپت‌ها و APIها) از نشانی‌های HTTPS استفاده می‌کنند

گواهی‌های خودامضا

پذیرفته نمی‌شوند؛ از مراجع معتبر (Let’s Encrypt و DigiCert) استفاده کنید

ناهمخوانی دامنه

گواهی باید دقیقاً با دامنه مطابقت داشته باشد؛ برای زیردامنه‌ها از wildcard استفاده کنید

### روند انتشار

**مرحله توسعه:** برای تکرار سریع، از HTTP با سرورهای محلی در محیط آزمایشی استفاده کنید.

**پیش از انتشار اصلی:** روی میزبانی با HTTPS خودکار منتشر کنید، گواهی SSL را بررسی کنید، با HTTPS در محیط آزمایشی آزمایش کنید و مطمئن شوید همه منابع خارجی از HTTPS استفاده می‌کنند.

**محیط اصلی:** نشانی HTTPS را در BotFather به‌روزرسانی کنید، روی پلتفرم‌های مختلف آزمایش کنید، انقضای گواهی را زیر نظر بگیرید و تمدید خودکار را فعال کنید.

### بهترین روش‌ها

رازهای سرور را در متغیرهای محیطی نگه دارید، دسترسی به API را به‌درستی محدود کنید و از HTTPS استفاده کنید. CORS درخواست‌ها را احراز هویت نمی‌کند. DNS و تمدید گواهی را بررسی کنید؛ زمان صدور متغیر است و در تعداد دقیقه مشخصی تضمین نمی‌شود.

HTTPS الزامی اساسی برای Mini Apps در محیط اصلی است. انتخاب پلتفرم‌های میزبانی با SSL خودکار کمک می‌کند استانداردهای امنیتی تلگرام را به‌خوبی رعایت کنید.

## چطور مینی‌اپلیکیشن را به تلگرام اضافه کنیم؟

وقتی مینی‌اپلیکیشن آماده و آزمایش شد، وقت آن است آن را به تلگرام اضافه کنید تا کاربران بتوانند از آن استفاده کنند. درک نحوه کار Telegram Mini Apps برای ادغام موفق بسیار مهم است.

### گام ۱. بارگذاری پروژه روی سرور

گام اول قرار دادن مینی‌اپلیکیشن روی سرور است. این کار لازم است تا اپلیکیشن همیشه در دسترس کاربران باشد. سرور امکان می‌دهد اپلیکیشن به‌طور مداوم اجرا شود و درخواست‌ها را در لحظه پردازش کند. روش کار این است:

برای هر بخش میزبانی مناسب انتخاب کنید: میزبانی ایستا برای رابط کاربری، و فرایند همیشه‌فعال یا توابع پشتیبانی‌شده webhook برای ربات. به‌جای اینکه فرض کنید Heroku یا پلتفرم دیگری رایگان است، قیمت‌های فعلی را بررسی کنید. از یک مخزن منتشر کنید، بدون اینکه توکن‌های ربات یا رازهای دیگر را منتشر کنید.

پس از انتشار، میزبان یک نشانی به شما می‌دهد که مینی‌اپلیکیشن از طریق آن به‌صورت آنلاین در دسترس است.

### گام ۲. اتصال ربات و تنظیم نشانی اپلیکیشن

پس از میزبانی، نشانی HTTPS مربوط به Mini App را در تنظیمات اپلیکیشن یا دکمه منو در BotFather وارد کنید. توکن ربات برای فراخوانی‌های Bot API بین سرورهاست؛ کلید دسترسی‌ای برای قرار دادن در رابط وب نیست.

BOT\_TOKEN را فقط در محیط سرور ربات نگه دارید. به‌روزرسانی‌های ربات تلگرام و درخواست‌های مرورگر Mini App دو جریان جدا هستند: برای نمایش اپلیکیشن وب لازم نیست هر کلیک از ربات عبور کند. در محیط اصلی از HTTPS استفاده کنید و هر جا هویت کاربر مهم است، initData را در بک‌اند اعتبارسنجی کنید.

### گام ۳. راه‌اندازی و ادغام اپلیکیشن

برای اینکه مینی‌اپلیکیشن به‌طور کامل در تلگرام کار کند، باید سیستم را درست پیکربندی کنید و عناصری برای تعامل کاربران اضافه کنید. برای بهترین تجربه کاربری، مطمئن شوید اپلیکیشن مستقیماً داخل تلگرام اجرا می‌شود.

پیکربندی webhook

Webhook به‌روزرسانی‌های Bot API ربات شما را دریافت می‌کند؛ هر کلیک مرورگر در Mini App را به‌طور خودکار دریافت نمی‌کند. فقط اگر webhook را به‌جای polling انتخاب می‌کنید آن را پیکربندی کنید. برای یک ربات، polling با getUpdates و webhook فعال را هم‌زمان به کار نبرید.

تنظیم دکمه‌ها و دستورها

برای اینکه کاربران راحت Telegram Mini App شما را اجرا کنند، دکمه‌ها و دستورهای ساده و روشن اضافه کنید. برای مثال، دکمه‌های «اجرا»، «باز کردن» یا دکمه‌های دیگری متناسب با قابلیت‌های اپلیکیشن. برای ناوبری راحت، افزودن دکمه منو را در نظر بگیرید که می‌تواند دکمه منوی ربات هم باشد. این دکمه‌ها به کاربران امکان می‌دهند بدون نوشتن دستور متنی، مستقیماً در چت با مینی‌اپلیکیشن تعامل کنند. رابط تلگرام باید تعاملی روان فراهم کند و ربات هم باید همه این تعامل‌ها را به‌خوبی مدیریت کند.

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

پردازش دستورها و اقدام‌ها

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

### گام ۴. آزمایش و راه‌اندازی

وقتی همه چیز تنظیم شد، وقت آزمایش مینی‌اپلیکیشن است:

مطمئن شوید سرور درست کار می‌کند و از طریق HTTPS به‌صورت آنلاین در دسترس است. وارد تلگرام شوید و اپلیکیشن را باز کنید. روی دکمه‌هایی که تنظیم کرده‌اید کلیک کنید و مطمئن شوید اپلیکیشن طبق انتظار کار می‌کند. مطمئن شوید به دستورها درست پاسخ می‌دهد و با سیستم تعامل دارد.

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

تنظیم مینی‌اپلیکیشن با BotFather

پس از پایان توسعه باید اپلیکیشن را درست پیکربندی کنید. هنگام ساخت Telegram Mini App، رعایت مراحل درست ضروری است. وقتی اپلیکیشن آماده شد، می‌توانید سراغ پیکربندی نهایی بروید.

به BotFather برگردید و تنظیمات مینی‌اپلیکیشن را پیکربندی کنید. می‌توانید لینکی مستقیم برای اشتراک‌گذاری کاربران بسازید و مطمئن شوید اپلیکیشن در گروه‌های تلگرام خوب کار می‌کند. پلتفرم تلگرام از دستگاه‌های Android و iOS پشتیبانی می‌کند، پس مطمئن شوید اپلیکیشن با هر دو سازگار است.

هنگام طراحی اپلیکیشن، دستورالعمل‌های رابط کاربری تلگرام را در نظر بگیرید. کاربران باید با هر دستگاهی، هنگام باز کردن مینی‌اپلیکیشن تجربه‌ای روان داشته باشند. مینی‌اپلیکیشن را بهینه کنید و از قابلیت‌های موجود بیشترین استفاده را ببرید.

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

## تبلیغ مینی‌اپلیکیشن با AdsGram

حالا که مینی‌اپلیکیشن شما فعال است، می‌توانید با AdsGram آن را تبلیغ کنید. پلتفرم ما امکان تنظیم تبلیغات ویژه مینی‌اپلیکیشن‌ها و بازی‌های تلگرام را می‌دهد. برای دسترسی گسترده‌تر می‌توانید از Telegram Ads هم استفاده کنید. می‌توانید:

کمپین تبلیغاتی بسازید تا کاربران بیشتری به اپلیکیشن جذب شوند. از هدف‌گیری جغرافیایی استفاده کنید تا تبلیغات در منطقه‌های مناسب نمایش داده شود و ترافیک باکیفیت بگیرید. برای افزایش تعامل کاربران، فرمت‌های تبلیغاتی بازی‌ها و مینی‌اپلیکیشن‌ها، مانند ویدئوهای جایزه‌دار یا بنرها، را بهینه کنید.

با AdsGram می‌توانید اپلیکیشن خود را به‌طور مؤثر تبلیغ کنید و کاربران جدید جذب کنید. برای راه‌اندازی و تبلیغ مینی‌اپلیکیشن خود موفق باشید!

  

![Elizaveta Bydanova](https://image.adsgram.ai/site/elizaveta-bydanova.webp)

Elizaveta Bydanova

سرپرست تیم توسعه کسب و کار, AdsGram

## بعدی را بخوانید

جدیدترین اخبار صنعت، مصاحبه‌ها، فناوری‌ها و منابع

[مشاهده همه پست‌ها](/fa/blog)

### پلتفرم خودکار همه‌جانبه برای تبلیغات مؤثر

امروز سفر تبلیغاتی خود را با ما آغاز کنید.

[ورود به عنوان تبلیغ‌دهنده](https://traffic.adsgram.ai/registration?code=NewDirectUser)

[ورود به عنوان ناشر](https://partner.adsgram.ai/registration?code=NewDirectUser)