msgid"Base class for content managers. Provides the standard registry mechanisms to register converters between MIME content and other representations, as well as the ``get_content`` and ``set_content`` dispatch methods."
msgstr"کلاس پایه برای مدیران محتوا. سازوکارهای استاندارد ثبت برای ثبت مبدلها میان محتوای MIME و سایر نمایشها، و همچنین متدهای اعزام (dispatch) ``get_content`` و ``set_content`` را فراهم میکند."
msgid"Look up a handler function based on the ``mimetype`` of *msg* (see next paragraph), call it, passing through all arguments, and return the result of the call. The expectation is that the handler will extract the payload from *msg* and return an object that encodes information about the extracted data."
msgstr"یک تابع هندلر را بر اساس ``mimetype`` مربوط به *msg* پیدا کنید (پاراگراف بعدی را ببینید)، آن را با ارسال همهی آرگومانها فراخوانی کنید و نتیجهی فراخوانی را برگردانید. انتظار میرود که کنترلگر بار را از *msg* استخراج کند و شیءای را برگرداند که اطلاعاتی دربارهی دادهی استخراجشده را کدگذاری میکند."
msgid"To find the handler, look for the following keys in the registry, stopping with the first one found:"
msgstr"برای یافتن هندلر، کلیدهای زیر را در رجیستری جستجو کنید و با پیدا شدن اولین مورد، متوقف شوید:"
msgid"the string representing the full MIME type (``maintype/subtype``)"
msgstr"رشتهای که نوع کامل MIME را نشان میدهد (``maintype/subtype``)"
msgid"the string representing the ``maintype``"
msgstr"رشتهی نشاندهندهی ``maintype``"
msgid"the empty string"
msgstr"رشته خالی"
msgid"If none of these keys produce a handler, raise a :exc:`KeyError` for the full MIME type."
msgstr"اگر هیچکدام از این کلیدها یک هندلر ایجاد نکردند، برای نوع کامل MIME یک :exc:`KeyError` پرتاب کنید."
msgid"If the ``maintype`` is ``multipart``, raise a :exc:`TypeError`; otherwise look up a handler function based on the type of *obj* (see next paragraph), call :meth:`~email.message.EmailMessage.clear_content` on the *msg*, and call the handler function, passing through all arguments. The expectation is that the handler will transform and store *obj* into *msg*, possibly making other changes to *msg* as well, such as adding various MIME headers to encode information needed to interpret the stored data."
msgstr"اگر ``maintype`` برابر با ``multipart`` باشد، استثنای :exc:`TypeError` پرتاب میشود؛ در غیر این صورت، یک تابع هندلر بر اساس نوع *obj* جستجو میشود (بند بعدی را ببینید)، :meth:`~email.message.EmailMessage.clear_content` روی *msg* فراخوانی میشود و تابع هندلر با ارسال تمام آرگومانها فراخوانی میشود. انتظار میرود که هندلر *obj* را تبدیل کرده و در *msg* ذخیره کند، و احتمالاً تغییرات دیگری نیز در *msg* اعمال کند، مانند افزودن سرآیندهای MIME مختلف برای کدگذاری اطلاعات لازم برای تفسیر دادهی ذخیرهشده."
msgid"To find the handler, obtain the type of *obj* (``typ = type(obj)``), and look for the following keys in the registry, stopping with the first one found:"
msgstr"برای یافتن هندلر، نوع *obj* را به دست آورید (``typ = type(obj)``) و در رجیستری به دنبال کلیدهای زیر بگردید و با نخستین کلید یافتشده متوقف شوید:"
msgid"the type itself (``typ``)"
msgstr"خودِ نوع (``typ``)"
msgid"the type's fully qualified name (``typ.__module__ + '.' + typ.__qualname__``)."
msgstr"نام کامل مشخص نوع (``typ.__module__ + '.' + typ.__qualname__``)."
msgstr":attr:`name <type.__name__>`\\ نوع (``typ.__name__``)."
msgid"If none of the above match, repeat all of the checks above for each of the types in the :term:`MRO` (:attr:`typ.__mro__ <type.__mro__>`). Finally, if no other key yields a handler, check for a handler for the key ``None``. If there is no handler for ``None``, raise a :exc:`KeyError` for the fully qualified name of the type."
msgstr"اگر هیچیک از موارد بالا مطابقت نداشت، تمام بررسیهای بالا را برای هر یک از انواع موجود در :term:`MRO` (:attr:`typ.__mro__ <type.__mro__>`) تکرار کنید. در نهایت، اگر هیچ کلید دیگری هندلری را برنگرداند، بررسی کنید که آیا مدیری برای کلید ``None`` وجود دارد. اگر هندلری برای ``None`` وجود نداشت، :exc:`KeyError` را برای نام کامل نوع پرتاب کنید."
msgid"Also add a :mailheader:`MIME-Version` header if one is not present (see also :class:`.MIMEPart`)."
msgstr"همچنین اگر سرآیند :mailheader:`MIME-Version` وجود ندارد، آن را اضافه کنید (همچنین :class:`.MIMEPart` را ببینید)."
msgid"Record the function *handler* as the handler for *key*. For the possible values of *key*, see :meth:`get_content`."
msgstr"تابع *handler* را بهعنوان هندلر برای *key* ثبت کنید. برای مقادیر ممکن *key*، :meth:`get_content` را ببینید."
msgid"Record *handler* as the function to call when an object of a type matching *typekey* is passed to :meth:`set_content`. For the possible values of *typekey*, see :meth:`set_content`."
msgstr"*handler* را بهعنوان تابعی ثبت کنید که هنگام ارسال شیءای از نوع مطابق با *typekey* به :meth:`set_content` فراخوانی میشود. برای مقادیر ممکن *typekey*، :meth:`set_content` را ببینید."
msgid"Content Manager Instances"
msgstr"نمونههای مدیر محتوا (Content Manager)"
msgid"Currently the email package provides only one concrete content manager, :data:`raw_data_manager`, although more may be added in the future. :data:`raw_data_manager` is the :attr:`~email.policy.EmailPolicy.content_manager` provided by :attr:`~email.policy.EmailPolicy` and its derivatives."
msgstr"در حال حاضر بستهی email تنها یک مدیر محتوای عینی (concrete content manager)، :data:`raw_data_manager`، ارائه میدهد، هرچند ممکن است در آینده موارد بیشتری افزوده شوند. :data:`raw_data_manager` همان :attr:`~email.policy.EmailPolicy.content_manager` ارائهشده از سوی :attr:`~email.policy.EmailPolicy` و مشتقات آن است."
msgid"This content manager provides only a minimum interface beyond that provided by :class:`~email.message.Message` itself: it deals only with text, raw bytes, and :class:`~email.message.Message` objects. Nevertheless, it provides significant advantages compared to the base API: ``get_content`` on a text part will return a string without the application needing to manually decode it, ``set_content`` provides a rich set of options for controlling the headers added to a part and controlling the content transfer encoding, and it enables the use of the various ``add_`` methods, thereby simplifying the creation of multipart messages."
msgstr "این مدیر محتوا تنها یک رابط حداقل فراتر از آنچه توسط خود :class:`~email.message.Message` فراهم شده است، ارائه میدهد: آن تنها با متن، بایتهای خام، و اشیاء :class:`~email.message.Message` سروکار دارد. با این حال، مزایای قابلتوجهی در مقایسه با API پایه فراهم میکند: ``get_content`` در یک بخش متنی یک رشته برمیگرداند بدون اینکه برنامه نیاز به کدگشایی دستی آن داشته باشد، ``set_content`` یک مجموعه غنی از گزینهها برای کنترل سرآیندهای اضافه شده به یک بخش و کنترل کدگذاری انتقال محتوا فراهم میکند، و امکان استفاده از متدهای مختلف ``add_`` را فراهم میکند، که در نتیجه ایجاد پیامهای چندبخشی را ساده میکند."
msgid"Return the payload of the part as either a string (for ``text`` parts), an :class:`~email.message.EmailMessage` object (for ``message/rfc822`` parts), or a ``bytes`` object (for all other non-multipart types). Raise a :exc:`KeyError` if called on a ``multipart``. If the part is a ``text`` part and *errors* is specified, use it as the error handler when decoding the payload to a string. The default error handler is ``replace``."
msgstr"بار بخش را به صورت یک رشته (برای بخشهای ``text``)، یک شیء :class:`~email.message.EmailMessage` (برای بخشهای ``message/rfc822``)، یا یک شیء ``bytes`` (برای تمام انواع غیر-چندبخشی دیگر) برگردانید. اگر روی یک ``multipart`` فراخوانی شود، :exc:`KeyError` به وجود آورید. اگر بخش یک بخش ``text`` باشد و *errors* مشخص شده باشد، از آن به عنوان هندلر خطا هنگام کدگشایی بار به یک رشته استفاده کنید. هندلر خطای پیشفرض ``replace`` است."
msgid"Add headers and payload to *msg*:"
msgstr"سرآیندها و بار را به *msg* اضافه کنید:"
msgid"Add a :mailheader:`Content-Type` header with a ``maintype/subtype`` value."
msgstr"یک سرآیند :mailheader:`Content-Type` با مقدار ``maintype/subtype`` اضافه کنید."
msgid"For ``str``, set the MIME ``maintype`` to ``text``, and set the subtype to *subtype* if it is specified, or ``plain`` if it is not."
msgstr"برای ``str``، ``maintype`` MIME را روی ``text`` تنظیم کنید، و زیرنوع را اگر مشخص شده باشد روی *subtype* و در غیر این صورت روی ``plain`` تنظیم کنید."
msgid"For ``bytes``, use the specified *maintype* and *subtype*, or raise a :exc:`TypeError` if they are not specified."
msgstr"برای ``bytes``، از *maintype* و *subtype* مشخصشده استفاده میشود، یا اگر مشخص نشده باشند، استثنای :exc:`TypeError` پرتاب میشود."
msgid"For :class:`~email.message.EmailMessage` objects, set the maintype to ``message``, and set the subtype to *subtype* if it is specified or ``rfc822`` if it is not. If *subtype* is ``partial``, raise an error (``bytes`` objects must be used to construct ``message/partial`` parts)."
msgstr"برای اشیای :class:`~email.message.EmailMessage`، نوع اصلی (maintype) روی ``message`` تنظیم میشود، و اگر *subtype* مشخص شده باشد، زیرنوع روی *subtype* و در غیر این صورت روی ``rfc822`` تنظیم میشود. اگر *subtype* برابر ``partial`` باشد، خطایی پرتاب میشود (برای ساخت بخشهای ``message/partial`` باید از اشیای ``bytes`` استفاده شود)."
msgid"If *charset* is provided (which is valid only for ``str``), encode the string to bytes using the specified character set. The default is ``utf-8``. If the specified *charset* is a known alias for a standard MIME charset name, use the standard charset instead."
msgstr"اگر *charset* ارائه شده باشد (که فقط برای ``str`` معتبر است)، رشته با استفاده از مجموعه نویسه مشخصشده به بایتها کدگذاری میشود. مقدار پیشفرض ``utf-8`` است. اگر *charset* مشخصشده نام مستعار شناختهشدهای برای یک نام مجموعه نویسه استاندارد MIME باشد، بهجای آن از مجموعه نویسه استاندارد استفاده میشود."
msgid"If *cte* is set, encode the payload using the specified content transfer encoding, and set the :mailheader:`Content-Transfer-Encoding` header to that value. Possible values for *cte* are ``quoted-printable``, ``base64``, ``7bit``, ``8bit``, and ``binary``. If the input cannot be encoded in the specified encoding (for example, specifying a *cte* of ``7bit`` for an input that contains non-ASCII values), raise a :exc:`ValueError`."
msgstr"اگر *cte* تنظیمشده باشد، بار با استفاده از کدگذاری انتقال محتوای مشخصشده کدگذاری میشود و سرآیند :mailheader:`Content-Transfer-Encoding` روی آن مقدار تنظیم میشود. مقادیر ممکن برای *cte* عبارتاند از ``quoted-printable``، ``base64``، ``7bit``، ``8bit`` و ``binary``. اگر ورودی نتواند با کدگذاری مشخصشده کدگذاری شود (برای مثال، مشخص کردن *cte* با مقدار ``7bit`` برای ورودیای که حاوی مقادیر غیر ASCII است)، یک :exc:`ValueError` پرتاب میشود."
msgid"For ``str`` objects, if *cte* is not set use heuristics to determine the most compact encoding. Prior to encoding, :meth:`str.splitlines` is used to normalize all line boundaries, ensuring that each line of the payload is terminated by the current policy's :data:`~email.policy.Policy.linesep` property (even if the original string did not end with one)."
msgstr"برای اشیاء ``str``، اگر *cte* تنظیمنشده باشد، از روشهای اکتشافی برای تعیین فشردهترین کدگذاری استفاده میشود. پیش از کدگذاری، :meth:`str.splitlines` برای عادیسازی تمام مرزهای سطر استفاده میشود تا اطمینان حاصل شود که هر خط از بار با ویژگی :data:`~email.policy.Policy.linesep` سیاست جاری پایان مییابد (حتی اگر رشته اصلی با آن پایاننیافته باشد)."
msgid"For ``bytes`` objects, *cte* is taken to be base64 if not set, and the aforementioned newline translation is not performed."
msgstr"برای اشیاء ``bytes``، اگر *cte* تنظیم نشده باشد، مقدار آن base64 در نظر گرفته میشود و ترجمهی خط جدید مذکور انجام نمیشود."
msgid"For :class:`~email.message.EmailMessage`, per :rfc:`2046`, raise an error if a *cte* of ``quoted-printable`` or ``base64`` is requested for *subtype* ``rfc822``, and for any *cte* other than ``7bit`` for *subtype* ``external-body``. For ``message/rfc822``, use ``8bit`` if *cte* is not specified. For all other values of *subtype*, use ``7bit``."
msgstr"برای :class:`~email.message.EmailMessage`، بر اساس :rfc:`2046`، اگر برای *subtype* ``rfc822``، *cte* برابر ``quoted-printable`` یا ``base64`` درخواست شود، یا برای *subtype* ``external-body`` هر *cte* غیر از ``7bit`` درخواست شود، خطایی پرتاب میکند. برای ``message/rfc822``، اگر *cte* مشخص نشده باشد، از ``8bit`` استفاده میشود. برای تمام مقدارهای دیگر *subtype*، از ``7bit`` استفاده میشود."
msgid"A *cte* of ``binary`` does not actually work correctly yet. The ``EmailMessage`` object as modified by ``set_content`` is correct, but :class:`~email.generator.BytesGenerator` does not serialize it correctly."
msgstr"یک *cte* از ``binary`` هنوز واقعاً بهدرستی کار نمیکند. شیء ``EmailMessage`` که با ``set_content`` تغییر یافته است، صحیح است، اما :class:`~email.generator.BytesGenerator` آن را بهدرستی سریالسازی نمیکند."
msgid"If *disposition* is set, use it as the value of the :mailheader:`Content-Disposition` header. If not specified, and *filename* is specified, add the header with the value ``attachment``. If *disposition* is not specified and *filename* is also not specified, do not add the header. The only valid values for *disposition* are ``attachment`` and ``inline``."
msgstr"اگر *disposition* تنظیم شده باشد، از آن بهعنوان مقدار سرآیند :mailheader:`Content-Disposition` استفاده میشود. اگر مشخص نشده باشد و *filename* مشخص شده باشد، سرآیند با مقدار ``attachment`` افزوده میشود. اگر *disposition* مشخص نشده باشد و *filename* نیز مشخص نشده باشد، سرآیند افزوده نمیشود. تنها مقادیر معتبر برای *disposition*، ``attachment`` و ``inline`` هستند."
msgid"If *filename* is specified, use it as the value of the ``filename`` parameter of the :mailheader:`Content-Disposition` header."
msgstr"اگر *filename* تعیین شده باشد، از آن بهعنوان مقدار پارامتر ``filename`` در سرآیند :mailheader:`Content-Disposition` استفاده کنید."
msgid"If *cid* is specified, add a :mailheader:`Content-ID` header with *cid* as its value."
msgstr"اگر *cid* مشخص شده باشد، یک سرآیند :mailheader:`Content-ID` با *cid* بهعنوان مقدار آن اضافه میشود."
msgid"If *params* is specified, iterate its ``items`` method and use the resulting ``(key, value)`` pairs to set additional parameters on the :mailheader:`Content-Type` header."
msgstr"اگر *params* تعیین شده باشد، متد ``items`` آن را پیمایش کنید و از جفتهای ``(key, value)`` حاصل برای تنظیم پارامترهای اضافی در سرآیند :mailheader:`Content-Type` استفاده کنید."
msgid"If *headers* is specified and is a list of strings of the form ``headername: headervalue`` or a list of ``header`` objects (distinguished from strings by having a ``name`` attribute), add the headers to *msg*."
msgstr"اگر *headers* مشخص شده باشد و فهرستی از رشتههایی بهصورت ``headername: headervalue`` یا فهرستی از اشیای ``header`` باشد (که با داشتن ویژگی ``name`` از رشتهها متمایز میشوند)، سرآیندها به *msg* اضافه میشوند."
msgid"Footnotes"
msgstr"پانویسها"
msgid"Originally added in 3.4 as a :term:`provisional module <provisional package>`"
msgstr"در ابتدا در 3.4 بهعنوان یک :term:`ماژول آزمایشی <provisional package>` اضافه شد"