From a065e04d529da1d847b5062a12c46d916408bf32 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 21:46:22 -0500 Subject: update based on https://github.com/mdn/yari/issues/2028 --- files/ru/web/api/devicestorage/index.html | 87 ------------ files/ru/web/api/fmradio/index.html | 94 ------------- files/ru/web/api/identitymanager/index.html | 47 ------- .../ru/web/api/identitymanager/request/index.html | 88 ------------ .../ru/web/api/navigator/getdatastores/index.html | 58 -------- files/ru/web/api/navigator/id/index.html | 20 --- .../navigator/mozaudiochannelmanager/index.html | 32 ----- files/ru/web/api/navigator/mozcamera/index.html | 43 ------ files/ru/web/api/navigator/mozl10n/index.html | 38 ----- files/ru/web/api/navigator/moznfc/index.html | 43 ------ files/ru/web/api/webfm_api/index.html | 156 --------------------- 11 files changed, 706 deletions(-) delete mode 100644 files/ru/web/api/devicestorage/index.html delete mode 100644 files/ru/web/api/fmradio/index.html delete mode 100644 files/ru/web/api/identitymanager/index.html delete mode 100644 files/ru/web/api/identitymanager/request/index.html delete mode 100644 files/ru/web/api/navigator/getdatastores/index.html delete mode 100644 files/ru/web/api/navigator/id/index.html delete mode 100644 files/ru/web/api/navigator/mozaudiochannelmanager/index.html delete mode 100644 files/ru/web/api/navigator/mozcamera/index.html delete mode 100644 files/ru/web/api/navigator/mozl10n/index.html delete mode 100644 files/ru/web/api/navigator/moznfc/index.html delete mode 100644 files/ru/web/api/webfm_api/index.html (limited to 'files/ru/web/api') diff --git a/files/ru/web/api/devicestorage/index.html b/files/ru/web/api/devicestorage/index.html deleted file mode 100644 index 00c3b20192..0000000000 --- a/files/ru/web/api/devicestorage/index.html +++ /dev/null @@ -1,87 +0,0 @@ ---- -title: DeviceStorage -slug: Web/API/DeviceStorage -tags: - - API - - Device Storage - - WebAPI -translation_of: Archive/B2G_OS/API/DeviceStorage ---- -

{{ ApiRef() }}

-

{{ non-standard_header() }}

-

{{ B2GOnlyHeader2('certified') }}

-

Введение

-

DeviceStorage — интерфейс, используемый для доступа к файлам в особом хранилище (или области хранения), доступном на устройстве. Это хранилище, по сути, является файловой системой — хотя оно на самом деле скрывает нижележащую файловую системы.

-

Чтобы получить доступ к хранилищу, необходимо использовать метод {{domxref("window.navigator.getDeviceStorage()","navigator.getDeviceStorage()")}} , возвращающую объекты DeviceStorage. Затем вы сможете использовать методы и свойства этих объектов, чтобы получить доступ к содержимому хранилища.

-

Свойства

-
-
- {{domxref("DeviceStorage.storageName")}} {{readonlyinline}}
-
- Строка, представляющая имя области хранения. Та же, что используется при вызове {{domxref("window.navigator.getDeviceStorage()","getDeviceStorage")}} чтобы получить объект DeviceStorage.
-
- {{domxref("DeviceStorage.default")}} {{readonlyinline}}
-
- Логическое значение, указывающее, назначено ли это хранилище по умолчанию для хранения новых файлов (true) или нет (false).
-
-

Обработчики событий

-
-
- {{domxref("DeviceStorage.onchange")}}
-
- Обрабатывает событие {{event("change")}}. Это событие происходит каждый раз, когда содержимое хранилища меняется.
-
-

Функции

-
-
- {{ domxref("DeviceStorage.add()") }}
-
- Создает файл в области хранения. Имя файла генерируется автоматически.
-
- {{ domxref("DeviceStorage.addNamed()") }}
-
- Создает файл в области хранения. Имя файла задается при вызове функции.
-
- {{ domxref("DeviceStorage.available()") }}
-
- Возвращает available если хранилище доступно для использования и shared если устройство подключено к ПК.
-
- {{ domxref("DeviceStorage.delete()") }}
-
- Удаляет файл из области хранения.
-
- {{ domxref("DeviceStorage.enumerate()") }}
-
- Возвращает список файлов, доступных в области хранения. Полученные файлы доступны только для чтения.
-
- {{ domxref("DeviceStorage.enumerateEditable()") }}
-
- Возвращает список файлов, доступных в области хранения.
-
- {{ domxref("DeviceStorage.freeSpace()") }}
-
- Возвращает количество свободного места, доступного в области хранения.
-
- {{ domxref("DeviceStorage.get()") }}
-
- Возвращает файлы, доступные только для чтения.
-
- {{ domxref("DeviceStorage.getEditable()") }}
-
- Возвращает файлы, доступные для редактирования.
-
- {{ domxref("DeviceStorage.usedSpace()") }}
-
- Возвращает количество занятого места в области хранения.
-
-

Обработчики событий

-

Функции, наследованные от {{domxref("EventTarget")}} интерфейса:

-

{{page("/en-US/docs/Web/API/EventTarget","Methods")}}

-

Спецификация

-

Не является частью какой-либо спецификации.

-

Смотрите также

- diff --git a/files/ru/web/api/fmradio/index.html b/files/ru/web/api/fmradio/index.html deleted file mode 100644 index 0d889f3956..0000000000 --- a/files/ru/web/api/fmradio/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -title: FMRadio -slug: Web/API/FMRadio -translation_of: Archive/B2G_OS/API/FMRadio ---- -

{{ APIRef("FMRadio API")}}{{ non-standard_header() }}

- -

{{ B2GOnlyHeader2('installed') }}

- -

Summary

- -

WebFM API предоставляет доступ к модулю FM радио устройства. Этот интерфейс поможет Вам включить или выключить FM радио и настроить его на нужную станцию. Это достижимо с помощью параметра {{domxref("window.navigator.mozFMRadio","navigator.mozFMRadio")}}.

- -

Обзор API

- -
interface FMRadio : EventTarget {
-   readonly attribute boolean enabled;
-   readonly attribute boolean antennaAvailable;
-   readonly attribute double frequency;
-   readonly attribute double frequencyUpperBound;
-   readonly attribute double frequencyLowerBound;
-   readonly attribute double channelWidth;
-
-   attribute Function onantennaavailablechange;
-   attribute Function onfrequencychange;
-   attribute Function onenabled;
-   attribute Function ondisabled;
-
-   DOMRequest enable(double frequency);
-   DOMRequest disable();
-   DOMRequest setFrequency(double frequency);
-   DOMRequest seekUp();
-   DOMRequest seekDown();
-   DOMRequest cancelSeek();
-}
- -

Параметры

- -
-
{{domxref("FMRadio.enabled")}}
-
Показывает играет ли радио
-
{{domxref("FMRadio.antennaAvailable")}}
-
Показывает доступна ли антенна
-
{{domxref("FMRadio.frequency")}}
-
Текущая частота радио.
-
{{domxref("FMRadio.frequencyUpperBound")}}
-
Максимальная частота по которой можно найти радиостанцию
-
{{domxref("FMRadio.frequencyLowerBound")}}
-
Минимальная частота по которой можно найти радиостанцию
-
{{domxref("FMRadio.channelWidth")}}
-
Частота текущей радиостанции, в МГц.
-
- -

Event handlers

- -
-
{{domxref("FMRadio.onenabled")}}
-
A handler for the {{event("enabled")}} event; It is triggered when the radio has been turned on
-
{{domxref("FMRadio.ondisabled")}}
-
A handler for the {{event("disabled")}} event; It is triggered when the radio has been turned off
-
{{domxref("FMRadio.onantennaavailablechange")}}
-
A handler for the {{event("antennaavailablechange")}} event; It is triggered when an antenna is plugged or unplugged
-
{{domxref("FMRadio.onfrequencychange")}}
-
A handler for the {{event("frequencychange")}} event; It is triggered whenever the radio frequency is changed
-
- -

Методы

- -
-
{{domxref("FMRadio.enable()")}}
-
Turns on the radio on the given frequency. This function throws if called with no argument. Returns a {{domxref("DOMRequest")}} for the success or error of the operation.
-
{{domxref("FMRadio.disable()")}}
-
Turns the radio off. Returns a {{domxref("DOMRequest")}} which success indicates that the radio has properly been disabled
-
{{domxref("FMRadio.setFrequency()")}}
-
Asynchronously changes the radio frequency. The value has to be between frequencyLowerBound and frequencyUpperBound. Trying to set outside the bounds results in an error.
-
Returns a {{domxref("DOMRequest")}} which success indicates the frequency has properly been changed.
-
{{domxref("FMRadio.seekUp()")}}
-
Asks the radio to find a new frequency (usually greater than the current one). If one is successfully found, a frequencychange event is fired. Returns a {{domxref("DOMRequest")}} which success indicates that the search has started. The search circles back to lower frequencies when the highest frequency has been reached.
-
{{domxref("FMRadio.seekDown()")}}
-
Same as above, but searching in frequencies lower than the current one. The search cirlces back to higher frequencies when the lowest frequency has been reached.
-
{{domxref("FMRadio.cancelSeek()")}}
-
Cancels the radio seek if one was happening. Returns a {{domxref("DOMRequest")}} which success indicates that the frequency search has been cancelled.
-
- -

Спецификация

- -

Ещё нет спецификаций.

- -

See also

- - diff --git a/files/ru/web/api/identitymanager/index.html b/files/ru/web/api/identitymanager/index.html deleted file mode 100644 index 01b4a96364..0000000000 --- a/files/ru/web/api/identitymanager/index.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: IdentityManager -slug: Web/API/IdentityManager -tags: - - API - - Persona - - Reference -translation_of: Archive/IdentityManager ---- -

{{APIRef("Persona")}}{{non-standard_header}}

- -

The IdentityManager of the  BrowserID protocol exposes the BrowserID API, via {{domxref("navigator.id")}}. This API has gone through several significant revisions. Each generation is listed separately below.

- -

The "Observer" API (Current)

- -

The Observer API introduces much-requested features, such as an improved post-verification experience for first-time users, automatic persistent logins, and easier integration with native applications.

- -
-
{{ domxref("IdentityManager.watch()")}}
-
Registers callbacks to be invoked when a user logs into or out of a website.
-
{{ domxref("IdentityManager.request()")}}
-
Requests a signed identity assertion from the user.
-
{{ domxref("IdentityManager.logout()")}}
-
Logs the user out of a website and prevents the onlogin action from automatically firing on their next visit.
-
- -
-

Users with third-party cookies disabled may experience problems logging in using the Observer API as detailed in issue 2999.

-
- -

The "Callback" API (Current)

- -

The Callback API was introduced in November 2011. It improved upon the initial API by allowing options to be passed to navigator.id.get() and offering experimental support for BrowserID-managed persistent sessions.

- -
-
{{ domxref("IdentityManager.get()")}}
-
Gets the user's BrowserID in a signed assertion.
-
- -

The "VerifiedEmail" API (Deprecated)

- -

The VerifiedEmail API was BrowserID's first API. It was deprecated at the end of 2011.

- -
-
{{ domxref("IdentityManager.getVerifiedEmail()")}} {{ deprecated_inline() }}
-
Gets the user's BrowserID in a signed assertion. This method is deprecated; {{ domxref("navigator.id.get()")}} is backwards compatible and can be used instead.
-
diff --git a/files/ru/web/api/identitymanager/request/index.html b/files/ru/web/api/identitymanager/request/index.html deleted file mode 100644 index 2923f0a359..0000000000 --- a/files/ru/web/api/identitymanager/request/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -title: navigator.id.request -slug: Web/API/IdentityManager/request -tags: - - API - - BrowserID - - DOM - - Persona - - Безопасность - - Использование - - Настройка - - Справка - - запрос - - метод - - не стандартный - - справка DOM - - справка Gecko DOM -translation_of: Archive/IdentityManager/request ---- -
{{ ApiRef }}
- -

Кратко

- -

Эта функция позволяет использовать Persona для аутентификации пользователей на вебсайте. Она должна вызываться внутри обработки щелчка мыши, к примеру, вы должны вызвать её, когда пользователь щелкнул по кнопке «Войти с помощью Persona».

- -

Когда функция navigator.id.request() вызвана она попросит пользователя выбрать адрес электронной почты, который он желает использовать для входа, а также попросит пройти процедуру аутентификации у поставщика услуг (электронной почты, прим. переводчика), если срок сертификата пользователя истёк. После этого, она создаёт подписанную заявку (assertion), содержащую адрес эл.почты пользователя и передаёт эту заявку функции onlogin, зарегистрированной с помощью {{domxref("navigator.id.watch()")}}.

- -

Эта функция должна использоваться обязательно в связке с  {{domxref("navigator.id.watch()")}}.

- -

Синтаксис

- -
navigator.id.request();
-navigator.id.request({siteName: 'Название сайта', siteLogo: '/logo.png'});
-navigator.id.request({termsOfService: '/tos.html', privacyPolicy: '/privacy.html'});
-
- -

Параметры

- -
-
backgroundColor {{ optional_inline() }}
-
Шестнадцатеричный код цвета для фона диалогового окна. Формат: "#rgb" или "#rrggbb".
-
oncancel {{ optional_inline() }}
-
Функция, которую следует вызвать в случае отказа пользователя предоставить свой идентификатор сайту.
-
privacyPolicy {{ optional_inline() }}
-
Должен передаваться по SSL. Так же должен быть передан параметр termsOfService (Условия Предоставления Услуг).
-
Абсолютный путь или URL до описания политики конфиденциальности веб-сайта. Если этот параметр предоставлен, тогда так же должен быть предоставлен параметр termsOfService. Когда оба эти параметра (termsOfService и privacyPolicy) переданы диалоговое окно входа будет содержать предупреждение для пользователя: "продолжив вход, вы соглашаетесь с политиками использования и конфиденциальности сайта". Так же в диалоговом окне будут размещены ссылки на описания этих политик.
-
returnTo {{ optional_inline() }}
-
Абсолютный путь на который будут отправлены новые пользователи, закончившие процедуру проверки эл.почты в первый раз. Путь должен начинаться с '/'. Этот параметр действует только на тех пользователей, которые проходят сертификацию через запсную Службу Предоставления Идентификаторов от Mozilla (Mozilla's Identity Provider, - прим.). Предоставляемое значение должно указывать реально существующий путь, который может быть использован так же в качестве локации окна – window.location.
-
siteLogo {{ optional_inline() }}
-
Должен передаваться по SSL.
-
Абсолютный путь до изображения, которое будет отображаться в диалоговом окне входа. Путь должен начинаться с '/'. Изображения, превышающие размер 100x100 пикселей будут маштабированы до этого размера.
-
siteName {{ optional_inline() }}
-
Название вашего сайта, которое будет отображаться в диалоговом окне входа в формате простого текста (plain text - прим.). Допустимы символы Юникода и пробельные символы, но не разметка.
-
termsOfService {{ optional_inline() }}
-
Должен передаваться по SSL. Так же должен быть предоставлен параметр privacyPolicy (Политика Конфиденциальности).
-
Абсолютный путь или URL адрес до описания условий предоставления услуг веб-сайта. Если этот параметр указан, тогда так же должен быть указан параметр privacyPolicy.  Когда оба эти параметра (termsOfService и privacyPolicy) переданы диалоговое окно входа будет содержать предупреждение для пользователя: "продолжив вход, вы соглашаетесь с политиками использования и конфиденциальности сайта". Так же в диалоговом окне будут размещены ссылки на описания этих политик.
-
- -

Пример

- -
var signinLink = document.getElementById('signin');
-
-if (signinLink) {
-  signinLink.onclick = function(evt) {
-    // Запрашивает подписанную идентификационную заявку от пользователя.
-    navigator.id.request({
-      siteName: 'Мой Сайт',
-      siteLogo: '/logo.png',
-      termsOfService: '/tos.html',
-      privacyPolicy: '/privacy.html',
-      returnTo: '/welcome.html',
-      oncancel: function() { alert('Пользователь отказался идентифицироваться.'); }
-    });
-  };
-}
- -

Технические описания (Спецификации)

- -

Не включена ни в одно техническое описание.

- -

Также смотрите

- - diff --git a/files/ru/web/api/navigator/getdatastores/index.html b/files/ru/web/api/navigator/getdatastores/index.html deleted file mode 100644 index 5c3b1d7fab..0000000000 --- a/files/ru/web/api/navigator/getdatastores/index.html +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: Navigator.getDataStores() -slug: Web/API/Navigator/getDataStores -translation_of: Archive/B2G_OS/API/Navigator/getDataStores ---- -
{{APIRef("Data Store API")}} {{ non-standard_header }} {{ B2GOnlyHeader2('certified') }}
- -

Описание

- -

Метод navigator.getDataStores() предоставляющий доступ к списку Data Store API хранилищ данных доступных на устройстве.

- -

Синтаксис

- -
navigator.getDataStores('contacts').then(function(stores) {
-  // сделать что-либо с массивом хранилищ данных в хранилище.
-});
- -

Параметры

- -
-
storeName
-
Имя хранилища данных которое вы хотите вернуть. Возвращается массив, потому что может быть несколько хранилищ данных с таким же именем.
-
- -

Возврат

- -

Объект {{jsxref("Promise")}} который будет связан с массивом объекта {{domxref("DataStore") }}.

- -

Пример

- -
navigator.getDataStores('contacts').then(function(stores) {
-  stores[0].getLength().then(function(storeLength) {
-    if(storeLength == 0) {
-      for(i = 0; i < contactsInit.length; i++) {
-        addContact(stores[0],contactsInit[i]);
-      };
-    } else {
-      var cursor = stores[0].sync();
-      runNextTask(cursor);
-    }
-  });
-});
- -

Спецификации

- -

{{page("/en-US/docs/Web/API/Data_Store_API","Specifications")}}

- -

Совместимость с браузерами

- -

{{page("/en-US/docs/Web/API/Data_Store_API","Browser_compatibility")}}

- -

Смотрите также

- - diff --git a/files/ru/web/api/navigator/id/index.html b/files/ru/web/api/navigator/id/index.html deleted file mode 100644 index ba98e02cf6..0000000000 --- a/files/ru/web/api/navigator/id/index.html +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: Navigator.id -slug: Web/API/Navigator/id -tags: - - DOM - - Reference - - Référence(2) -translation_of: Archive/Navigator-id ---- -
{{ ApiRef("Persona") }}
- -

Summary

- -

The BrowserID protocol defines a new id property on the {{ domxref ("window.navigator")}} object, through which it exposes the BrowserID API, that is the {{domxref("IdentityManager")}} intreface. This API has gone through several significant revisions. Each generation is listed separately below.

- -

Syntax

- -
var id = navigator.id
- -

 

diff --git a/files/ru/web/api/navigator/mozaudiochannelmanager/index.html b/files/ru/web/api/navigator/mozaudiochannelmanager/index.html deleted file mode 100644 index e8a42e9207..0000000000 --- a/files/ru/web/api/navigator/mozaudiochannelmanager/index.html +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: Navigator.mozAudioChannelManager -slug: Web/API/Navigator/mozAudioChannelManager -translation_of: Archive/B2G_OS/API/Navigator/mozAudioChannelManager ---- -

{{APIRef("Firefox OS")}}{{Non-standard_header}}

- -

Объект navigator.mozAudioChannelManager предоставляющий доступ к интерфейсу  {{domxref("mozAudioChannelManager")}} который используется для  управления аудио каналами вашего устроства Firefox OS включая настройки эффекта громкости канала, когда кнопки регулировки громкости нажимаются внутри конкретного приложения.

- -

Синтаксис

- -
var mgr = window.navigator.mozAudioChannelManager;
- -

Возвращаемое значение

- -

A {{domxref("mozAudioChannelManager")}} object.

- -

Спецификация

- -

{{page("/en-US/docs/Web/API/mozAudioChannelManager","Specifications")}}

- -

Совместимость с браузерами

- -

{{page("/en-US/docs/Web/API/mozAudioChannelManager","Browser_compatibility")}}

- -

Смотрите также

- - diff --git a/files/ru/web/api/navigator/mozcamera/index.html b/files/ru/web/api/navigator/mozcamera/index.html deleted file mode 100644 index 620fba2e0e..0000000000 --- a/files/ru/web/api/navigator/mozcamera/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: Navigator.mozCamera -slug: Web/API/Navigator/mozCamera -translation_of: Archive/B2G_OS/API/Navigator/mozCamera ---- -

{{APIRef("Firefox OS")}}

- -

{{ non-standard_header() }}

- -

{{B2GOnlyHeader2('privileged')}}

- -

Резюме

- -

Возвращает объект {{ domxref("CameraManager") }} который вы можите использовать для доступа к камере доступной на устройстве пользователя.

- -

Синтаксис

- -
var camera = window.navigator.mozCamera;
-
- -

Значение

- -

navigator.mozCamera это объект {{domxref("CameraManager")}} который вы можете использовать для доступа к камере доступной на устройстве.

- -

Спецификация

- -

Не является еще частю какой-либо спецификации; Оно, вероятно, будет заменено на WebRTC, когда оно получит более широкую поддержку на мобильных устройствах.

- -

Права доступа

- -

До Firefox OS 1.4,  API камеры было сертифицированным API, недоступным для сторонних приложений. С Firefox OS 2.0 и далее,  Уровень доступа был понижен до привелигированного, так что теперь доступно для разработчиков сторонних приложений.

- -
"permissions": {
-  "camera": {
-    "description": "Required for accessing cameras on the device."
-  }
-}
- -

Смотрите также

- - diff --git a/files/ru/web/api/navigator/mozl10n/index.html b/files/ru/web/api/navigator/mozl10n/index.html deleted file mode 100644 index 590d3238cd..0000000000 --- a/files/ru/web/api/navigator/mozl10n/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -title: Navigator.mozL10n -slug: Web/API/Navigator/mozL10n -tags: - - API - - Firefox OS - - Localization - - Reference - - Référence(2) - - Локализация - - Справка - - Справка(2) -translation_of: Archive/B2G_OS/API/Navigator/mozL10n ---- -

{{APIRef("Firefox OS")}}{{ non-standard_header() }}

- -

navigator.mozL10n возвращает объект {{ domxref("L10n") }}, который вы можете использовать для доступа к ресурсам локализации и реагировать на события локализации.

- -

Синтаксис

- -
var l10n = navigator.mozL10n;
-
- -

Значение

- -

navigator.mozL10n возвращает объект{{domxref("L10n")}}.

- -

Спецификация

- -

Не имеет спецификации. Заметим, что в будущем этот API будет заменен на L20n.

- -

Смотри также

- - diff --git a/files/ru/web/api/navigator/moznfc/index.html b/files/ru/web/api/navigator/moznfc/index.html deleted file mode 100644 index 8e21ea296b..0000000000 --- a/files/ru/web/api/navigator/moznfc/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: Navigator.mozNfc -slug: Web/API/Navigator/mozNfc -translation_of: Archive/B2G_OS/API/Navigator/mozNfc ---- -

{{APIRef("Firefox OS")}}{{ non-standard_header() }}

- -

Описание

- -

Свойство mozNfc возвращает объект {{ domxref("MozNFC") }} который может быть использован для доступа к функциональности Firefox OS's NFC: Near Field Communication (NFC)  это радио технология малой дальности, используемая для обмена данными и тегами между мобильными устройствами прижатыми друг к другу или находящимися близко друг к другу.

- -

Для получения детальной иформации о NFC, прочтите Использование NFC API и изучите NFC справку.

- -

Синтаксис

- -
var nfc = navigator.mozNfc;
-
- -

Возвращаемое значение

- -

navigator.mozNfc возвращает объект {{ domxref("MozNFC") }}.

- -

Совместимость с браузерами

- -

{{page("/en-US/docs/Web/API/NFC_API","Browser_compatibility")}}

- -

Спецификация

- -

{{page("/en-US/docs/Web/API/NFC_API","Specification")}}

- -

Смотрите также

- - diff --git a/files/ru/web/api/webfm_api/index.html b/files/ru/web/api/webfm_api/index.html deleted file mode 100644 index 11727674af..0000000000 --- a/files/ru/web/api/webfm_api/index.html +++ /dev/null @@ -1,156 +0,0 @@ ---- -title: WebFM API -slug: Web/API/WebFM_API -tags: - - WebFMAPI -translation_of: Archive/B2G_OS/API/WebFM_API ---- -

{{ non-standard_header() }}

- -

{{ B2GOnlyHeader2('installed') }}

- -

Summary

- -

The WebFM API provides access to the device FM radio. It allows turning the radio on/off and switching among radio stations. This API is available through the {{domxref("window.navigator.mozFMRadio","navigator.mozFMRadio")}} property which is a {{domxref("FMRadio")}} object.

- -

Включение и выключение радио

- -

Для того чтобы включить радио используйте метод {{domxref("FMRadio.enable()")}}, для выключения {{domxref("FMRadio.disable()")}}.

- -

Перед включением радио следует проверить доступность антены, так как без нее встроенный радиомодуль не в состоянии поймать какую либо станцию. Информация о доступности антенны находится в свойстве {{domxref("FMRadio.antennaAvailable")}}. Как правило, в мобильных устройствах роль антены выполняют наушники (проводная гарнитура). Каждый раз когда пользователь подсоединяет или отсоединяет проводную гарнитуру WebFM API вызывает событие {{event("antennaavailablechange")}}.

- -

To turn the radio on it's necessary to provide a frequency to listen. That frequency (in MHz) is a number pass to the {{domxref("FMRadio.enable()")}} method.

- -
// Частота радиостанции в MHz
-var frequency = 99.1;
-var radio = navigator.mozFMRadio;
-
-if (radio.antennaAvailable) {
-  radio.enable(frequency);
-} else {
-  alert("Вам необходимо подсоединить гарнитуру");
-}
-
-radio.addEventListener('antennaavailablechange', function () {
-  if (radio.antennaAvailable) {
-    radio.enable(frequency);
-  } else {
-    radio.disable();
-  }
-})
-
- -
-

Note: The audio is output through the normal audio channel available on the device.

-
- -

Switching among frequency

- -

Switching from on frequency to another can be done manually or automatically. In any case, the current radio frequency listened to by the built-in radio is always available with the {{domxref("FMRadio.frequency")}} property. That property is number representing the frequency in MHz.

- -

Manual switch

- -

The {{domxref("FMRadio.setFrequency()")}} method must be used to set a new frequency to listen. However, there are some constraints about the value that can be set. The method will return a {{domxref("DOMRequest")}} object to handle the success or error of the method call. The frequency must fulfill the following requirements:

- - - -
var change = radio.setFrequency(frequency);
-
-change.onerror = function () {
-  var min = radio.frequencyLowerBound;
-  var max = radio.frequencyUpperBound;
-  console.warn('The frequency must be within the range [' + min + ',' + max + ']');
-}
-
-change.onsuccess = function () {
-  console.log('The frequency has been set to ' + radio.frequency);
-}
-
- -

Автоматический поиск

- -

WebFM API предоставляет удобный способ автоматического поиска радиоканалов. Для восходящего поиска используйте метод {{domxref("FMRadio.seekUp()")}}, а для низходящего, метод {{domxref("FMRadio.seekDown()")}}.

- -

The WebFM API also provides a convinient way to seek radio channels automatically. To that end, we can use the {{domxref("FMRadio.seekUp()")}} (to find a radio channel on a higher frequency than the current one) and {{domxref("FMRadio.seekDown()")}} method. The former is used to find a radio channel with a higher frequency than the current one, and the latter for a radio channel with a lower frequency. Those methods return a {{domxref("DOMRequest")}} object to handle the success or error of each method call.

- -

Both methods will circle back to higher or lower frequency once they reach the {{domxref("FMRadio.frequencyLowerBound","frequencyLowerBound")}} or {{domxref("FMRadio.frequencyUpperBound","frequencyUpperBound")}} values. When they find a new radio channel, they change the current frequency and fire a {{event("frequencychange")}} event.

- -

It's not possible to seek twice at the same time (e.g. it's not possible to seek up and down at the same time), trying to do so, will result in an error. But if necessary it's possible to stop seeking by calling the {{domxref("FMRadio.cancelSeek()")}} method. This method will also return a {{domxref("DOMRequest")}} object.

- -
var radio   = navigator.mozFMRadio;
-var seeking = false;
-var UP      = document.querySelector("button.up");
-var DOWN    = document.querySelector("button.down");
-
-// When the frequency change, the seek
-// functions automatically stop to seek.
-radio.onfrequencychange = function () {
-  seeking = false;
-}
-
-function seek(direction) {
-  var cancel, search;
-
-  // If the radio is already seeking
-  // we will cancel the current search.
-  if (seeking) {
-    var cancel = radio.cancelSeek();
-    cancel.onsuccess = function () {
-      seeking = false;
-
-      // Once the radio no longer seek,
-      // we can try to seek as expected
-      seek(direction);
-    }
-
-  // Let's seek up
-  } else if (direction === 'up') {
-    // Just to be sure that the radio is turned on
-    if (!radio.enabled) {
-      radio.enable(radio.frequencyLowerBound);
-    }
-    search = radio.seekUp();
-
-  // Let's seek up
-  } else if (direction === 'down' {
-    // Just to be sure that the radio is turned on
-    if (!radio.enabled) {
-      radio.enable(radio.frequencyUpperBound);
-    }
-    search = radio.seekDown();
-  }
-
-  if (search) {
-    search.onsuccess = function () {
-      // Ok, we are seeking now.
-      seeking = true;
-    };
-    search.onerror = function () {
-      // Something goes wrong... ok, let's try again.
-      seek(direction);
-    }
-  }
-}
-
-UP.addEventListener('click', function () {
-  seek('up');
-});
-
-DOWN.addEventListener('click', function () {
-  seek('down');
-});
-
- -

Specification

- -

Not part of any specification.

- -

See also

- - -- cgit v1.2.3-54-g00ecf