chrome.sockets.udp

توضیحات

از API مربوط به chrome.sockets.udp برای ارسال و دریافت داده‌ها از طریق شبکه با استفاده از اتصالات UDP استفاده کنید. این API جایگزین قابلیت UDP که قبلاً در API "socket" یافت می‌شد، شده است.

مانیفست

برای استفاده از این API، کلیدهای زیر باید در مانیفست تعریف شوند.

"sockets"

انواع

CreateInfo

خواص

  • شناسه سوکت

    شماره

    شناسه‌ی سوکت تازه ایجاد شده. توجه داشته باشید که شناسه‌های سوکت ایجاد شده از این API با شناسه‌های سوکت ایجاد شده از سایر APIها، مانند API منسوخ شده‌ی [ socket ](../socket/) سازگار نیستند.

DnsQueryType

کروم ۱۰۳+

تنظیمات DNS resolution. پیش‌فرض any است و از پیکربندی فعلی سیستم عامل استفاده می‌کند که ممکن است IPv4 یا IPv6 را برگرداند. ipv4 IPv4 را اعمال می‌کند و ipv6 IPv6 را.

شمارشی

"هر"

"آی‌پی‌وی۴"

"آی‌پی‌وی۶"

ReceiveErrorInfo

خواص

  • کد نتیجه

    شماره

    کد نتیجه‌ای که از فراخوانی تابع recvfrom() برگردانده شده است.

  • شناسه سوکت

    شماره

    شناسه سوکت.

ReceiveInfo

خواص

  • داده‌ها

    آرایه بافر

    محتوای بسته UDP (کوتاه شده به اندازه بافر فعلی).

  • آدرس از راه دور

    رشته

    آدرس میزبانی که بسته از آن می‌آید.

  • پورت از راه دور

    شماره

    پورت میزبانی که بسته از آن می‌آید.

  • شناسه سوکت

    شماره

    شناسه سوکت.

SendInfo

خواص

  • بایت‌های ارسالی

    شماره اختیاری

    تعداد بایت‌های ارسالی (اگر نتیجه == 0 باشد)

  • کد نتیجه

    شماره

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

SocketInfo

خواص

  • اندازه بافر

    شماره اختیاری

    اندازه بافر مورد استفاده برای دریافت داده‌ها. اگر اندازه بافر به صراحت مشخص نشده باشد، مقدار آن ارائه نمی‌شود.

  • آدرس محلی

    رشته اختیاری

    اگر سوکت زیرین متصل باشد، شامل آدرس IPv4/6 محلی آن است.

  • بندر محلی

    شماره اختیاری

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

  • نام

    رشته اختیاری

    رشته تعریف شده توسط برنامه که با سوکت مرتبط است.

  • مکث کرد

    بولی

    پرچمی که نشان می‌دهد آیا سوکت از اجرای رویدادهای onReceive مسدود شده است یا خیر.

  • مداوم

    بولی

    پرچمی که نشان می‌دهد آیا سوکت هنگام تعلیق برنامه باز مانده است یا خیر (به SocketProperties.persistent مراجعه کنید).

  • شناسه سوکت

    شماره

    شناسه سوکت.

SocketProperties

خواص

  • اندازه بافر

    شماره اختیاری

    اندازه بافر مورد استفاده برای دریافت داده‌ها. اگر بافر برای دریافت بسته UDP خیلی کوچک باشد، داده‌ها از بین می‌روند. مقدار پیش‌فرض ۴۰۹۶ است.

  • نام

    رشته اختیاری

    یک رشته تعریف‌شده توسط برنامه که با سوکت مرتبط است.

  • مداوم

    بولی اختیاری

    پرچمی که نشان می‌دهد آیا سوکت هنگام تخلیه صفحه رویداد برنامه باز مانده است یا خیر ( به مدیریت چرخه عمر برنامه مراجعه کنید). مقدار پیش‌فرض "false" است. هنگامی که برنامه بارگیری می‌شود، هر سوکتی که قبلاً با persistent=true باز شده باشد، می‌تواند با getSockets بازیابی شود.

روش‌ها

bind()

chrome.sockets.udp.bind(
  socketId: number,
  address: string,
  port: number,
  callback: function,
)
: void

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

پس از اتمام موفقیت‌آمیز عملیات bind ، رویدادهای onReceive هنگام رسیدن بسته‌های UDP به آدرس/پورت مشخص‌شده فعال می‌شوند -- مگر اینکه سوکت متوقف شده باشد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس دستگاه محلی. نام DNS، فرمت‌های IPv4 و IPv6 پشتیبانی می‌شوند. برای پذیرش بسته‌ها از تمام رابط‌های شبکه محلی موجود، از "0.0.0.0" استفاده کنید.

  • بندر

    شماره

    پورت دستگاه محلی. برای اتصال به یک پورت آزاد از "0" استفاده کنید.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

close()

وعده
chrome.sockets.udp.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

create()

وعده
chrome.sockets.udp.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

یک سوکت UDP با ویژگی‌های داده شده ایجاد می‌کند.

پارامترها

  • خواص

    SocketProperties اختیاری است

    ویژگی‌های سوکت (اختیاری).

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (createInfo: CreateInfo) => void

بازگشت‌ها

  • کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getInfo()

وعده
chrome.sockets.udp.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

وضعیت سوکت داده شده را بازیابی می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (socketInfo: SocketInfo) => void

بازگشت‌ها

  • قول< SocketInfo >

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getJoinedGroups()

وعده
chrome.sockets.udp.getJoinedGroups(
  socketId: number,
  callback?: function,
)
: Promise<string[]>

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (groups: string[]) => void

    • گروه‌ها

      رشته[]

      آرایه‌ای از گروه‌هایی که سوکت به آنها متصل شده است.

بازگشت‌ها

  • قول <string[]>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getSockets()

وعده
chrome.sockets.udp.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

فهرست سوکت‌های بازِ در حال حاضر متعلق به برنامه را بازیابی می‌کند.

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (socketInfos: SocketInfo[]) => void

    • اطلاعات سوکت

      آرایه‌ای از اشیاء که حاوی اطلاعات سوکت هستند.

بازگشت‌ها

  • قول< SocketInfo []>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

joinGroup()

chrome.sockets.udp.joinGroup(
  socketId: number,
  address: string,
  callback: function,
)
: void

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس گروه برای پیوستن. نام‌های دامنه پشتیبانی نمی‌شوند.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

leaveGroup()

chrome.sockets.udp.leaveGroup(
  socketId: number,
  address: string,
  callback: function,
)
: void

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

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس گروه برای خروج. نام‌های دامنه پشتیبانی نمی‌شوند.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

send()

chrome.sockets.udp.send(
  socketId: number,
  data: ArrayBuffer,
  address: string,
  port: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)
: void

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • داده‌ها

    آرایه بافر

    داده‌ای که باید ارسال شود.

  • آدرس

    رشته

    آدرس دستگاه راه دور.

  • بندر

    شماره

    پورت دستگاه از راه دور.

  • نوع پرس‌وجوی dns

    نوع DnsQuery اختیاری

    کروم ۱۰۳+

    اولویت تفکیک آدرس.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (sendInfo: SendInfo) => void

setBroadcast()

کروم ۴۴+
chrome.sockets.udp.setBroadcast(
  socketId: number,
  enabled: boolean,
  callback: function,
)
: void

بسته‌های پخش (broadcast packets) را در این سوکت فعال یا غیرفعال می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • فعال شده

    بولی

    برای فعال کردن بسته‌های پخش، true و برای غیرفعال کردن آنها false وارد کنید.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

      کد نتیجه‌ای که از فراخوانی شبکه‌ی مربوطه برگردانده شده است.

setMulticastLoopbackMode()

chrome.sockets.udp.setMulticastLoopbackMode(
  socketId: number,
  enabled: boolean,
  callback: function,
)
: void

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

توجه: رفتار setMulticastLoopbackMode بین سیستم‌های ویندوز و یونیکس کمی متفاوت است. این ناسازگاری فقط زمانی اتفاق می‌افتد که بیش از یک برنامه در یک میزبان به یک گروه چندپخشی متصل باشند و تنظیمات متفاوتی در حالت حلقه برگشتی چندپخشی داشته باشند. در ویندوز، برنامه‌هایی که حلقه برگشتی خاموش دارند، بسته‌های حلقه برگشتی را دریافت نمی‌کنند. در حالی که در سیستم‌های یونیکس، برنامه‌هایی که حلقه برگشتی خاموش دارند، بسته‌های حلقه برگشتی را به برنامه‌های دیگر در همان میزبان ارسال نمی‌کنند. به MSDN مراجعه کنید: https://learn.microsoft.com/en-us/windows/win32/winsock/ip-multicast-2

فراخوانی این متد نیازی به مجوزهای چندپخشی ندارد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • فعال شده

    بولی

    مشخص کنید که آیا حالت loopback فعال شود یا خیر.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

setMulticastTimeToLive()

chrome.sockets.udp.setMulticastTimeToLive(
  socketId: number,
  ttl: number,
  callback: function,
)
: void

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

فراخوانی این متد نیازی به مجوزهای چندپخشی ندارد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تی‌تی‌ال

    شماره

    ارزش زمان زنده ماندن.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

setPaused()

وعده
chrome.sockets.udp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

یک سوکت را متوقف یا از حالت توقف خارج می‌کند. سوکتی که متوقف شده است، از اجرای رویدادهای onReceive مسدود می‌شود.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • مکث کرد

    بولی

    پرچمی برای نشان دادن مکث یا لغو مکث.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

update()

وعده
chrome.sockets.udp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

ویژگی‌های سوکت را به‌روزرسانی می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • ویژگی‌هایی که باید به‌روزرسانی شوند.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

رویدادها

onReceive

chrome.sockets.udp.onReceive.addListener(
  callback: function,
)

این رویداد زمانی رخ می‌دهد که یک بسته UDP برای سوکت داده شده دریافت شود.

پارامترها

onReceiveError

chrome.sockets.udp.onReceiveError.addListener(
  callback: function,
)

این رویداد زمانی رخ می‌دهد که در حین انتظار برای دریافت داده‌ها روی آدرس و پورت سوکت، خطایی در شبکه رخ دهد. به محض وقوع این رویداد، سوکت متوقف شده و تا زمان از سرگیری سوکت، هیچ رویداد onReceive دیگری برای این سوکت رخ نخواهد داد.

پارامترها

،

توضیحات

از API مربوط به chrome.sockets.udp برای ارسال و دریافت داده‌ها از طریق شبکه با استفاده از اتصالات UDP استفاده کنید. این API جایگزین قابلیت UDP که قبلاً در API "socket" یافت می‌شد، شده است.

مانیفست

برای استفاده از این API، کلیدهای زیر باید در مانیفست تعریف شوند.

"sockets"

انواع

CreateInfo

خواص

  • شناسه سوکت

    شماره

    شناسه‌ی سوکت تازه ایجاد شده. توجه داشته باشید که شناسه‌های سوکت ایجاد شده از این API با شناسه‌های سوکت ایجاد شده از سایر APIها، مانند API منسوخ شده‌ی [ socket ](../socket/) سازگار نیستند.

DnsQueryType

کروم ۱۰۳+

تنظیمات DNS resolution. پیش‌فرض any است و از پیکربندی فعلی سیستم عامل استفاده می‌کند که ممکن است IPv4 یا IPv6 را برگرداند. ipv4 IPv4 را اعمال می‌کند و ipv6 IPv6 را.

شمارشی

"هر"

"آی‌پی‌وی۴"

"آی‌پی‌وی۶"

ReceiveErrorInfo

خواص

  • کد نتیجه

    شماره

    کد نتیجه‌ای که از فراخوانی تابع recvfrom() برگردانده شده است.

  • شناسه سوکت

    شماره

    شناسه سوکت.

ReceiveInfo

خواص

  • داده‌ها

    آرایه بافر

    محتوای بسته UDP (کوتاه شده به اندازه بافر فعلی).

  • آدرس از راه دور

    رشته

    آدرس میزبانی که بسته از آن می‌آید.

  • پورت از راه دور

    شماره

    پورت میزبانی که بسته از آن می‌آید.

  • شناسه سوکت

    شماره

    شناسه سوکت.

SendInfo

خواص

  • بایت‌های ارسالی

    شماره اختیاری

    تعداد بایت‌های ارسالی (اگر نتیجه == 0 باشد)

  • کد نتیجه

    شماره

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

SocketInfo

خواص

  • اندازه بافر

    شماره اختیاری

    اندازه بافر مورد استفاده برای دریافت داده‌ها. اگر اندازه بافر به صراحت مشخص نشده باشد، مقدار آن ارائه نمی‌شود.

  • آدرس محلی

    رشته اختیاری

    اگر سوکت زیرین متصل باشد، شامل آدرس IPv4/6 محلی آن است.

  • بندر محلی

    شماره اختیاری

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

  • نام

    رشته اختیاری

    رشته تعریف شده توسط برنامه که با سوکت مرتبط است.

  • مکث کرد

    بولی

    پرچمی که نشان می‌دهد آیا سوکت از اجرای رویدادهای onReceive مسدود شده است یا خیر.

  • مداوم

    بولی

    پرچمی که نشان می‌دهد آیا سوکت هنگام تعلیق برنامه باز مانده است یا خیر (به SocketProperties.persistent مراجعه کنید).

  • شناسه سوکت

    شماره

    شناسه سوکت.

SocketProperties

خواص

  • اندازه بافر

    شماره اختیاری

    اندازه بافر مورد استفاده برای دریافت داده‌ها. اگر بافر برای دریافت بسته UDP خیلی کوچک باشد، داده‌ها از بین می‌روند. مقدار پیش‌فرض ۴۰۹۶ است.

  • نام

    رشته اختیاری

    یک رشته تعریف‌شده توسط برنامه که با سوکت مرتبط است.

  • مداوم

    بولی اختیاری

    پرچمی که نشان می‌دهد آیا سوکت هنگام تخلیه صفحه رویداد برنامه باز مانده است یا خیر ( به مدیریت چرخه عمر برنامه مراجعه کنید). مقدار پیش‌فرض "false" است. هنگامی که برنامه بارگیری می‌شود، هر سوکتی که قبلاً با persistent=true باز شده باشد، می‌تواند با getSockets بازیابی شود.

روش‌ها

bind()

chrome.sockets.udp.bind(
  socketId: number,
  address: string,
  port: number,
  callback: function,
)
: void

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

پس از اتمام موفقیت‌آمیز عملیات bind ، رویدادهای onReceive هنگام رسیدن بسته‌های UDP به آدرس/پورت مشخص‌شده فعال می‌شوند -- مگر اینکه سوکت متوقف شده باشد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس دستگاه محلی. نام DNS، فرمت‌های IPv4 و IPv6 پشتیبانی می‌شوند. برای پذیرش بسته‌ها از تمام رابط‌های شبکه محلی موجود، از "0.0.0.0" استفاده کنید.

  • بندر

    شماره

    پورت دستگاه محلی. برای اتصال به یک پورت آزاد از "0" استفاده کنید.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

close()

وعده
chrome.sockets.udp.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

create()

وعده
chrome.sockets.udp.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

یک سوکت UDP با ویژگی‌های داده شده ایجاد می‌کند.

پارامترها

  • خواص

    SocketProperties اختیاری است

    ویژگی‌های سوکت (اختیاری).

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (createInfo: CreateInfo) => void

بازگشت‌ها

  • کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getInfo()

وعده
chrome.sockets.udp.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

وضعیت سوکت داده شده را بازیابی می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (socketInfo: SocketInfo) => void

بازگشت‌ها

  • قول< SocketInfo >

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getJoinedGroups()

وعده
chrome.sockets.udp.getJoinedGroups(
  socketId: number,
  callback?: function,
)
: Promise<string[]>

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (groups: string[]) => void

    • گروه‌ها

      رشته[]

      آرایه‌ای از گروه‌هایی که سوکت به آنها متصل شده است.

بازگشت‌ها

  • قول <string[]>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getSockets()

وعده
chrome.sockets.udp.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

فهرست سوکت‌های بازِ در حال حاضر متعلق به برنامه را بازیابی می‌کند.

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (socketInfos: SocketInfo[]) => void

    • اطلاعات سوکت

      آرایه‌ای از اشیاء که حاوی اطلاعات سوکت هستند.

بازگشت‌ها

  • قول< SocketInfo []>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

joinGroup()

chrome.sockets.udp.joinGroup(
  socketId: number,
  address: string,
  callback: function,
)
: void

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس گروه برای پیوستن. نام‌های دامنه پشتیبانی نمی‌شوند.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

leaveGroup()

chrome.sockets.udp.leaveGroup(
  socketId: number,
  address: string,
  callback: function,
)
: void

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

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس گروه برای خروج. نام‌های دامنه پشتیبانی نمی‌شوند.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

send()

chrome.sockets.udp.send(
  socketId: number,
  data: ArrayBuffer,
  address: string,
  port: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)
: void

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • داده‌ها

    آرایه بافر

    داده‌ای که باید ارسال شود.

  • آدرس

    رشته

    آدرس دستگاه راه دور.

  • بندر

    شماره

    پورت دستگاه از راه دور.

  • نوع پرس‌وجوی dns

    نوع DnsQuery اختیاری

    کروم ۱۰۳+

    اولویت تفکیک آدرس.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (sendInfo: SendInfo) => void

setBroadcast()

کروم ۴۴+
chrome.sockets.udp.setBroadcast(
  socketId: number,
  enabled: boolean,
  callback: function,
)
: void

بسته‌های پخش (broadcast packets) را در این سوکت فعال یا غیرفعال می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • فعال شده

    بولی

    برای فعال کردن بسته‌های پخش، true و برای غیرفعال کردن آنها false وارد کنید.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

      کد نتیجه‌ای که از فراخوانی شبکه‌ی مربوطه برگردانده شده است.

setMulticastLoopbackMode()

chrome.sockets.udp.setMulticastLoopbackMode(
  socketId: number,
  enabled: boolean,
  callback: function,
)
: void

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

توجه: رفتار setMulticastLoopbackMode بین سیستم‌های ویندوز و یونیکس کمی متفاوت است. این ناسازگاری فقط زمانی اتفاق می‌افتد که بیش از یک برنامه در یک میزبان به یک گروه چندپخشی متصل باشند و تنظیمات متفاوتی در حالت حلقه برگشتی چندپخشی داشته باشند. در ویندوز، برنامه‌هایی که حلقه برگشتی خاموش دارند، بسته‌های حلقه برگشتی را دریافت نمی‌کنند. در حالی که در سیستم‌های یونیکس، برنامه‌هایی که حلقه برگشتی خاموش دارند، بسته‌های حلقه برگشتی را به برنامه‌های دیگر در همان میزبان ارسال نمی‌کنند. به MSDN مراجعه کنید: https://learn.microsoft.com/en-us/windows/win32/winsock/ip-multicast-2

فراخوانی این متد نیازی به مجوزهای چندپخشی ندارد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • فعال شده

    بولی

    مشخص کنید که آیا حالت loopback فعال شود یا خیر.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

setMulticastTimeToLive()

chrome.sockets.udp.setMulticastTimeToLive(
  socketId: number,
  ttl: number,
  callback: function,
)
: void

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

فراخوانی این متد نیازی به مجوزهای چندپخشی ندارد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تی‌تی‌ال

    شماره

    ارزش زمان زنده ماندن.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

setPaused()

وعده
chrome.sockets.udp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

یک سوکت را متوقف یا از حالت توقف خارج می‌کند. سوکتی که متوقف شده است، از اجرای رویدادهای onReceive مسدود می‌شود.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • مکث کرد

    بولی

    پرچمی برای نشان دادن مکث یا لغو مکث.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

update()

وعده
chrome.sockets.udp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

ویژگی‌های سوکت را به‌روزرسانی می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • ویژگی‌هایی که باید به‌روزرسانی شوند.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

رویدادها

onReceive

chrome.sockets.udp.onReceive.addListener(
  callback: function,
)

این رویداد زمانی رخ می‌دهد که یک بسته UDP برای سوکت داده شده دریافت شود.

پارامترها

onReceiveError

chrome.sockets.udp.onReceiveError.addListener(
  callback: function,
)

این رویداد زمانی رخ می‌دهد که در حین انتظار برای دریافت داده‌ها روی آدرس و پورت سوکت، خطایی در شبکه رخ دهد. به محض وقوع این رویداد، سوکت متوقف شده و تا زمان از سرگیری سوکت، هیچ رویداد onReceive دیگری برای این سوکت رخ نخواهد داد.

پارامترها