Нужна помощь по подключению оборудования GlobalCahe (WiFi to IR: WF2IR)
Добавлено: Чт окт 29, 2020 7:50 pm
AVB
Здравствуйте, форумчане!
Достался мне вот такой девайс GlobalCahe (WiFi to IR: WF2IR), для управления АV, ТВ по ИК каналу.
Подскажите, как мне отправить на него ИК команду из MJD по нажатию на созданную кнопку в меню.
Оборудование имеет IP адрес и порт по которому взаимодействует.
Формат команды для отправки ИК сигнала, судя по спецификации API iTach (можно посмотреть по ссылке
https://yadi.sk/d/LgJHdLiehswrNg):
sendir, 1: 2,2445,40000,1,1,4,5,4,5,8,9,4,5,8,9,8,9
Помогите пожалуйста!
Нужна помощь по подключению оборудования GlobalCahe (WiFi to IR: WF2IR)
Добавлено: Вт ноя 03, 2020 9:35 am
AVB
Здравствуйте!
Вот нашел еще информацию.
Вот так отправка команд реализовано в iRidium (источник https:()//dev.iridi.com/Global_Cache/ru):
Цитата:
ИК команды можно отправить через JavaScript. Используйте для отправки метод .Set и .Send из Drivers API:
var device = IR.GetDevice("Global Cache");
var CommandString = 'sendir,1:1,1,36127,1,1,96,31,17,16,16,16,16,32,16,32,49,32,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,17,16,16,16,16,16,32,16,16,16,16,16,16,16,16,32,32,16,16,16,16,16,16,16,16,32,17,16,16,16,16,16,32,16,4624';
var CommandName = "COMMAND";
IR.AddListener(IR.EVENT_ONLINE , device, function()
{
device.Set(CommandName, ""); // .Set command by name
device.Send([CommandString,0x0D]); // .Send command as string
});
Оформление ИК команды для метода Send подробно описано в iTach API.
P.S.
Помогите, адаптировать данное решение к MJD!
Re: Нужна помощь по подключению оборудования GlobalCahe (WiFi to IR: WF2IR)
Добавлено: Вт ноя 03, 2020 10:47 am
skysilver
AVB писал(а): ↑Вт ноя 03, 2020 9:35 am
Вот так отправка команд реализовано в iRidium (источник https:()//dev.iridi.com/Global_Cache/ru):
Это лишь верхний уровень. На нижнем полноценная JS-библиотека, которая и реализует весь протокол обмена.
Парой-тройкой строчек на PHP интеграцию не сделать. Нужно писать полноценную PHP-библиотеку, которая реализует протокол работы с WF2IR.
Re: Нужна помощь по подключению оборудования GlobalCahe (WiFi to IR: WF2IR)
Добавлено: Вт ноя 03, 2020 11:34 am
tarasfrompir
skysilver писал(а): ↑Вт ноя 03, 2020 10:47 am
AVB писал(а): ↑Вт ноя 03, 2020 9:35 am
Вот так отправка команд реализовано в iRidium (источник https:()//dev.iridi.com/Global_Cache/ru):
Это лишь верхний уровень. На нижнем полноценная JS-библиотека, которая и реализует весь протокол обмена.
Парой-тройкой строчек на PHP интеграцию не сделать. Нужно писать полноценную PHP-библиотеку, которая реализует протокол работы с WF2IR.
Так в принципе если знаете что отправлять то через сокет попробуйте отправку. Подсматривал на джава - тут -
https://github.com/estbeetoo/globalcache/
Чтото типа этого
Код: Выделить всё
// Default command
function sendcommand($command, $parameter) {
$this->reset_properties();
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if($socket === false) {
$this->success = FALSE;
$this->message = socket_strerror(socket_last_error());
$this->message = iconv('CP1251', 'UTF-8', $this->message);
} else {
$result = @socket_connect($socket, $IPDEVICE, 4998);
if($result === false) {
$this->success = FALSE;
$this->message = socket_strerror(socket_last_error($socket));
$this->message = iconv('CP1251', 'UTF-8', $this->message);
} else {
$packet = $command.(strlen($parameter)?':'.$parameter:'');
socket_write($socket, $packet, strlen($packet));
$this->success = TRUE;
$this->message = 'OK';
}
socket_close($socket);
}
return $this->success;
}