chrome.sockets.udp

Описание

Используйте API chrome.sockets.udp для отправки и получения данных по сети с помощью UDP-соединений. Этот API заменяет функциональность UDP, ранее доступную в API "socket".

Манифест

Для использования этого API в манифесте необходимо указать следующие ключи.

"sockets"

Типы

CreateInfo

Характеристики

  • socketId

    число

    Идентификатор вновь созданного сокета. Обратите внимание, что идентификаторы сокетов, созданные с помощью этого API, несовместимы с идентификаторами сокетов, созданными с помощью других API, таких как устаревший API [ socket ](../socket/) .

DnsQueryType

Chrome 103+

Настройки разрешения DNS. По умолчанию используется any -сервер, а текущая конфигурация ОС может возвращать IPv4 или IPv6. ipv4 принудительно устанавливает IPv4, а ipv6 — IPv6.

Перечисление

"любой"

"ipv4"

"ipv6"

ReceiveErrorInfo

Характеристики

  • resultCode

    число

    Код результата, возвращаемый базовым вызовом функции recvfrom().

  • socketId

    число

    Идентификатор сокета.

ReceiveInfo

Характеристики

  • данные

    ArrayBuffer

    Содержимое UDP-пакета (усеченное до размера текущего буфера).

  • удаленный адрес

    нить

    Адрес хоста, с которого поступил пакет.

  • удаленный порт

    число

    Порт хоста, с которого поступил пакет.

  • socketId

    число

    Идентификатор сокета.

SendInfo

Характеристики

  • байтыОтправлено

    число необязательно

    Количество отправленных байтов (если результат == 0)

  • resultCode

    число

    Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

SocketInfo

Характеристики

  • размер буфера

    число необязательно

    Размер буфера, используемого для приема данных. Если размер буфера не указан явно, значение не предоставляется.

  • локальный адрес

    строка необязательный

    Если базовый сокет привязан, содержит его локальный IPv4/6-адрес.

  • локальный порт

    число необязательно

    Если базовый сокет привязан, содержит его локальный порт.

  • имя

    строка необязательный

    Строка, определяемая приложением и связанная с сокетом.

  • пауза

    логический

    Флаг, указывающий, заблокирована ли отправка событий onReceive через сокет.

  • настойчивый

    логический

    Флаг, указывающий, остаётся ли сокет открытым при приостановке работы приложения (см. SocketProperties.persistent ).

  • socketId

    число

    Идентификатор сокета.

SocketProperties

Характеристики

  • размер буфера

    число необязательно

    Размер буфера, используемого для приема данных. Если буфер слишком мал для приема UDP-пакета, данные теряются. Значение по умолчанию — 4096.

  • имя

    строка необязательный

    Строка, определяемая приложением и связанная с сокетом.

  • настойчивый

    логический необязательный

    Флаг, указывающий, остаётся ли сокет открытым при выгрузке страницы событий приложения (см. раздел «Управление жизненным циклом приложения »). Значение по умолчанию — «false». При загрузке приложения любые сокеты, ранее открытые с параметром persistent=true, могут быть получены с помощью getSockets .

Методы

bind()

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

Привязывает локальный адрес и порт к сокету. Для клиентского сокета рекомендуется использовать порт 0, чтобы платформа могла выбрать свободный порт.

После успешного завершения операции bind генерируются события onReceive при поступлении UDP-пакетов на указанный адрес/порт — за исключением случаев, когда сокет приостановлен.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • адрес

    нить

    Адрес локального компьютера. Поддерживаются DNS-имя, форматы IPv4 и IPv6. Используйте "0.0.0.0", чтобы принимать пакеты со всех доступных локальных сетевых интерфейсов.

  • порт

    число

    Порт локального компьютера. Используйте «0» для привязки к свободному порту.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

close()

Обещать
chrome.sockets.udp.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

Закрывает сокет и освобождает адрес/порт, к которому он привязан. Каждый созданный сокет должен быть закрыт после использования. Идентификатор сокета становится недействительным сразу после вызова функции. Однако гарантируется, что сокет будет закрыт только при вызове функции обратного вызова.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Обещание<пустота>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

create()

Обещать
chrome.sockets.udp.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

Создает UDP-сокет с заданными свойствами.

Параметры

  • характеристики

    SocketProperties ( необязательно)

    Свойства сокета (необязательно).

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (createInfo: CreateInfo) => void

    • создатьИнформацию

      Результат создания сокета.

Возвраты

  • Promise <CreateInfo>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

getInfo()

Обещать
chrome.sockets.udp.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

Получает состояние заданного сокета.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Объект, содержащий информацию о сокете.

Возвраты

  • Promise <SocketInfo>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

getJoinedGroups()

Обещать
chrome.sockets.udp.getJoinedGroups(
  socketId: number,
  callback?: function,
)
: Promise<string[]>

Получает адреса многоадресных групп, к которым в данный момент подключен сокет.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (groups: string[]) => void

    • группы

      нить[]

      Массив групп, к которым подключился сокет.

Возвраты

  • Promise<string[]>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

getSockets()

Обещать
chrome.sockets.udp.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

Получает список открытых в данный момент сокетов, принадлежащих приложению.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Массив объектов, содержащих информацию о сокете.

Возвраты

  • Promise< SocketInfo []>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

joinGroup()

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

Присоединяется к группе многоадресной рассылки и начинает принимать пакеты от этой группы. Перед вызовом этого метода сокет должен быть привязан к локальному порту.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • адрес

    нить

    Адрес группы, к которой нужно присоединиться. Доменные имена не поддерживаются.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

leaveGroup()

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

Выходит из группы многоадресной рассылки, к которой был ранее присоединен с помощью joinGroup . Вызов этой функции необходим только в том случае, если вы планируете продолжать использовать сокет в дальнейшем, поскольку это будет сделано автоматически операционной системой при закрытии сокета.

Выход из группы предотвратит отправку маршрутизатором многоадресных дейтаграмм локальному хосту, при условии, что никакие другие процессы на хосте по-прежнему не подключены к группе.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • адрес

    нить

    Адрес группы, которую необходимо покинуть. Доменные имена не поддерживаются.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

send()

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

Отправляет данные через указанный сокет на указанный адрес и порт. Перед вызовом этого метода сокет должен быть привязан к локальному порту.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • данные

    ArrayBuffer

    Данные для отправки.

  • адрес

    нить

    Адрес удалённого компьютера.

  • порт

    число

    Порт удалённого устройства.

  • dnsQueryType

    DnsQueryType ( необязательный параметр)

    Chrome 103+

    Настройки разрешения адресов.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (sendInfo: SendInfo) => void

    • sendInfo

      Результат выполнения метода send .

setBroadcast()

Chrome 44+
chrome.sockets.udp.setBroadcast(
  socketId: number,
  enabled: boolean,
  callback: function,
)
: void

Включает или отключает широковещательную рассылку пакетов на этом сокете.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • включено

    логический

    Значение true включает широковещательную рассылку пакетов, false отключает её.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращенный в результате выполнения сетевого вызова.

setMulticastLoopbackMode()

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

Определяет, будут ли многоадресные пакеты, отправленные с хоста в многоадресную группу, зацикливаться и возвращаться на хост.

Примечание: поведение функции setMulticastLoopbackMode немного отличается в системах Windows и Unix-подобных системах. Несоответствие возникает только в том случае, если на одном хосте к одной и той же многоадресной группе подключено более одного приложения с разными настройками режима многоадресной обратной связи. В Windows приложения с отключенной обратной связью не будут ПОЛУЧАТЬ пакеты обратной связи; в то время как в системах Unix-подобных систем приложения с отключенной обратной связью не будут ОТПРАВЛЯТЬ пакеты обратной связи другим приложениям на том же хосте. См. MSDN: https://learn.microsoft.com/en-us/windows/win32/winsock/ip-multicast-2

Для вызова этого метода не требуются права на многоадресную рассылку.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • включено

    логический

    Укажите, следует ли включить режим обратной связи.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

setMulticastTimeToLive()

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

Устанавливает время жизни многоадресных пакетов, отправляемых в многоадресную группу.

Для вызова этого метода не требуются права на многоадресную рассылку.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • ттл

    число

    Показатель продолжительности жизни.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

setPaused()

Обещать
chrome.sockets.udp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

Приостанавливает или возобновляет работу сокета. Приостановленный сокет блокируется от генерации событий onReceive .

Параметры

  • socketId

    число

    Идентификатор сокета.

  • пауза

    логический

    Флажок, указывающий, следует ли приостановить или возобновить работу.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Обещание<пустота>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

update()

Обещать
chrome.sockets.udp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

Обновляет свойства сокета.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • характеристики

    Свойства, которые необходимо обновить.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Обещание<пустота>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

События

onReceive

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

Событие генерируется при получении UDP-пакета для указанного сокета.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (info: ReceiveInfo) => void

onReceiveError

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

Событие генерируется при возникновении сетевой ошибки во время ожидания данных по адресу и порту сокета средой выполнения. После генерации этого события сокет приостанавливается, и до возобновления работы сокета для него больше не будут генерироваться события onReceive .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (info: ReceiveErrorInfo) => void

,

Описание

Используйте API chrome.sockets.udp для отправки и получения данных по сети с помощью UDP-соединений. Этот API заменяет функциональность UDP, ранее доступную в API "socket".

Манифест

Для использования этого API в манифесте необходимо указать следующие ключи.

"sockets"

Типы

CreateInfo

Характеристики

  • socketId

    число

    Идентификатор вновь созданного сокета. Обратите внимание, что идентификаторы сокетов, созданные с помощью этого API, несовместимы с идентификаторами сокетов, созданными с помощью других API, таких как устаревший API [ socket ](../socket/) .

DnsQueryType

Chrome 103+

Настройки разрешения DNS. По умолчанию используется any -сервер, а текущая конфигурация ОС может возвращать IPv4 или IPv6. ipv4 принудительно устанавливает IPv4, а ipv6 — IPv6.

Перечисление

"любой"

"ipv4"

"ipv6"

ReceiveErrorInfo

Характеристики

  • resultCode

    число

    Код результата, возвращаемый базовым вызовом функции recvfrom().

  • socketId

    число

    Идентификатор сокета.

ReceiveInfo

Характеристики

  • данные

    ArrayBuffer

    Содержимое UDP-пакета (усеченное до размера текущего буфера).

  • удаленный адрес

    нить

    Адрес хоста, с которого поступил пакет.

  • удаленный порт

    число

    Порт хоста, с которого поступил пакет.

  • socketId

    число

    Идентификатор сокета.

SendInfo

Характеристики

  • байтыОтправлено

    число необязательно

    Количество отправленных байтов (если результат == 0)

  • resultCode

    число

    Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

SocketInfo

Характеристики

  • размер буфера

    число необязательно

    Размер буфера, используемого для приема данных. Если размер буфера не указан явно, значение не предоставляется.

  • локальный адрес

    строка необязательный

    Если базовый сокет привязан, содержит его локальный IPv4/6-адрес.

  • локальный порт

    число необязательно

    Если базовый сокет привязан, содержит его локальный порт.

  • имя

    строка необязательный

    Строка, определяемая приложением и связанная с сокетом.

  • пауза

    логический

    Флаг, указывающий, заблокирована ли отправка событий onReceive через сокет.

  • настойчивый

    логический

    Флаг, указывающий, остаётся ли сокет открытым при приостановке работы приложения (см. SocketProperties.persistent ).

  • socketId

    число

    Идентификатор сокета.

SocketProperties

Характеристики

  • размер буфера

    число необязательно

    Размер буфера, используемого для приема данных. Если буфер слишком мал для приема UDP-пакета, данные теряются. Значение по умолчанию — 4096.

  • имя

    строка необязательный

    Строка, определяемая приложением и связанная с сокетом.

  • настойчивый

    логический необязательный

    Флаг, указывающий, остаётся ли сокет открытым при выгрузке страницы событий приложения (см. раздел «Управление жизненным циклом приложения »). Значение по умолчанию — «false». При загрузке приложения любые сокеты, ранее открытые с параметром persistent=true, могут быть получены с помощью getSockets .

Методы

bind()

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

Привязывает локальный адрес и порт к сокету. Для клиентского сокета рекомендуется использовать порт 0, чтобы платформа могла выбрать свободный порт.

После успешного завершения операции bind генерируются события onReceive при поступлении UDP-пакетов на указанный адрес/порт — за исключением случаев, когда сокет приостановлен.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • адрес

    нить

    Адрес локального компьютера. Поддерживаются DNS-имя, форматы IPv4 и IPv6. Используйте "0.0.0.0", чтобы принимать пакеты со всех доступных локальных сетевых интерфейсов.

  • порт

    число

    Порт локального компьютера. Используйте «0» для привязки к свободному порту.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

close()

Обещать
chrome.sockets.udp.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

Закрывает сокет и освобождает адрес/порт, к которому он привязан. Каждый созданный сокет должен быть закрыт после использования. Идентификатор сокета становится недействительным сразу после вызова функции. Однако гарантируется, что сокет будет закрыт только при вызове функции обратного вызова.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Обещание<пустота>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

create()

Обещать
chrome.sockets.udp.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

Создает UDP-сокет с заданными свойствами.

Параметры

  • характеристики

    SocketProperties ( необязательно)

    Свойства сокета (необязательно).

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (createInfo: CreateInfo) => void

    • создатьИнформацию

      Результат создания сокета.

Возвраты

  • Promise <CreateInfo>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

getInfo()

Обещать
chrome.sockets.udp.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

Получает состояние заданного сокета.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Объект, содержащий информацию о сокете.

Возвраты

  • Promise <SocketInfo>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

getJoinedGroups()

Обещать
chrome.sockets.udp.getJoinedGroups(
  socketId: number,
  callback?: function,
)
: Promise<string[]>

Получает адреса многоадресных групп, к которым в данный момент подключен сокет.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (groups: string[]) => void

    • группы

      нить[]

      Массив групп, к которым подключился сокет.

Возвраты

  • Promise<string[]>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

getSockets()

Обещать
chrome.sockets.udp.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

Получает список открытых в данный момент сокетов, принадлежащих приложению.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Массив объектов, содержащих информацию о сокете.

Возвраты

  • Promise< SocketInfo []>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

joinGroup()

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

Присоединяется к группе многоадресной рассылки и начинает принимать пакеты от этой группы. Перед вызовом этого метода сокет должен быть привязан к локальному порту.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • адрес

    нить

    Адрес группы, к которой нужно присоединиться. Доменные имена не поддерживаются.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

leaveGroup()

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

Выходит из группы многоадресной рассылки, к которой был ранее присоединен с помощью joinGroup . Вызов этой функции необходим только в том случае, если вы планируете продолжать использовать сокет в дальнейшем, поскольку это будет сделано автоматически операционной системой при закрытии сокета.

Выход из группы предотвратит отправку маршрутизатором многоадресных дейтаграмм локальному хосту, при условии, что никакие другие процессы на хосте по-прежнему не подключены к группе.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • адрес

    нить

    Адрес группы, которую необходимо покинуть. Доменные имена не поддерживаются.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

send()

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

Отправляет данные через указанный сокет на указанный адрес и порт. Перед вызовом этого метода сокет должен быть привязан к локальному порту.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • данные

    ArrayBuffer

    Данные для отправки.

  • адрес

    нить

    Адрес удалённого компьютера.

  • порт

    число

    Порт удалённого устройства.

  • dnsQueryType

    DnsQueryType ( необязательный параметр)

    Chrome 103+

    Настройки разрешения адресов.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (sendInfo: SendInfo) => void

    • sendInfo

      Результат выполнения метода send .

setBroadcast()

Chrome 44+
chrome.sockets.udp.setBroadcast(
  socketId: number,
  enabled: boolean,
  callback: function,
)
: void

Включает или отключает широковещательную рассылку пакетов на этом сокете.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • включено

    логический

    Значение true включает широковещательную рассылку пакетов, false отключает её.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращенный в результате выполнения сетевого вызова.

setMulticastLoopbackMode()

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

Определяет, будут ли многоадресные пакеты, отправленные с хоста в многоадресную группу, зацикливаться и возвращаться на хост.

Примечание: поведение функции setMulticastLoopbackMode немного отличается в системах Windows и Unix-подобных системах. Несоответствие возникает только в том случае, если на одном хосте к одной и той же многоадресной группе подключено более одного приложения с разными настройками режима многоадресной обратной связи. В Windows приложения с отключенной обратной связью не будут ПОЛУЧАТЬ пакеты обратной связи; в то время как в системах Unix-подобных систем приложения с отключенной обратной связью не будут ОТПРАВЛЯТЬ пакеты обратной связи другим приложениям на том же хосте. См. MSDN: https://learn.microsoft.com/en-us/windows/win32/winsock/ip-multicast-2

Для вызова этого метода не требуются права на многоадресную рассылку.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • включено

    логический

    Укажите, следует ли включить режим обратной связи.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

setMulticastTimeToLive()

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

Устанавливает время жизни многоадресных пакетов, отправляемых в многоадресную группу.

Для вызова этого метода не требуются права на многоадресную рассылку.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • ттл

    число

    Показатель продолжительности жизни.

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (result: number) => void

    • результат

      число

      Код результата, возвращаемый при выполнении сетевого вызова. Отрицательное значение указывает на ошибку.

setPaused()

Обещать
chrome.sockets.udp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

Приостанавливает или возобновляет работу сокета. Приостановленный сокет блокируется от генерации событий onReceive .

Параметры

  • socketId

    число

    Идентификатор сокета.

  • пауза

    логический

    Флажок, указывающий, следует ли приостановить или возобновить работу.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Обещание<пустота>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

update()

Обещать
chrome.sockets.udp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

Обновляет свойства сокета.

Параметры

  • socketId

    число

    Идентификатор сокета.

  • характеристики

    Свойства, которые необходимо обновить.

  • перезвонить

    функция необязательна

    Параметр callback выглядит следующим образом:

    () => void

Возвраты

  • Обещание<пустота>

    Chrome 121+

    Поддержка промисов доступна только для Manifest V3 и более поздних версий; для других платформ необходимо использовать колбэки.

События

onReceive

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

Событие генерируется при получении UDP-пакета для указанного сокета.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (info: ReceiveInfo) => void

onReceiveError

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

Событие генерируется при возникновении сетевой ошибки во время ожидания данных по адресу и порту сокета средой выполнения. После генерации этого события сокет приостанавливается, и до возобновления работы сокета для него больше не будут генерироваться события onReceive .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит следующим образом:

    (info: ReceiveErrorInfo) => void