۹ اسفند
کُد یاران | آموزش کامپیوتر و برنامهنویسی
دسترسی به اینترنت بینالمللی نداری؟ اینترنتت ضعیفه؟ بیا توی این گروه ها:
point_right https://rubika.ir/joing/HBBIBFAD0WDFDEPWMLBYVLZBBGHWIZJH
--------------------------------------------
point_right https://rubika.ir/joing/IIIHAHEA0LHDTNUNEQOLBBOTFTBSJCBH
point_right https://rubika.ir/joing/HBBIBFAD0WDFDEPWMLBYVLZBBGHWIZJH
--------------------------------------------
point_right https://rubika.ir/joing/IIIHAHEA0LHDTNUNEQOLBBOTFTBSJCBH
Please open Rubika to view this post
VIEW IN RUBIKA۱۲ اسفند
کُد یاران | آموزش کامپیوتر و برنامهنویسی
حوصلهات سر رفته؟ نمیدونی چیکار کنی؟ اینترنتت ضعیفه؟ دسترسی به اینترنت بینالمللی نداری؟ یه سری به این گروهها بزن point_down
https://rubika.ir/joing/HBBIBFAD0TZRGAXMXENWABOWZKKQQCFH
https://rubika.ir/joing/IIIHAHEA0DHPDXWYPWZRMUVXSDJWIPUN
wavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dash
همچنین گروهی برای گفتگوی آزاد و بحث دربارهی وضعیت حال point_down
https://rubika.ir/joing/JGDJDBDJ0SRHELBQEBMZQFTPTKWSJDSF
https://rubika.ir/joing/HBBIBFAD0TZRGAXMXENWABOWZKKQQCFH
https://rubika.ir/joing/IIIHAHEA0DHPDXWYPWZRMUVXSDJWIPUN
wavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dash
همچنین گروهی برای گفتگوی آزاد و بحث دربارهی وضعیت حال point_down
https://rubika.ir/joing/JGDJDBDJ0SRHELBQEBMZQFTPTKWSJDSF
Please open Rubika to view this post
VIEW IN RUBIKA۲۰ اسفند
کُد یاران | آموزش کامپیوتر و برنامهنویسی
حوصلهات سر رفته؟ نمیدونی چیکار کنی؟ اینترنتت ضعیفه؟ دسترسی به اینترنت بینالمللی نداری؟ یه سری به این گروهها بزن point_down
https://rubika.ir/joing/HBBIBFAD0TZRGAXMXENWABOWZKKQQCFH
https://rubika.ir/joing/IIIHAHEA0DHPDXWYPWZRMUVXSDJWIPUN
wavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dash
همچنین گروهی برای گفتگوی آزاد و بحث دربارهی وضعیت حال point_down
https://rubika.ir/joing/JGDJDBDJ0SRHELBQEBMZQFTPTKWSJDSF
https://rubika.ir/joing/HBBIBFAD0TZRGAXMXENWABOWZKKQQCFH
https://rubika.ir/joing/IIIHAHEA0DHPDXWYPWZRMUVXSDJWIPUN
wavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dashwavy_dash
همچنین گروهی برای گفتگوی آزاد و بحث دربارهی وضعیت حال point_down
https://rubika.ir/joing/JGDJDBDJ0SRHELBQEBMZQFTPTKWSJDSF
Please open Rubika to view this post
VIEW IN RUBIKA۲۴ اسفند
کُد یاران | آموزش کامپیوتر و برنامهنویسی
ساختار متادیتا:
{
"text": "متن نهایی پس از پردازش",
"metadata": {
"meta_data_parts": [
]
}
}
انواع متادیتا:
● برای هایپرلینک:
شرط: "type" == "Link"
ساختار:
{
"type": "Link",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای لینک بر اساس UTF-16",
"link_url": "URL مقصد"
}
● برای منشن کردن کاربران:
شرط: "type" == "MentionText"
ساختار:
{
"type": "MentionText",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول متن منشن بر اساس UTF-16",
"mention_text_user_id": "شناسه کاربر (sender_id)"
}
● برای Pre (کپی کد):
شرط: "type" == "Pre"
ساختار:
{
"type": "Pre",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای بلوک کد بر اساس UTF-16"
}
● برای Quote (نقل قول):
شرط: "type" == "Quote"
ساختار:
{
"type": "Quote",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای نقل قول بر اساس UTF-16"
}
● برای سایر انواع متادیتاها مانند (برجسته، کج، تکی، زیر خط، خط خورده، اسپویل):
شرط: "type" یکی از موارد باقیمانده باشد (Bold, Italic, Mono, Underline, Strike, Spoiler).
ساختار:
{
"type": "نوع Markdown", // مثلا "Bold", "Mono", "Italic" و غیره
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای فرمتبندی شده بر اساس UTF-16"
}
یک نمونه برای استفاده از متادیتا:
import requests
token = "" # توکن بات شما
data = {
"chat_id": "g0G3R4L01f9bfcc94f3284e71fcce607",
"text": "سلام کاربر عزیز!",
"reply_to_message_id": None,
"metadata": {
"meta_data_parts": [
{
"type": "Bold",
"from_index": 0,
"length": 16
},
{
"type": "MentionText",
"from_index": 5,
"length": 11,
"mention_text_user_id": "u0Hzgbk0ac24729c1d1a5d55c26ac3ef"
}
]
}
}
url = f'https://botapi.rubika.ir/v3/{token}/sendMessage'
response = requests.post(url, json=data)
print(response.text)
نکات مهم در پردازش و ارسال متادیتا:
۱. محدودیت تعداد متادیتا:
API روبیکا حداکثر قادر به پردازش ۳۰ قطعه متادیتا در هر پیام است. در صورتی که تعداد متادیتاهای تولید شده از این مقدار تجاوز کند، ارسال پیام با خطا مواجه خواهد شد. لذا لازم است در پیادهسازی، این محدودیت لحاظ گردد.
۲. الزام به شناسه کاربری معتبر در منشنها:
هنگام منشن کردن کاربران یا باتها (MentionText)، ارائه sender_id (شناسه کاربری) معتبر و صحیح الزامی است. در صورتی که sender_id نامعتبر باشد یا اصلاً وارد نشود، API با خطا مواجه شده و پیام ارسال نخواهد شد. اطمینان حاصل کنید که sender_id برای تمام منشنها به درستی استخراج و مقداردهی شده است. همچنین اطمینان حاصل کنید که سندر آیدی با GUID اشتباه گرفته نشود.
id @CodeYaran
{
"text": "متن نهایی پس از پردازش",
"metadata": {
"meta_data_parts": [
]
}
}
انواع متادیتا:
● برای هایپرلینک:
شرط: "type" == "Link"
ساختار:
{
"type": "Link",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای لینک بر اساس UTF-16",
"link_url": "URL مقصد"
}
● برای منشن کردن کاربران:
شرط: "type" == "MentionText"
ساختار:
{
"type": "MentionText",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول متن منشن بر اساس UTF-16",
"mention_text_user_id": "شناسه کاربر (sender_id)"
}
● برای Pre (کپی کد):
شرط: "type" == "Pre"
ساختار:
{
"type": "Pre",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای بلوک کد بر اساس UTF-16"
}
● برای Quote (نقل قول):
شرط: "type" == "Quote"
ساختار:
{
"type": "Quote",
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای نقل قول بر اساس UTF-16"
}
● برای سایر انواع متادیتاها مانند (برجسته، کج، تکی، زیر خط، خط خورده، اسپویل):
شرط: "type" یکی از موارد باقیمانده باشد (Bold, Italic, Mono, Underline, Strike, Spoiler).
ساختار:
{
"type": "نوع Markdown", // مثلا "Bold", "Mono", "Italic" و غیره
"from_index": "شاخص شروع در متن UTF-16",
"length": "طول محتوای فرمتبندی شده بر اساس UTF-16"
}
یک نمونه برای استفاده از متادیتا:
import requests
token = "" # توکن بات شما
data = {
"chat_id": "g0G3R4L01f9bfcc94f3284e71fcce607",
"text": "سلام کاربر عزیز!",
"reply_to_message_id": None,
"metadata": {
"meta_data_parts": [
{
"type": "Bold",
"from_index": 0,
"length": 16
},
{
"type": "MentionText",
"from_index": 5,
"length": 11,
"mention_text_user_id": "u0Hzgbk0ac24729c1d1a5d55c26ac3ef"
}
]
}
}
url = f'https://botapi.rubika.ir/v3/{token}/sendMessage'
response = requests.post(url, json=data)
print(response.text)
نکات مهم در پردازش و ارسال متادیتا:
۱. محدودیت تعداد متادیتا:
API روبیکا حداکثر قادر به پردازش ۳۰ قطعه متادیتا در هر پیام است. در صورتی که تعداد متادیتاهای تولید شده از این مقدار تجاوز کند، ارسال پیام با خطا مواجه خواهد شد. لذا لازم است در پیادهسازی، این محدودیت لحاظ گردد.
۲. الزام به شناسه کاربری معتبر در منشنها:
هنگام منشن کردن کاربران یا باتها (MentionText)، ارائه sender_id (شناسه کاربری) معتبر و صحیح الزامی است. در صورتی که sender_id نامعتبر باشد یا اصلاً وارد نشود، API با خطا مواجه شده و پیام ارسال نخواهد شد. اطمینان حاصل کنید که sender_id برای تمام منشنها به درستی استخراج و مقداردهی شده است. همچنین اطمینان حاصل کنید که سندر آیدی با GUID اشتباه گرفته نشود.
id @CodeYaran
Please open Rubika to view this post
VIEW IN RUBIKA۲۹ اسفند
کُد یاران | آموزش کامپیوتر و برنامهنویسی
سال نو مبارک hibiscus
Please open Rubika to view this post
VIEW IN RUBIKA۲ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
روبیکا و بقیه پیامرسانهای ایرانی شدن پل ارتباطی؛
مردم داخلشون کانفیگ و VPN به اشتراک میذارن که بتونن وصل شن به تلگرام یا اینستاگرام، ولی نمیخوان یه لحظه هم توی پلتفرمهای ایرانی بمونن.
مردم داخلشون کانفیگ و VPN به اشتراک میذارن که بتونن وصل شن به تلگرام یا اینستاگرام، ولی نمیخوان یه لحظه هم توی پلتفرمهای ایرانی بمونن.
Please open Rubika to view this post
VIEW IN RUBIKA۲ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
مواظب کانفیگ فروش ها و فیلترشکن فروش ها هم باشید، حتی المقدور از خریدن کانفیگ و... دوری کنید؛ اگه کارِتون خیلی ضروری بود از فروشنده تست بگیرید.
چون ممکنه سرتون کلاه بره یا کانفیگ فروشنده برای شما وصل نشه و یا اگه وصل هم شد بعد از چند دقیقه قطع بشه.
+ هر برنامه ای رو تحت عنوان 'فیلترشکن' نصب نکنید؛ چون ممکنه مخرب و بدافزار باشه. اگه اون برنامه ازتون شماره خواست فورا پاکش کنید، چون میخواد به اکانت روبیکاتون دسترسی پیدا کنه و براتون مشکل ساز میشه.
چون ممکنه سرتون کلاه بره یا کانفیگ فروشنده برای شما وصل نشه و یا اگه وصل هم شد بعد از چند دقیقه قطع بشه.
+ هر برنامه ای رو تحت عنوان 'فیلترشکن' نصب نکنید؛ چون ممکنه مخرب و بدافزار باشه. اگه اون برنامه ازتون شماره خواست فورا پاکش کنید، چون میخواد به اکانت روبیکاتون دسترسی پیدا کنه و براتون مشکل ساز میشه.
Please open Rubika to view this post
VIEW IN RUBIKA۴ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
خدانگهدار.
Please open Rubika to view this post
VIEW IN RUBIKA۷ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
گروه ‹کامپیوتری ها› مجدد تشکیل شد؛
link لینک گروه:
https://rubika.ir/joing/JJDIBEIJ0EZKTLLVYEQLNOXWHFICZHPS
لطفاً قوانین را رعایت کرده تا مشکلی برای گروه و شما پیش نیاید.
bookmark قوانین:
https://rubika.ir/TheComputeriha/GEIHACBHJEFCECJ
link لینک گروه:
https://rubika.ir/joing/JJDIBEIJ0EZKTLLVYEQLNOXWHFICZHPS
لطفاً قوانین را رعایت کرده تا مشکلی برای گروه و شما پیش نیاید.
bookmark قوانین:
https://rubika.ir/TheComputeriha/GEIHACBHJEFCECJ
Please open Rubika to view this post
VIEW IN RUBIKA۷ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
گروه کُد یاران هم که پرید
Please open Rubika to view this post
VIEW IN RUBIKA۷ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
کد پروفایل دوگانه یا همان باگ پروفایل:
from rubpy import Client
SESSION_NAME = "mySession"
TARGET = "me" # اگر میخواهید برای کانال / گروه پروفایل بگذارید، به جای me گوید موردنظر را وارد کنید.
AB = "IMG_20260318_134002_738.jpg" # عکسی که میخواهید از دور نمایش داده شود
CD = "IMG_20260317_185440_871.jpg" # عکسی که میخواهید از نزدیک نمایش داده شود
try:
with Client(SESSION_NAME) as client:
up = client.upload(AB)
tumb = up.file_id
result = client.upload_avatar(TARGET, CD, tumb)
print("عملیات با موفقیت انجام شد.\n", result)
except Exception as e:
if "INVALID_AUTH" in str(e):
print("خطا در اجرای عملیات، ربات دسترسی به گروه / کانال مورد نظر را ندارد.")
elif "INVALID_INPUT" in str(e):
print("خطا در اجرای عملیات، ورودی یا گوید وارد شده نامعتبر است.")
elif "File not found" in str(e):
print("خطا در اجرای عملیات، فایلهای تصویری مشخص شده یافت نشدند. لطفاً از قرار داشتن تصاویر در کنار کد و صحت نام آنها اطمینان حاصل فرمایید.")
else:
print("خطا در اجرای عملیات:", e)
پیش نیاز:
pip install rubpy
روش نصبِ کتابخانه در شرایط فعلی:
pip install -i https://mirror-pypi.runflare.com/simple rubpy
توضیحات:
۱. در بخش SESSION_NAME ، نام سشن مربوط به حساب کاربری خود را وارد کنید و سشن را کنار کد قرار دهید. (سشن های کتابخانهی rubpy با پسوند rp. هستند.)
چنانچه تاکنون سشنی ایجاد نکردهاید، در قسمت SESSION_NAME تغییری ایجاد نکنید تا سشن حساب شما ساخته شود.
۲. در بخش TARGET، گوید (GUID) مربوط به کانال یا گروه موردنظر را وارد کنید؛ اگر میخواهید برای اکانت خود پروفایل تنظیم کنید، در قسمت TARGET تغییری ایجاد نکنید.
برای به دست آوردنِ GUID گروه یا کانال خود، میتوانید از این فیلم کمک بگیرید.
۳. دو عکس مورد نظر خود را کنار کد قرار داده و بر اساس کامند ها، نام دو عکسِ مورد نظر را در قسمت های AB و CD وارد کنید.
پس از اجرای کد، پروفایل مورد نظر به صورت دوگانه تنظیم خواهد شد.
نکته کلیدی:
حساب کاربری شما باید از مدیران کانال یا گروهِ هدف باشد و دسترسیِ تغییر اطلاعات را برای تنظیم پروفایل، دارا باشد.
warning️ استفاده یا بازنشر این متن بدون اشاره به منبع، مجاز نیست.
id @CodeYaran
from rubpy import Client
SESSION_NAME = "mySession"
TARGET = "me" # اگر میخواهید برای کانال / گروه پروفایل بگذارید، به جای me گوید موردنظر را وارد کنید.
AB = "IMG_20260318_134002_738.jpg" # عکسی که میخواهید از دور نمایش داده شود
CD = "IMG_20260317_185440_871.jpg" # عکسی که میخواهید از نزدیک نمایش داده شود
try:
with Client(SESSION_NAME) as client:
up = client.upload(AB)
tumb = up.file_id
result = client.upload_avatar(TARGET, CD, tumb)
print("عملیات با موفقیت انجام شد.\n", result)
except Exception as e:
if "INVALID_AUTH" in str(e):
print("خطا در اجرای عملیات، ربات دسترسی به گروه / کانال مورد نظر را ندارد.")
elif "INVALID_INPUT" in str(e):
print("خطا در اجرای عملیات، ورودی یا گوید وارد شده نامعتبر است.")
elif "File not found" in str(e):
print("خطا در اجرای عملیات، فایلهای تصویری مشخص شده یافت نشدند. لطفاً از قرار داشتن تصاویر در کنار کد و صحت نام آنها اطمینان حاصل فرمایید.")
else:
print("خطا در اجرای عملیات:", e)
پیش نیاز:
pip install rubpy
روش نصبِ کتابخانه در شرایط فعلی:
pip install -i https://mirror-pypi.runflare.com/simple rubpy
توضیحات:
۱. در بخش SESSION_NAME ، نام سشن مربوط به حساب کاربری خود را وارد کنید و سشن را کنار کد قرار دهید. (سشن های کتابخانهی rubpy با پسوند rp. هستند.)
چنانچه تاکنون سشنی ایجاد نکردهاید، در قسمت SESSION_NAME تغییری ایجاد نکنید تا سشن حساب شما ساخته شود.
۲. در بخش TARGET، گوید (GUID) مربوط به کانال یا گروه موردنظر را وارد کنید؛ اگر میخواهید برای اکانت خود پروفایل تنظیم کنید، در قسمت TARGET تغییری ایجاد نکنید.
برای به دست آوردنِ GUID گروه یا کانال خود، میتوانید از این فیلم کمک بگیرید.
۳. دو عکس مورد نظر خود را کنار کد قرار داده و بر اساس کامند ها، نام دو عکسِ مورد نظر را در قسمت های AB و CD وارد کنید.
پس از اجرای کد، پروفایل مورد نظر به صورت دوگانه تنظیم خواهد شد.
نکته کلیدی:
حساب کاربری شما باید از مدیران کانال یا گروهِ هدف باشد و دسترسیِ تغییر اطلاعات را برای تنظیم پروفایل، دارا باشد.
warning️ استفاده یا بازنشر این متن بدون اشاره به منبع، مجاز نیست.
id @CodeYaran
Please open Rubika to view this post
VIEW IN RUBIKA۸ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
از این پس برای سادهتر شدنِ کار شما، کدهای ارسالی به لینک گروه یا کانال نیاز خواهند داشت و دیگر ضرورتی به استخراج شناسه (GUID) یا همان گوید نخواهد بود.
id @CodeYaran
id @CodeYaran
Please open Rubika to view this post
VIEW IN RUBIKA۸ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
~ کد پروفایل دوگانه که SyntaxError میداد، توسط روبیکا خراب شده بود و ویرایش شد.
مجدد کد را کپی کنید.
مجدد کد را کپی کنید.
Please open Rubika to view this post
VIEW IN RUBIKA۸ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
#درخواستی | کد سادهی یادبگیر:
from rubka.asynco import Robot
from rubka.context import Message
import asyncio
import re
BOT_TOKEN = ""
TARGET_CHAT_ID = ""
ADMIN_SENDER_ID = ""
bot = Robot(token=BOT_TOKEN)
learned_pairs = {}
@bot.on_message()
async def handler(bot: Robot, message: Message):
if message.chat_id != TARGET_CHAT_ID:
return
text = getattr(message, 'raw_text', getattr(message, 'text', None))
if text is None:
text = ""
text = text.strip()
if message.author_guid == ADMIN_SENDER_ID:
if text.startswith("یادبگیر ") or text.startswith("یاد بگیر "):
match = re.match(r"(?:یادبگیر|یاد بگیر)\s+(.+?)\s+(?:بگو)\s+(.+)", text)
if not match:
await message.reply("فرمت درست: یادبگیر x بگو y")
return
x, y = match.group(1).strip(), match.group(2).strip()
learned_pairs[x] = y
await message.reply(f"یاد گرفتم!\nهر وقت «{x}» بیاد ← «{y}» جواب میدم.")
return
elif text == "لیست یادبگیر" or text == "لیست یاد بگیر":
if not learned_pairs:
await message.reply("چیزی یاد نگرفتم.")
return
response_text = "موارد یادگرفته شده:\n"
for key, value in learned_pairs.items():
response_text += f"- «{key}» ← «{value}»\n"
await message.reply(response_text)
return
elif text == "پاکسازی یادبگیر" or text == "پاکسازی یاد بگیر":
learned_pairs.clear()
await message.reply("تمام موارد یادگرفته شده را فراموش کردم.")
return
elif text.startswith("حذف یادبگیر ") or text.startswith("حذف یاد بگیر "):
match = re.match(r"(?:حذف یادبگیر|حذف یاد بگیر)\s+(.+)", text)
if not match:
await message.reply("فرمت درست: حذف یادبگیر x")
return
key_to_delete = match.group(1).strip()
if key_to_delete in learned_pairs:
del learned_pairs[key_to_delete]
await message.reply(f"دستور «{key_to_delete}» فراموش شد.")
else:
await message.reply(f"دستور «{key_to_delete}» پیدا نشد.")
return
sorted_keys = sorted(learned_pairs.keys(), key=len, reverse=True)
for key in sorted_keys:
if key in text:
await message.reply(learned_pairs[key])
return
asyncio.run(bot.run())
پیشنیاز:
pip install rubka
روش نصبِ کتابخانه در شرایط فعلی:
pip install -i https://mirror-pypi.runflare.com/simple rubka
توضیحات:
۱. در بخش BOT_TOKEN، توکن بات خود را که از بات فادر گرفته اید، وارد کنید.
۲. در قسمت TARGET_CHAT_ID ، چت آیدی گروهی که بات میخواهد در آن فعالیت کند را وارد کنید.
۳. در قسمت ADMIN_SENDER_ID ، سندر آیدیِ اکانت خود یا اکانتی که میخواهید بات به آن دستور دهد را وارد کنید.
برای دریافت چت آیدی گروه و سندر آیدی اکانت خود، از این کد کمک بگیرید.
دستورات بات:
تنظیم پاسخ سفارشی:
– دستور یادبگیر [کلیدواژه] بگو [پاسخ]
point_left این دستور به بات میآموزد که در صورت مشاهده [کلیدواژه] در پیامهای دریافتی، پاسخ [پاسخ] را ارسال کند.
large_blue_diamond مثال: یادبگیر سلام بگو خوبی؟
پس از اجرای این دستور، هر زمان که کلمه "سلام" در پیامها دیده شود، ربات پاسخ میدهد: "خوبی؟"
مشاهده کلیدواژههای ثبتشده:
– دستور لیست یادبگیر
point_left این دستور لیستی از تمام کلیدواژهها و پاسخهای سفارشی که تاکنون تنظیم کردهاید را نمایش میدهد.
حذف یک کلیدواژه خاص:
– دستور حذف یادبگیر [کلیدواژه]
point_left با این دستور میتوانید یک کلیدواژه خاص و پاسخ مربوط به آن را از حافظه بات حذف کنید تا دیگر پاسخی به آن ندهد.
large_blue_diamond مثال: حذف یادبگیر سلام
بات، کلیدواژه "سلام" و پاسخ مرتبط با آن را فراموش خواهد کرد.
پاکسازی کامل حافظه:
– دستور پاکسازی یادبگیر
point_left این دستور تمام کلیدواژهها و پاسخهای سفارشی که قبلاً تنظیم کردهاید را به طور کامل پاک میکند و بات را به حالت اولیه بازمیگرداند.
pushpin توجه داشته باشید که این کد قابل توسعه است و شما میتوانید در پروژه های خود از این کد استفاده نمایید.
warning️ استفاده یا بازنشر این متن بدون ذکر منبع مجاز نیست.
id @CodeYaran
from rubka.asynco import Robot
from rubka.context import Message
import asyncio
import re
BOT_TOKEN = ""
TARGET_CHAT_ID = ""
ADMIN_SENDER_ID = ""
bot = Robot(token=BOT_TOKEN)
learned_pairs = {}
@bot.on_message()
async def handler(bot: Robot, message: Message):
if message.chat_id != TARGET_CHAT_ID:
return
text = getattr(message, 'raw_text', getattr(message, 'text', None))
if text is None:
text = ""
text = text.strip()
if message.author_guid == ADMIN_SENDER_ID:
if text.startswith("یادبگیر ") or text.startswith("یاد بگیر "):
match = re.match(r"(?:یادبگیر|یاد بگیر)\s+(.+?)\s+(?:بگو)\s+(.+)", text)
if not match:
await message.reply("فرمت درست: یادبگیر x بگو y")
return
x, y = match.group(1).strip(), match.group(2).strip()
learned_pairs[x] = y
await message.reply(f"یاد گرفتم!\nهر وقت «{x}» بیاد ← «{y}» جواب میدم.")
return
elif text == "لیست یادبگیر" or text == "لیست یاد بگیر":
if not learned_pairs:
await message.reply("چیزی یاد نگرفتم.")
return
response_text = "موارد یادگرفته شده:\n"
for key, value in learned_pairs.items():
response_text += f"- «{key}» ← «{value}»\n"
await message.reply(response_text)
return
elif text == "پاکسازی یادبگیر" or text == "پاکسازی یاد بگیر":
learned_pairs.clear()
await message.reply("تمام موارد یادگرفته شده را فراموش کردم.")
return
elif text.startswith("حذف یادبگیر ") or text.startswith("حذف یاد بگیر "):
match = re.match(r"(?:حذف یادبگیر|حذف یاد بگیر)\s+(.+)", text)
if not match:
await message.reply("فرمت درست: حذف یادبگیر x")
return
key_to_delete = match.group(1).strip()
if key_to_delete in learned_pairs:
del learned_pairs[key_to_delete]
await message.reply(f"دستور «{key_to_delete}» فراموش شد.")
else:
await message.reply(f"دستور «{key_to_delete}» پیدا نشد.")
return
sorted_keys = sorted(learned_pairs.keys(), key=len, reverse=True)
for key in sorted_keys:
if key in text:
await message.reply(learned_pairs[key])
return
asyncio.run(bot.run())
پیشنیاز:
pip install rubka
روش نصبِ کتابخانه در شرایط فعلی:
pip install -i https://mirror-pypi.runflare.com/simple rubka
توضیحات:
۱. در بخش BOT_TOKEN، توکن بات خود را که از بات فادر گرفته اید، وارد کنید.
۲. در قسمت TARGET_CHAT_ID ، چت آیدی گروهی که بات میخواهد در آن فعالیت کند را وارد کنید.
۳. در قسمت ADMIN_SENDER_ID ، سندر آیدیِ اکانت خود یا اکانتی که میخواهید بات به آن دستور دهد را وارد کنید.
برای دریافت چت آیدی گروه و سندر آیدی اکانت خود، از این کد کمک بگیرید.
دستورات بات:
تنظیم پاسخ سفارشی:
– دستور یادبگیر [کلیدواژه] بگو [پاسخ]
point_left این دستور به بات میآموزد که در صورت مشاهده [کلیدواژه] در پیامهای دریافتی، پاسخ [پاسخ] را ارسال کند.
large_blue_diamond مثال: یادبگیر سلام بگو خوبی؟
پس از اجرای این دستور، هر زمان که کلمه "سلام" در پیامها دیده شود، ربات پاسخ میدهد: "خوبی؟"
مشاهده کلیدواژههای ثبتشده:
– دستور لیست یادبگیر
point_left این دستور لیستی از تمام کلیدواژهها و پاسخهای سفارشی که تاکنون تنظیم کردهاید را نمایش میدهد.
حذف یک کلیدواژه خاص:
– دستور حذف یادبگیر [کلیدواژه]
point_left با این دستور میتوانید یک کلیدواژه خاص و پاسخ مربوط به آن را از حافظه بات حذف کنید تا دیگر پاسخی به آن ندهد.
large_blue_diamond مثال: حذف یادبگیر سلام
بات، کلیدواژه "سلام" و پاسخ مرتبط با آن را فراموش خواهد کرد.
پاکسازی کامل حافظه:
– دستور پاکسازی یادبگیر
point_left این دستور تمام کلیدواژهها و پاسخهای سفارشی که قبلاً تنظیم کردهاید را به طور کامل پاک میکند و بات را به حالت اولیه بازمیگرداند.
pushpin توجه داشته باشید که این کد قابل توسعه است و شما میتوانید در پروژه های خود از این کد استفاده نمایید.
warning️ استفاده یا بازنشر این متن بدون ذکر منبع مجاز نیست.
id @CodeYaran
Please open Rubika to view this post
VIEW IN RUBIKA۹ فروردین
۹ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
مجدد پرید neutral_facejoy
Please open Rubika to view this post
VIEW IN RUBIKA۹ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
نه برگشت.
Please open Rubika to view this post
VIEW IN RUBIKA۱۰ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
گروه ‹کامپیوتری ها›:
https://rubika.ir/joing/JJDIBEIJ0EZKTLLVYEQLNOXWHFICZHPS
گروه کُد یاران | محفل برنامهنویسان:
https://rubika.ir/joing/IIIHAHEA0EPGUKRGVSERUHWGMEWQKLPC
https://rubika.ir/joing/JJDIBEIJ0EZKTLLVYEQLNOXWHFICZHPS
گروه کُد یاران | محفل برنامهنویسان:
https://rubika.ir/joing/IIIHAHEA0EPGUKRGVSERUHWGMEWQKLPC
Please open Rubika to view this post
VIEW IN RUBIKA۱۷ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
اینجا یک کا شده که
گروه هم پریده که
گروه هم پریده که
Please open Rubika to view this post
VIEW IN RUBIKA۱۷ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
گروه کُد یاران | محفل برنامهنویسان مجدد تشکیل شد.
link لینک گروه:
https://rubika.ir/joing/IJEJFDJB0PHSNOSZOFHKNRSUPOHEYGWU
اگر نظری، پیشنهادی، انتقادی، رفع مشکل و درخواستِ کد دارید در گروه بالا مطرح کنید.
id @CodeYaran
link لینک گروه:
https://rubika.ir/joing/IJEJFDJB0PHSNOSZOFHKNRSUPOHEYGWU
اگر نظری، پیشنهادی، انتقادی، رفع مشکل و درخواستِ کد دارید در گروه بالا مطرح کنید.
id @CodeYaran
Please open Rubika to view this post
VIEW IN RUBIKA۲۴ فروردین
۳۱ فروردین
کُد یاران | آموزش کامپیوتر و برنامهنویسی
Wait for the new rubika library (MAXRubika)...
Please open Rubika to view this post
VIEW IN RUBIKA۷ اردیبهشت
کُد یاران | آموزش کامپیوتر و برنامهنویسی
گروه ‹کامپیوتری ها›:
https://rubika.ir/joing/JJDIBEIJ0EZKTLLVYEQLNOXWHFICZHPS
گروه کُد یاران | محفل برنامهنویسان </>:
https://rubika.ir/joing/IJEJFDJB0PHSNOSZOFHKNRSUPOHEYGWU
https://rubika.ir/joing/JJDIBEIJ0EZKTLLVYEQLNOXWHFICZHPS
گروه کُد یاران | محفل برنامهنویسان </>:
https://rubika.ir/joing/IJEJFDJB0PHSNOSZOFHKNRSUPOHEYGWU
Please open Rubika to view this post
VIEW IN RUBIKA۴ خرداد
کُد یاران | آموزش کامپیوتر و برنامهنویسی
همراهان گرامی، لطفاً لینک گروه ‹کامپیوتری ها› در تلگرام را نیز در اختیار داشته باشید تا با برقراری اینترنت بینالمللی، امکان ارتباط و همراهی یکدیگر بهسهولت فراهم باشد.
link https://t.me/TheComputeriha
TheComputeriha
link https://t.me/TheComputeriha
TheComputeriha
Please open Rubika to view this post
VIEW IN RUBIKA