В настоящее время процедура установки ioBroker значительно упрощена.

Инструкция по установке ioBroker на компьютер с операционной системой, основанной на Linux. Подготовительные операции.Обновление системы, установка Node.js и недостающих пакетов. 1. Обновим список пакетов и систему sudo apt update sudo apt upgrade 2. Проверим версии установленных пакетов Node.js и npm node -v nodejs -v npm -v 3. Если хотя бы одна из команд не показывает номер… Читать далее »

Скрипт для отправки SMS

На свой номер 5 сообщений в день бесплатно, на другие номера тарифы от ~20 коп. до ~2 руб., что весьма бюджетно Набросал скриптик для отправки SMS через https://sms.ru/ : var request = require(‘request’); var my_API_ID = ‘ВАШ_ID_ПОЛУЧЕННЫЙ_НА_САЙТЕ_http://smart2promo.sms.ru/’; createState(‘SMS.status’,0); createState(‘SMS.status_code’,0); createState(‘SMS.numbers’,0); createState(‘SMS.message’,0); createState(‘SMS.balance’,0); function sendSMS() { // log(‘Link: ‘ + link); request(‘https://sms.ru/sms/send?partner_id=235959&api_id=’ + my_API_ID + ‘&to=’ +… Читать далее »

Выбор одноплатного микрокомпьютера

Попытка сравнить и выбрать оптимальный одноплатник по нескольким критериям: DRAM SoC H3 нативно поддерживает до 2Гб DRAM. Сейчас продаются платы с 512Мб, 1Гб и 2Гб памяти на борту. Мне кажется, не стоит брать микрокомпьютер с 512Мб, 1Гб — оптимально для большинства решений, 2Гб — очень хороший запас, но оно и дороже. Необходимо также понимать, что… Читать далее »

Курсы валют

Скрипт, забирающий курс валют центробанка: var url = ‘http://www.cbr.ru/scripts/XML_daily.asp?date_req’; var request = require(‘request’); schedule(«10 17 * * *», function () { parsevalute(); }); function parsevalute(){ url = url; // log(‘Идем на сайт ЦБ — ‘+url); var options = { url: url, }; // Отправка данных методом POST. request(options, function (error, response, body, callback) { if… Читать далее »

Прогноз погоды в Самаре на завтра

Скрипт, забирающий прогноз погоды в Самаре на завтра с белорусского сайта: createState(‘Climate.Weather.Tomorrow’,»); var request = require(‘request’); getForecast(); function getForecast() { request (‘http://pogoda.tut.by/pda/city/samara/’, function (error, response, body) { // Получаем ответ if (!error && response.statusCode == 200) { // Парсим данные var desc = body.match(/<b>Завтра:<\/b><br \/>\s+(.+?)<br \/>/); //log(‘desc = ‘ +JSON.stringify(desc)); // Если данные существуют, то обрабатываем… Читать далее »

Погода в Самаре (текстом)

Скрипт, забирающий погоду в Самаре с sinoptik.com.ru: createState(‘Climate.Weather.TodayText’,»); var request = require(‘request’); getForecast(); function getForecast() { request (‘https://sinoptik.com.ru/%D0%BF%D0%BE%D0%B3%D0%BE%D0%B4%D0%B0-%D1%81%D0%B0%D0%BC%D0%B0%D1%80%D0%B0-100499099’, function (error, response, body) { // Получаем ответ if (!error && response.statusCode == 200) { // Парсим данные var desc = body.match(/Прогноз погоды в Самаре на сегодня<\/span>: (.+?)<\/div>/); //log(‘desc = ‘ +JSON.stringify(desc)); // Если данные существуют, то… Читать далее »

Погода в Самаре

Скрипт, забирающий погоду в Самаре с белорусского сайта: createState(‘Climate.Weather.Today’,»); var request = require(‘request’); getForecast(); function getForecast() { request (‘http://pogoda.tut.by/pda/city/samara/’, function (error, response, body) { // Получаем ответ if (!error && response.statusCode == 200) { // Парсим данные var desc = body.match(/<b>Сегодня:<\/b><br \/>\s+(.+?)<br \/>/); //log(‘desc = ‘ +JSON.stringify(desc)); // Если данные существуют, то обрабатываем if (desc) {… Читать далее »

Состояние сервера

Скрипт, информирующий о состоянии сервера ioBroker: createState(‘Server.FreeMEM’,»); createState(‘Server.TEMP’,»); createState(‘Server.CPUfreq’,»); createState(‘Server.CPUloadAVG’,»); createState(‘Server.UPTIME’,»); //Будет исполняться каждую минуту: on(«system.host.orangepiplus2e.freemem», function (obj) { setState (‘Server.FreeMEM’, (getState(‘system.host.orangepiplus2e.freemem’).val) ); }); schedule(«* * * * *», function () { //log(«Будет исполняться каждую минуту!»); exec(‘cat /sys/class/thermal/thermal_zone0/temp’, function (error, stdout, stderr) { setState (‘Server.TEMP’, stdout ); }); exec(‘cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq’, function (error, stdout, stderr) {… Читать далее »

Резервная копия ioBroker

Делаем по расписанию резервную копию ioBroker, архивируем и сохраняем в облаке Яндекс.Диск Регистрируемся на Yandex, подключаем Яндекс.Диск Устанавливаем davfs2: apt install davfs2 Настраиваем систему для автоматического монтирования облака при каждой загрузке и без ввода пароля: nano /etc/davfs2/secrets Дописываем логин/пароль сервиса Яндекс.Диск: /mnt/yandex.disk login password Создаем директорию, куда будет монтироваться облако: mkdir /mnt/yandex.disk Настраиваем /etc/fstab: nano /etc/fstab Дописываем точку монтирования:… Читать далее »