PYPRESENCE(1) pypresence PYPRESENCE(1)

pypresence - مستندات pypresence

نصب pypresence با pip:

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

pip install pypresence

یا برای نسخه در حال توسعه، می‌توانید از دستور زیر استفاده کنید:

pip install https://github.com/qwertyquerty/pypresence/archive/master.zip

کتابخانه pypresence یک پوشش (wrapper) برای Discord RPC است. می‌توانید از آن برای قابلیت Rich Presence در بازی‌های خود و همچنین سایر یکپارچه‌سازی‌های Discord استفاده کنید.

این بخش برای زمانی است که دقیقاً نمی‌دانید چه کاری باید انجام دهید یا صرفاً به یک شروع سریع نیاز دارید (برای Rich Presence).

نخستین کاری که باید انجام دهید ساخت یک برنامه Discord RPC است. مراحل کار به شرح زیر است:

  • به نشانی https://discord.com/developers بروید.
  • بر روی "Create an Application" کلیک کنید.
  • برنامه را مطابق میل خود پیکربندی کنید، نام دلخواه را برای آن تعیین کرده و یک تصویر مناسب به آن اختصاص دهید.
  • درست در زیر نام برنامه، شناسه Client ID خود را بیابید؛ در ادامه به آن نیاز خواهید داشت.
  • در پایان، برنامه خود را ذخیره کنید.

سپس، باید pypresence را نصب کنید. لازم است Python 3.9 یا جدیدتر روی سیستم شما نصب شده باشد. مراحل به شرح زیر است:

  • خط فرمان (ترمینال) را باز کنید.
  • عبارت pip install pypresence را تایپ کرده و کلید Enter را بزنید.
  • در نزدیکی انتهای فرآیند، باید پیامی شبیه به "Successfully installed pypresence" نمایش داده شود.

اکنون باید برنامه‌ای برای تنظیم Rich Presence خود بنویسید. ابتدا موارد مورد نیاز را بدین صورت وارد (import) می‌کنیم:

from pypresence import Presence # The simple rich presence client in pypresence
import time

سپس باید کلاینت Rich Presence را مقداردهی اولیه کنیم. به همان Client ID مرحله قبل نیاز خواهید داشت:

client_id = "ID HERE"  # Put your Client ID in here
RPC = Presence(client_id)  # Initialize the Presence client

حال باید کلاینت خود را به Discord متصل کنیم تا بتواند به‌روزرسانی‌های وضعیت را ارسال کند:

RPC.connect() # Start the handshake loop

اکنون باید وضعیت Rich Presence خود را عملاً تنظیم کنیم. می‌توانیم از تابع update() برای این منظور استفاده کنیم. گزینه‌های متعددی برای استفاده وجود دارد، اما برای این مورد از گزینه‌های زیر استفاده می‌کنیم:

 RPC.update(
    state="Here it is!",
    details="A working presence, from python!",
    name="Rich Presence Example",
) # Updates our presence

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

while True:  # The presence will stay on as long as the program is running
    time.sleep(15) # Can only update rich presence every 15 seconds

اکنون وقتی برنامه خود را اجرا می‌کنید، خروجی باید چیزی شبیه به این باشد!

[تصویر: Finished Presence] [image]

استفاده از Activity Types و Status Display Types

می‌توانید با استفاده از مقادیر شمارشی (enum) ActivityType و StatusDisplayType نحوه نمایش وضعیت خود را سفارشی‌سازی کنید. در ادامه یک مثال آورده شده است:

from pypresence import Presence
from pypresence.types import ActivityType, StatusDisplayType
import time
client_id = "ID HERE"
RPC = Presence(client_id)
RPC.connect()
# Show as "Listening to" instead of "Playing"
RPC.update(
    activity_type=ActivityType.LISTENING,
    details="My Favorite Song",
    state="By My Favorite Artist"
)
# Or use StatusDisplayType to control what appears in the user's status
RPC.update(
    status_display_type=StatusDisplayType.STATE,
    state="Building something awesome",
    details="Using pypresence"
)
while True:
    time.sleep(15)

انواع فعالیت‌های موجود: PLAYING (پیش‌فرض)، LISTENING، WATCHING، COMPETING

انواع نمایش وضعیت موجود: NAME (پیش‌فرض - نمایش نام برنامه)، STATE، DETAILS

تعاملی کردن وضعیت با استفاده از نشانی‌های اینترنتی (URLs)

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

from pypresence import Presence
import time
client_id = "ID HERE"
RPC = Presence(client_id)
RPC.connect()
# Make state and details clickable
RPC.update(
    state="Playing an Awesome Game",
    state_url="https://example.com/game",
    details="In the Main Menu",
    details_url="https://example.com/game/menu"
)
# Make images clickable
RPC.update(
    large_image="game_logo",
    large_text="My Game",
    large_url="https://example.com/game",
    small_image="status_online",
    small_text="Online",
    small_url="https://example.com/status"
)
while True:
    time.sleep(15)

پارامترهای URL موجود: state_url، details_url، large_url، small_url.SS "مثال‌ها (EXAMPLES)"

در اینجا فهرستی از مثال‌های استفاده از pypresence آمده است:

Rich Presence پایه:

import time
from pypresence import Presence
client_id = "717091213148160041"  # Fake ID, put your real one here
RPC = Presence(client_id)  # Initialize the client class
RPC.connect()  # Start the handshake loop
print(
    RPC.update(
        state="Here it is!",
        details="A working presence, from python!",
        name="Rich Presence Example",
    )
)  # Set the presence
while True:  # The presence will stay on as long as the program is running
    time.sleep(15)  # Can only update rich presence every 15 seconds

Rich Presence برای نمایش میزان مصرف پردازنده (CPU):

import time
import psutil
from pypresence import Presence
client_id = "64567352374564"  # Fake ID, put your real one here
RPC = Presence(client_id, pipe=0)  # Initialize the client class
RPC.connect()  # Start the handshake loop
while True:  # The presence will stay on as long as the program is running
    cpu_per = round(psutil.cpu_percent(), 1)  # Get CPU Usage
    mem = psutil.virtual_memory()
    mem_per = round(psutil.virtual_memory().percent, 1)
    print(
        RPC.update(
            details="RAM: " + str(mem_per) + "%", state="CPU: " + str(cpu_per) + "%"
        )
    )  # Set the presence
    time.sleep(15)  # Can only update rich presence every 15 seconds

Rich Presence برای چرخش در میان نقل‌قول‌ها:

import random
import time
from pypresence import Presence
client_id = "64567352374564"  # Put your Client ID here, this is a fake ID
RPC = Presence(client_id)  # Initialize the Presence class
RPC.connect()  # Start the handshake loop
quotes = [
    "If you can dream it, you can achieve it.",
    "Either write something worth reading or do something worth writing.",
    "You become what you believe.",
    "Fall seven times and stand up eight.",
    "The best revenge is massive success.",
    "Eighty percent of success is showing up.",
    "Life is what happens to you while you’re busy making other plans.",
    "Strive not to be a success, but rather to be of value.",
    "The best time to plant a tree was 20 years ago. The second best time is now.",
    "Everything you’ve ever wanted is on the other side of fear.",
]  # The quotes to choose from
while True:  # The presence will stay on as long as the program is running
    RPC.update(
        details="Famous Quote:", state=random.choice(quotes)
    )  # Set the presence, picking a random quote
    time.sleep(60)  # Wait a wee bit

علاوه بر این، در ادامه فهرستی از مخازنی که از pypresence استفاده می‌کنند آمده است

کلاینت Presence را برای استفاده آماده و ایجاد می‌کند.
پارامترها
  • client_id (str) -- شناسه برنامه OAuth2 (قابل دریافت از https://discord.com/developers/applications/me)
  • pipe (int) -- پایپی که باید برای اتصال به کلاینت Discord استفاده شود. پیش‌فرض 0 است، می‌تواند بین 0-9 باشد
  • loop (asyncio.BaseEventLoop) -- حلقه رویداد (event loop) اختصاصی شما (در صورت وجود) که PyPresence باید از آن استفاده کند. در صورت عدم ارائه، یکی ایجاد می‌شود. اطلاعات بیشتر در https://docs.python.org/3/library/asyncio-eventloop.html
  • handler (function) -- گرداننده استثنا که pypresence باید خطاهای ناهمگام را به آن ارسال کند. این می‌تواند یک coroutine یا تابع استاندارد باشد، به شرطی که دو آرگومان (exception، future) بپذیرد. Exception همان استثنای رخ‌داده جهت مدیریت و future نمونه‌ای از asyncio.Future خواهد بود
اتصال را مقداردهی اولیه می‌کند - جهت اعمال هرگونه به‌روزرسانی در Rich Presence انجام آن الزامی است.
نوع بازگشتی
pypresence.Response
وضعیت حضور (presence) را پاک می‌کند.
پارامترها
pid (int) -- شناسه فرایند (PID) بازی شما
نوع بازگشتی
pypresence.Response
اتصال را می‌بندد.
نوع بازگشتی
pypresence.Response
وضعیت حضور (presence) کاربر را در Discord تنظیم می‌کند.
پارامترها
  • pid (int) -- شناسه فرایند (PID) بازی شما
  • activity_type (ActivityType) -- نوع فعالیت (PLAYING، LISTENING، WATCHING، یا COMPETING). برای جزئیات بیشتر به ActivityType Enum مراجعه کنید. در صورت مشخص نشدن، مقدار پیش‌فرض PLAYING است.
  • status_display_type (StatusDisplayType) -- فیلدی که باید در وضعیت نمایش داده شود (NAME، STATE، یا DETAILS). برای جزئیات بیشتر به StatusDisplayType Enum مراجعه کنید. در صورت مشخص نشدن، مقدار پیش‌فرض NAME است.
  • state (str) -- وضعیت فعلی کاربر
  • state_url (str) -- نشانی اینترنتی (URL) برای قابل کلیک کردن متن state (هنگام کلیک روی state باز می‌شود)
  • details (str) -- کاری که بازیکن در حال حاضر انجام می‌دهد
  • details_url (str) -- نشانی اینترنتی (URL) برای قابل کلیک کردن متن details (هنگام کلیک روی details باز می‌شود)
  • name (str) -- تنظیم مستقیم متنی که Discord در مکان‌هایی مانند فهرست کاربران نمایش می‌دهد
  • start (int) -- زمان مبدأ (epoch time) برای شروع بازی (به میلی‌ثانیه)
  • end (int) -- زمان مبدأ (epoch time) برای پایان بازی (به میلی‌ثانیه).IP • 2 large_image (str) -- نام تصویر بارگذاری‌شده برای تصویر هنری بزرگ نمایه
  • large_text (str) -- متن راهنما (tooltip) برای تصویر بزرگ
  • large_url (str) -- نشانی اینترنتی (URL) برای قابل کلیک کردن تصویر بزرگ (هنگام کلیک روی تصویر بزرگ باز می‌شود)
  • small_image (str) -- نام تصویر بارگذاری‌شده برای تصویر هنری کوچک نمایه
  • small_text (str) -- متن راهنما (tooltip) برای تصویر کوچک
  • small_url (str) -- نشانی اینترنتی (URL) برای قابل کلیک کردن تصویر کوچک (هنگام کلیک روی تصویر کوچک باز می‌شود)
  • party_id (str) -- شناسه‌ی گروه، لابی یا دسته‌ی بازیکن
  • party_size (list) -- اندازه‌ی کنونی گروه، لابی یا دسته‌ی بازیکن و حداکثر آن در این قالب: [1,4]
  • join (str) -- رشته‌ی هش‌شده‌ی یکتا برای دعوت‌های گفتگو و درخواست پیوستن
  • spectate (str) -- رشته‌ی هش‌شده‌ی یکتا برای دکمه‌ی تماشا (spectate)
  • match (str) -- رشته‌ی هش‌شده‌ی یکتا برای تماشا و پیوستن
  • buttons (list) -- فهرستی از دیکشنری‌ها برای دکمه‌های روی نمایه با قالب [{"label": "My Website", "url": "https://qtqt.cf"}, ...]؛ حداکثر می‌تواند دو دکمه را فهرست کند
  • instance (bool) -- علامت‌گذاری بازی به عنوان یک نشست بازی با آغاز و پایان مشخص
نوع بازگشتی
pypresence.Response

نوع شمارشی ActivityType مشخص می‌کند چه نوع فعالیتی در حال نمایش است. این شمارشگر از pypresence.types وارد می‌شود.

مقادیر موجود:

  • ActivityType.PLAYING (0) - نمایش "Playing {game name}" (پیش‌فرض)
  • ActivityType.LISTENING (2) - نمایش "Listening to {name}"
  • ActivityType.WATCHING (3) - نمایش "Watching {name}"
  • ActivityType.COMPETING (5) - نمایش "Competing in {name}"

مثال استفاده:

from pypresence import Presence
from pypresence.types import ActivityType
RPC = Presence(client_id)
RPC.connect()
RPC.update(
    activity_type=ActivityType.LISTENING,
    details="My Favorite Song",
    state="By My Favorite Artist"
)

نکته: Discord تنها از نوع‌های فعالیت ۰، ۲، ۳ و ۵ پشتیبانی می‌کند. نوع‌های ۱ (STREAMING) و ۴ (CUSTOM) از طریق Rich Presence در دسترس نیستند.

نوع شمارشی StatusDisplayType کنترل می‌کند کدام فیلد از وضعیت حضور شما در وضعیت کاربر نمایش داده شود. این شمارشگر از pypresence.types وارد می‌شود.

مقادیر موجود:

  • StatusDisplayType.NAME (0) - نمایش نام برنامه (پیش‌فرض)
  • StatusDisplayType.STATE (1) - نمایش فیلد state
  • StatusDisplayType.DETAILS (2) - نمایش فیلد details

مثال استفاده:

from pypresence import Presence
from pypresence.types import StatusDisplayType
RPC = Presence(client_id)
RPC.connect()
RPC.update(
    status_display_type=StatusDisplayType.STATE,
    state="Custom Status Message",
    details="What I'm doing"
)

این قابلیت به شما امکان می‌دهد آنچه در نوار وضعیت دیسکورد کاربر ظاهر می‌شود را کنترل کنید، در حالی که تمام اطلاعات در نمایش کامل Rich Presence حفظ می‌شوند.

پارامترهای URL (state_url، details_url، large_url، small_url) به شما امکان می‌دهند متن و تصویر را در Rich Presence خود قابل کلیک کنید. هنگامی که کاربر بر روی عنصر مربوطه کلیک کند، Discord نشانی وب مشخص‌شده را باز خواهد کرد.

پارامترهای URL موجود:

  • state_url - متن state را قابل کلیک می‌کند
  • details_url - متن details را قابل کلیک می‌کند
  • large_url - تصویر بزرگ را قابل کلیک می‌کند
  • small_url - تصویر کوچک را قابل کلیک می‌کند

مثال: state و details قابل کلیک:

from pypresence import Presence
RPC = Presence(client_id)
RPC.connect()
RPC.update(
    state="Playing an Awesome Game",
    state_url="https://example.com/game",
    details="In the Main Menu",
    details_url="https://example.com/game/menu"
)

مثال: تصاویر قابل کلیک:

RPC.update(
    large_image="game_logo",
    large_text="My Game",
    large_url="https://example.com/game",
    small_image="status_icon",
    small_text="Online",
    small_url="https://example.com/status"
)

مثال: ترکیب URLها با دکمه‌ها:

RPC.update(
    state="Building Something Cool",
    state_url="https://github.com/username",
    details="pypresence with URL support",
    details_url="https://github.com/qwertyquerty/pypresence",
    large_image="project_logo",
    large_url="https://project-website.com",
    buttons=[
        {"label": "View Project", "url": "https://github.com/username/project"},
        {"label": "Documentation", "url": "https://docs.project.com"}
    ]
)

نکات:

  • نشانی‌های وب به صورت مستقل عمل می‌کنند - می‌توانید حتی بدون تعیین فیلد متن یا تصویر متناظر نیز یک URL مقداردهی کنید
  • نشانی‌های وب باید پیوندهای معتبر HTTP/HTTPS باشند
  • کلیک بر روی عنصر مورد نظر، نشانی اینترنتی را در مرورگر پیش‌فرض کاربر باز خواهد کرد
  • این ویژگی تعامل‌پذیری را فراتر از محدودیت سنتی دکمه‌ها (حداکثر ۲ دکمه) افزایش می‌دهد
کلاینت RPC را آمادهٔ استفاده ایجاد می‌کند.
پارامترها
  • client_id (str) -- شناسهٔ برنامهٔ OAuth2 (موجود در https://discord.com/developers/applications/me)
  • pipe (int) -- لوله‌ای (Pipe) که باید برای اتصال به کلاینت Discord استفاده شود. پیش‌فرض 0 است، می‌تواند بین 0-9 باشد
  • loop (asyncio.BaseEventLoop) -- حلقهٔ رویداد (event loop) اختصاصی شما (در صورت وجود) که PyPresence باید استفاده کند. در صورت ارائه نشدن، یکی ایجاد خواهد شد. اطلاعات بیشتر در https://docs.python.org/3/library/asyncio-eventloop.html
  • handler (function) -- گردانندهٔ استثنا (exception handler) که pypresence باید خطاهای ناهمگام را به آن بفرستد. تا زمانی که دو آرگومان (exception, future) بپذیرد، می‌تواند یک هم‌روال (coroutine) یا تابع استاندارد باشد. Exception همان استثنای مورد رسیدگی و future نمونه‌ای از asyncio.Future خواهد بود.
اتصال را مقداردهی اولیه می‌کند - برای اجرای دستورهای RPC باید انجام شود.
نوع بازگشتی
pypresence.Response
اتصال را می‌بندد.
برای احراز هویت یک کلاینت جدید با برنامهٔ شما استفاده می‌شود. به‌طور پیش‌فرض، این کار یک پنجرهٔ بازشو (modal) درون‌برنامه‌ای نمایش می‌دهد که از کاربر می‌خواهد دسترسی به برنامهٔ شما را تایید کند.
پارامترها
  • client_id (str) -- شناسهٔ برنامهٔ OAuth2
  • scopes (list) -- فهرستی از دامنه‌های (scopes) دسترسی OAuth به صورت رشته
  • rpc_token (str) -- توکن RPC یک‌بارمصرف
  • username (str) -- نام کاربری برای ایجاد یک حساب مهمان در صورتی که کاربر حساب Discord نداشته باشد
نوع بازگشتی
pypresence.Response

تمام دامنه‌های دسترسی (scopes) مختلف را می‌توان در اینجا یافت: https://discord.com/developers/docs/topics/oauth2

برای احراز هویت یک کلاینت موجود با برنامهٔ شما استفاده می‌شود.
پارامترها
token (int) -- توکن دسترسی OAuth2
نوع بازگشتی
pypresence.Response
برای دریافت فهرستی از سرورهایی (guilds) که کلاینت در آن‌ها حضور دارد استفاده می‌شود.
نوع بازگشتی
pypresence.Response
برای دریافت کانال‌های سروری که کلاینت در آن حضور دارد استفاده می‌شود.
نوع بازگشتی
pypresence.Response
برای دریافت کانالی که کلاینت در آن حضور دارد استفاده می‌شود.
پارامترها
channel_id (str) -- شناسهٔ کانالی که باید دریافت شود
نوع بازگشتی
pypresence.Response
برای دریافت کانالی که کلاینت در آن حضور دارد استفاده می‌شود.
پارامترها
  • user_id (str) -- شناسهٔ کاربر
  • pan_left (float) -- تراز صدای چپ (pan) کاربر
  • pan_right (float) -- تراز صدای راست (pan) کاربر
  • volume (int) -- میزان صدای کاربر (پیش‌فرض 100، حداقل 0، حداکثر 200)
  • mute (bool) -- وضعیت بی‌صدا بودن (mute) کاربر
نوع بازگشتی
pypresence.Response
برای پیوستن به کانال‌های صوتی، پیام‌های مستقیم گروهی یا پیام‌های مستقیم و ترک آن‌ها استفاده می‌شود.
پارامترها
channel_id (str) -- شناسهٔ کانال برای پیوستن (یا None برای ترک کردن)
نوع بازگشتی
pypresence.Response
برای دریافت کانال صوتی کنونی کلاینت استفاده می‌شود.
نوع بازگشتی
pypresence.Response
برای پیوستن به کانال‌های متنی، پیام‌های مستقیم گروهی یا پیام‌های مستقیم و ترک آن‌ها استفاده می‌شود.
پارامترها
channel_id (str) -- شناسهٔ کانال برای پیوستن (یا None برای ترک کردن)
نوع بازگشتی
pypresence.Response
برای تنظیم فعالیتی که در نمایه و وضعیت Discord کاربران نمایش داده می‌شود استفاده می‌شود. موارد زیر را به عنوان پارامتر دریافت می‌کند.
پارامترها
  • pid (int) -- شناسهٔ فرایند (process id) بازی شما.IP • 2 activity_type (ActivityType) -- نوع فعالیت (PLAYING، LISTENING، WATCHING یا COMPETING). برای جزئیات بیشتر به ActivityType Enum <#activity-types> مراجعه کنید. در صورت مشخص نشدن، مقدار پیش‌فرض PLAYING است.
  • status_display_type (StatusDisplayType) -- کدام فیلد در وضعیت نمایش داده شود (NAME، STATE یا DETAILS). برای جزئیات بیشتر به StatusDisplayType Enum <#status-display-types> مراجعه کنید. در صورت مشخص نشدن، مقدار پیش‌فرض NAME است.
  • state (str) -- وضعیت فعلی کاربر
  • state_url (str) -- نشانی URL برای کلیک‌پذیر کردن متن state (هنگام کلیک روی state باز می‌شود)
  • details (str) -- کاری که بازیکن در حال حاضر انجام می‌دهد
  • details_url (str) -- نشانی URL برای کلیک‌پذیر کردن متن details (هنگام کلیک روی details باز می‌شود)
  • name (str) -- تنظیم مستقیم آنچه discord در جاهایی مانند فهرست کاربران نمایش می‌دهد
  • start (int) -- زمان epoch برای شروع بازی (به میلی‌ثانیه)
  • end (int) -- زمان epoch برای پایان بازی (به میلی‌ثانیه)
  • large_image (str) -- نام تصویر بارگذاری‌شده برای تصویر بزرگ نمایه (profile artwork)
  • large_text (str) -- متن راهنما (tooltip) برای تصویر بزرگ
  • large_url (str) -- نشانی URL برای کلیک‌پذیر کردن تصویر بزرگ (هنگام کلیک روی تصویر بزرگ باز می‌شود)
  • small_image (str) -- نام تصویر بارگذاری‌شده برای تصویر کوچک نمایه (profile artwork)
  • small_text (str) -- متن راهنما (tooltip) برای تصویر کوچک
  • small_url (str) -- نشانی URL برای کلیک‌پذیر کردن تصویر کوچک (هنگام کلیک روی تصویر کوچک باز می‌شود)
  • party_id (str) -- شناسه (id) پارتی، لابی یا گروه بازیکن
  • party_size (list) -- اندازه فعلی پارتی، لابی یا گروه بازیکن، و حداکثر آن در این قالب: [1,4]
  • join (str) -- رشته هش‌شده یکتا برای دعوت‌های گفت‌وگو و درخواست پیوستن (ask to join)
  • spectate (str) -- رشته هش‌شده یکتا برای دکمه تماشا (spectate)
  • match (str) -- رشته هش‌شده یکتا برای تماشا و پیوستن (spectate and join)
  • buttons (list) -- فهرستی از dictها برای دکمه‌های نمایه شما در قالب [{"label": "My Website", "url": "https://qtqt.cf"}, ...]؛ می‌تواند حداکثر شامل دو دکمه باشد
  • instance (bool) -- مسابقه را به‌عنوان یک نشست بازی (game session) با شروع و پایان مشخص علامت‌گذاری می‌کند
نوع بازگشتی (Return type)
pypresence.Response
پاک کردن فعالیت.
پارامترها (Parameters)
pid (int) -- شناسه فرآیند (process id) بازی شما
نوع بازگشتی (Return type)
pypresence.Response
برای اشتراک در رویدادها استفاده می‌شود.
پارامترها (Parameters)
  • event (str) -- نام رویداد برای اشتراک در آن
  • args (dict) -- هر آرگومانی که همراه با رویداد ارسال می‌شود
نوع بازگشتی (Return type)
pypresence.Response
برای لغو اشتراک از رویدادها استفاده می‌شود.
پارامترها (Parameters)
  • event (str) -- نام رویداد برای لغو اشتراک از آن
  • args (dict) -- هر آرگومانی که همراه با رویداد ارسال می‌شود
نوع بازگشتی (Return type)
pypresence.Response
دریافت تنظیمات صوتی کاربر.
نوع بازگشتی (Return type)
pypresence.Response
تنظیم کردن تنظیمات صوتی کاربر.
پارامترها (Parameters)
  • _input (dict) -- تنظیمات ورودی
  • output (dict) -- تنظیمات خروجی
  • mode (dict) -- تنظیمات حالت صدا
  • automatic_gain_control (bool) -- وضعیت کنترل خودکار بهره (automatic gain control)
  • echo_cancellation (bool) -- وضعیت حذف پژواک (echo cancellation)
  • noise_suppression (bool) -- وضعیت کاهش نویز (noise suppression)
  • qos (bool) -- وضعیت کیفیت خدمات (QoS) صدا
  • silence_warning (bool) -- وضعیت اعلان هشدار سکوت
  • deaf (bool) -- وضعیت ناشنواسازی خود (self-deafen)
  • mute (bool) -- وضعیت بی‌صدا کردن خود (self-mute)
نوع بازگشتی (Return type)
pypresence.Response
برای ضبط میان‌بر صفحه‌کلید وارد شده توسط کاربر استفاده می‌شود.
پارامترها (Parameters)
action (string) -- عمل ضبط، یکی از مقادیر 'START' یا 'STOP'
نوع بازگشتی (Return type)
pypresence.Response
برای پذیرش یک درخواست «درخواست پیوستن» (Ask to Join) استفاده می‌شود.
پارامترها (Parameters)
user_id (str) -- شناسه کاربر (user id)
نوع بازگشتی (Return type)
pypresence.Response
برای رد کردن یک درخواست «درخواست پیوستن» (Ask to Join) استفاده می‌شود.
پارامترها (Parameters)
user_id (str) -- شناسه کاربر (user id)
نوع بازگشتی (Return type)
pypresence.Response
register_event(event, func, args={}) قلاب کردن یک رویداد به یک تابع. هر زمان که Discord آن رویداد را ارسال کند، این تابع فراخوانی خواهد شد. به‌طور خودکار در آن مشترک خواهد شد.
پارامترها
  • event (str) -- رویدادی که باید قلاب شود
  • func (function) -- تابعی که باید با رویداد جفت شود
  • args (dict) -- آرگومان‌های اختیاری مورد استفاده در اشتراک
نوع بازگشتی
pypresence.Response
برداشتن قلاب یک رویداد از یک تابع. به‌طور خودکار اشتراک رویداد را نیز لغو خواهد کرد.
پارامترها
  • event (str) -- رویدادی که باید قلاب آن برداشته شود
  • args (dict) -- آرگومان‌های اختیاری مورد استفاده در لغو اشتراک
نوع بازگشتی
pypresence.Response

qwertyquerty, LewdNeko

2025, qwertyquerty

July 11, 2026 4.6