OpenComputers/Сетевая плата

**Сетевая плата** — позволяет удаленным компьютерам, соединённым в одну сеть другими блоками (например — кабелем), обмениваться друг с другом сообщениями.

## Крафт

Ингредиенты | Процесс |
---|---|

Кабель + Микрочип (Уровень 1) + Базовая карта |


## Как ингредиент при крафте

Ингредиенты | Процесс | Результат |
---|---|---|

Кабель +Сетевая плата +Железный слиток + Печатная плата |
Коммутатор
| |

Кабель +Сетевая плата +Беспроводная сетевая плата + Железный слиток + Печатная плата |
Точка доступа
|


## API

Интерфейс беспроводных сетевых плат аналогичен, кроме того, что они могут посылать беспроводные пакеты с заданной мощностью.==
Название компонента: `modem`

.

`isWireless(): boolean`


Возвращает `true`

если карта способна посылать беспроводные сообщения и `false`

— иначе.

`maxPacketSize(): number`


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

`isOpen(port: number): boolean`


Определяет, слушается ли заданный порт.

`open(port: number): boolean`


Открывает заданный порт для прослушивания. Возвращает `true`

в случае успеха, или `false`

если порт уже был открыт.

`close([port: number]): boolean`


Закрывает определённый порт (либо все порты, если параметр был не задан). Возвращает `true`

в случае успеха.

`send(address: string, port: number[, ...]): boolean`


Посылает пакет по заданному адресу. Возвращает `true`

в случае успеха. Это НЕ означает что пакет был принят. Только то, что он был отослан.

Все дополнительные аргументы функции будут посланы как данные пакета. Это могут быть переменные базового типа: `nil`

, `boolean`

, `number`

и `string`

поддерживаются, таблицы и функции — нет. (О сериализации таблиц см. Serialization API.)

`broadcast(port: number, ...): boolean`


Посылает сообщение в режиме «вещания». Пакет будет получен всеми сетевыми платами в радиусе досягаемости. Возвращает `true`

, если сообщение было послано.

Дополнительные аргументы будут посланы как данные пакета. См. `send`

.

*Примечание*: пакет в режиме «вещания» *не будет* получен модемом, который производит его посылку.

`setWakeMessage(message:string[, fuzzy:boolean]): string`


Устанавливает ключ для пробуждения оборудования, в котором данная карта стоит. То есть заставляет включиться. Например, если в робота установить беспроводную плату и передать ей параметры `setWakeMessage("Start")`

, а затем выключить его, то как только будет передано по сети сообщение `"Start"`

, робот моментально запустится. Второй параметр в функции позволяет принимать нечеткие сигналы, например сигнал пробуждения установлен `setWakeMessage("PowerOnt", true)`

, но команда на активацию пройдет даже если будет передано `"PowerOnt", "poweron", "Rippoweron"`

. Сообщение может быть передано на любой порт!

`getWakeMessage():string, boolean`


Возвращает ключ пробуждения оборудования и информацию включен ли точный режим опознания ключа.

`getStrength(): number`


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

*Только для беспроводных плат!*

`setStrength(value: number): number`


Устанавливает силу сигнала. Если значение установлено больше 0, при посылке пакета, будет генерироваться беспроводное сообщение. Чем больше значение, тем дальше будет послан сигнал, и тем больше энергии потребует его отправление.

*Только для беспроводных плат!*