بات تلگرام
کاربانر میتواند رویدادهای مهم را به گروه تلگرام شما بفرستد و در همان گروه درخواست تازه بگیرد. جهتِ اصلی خروجی است: خبر از پنل به گروه میرود. تنها ورودی، ثبت درخواست در یک پنجرهی اعلامشده است (بخش «ثبت درخواست از همان گروه») و بیرون از آن پنجره هیچ متنی از تلگرام وارد کاربانر نمیشود. ورودیِ کار همچنان پنل است.
در پلن استاندارد و حرفهای فعال است.
راهاندازی
یک اتصال، دو جهت: گروهی که به پروژه وصل میکنید هم خبرهای همان پروژه را میگیرد هم میتواند درخواست تازه ثبت کند. چیزی به نام «شناسهی گفتگوی اعلان» جدا وجود ندارد.
۱. بات @karbaner_bot را به گروه اضافه کنید. (اگر میخواهید در همان گروه درخواست هم ثبت
شود، باید ادمین گروه باشد؛ پایین توضیح داده شده.)
۲. مدیرِ گروه در همان گروه /link بفرستد. بات یک کد دهنویسهای در همان گروه میدهد.
۳. در تنظیمات پروژه، بخش تلگرام، کد را وارد کنید. گروه به همان پروژه وصل میشود و در
فهرست «گروههای وصلشده» مینشیند. کنار هر گروه دکمهی پیام آزمایشی هست.
اگر پیام آزمایشی رسید، تمام است. یک پروژه میتواند چند گروه داشته باشد (مثلاً گروه تیم و گروه مشتری) و خبر به همهشان میرود؛ یک گروه فقط به یک پروژه وصل است. «برداشتن اتصال» هم خبر را قطع میکند هم ثبت درخواست را.
چه چیزی اعلان میشود
گروهی که بات در آن است ممکن است خودِ مشتری را هم داشته باشد. پس قاعده ساده است: گروه آینهی پورتال مشتری است، نه آینهی پنل. هرچه مشتری در پورتال نمیبیند، به گروه هم نمیرود.
به گروه میرسد:
- درخواستی که مشتری ثبت کرده
- پیام مشتری، با پیشنمایش متنش
- تغییر وضعیت، با همان چهار واژهای که مشتری در پورتال میبیند: منتظر شما · در حال انجام · در نوبت انجام · انجام شد
به گروه نمیرسد:
- هیچ خبری از کاری که برای مشتری منتشر نشده (تیک «مشتری ببیند» روی خودِ کار)
- کامنت ترمینال — نه متنش، نه اینکه اصلاً کامنتی گذاشته
- «فوری» شدن یک کار، جابهجایی مسئول، و وضعیتهای داخلی مثل «بازبینی»
- کاری که خودتان در پنل کردهاید (قاعدهی ضد نویز، مکانیکی و بدون تنظیم)
بات هیچ نمای داخلی ندارد. خبرِ کامل و داخلی فقط در پنل است. چت خصوصی با بات فقط یک کار میکند: کد شناسایی میدهد (بخش بعد). هر متن دیگری در چت خصوصی بیجواب میماند و هیچجا ذخیره نمیشود.
اگر پروژه بایگانی شود
اعلانهایش قطع میشود.
اتصال تلگرام در تنظیمات پروژه
همهچیزِ تلگرامِ یک پروژه در تنظیمات همان پروژه، بخش تلگرام است — نه در صفحهی کسبوکار. دو کار جدا، با دو کد جدا:
۱. وصلکردن گروه به پروژه. مدیرِ گروه در خودِ گروه /link میفرستد. بات فقط به
مدیران گروه کد میدهد (این کد تصمیم میگیرد خبرهای کدام پروژه به این گروه بیاید و
درخواستهای گروه به کدام پروژه برود). کد را در بخش تلگرامِ پروژهی مقصد وارد کنید؛ گروه به
همان پروژه وصل میشود. یک گروه فقط به یک پروژه وصل است، ولی یک پروژه میتواند چند گروه
داشته باشد (گروه تیم و گروه مشتری). این کد به هویتِ کسی دست نمیزند.
۲. شناساندن آدمها. تلگرام فقط یک شناسهی عددی میدهد و نمیگوید آن شناسه کیست؛ تنها
کسی که هر دو طرف را میشناسد شمایید. هرکس — خودتان، نیروهایتان، هر نفر از تیم مشتری — در
چت خصوصی با بات /link میفرستد (/start هم همین کار را میکند) و کدی میگیرد که ۱۰
دقیقه معتبر است. کد را به شما میدهد؛ شما در بخش تلگرامِ پروژه وارد میکنید و میگویید این
حساب مالِ کیست. از همان لحظه آن حساب وصل است و برای همین پروژه مجاز.
هیچکس خودش را وصل نمیکند؛ گفتنِ «این حساب کیست» فقط از پنل و فقط دست شماست. اتصالِ حساب سطحِ کسبوکار است (یک حساب، یک آدم؛ ۹۰ روز) — پس کسی که در یک پروژه شناخته شد، در پروژهی دیگری که نیرو یا مشتریِ آن است هم در فهرست میآید و کافی است آنجا تیکش را بزنید؛ کدِ تازه لازم نیست.
- کدِ تازه از همان حساب برای همان شخص فقط همین پروژه را به مجوزهایش اضافه میکند و عمرِ اتصال را از نو ۹۰ روز میکند؛ مجوزهای او در پروژههای دیگر دست نمیخورد.
- همان شخص با حسابِ تلگرامِ تازه: حسابِ قبلیاش برداشته میشود و مجوزهایش در همهی پروژهها به حسابِ تازه میرسد.
- حسابی که الان مالِ شخصِ دیگری است: پنل پیش از وصلکردن میگوید آن حساب مالِ کیست و در کدام پروژهها مجاز است، و فقط با «جایگزین کن» جایگزین میشود. اتصالِ قبلی و مجوزهایش برداشته میشود و برای هر مجوزی که میرود یک رویداد ثبت میشود.
- اگر همان حساب در کسبوکارِ دیگری وصل باشد، آنجا قطع میشود (هر حساب در هر لحظه مالِ یک کسبوکار است)؛ خودِ صاحبِ حساب کد را به شما داده است.
افراد مجاز در گروه. زیر همان بخش، فهرستِ کسانی است که به این پروژه ربط دارند: شما،
نیروهای این پروژه، مشتریهای این پروژه. هرکدام که حسابش وصل است یک تیک دارد: میتواند در
گروه درخواست ثبت کند. تیک یعنی پیامهایش در گروههای این پروژه ضبط میشود؛ بیتیک، مثل کسی
که وصل نیست. کسی که حسابش وصل نیست خاکستری دیده میشود تا بدانید کی هنوز /link نزده.
همانجا میتوانید اتصالِ حساب را (برای کلِ کسبوکار) قطع کنید؛ برداشتن یک نیرو هم اتصال
تلگرامش را میبندد.
همین که کد را وارد کنید، قبل از وصلکردن پنل میگوید این کد از کدام گروه (با نام) یا از چت خصوصی آمده و اگر آن گروه از قبل وصل باشد، به کدام پروژه. برای کدِ چت خصوصی، اگر همان حساب از قبل وصل است، میگوید به چه کسی و در کدام پروژهها مجاز است و همان شخص را از پیش انتخاب میکند. کدی که برای کارِ دیگری باشد با خطای روشن رد میشود و نمیسوزد — کدِ گروه شخص را نمیشناساند، کدِ چت خصوصی گروه را وصل نمیکند. چون کد فقط به دستِ خودِ فرستنده میرسد، کسی نمیتواند گروه شما را به پروژهی خودش وصل کند.
منوی دستورها
لازم نیست کسی دستوری را حفظ باشد: با زدنِ «/» در تلگرام، فهرست دستورها باز میشود. بات خودش این فهرست را روی تلگرام ثبت میکند (هم باتِ مرکزی، هم هر باتِ اختصاصی، همان لحظهی ثبت):
| کجا | چه دستورهایی |
|---|---|
| چت خصوصی با بات | /link (کدِ اتصالِ حساب)، /start |
| گروه | /info، /tasks، /completed، /new، /finish، /cancel |
| مدیرانِ گروه | همانها بهعلاوهی /link (اتصالِ گروه) |
شرحِ دستورها هیچ نام محصولی ندارد — گروه و چت خصوصی به نامِ کسبوکارِ شما حرف میزنند.
وقتی دستوری را از منو انتخاب میکنید یا چند بات در گروه هست، تلگرام نامِ بات را ته دستور
میگذارد (مثلاً /info@your_bot). هر دو شکل کار میکنند، هم با بات کاربانر هم با بات
اختصاصی. دستوری که به نامِ باتِ دیگری خطاب شده باشد جوابی نمیگیرد.
دستور /info
بعد از اینکه گروه به پروژه وصل شد، /info وضعیت را میدهد — با همان دامنه و همان
واژههای بالا: چند درخواست باز است و هرکدام در کدام مرحله. کارهای منتشرنشده در این
شمارش نمیآیند.
اگر گروه هنوز به پروژهای وصل نباشد، /info فقط میگوید چطور وصل شود. هیچ اطلاعات
کسبوکاری به گفتگویی که وصل نیست فرستاده نمیشود.
دستور /tasks
فهرست درخواستهای باز، بهشکل یک پیام ساده و بدون دکمه: هر درخواست با شماره و مرحلهاش، با همان واژههای پورتال. فقط کارهای منتشرشده میآیند. اگر فهرست بلندتر از یک پیام باشد، بریده میشود و خودِ پیام میگوید.
دستور /completed
فهرستِ درخواستهای انجامشده، تازهترین اول، بیستتا بیستتا. کنارِ هر درخواست تاریخِ انجامش میآید. اگر بیش از بیست مورد باشد، زیرِ پیام دکمهی «قدیمیتر» هست و در صفحههای بعد «جدیدتر». دکمهها همان پیام را عوض میکنند و پیامِ تازهای به گروه نمیفرستند.
- فقط کارهای منتشرشده و فقط «انجام شد». کارِ «بسته شد» اینجا نیست و در پورتال دیده میشود.
- صفحهها «تا لحظهی زدنِ دستور» شمرده میشوند. کاری که بعد از آن انجام شود با
/completedتازه دیده میشود، و ورقزدن ترتیبِ صفحهها را به هم نمیریزد.
ثبت درخواست از همان گروه
در همان گروه میشود درخواست تازه ثبت کرد — بدون رفتن به پورتال. این تنها راهی است که چیزی از تلگرام وارد کاربانر میشود، و عمداً باریک است.
فعالکردن:
۱. بات باید در آن گروه ادمین باشد. تلگرام به باتِ غیرادمین فقط دستورها را میدهد،
پس بدون این، پیام و عکس و فایل اصلاً به ما نمیرسد.
۲. گروه را به پروژه وصل کنید: مدیرِ گروه در گروه /link بزند و کد را در بخش تلگرامِ
تنظیمات پروژه وارد کنید (بخش قبل).
۳. کسانی که قرار است بنویسند، در چت خصوصی با بات /link بزنند و کدشان را به شما بدهند؛
در همان بخش وارد کنید و بگویید کیست. تیکِ «میتواند در گروه درخواست ثبت کند» باید روشن باشد.
هر پیام به نام گویندهی خودش ثبت میشود، و درخواست به نام کسی که دکمهی شروع را زده. پس یک گروه میتواند همزمان چند نفر از تیم شما و چند نفر از تیم مشتری را داشته باشد:
| نفری از تیم مشتری | نفری از تیم شما | |
|---|---|---|
| درخواستی که شروع میکند | به نام همان مشتری؛ در پورتال میبیندش و ادامه میدهد | داخلی؛ در هیچ پورتالی دیده نمیشود |
| پیامش داخل پنجره | پیام مشتری | پیام تیم |
| شرط | مشتری در پروژه دسترسی داشته باشد و تیک بخورد (پلن حرفهای، چون ردیف مشتری میخواهد) | به آن پروژه دسترسی داشته باشد و تیک بخورد (پلن استاندارد کافی است) |
پیامِ کسی که وصل نیست یا برای این پروژه تیک ندارد اصلاً ضبط نمیشود و بات یک بار همانجا میگوید چرا. پس پروژهی داخلی یا شخصی هم میتواند گروه داشته باشد و شما و نیروهایتان از همانجا کار ثبت کنید، بدون هیچ مشتریای.
استفاده: /new بفرستید (یا دکمهی زیر /info را بزنید). از آن لحظه بات
پیامی میگذارد که میگوید «در حال ثبت درخواست تازه» و هر پیامی که بیاید — متن، عکس،
فایل، ویدیو، پیام صوتی — به همان درخواست اضافه میشود. گفتگوی رفتوبرگشتی هم ضبط
میشود: معلوم میماند چه کسی چه گفت. با «پایان و ثبت» همهی آن پیامها یک درخواست
میشوند و شمارهاش همانجا اعلام میشود.
- پیام صوتی خودکار به متن تبدیل میشود و خودِ فایل صوتی هم پیوست میماند.
- عکس و فایل روی فضای ذخیرهسازی همان پروژه مینشینند و پیوستِ همان درخواست میشوند.
- سقف ۲۰ مگابایت برای هر فایل — این قید خودِ تلگرام برای باتهاست، نه سقف کاربانر. فایل بزرگتر دریافت نمیشود و بات همانجا میگوید.
- اگر کسی «پایان» را نزند، بعد از یک ساعت بیحرکتی خودکار ثبت میشود تا چیزی گم نشود. «لغو» هم هست: پیامها و فایلهای همان پنجره پاک میشوند.
- بیرون از این پنجره هیچ پیامی ذخیره نمیشود — نه متن، نه فایل.
دروازهی تأیید دستنخورده میماند: درخواستی که از گروه میآید دقیقاً مثل درخواست پورتال است — مسئولش «صاحب پروژه» است و تا خودتان تأیید و ارجاع نکنید هیچ کاری شروع نمیشود. متنِ آمده از گروه هم مثل متن مشتری است: تا وقتی در پنل «ارجاع به ترمینال» نزنید، ترمینال نه آن را میبیند و نه فایلهایش را.
چیزی که بات نمیکند: هیچ چیزی از تلگرام مستقیم به کار ترمینال نمیرسد، هیچ کاری از تلگرام تأیید یا ارجاع نمیشود، و بیرون از پنجرهی ثبت درخواست هیچ متنی ذخیره نمیشود. اتصال تلگرام فقط هویت است، نه اختیار.
بات اختصاصی هر پروژه
هیچکدام از متنهایی که بات در گروه یا چت خصوصی میفرستد نامِ کاربانر را ندارد و یک نگهبانِ خودکار در تست همین را نگه میدارد؛ نام و عکس و توضیحِ خودِ بات را هم شما در BotFather تعیین میکنید. یعنی مشتریای که با باتِ اختصاصیِ شما کار میکند، ردی از ما نمیبیند.
اگر نمیخواهید بات کاربانر در گروه مشتری باشد، میتوانید بات خودتان را بگذارید:
۱. در تلگرام به @BotFather بگویید /newbot و توکنی که میدهد را نگه دارید.
۲. در تنظیمات پروژه، بخش بات اختصاصی، توکن را وارد کنید. کاربانر همان لحظه با تلگرام
میسنجد که توکن زنده است و نام بات را نشان میدهد. توکن رمزشده ذخیره میشود و دیگر
هیچجا نمایش داده نمیشود.
۳. همان بات را به گروه اضافه کنید (برای ثبت درخواست، ادمین). از این به بعد اعلانها،
/info، /tasks، /completed، /link و ثبت درخواستِ این پروژه از راه همین بات میرود.
چند پروژهی یک کسبوکار میتوانند یک بات مشترک داشته باشند. اگر بات کاربانر هم هنوز در همان گروه مانده باشد، دو جواب نمیگیرید؛ هر گروه را فقط باتِ خودش جواب میدهد. اگر بات اختصاصی را از تنظیمات بردارید، پروژه به بات کاربانر برمیگردد و آن بات باید در گروه باشد.