Небольшая колекция винила

a-ha ‎– Headlines And Deadlines: The Hits Of A-Ha - 1 a-ha ‎– Headlines And Deadlines: The Hits Of A-Ha - 1  a-ha ‎– Headlines And Deadlines: The Hits Of A-Ha - 2 a-ha ‎– Headlines And Deadlines: The Hits Of A-Ha - 2  Anna Rustikano* ‎– Anna Rustikano Anna Rustikano* ‎– Anna Rustikano    Arabesque ‎– Ансамбль Арабеска Arabesque ‎– Ансамбль Арабеска Baden Baden ‎– You Are The One Baden Baden ‎– You Are The One   Bananarama ‎– Pop Life Bananarama ‎– Pop Life Bappi Lahiri ‎– Disco Dancer Bappi Lahiri ‎– Disco Dancer  Bee Gees ‎– Вокально • Инструментальный Ансамбль Би Джиз Bee Gees ‎– Вокально • Инструментальный Ансамбль Би Джиз     Benkő László* ‎– Lexikon 2 Benkő László* ‎– Lexikon 2 Bon Jovi ‎– New Jersey Bon Jovi ‎– New Jersey   Boney M. ‎– Ансамбль Бони М. Boney M. ‎– Ансамбль Бони М.  Boycott ‎– Группа Boycott Boycott ‎– Группа Boycott Bryan Adams ‎– Into The Fire Bryan Adams ‎– Into The Fire  Bryan Adams ‎– Reckless Bryan Adams ‎– Reckless C.C. Catch ‎– Diamonds - Her Greatest Hits C.C. Catch ‎– Diamonds - Her Greatest Hits    C.C. Catch ‎– Like A Hurricane C.C. Catch ‎– Like A Hurricane   Car-Man ‎– Кар-Мэн Car-Man ‎– Кар-Мэн Commodores ‎– Вместе Commodores ‎– Вместе  Creedence Clearwater Revival ‎– Traveling Band Creedence Clearwater Revival ‎– Traveling Band Dave Brubeck, Dave Brubeck Quartet* ‎– In Moscow Dave Brubeck, Dave Brubeck Quartet* ‎– In Moscow   David Hasselhoff ‎– Lovin' Feelings David Hasselhoff ‎– Lovin' Feelings    Deep Purple ‎– Deep Purple In Rock Deep Purple ‎– Deep Purple In Rock Deep Purple ‎– The House Of Blue Light Deep Purple ‎– The House Of Blue Light  Deep Purple ‎– Дом Голубого Света Deep Purple ‎– Дом Голубого Света     Deep Purple ‎– Несущий Бурю Deep Purple ‎– Несущий Бурю Depeche Mode ‎– Violator Depeche Mode ‎– Violator Diana Ross ‎– Diana Ross Diana Ross ‎– Diana Ross  Dire Sraits - Brothers in Arms Dire Sraits - Brothers in Arms      Dire Straits ‎– On Every Street Dire Straits ‎– On Every Street  Doors* ‎– Light My Fire = Зажги Во Мне Огонь Doors* ‎– Light My Fire = Зажги Во Мне Огонь  Ella Fitzgerald ‎– Basin Street Blues Ella Fitzgerald ‎– Basin Street Blues  Ella Fitzgerald ‎– Эллa Фитцджepaльд (Ella Fitzgerald) Ella Fitzgerald ‎– Эллa Фитцджepaльд (Ella Fitzgerald)  Elton John ‎– Your Song Elton John ‎– Your Song   Elvis Presley ‎– That's All Right = Все В Порядке Elvis Presley ‎– That's All Right = Все В Порядке   Éva* ‎– Midnight Éva* ‎– Midnight Frida ‎– Somethings' Going On Frida ‎– Somethings' Going On   Genesis ‎– We Can't Dance Genesis ‎– We Can't Dance  George Michael ‎– George Michael 1 George Michael ‎– George Michael 1   Imagination ‎– Imagination Imagination ‎– Imagination   Instant Funk ‎– Instant Funk Instant Funk ‎– Instant Funk Janet Jackson ‎– Control Janet Jackson ‎– Control  Joe Dassin ‎– Поет Джо Дассен Joe Dassin ‎– Поет Джо Дассен    Jon Bon Jovi ‎– Blaze Of Glory Jon Bon Jovi ‎– Blaze Of Glory  Katz ‎– Дуэт Katz Katz ‎– Дуэт Katz   Lawrence Hilton Jacobs ‎– Поёт Лоренс Хилтон Джекобс Lawrence Hilton Jacobs ‎– Поёт Лоренс Хилтон Джекобс  Led Zeppelin ‎– Stairway To Heaven Led Zeppelin ‎– Stairway To Heaven  Leo Sayer ‎– Поет Лео Сейер Leo Sayer ‎– Поет Лео Сейер   Lionel Richie ‎– Dancing On The Ceiling Lionel Richie ‎– Dancing On The Ceiling  Lisa Nilsson ‎– Lean On Love Lisa Nilsson ‎– Lean On Love Louis Armstrong ‎– Louis Armstrong In Prague Louis Armstrong ‎– Louis Armstrong In Prague Madonna ‎– Like A Virgin Madonna ‎– Like A Virgin
« 1 из 5 »

Программа для управления компьютером с помощью RESTfull

Моему умному дому понадобилось управление компьютером. Немного поковыряв Delphi, написал небольшую программку, через которую с помощью обычных GET запросов можно отправлять горячие клавиши удаленному компьютеру, запускать процессы (команды для запуска и сами процессы настраиваются в программе), получать информацию о всех запущенных процессах, выключать\перезагружать компьютер.

Программа запускает http сервер, висит в трее и принимает GET запросы:

Например:
http://192.168.1.1:8580/?cmd=foobar
http://192.168.1.1:8580/?cmd=shutdown
http://192.168.1.1:8580/?cmd=process
http://192.168.1.1:8580/?chk=foobar2000.exe (начиная с версии 2.6 — http://192.168.1.1:8580/?chk=foobar2000)
http://192.168.1.1:8580/?key=CTRL+ALT+DOWN

Читать далее Программа для управления компьютером с помощью RESTfull

Парсим курсы валют с сайта ЦБ РФ

var url = 'http://www.cbr.ru/scripts/XML_daily.asp';
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 (!error && response.statusCode == 200) {
          //  log('Код ответа от сервера'+response.statusCode);
           // log('Ответ от ЦБ: '+body);
        // Парсим данные
         var Valute = body.match(/<CharCode>(.*)<\/CharCode>/g);
         var Nominal = body.match(/<Nominal>(.*)<\/Nominal>/g);
         var Name = body.match(/<Name>(.*)<\/Name>/g);
         var Value = body.match(/<Value>(.*)<\/Value>/g);
         var result = [];
            for(var i = 0; i < Valute.length-1; i++) {
                result.push({
                    Valute: Valute[i].replace(/<CharCode>/g, "").replace(/<\/CharCode>/g, ""),
                    Nominal: Nominal[i].replace(/<Nominal>/g, "").replace(/<\/Nominal>/g, ""),
                    Name: Name[i].replace(/<Name>/g, "").replace(/<\/Name>/g, ""),
                    Value: Value[i].replace(/<Value>/g, "").replace(/[,]+/g, '.').replace(/<\/Value>/g, "")
                });
                //Course = parseFloat(result[i].Value)/parseFloat(result[i].Nominal);
                createState('Valuta.'+Valute[i].replace(/<CharCode>/g, "").replace(/<\/CharCode>/g, ""), '');
                setState ('Valuta.'+Valute[i].replace(/<CharCode>/g, "").replace(/<\/CharCode>/g, ""), (parseFloat(result[i].Value)/parseFloat(result[i].Nominal)));
                
            }
        }
    });
}

 

PS

Обновленная версия скрипта:

<pre class="codecontent">var url = 'https://www.cbr-xml-daily.ru/daily_json.js';
var request = require('request');

if(getState("javascript.0.Valuta.USD").val === null || !getState("javascript.0.Valuta.USD").val){
    log('Нет состояния javascript.0.Valuta.USD');
    parsevalute();
} 

schedule("0 7,16,20 * * 1-5", function () {//"0 * * * *"
    parsevalute();
});
 parsevalute();
function parsevalute(){
    url = url;
    log('Идем на сайт ЦБ - '+url);
    var options = {
        url: url
        
    }; 
    request(options, function (error, response, body) {
        log('Получен ответ от ЦБ (' + response.statusCode + ')');
        if (!error && response.statusCode == 200) {
            var obj;
            try {
                obj = JSON.parse(body);
                if (!obj.Valute.USD.Value || !obj.Valute.EUR.Value) {
                     throw new SyntaxError("Данные некорректны");
                } else {
                    //log('Ответ от ЦБ: ' + obj.Valute);
                    obj = obj.Valute;
                    for (var key in obj) {
                        if(obj.hasOwnProperty(key)){
                            var course = parseFloat(obj[key].Value)/parseFloat(obj[key].Nominal);
                            createState('Valuta.' + key, 0, {name: obj[key].Name});
                            setState ('Valuta.' + key, course);
                        }
                    }
                    log('Курсы валют обновлены');
                }
            } catch (err) {
                log("Ошибка парсинга! - " + JSON.stringify(err));
                result = null;
            }
        }
    });
}</pre>

Ethernet shield W5100 для Arduino, нестабильный линк

Для проекта умного дома используется несколько плат Arduino в связке  c Ethernet Shield W5100. (Все платы заказывались из Китая).Подключены были через комутатор, пробовал менять и IP и MAC, менял патч корды, перепроверил весь код — ничего не помогало (некоторые клиенты работали норм).
Причем если подключить Arduino напрямую в роутер то они выходили на связь.

Веселье началось когда поставил новый свитч TP-LINK. Часть клиентов не подключалось вообще. Arduino не пинговались.
Бился почти 2 дня. Уже думал менять коммутатор.
В итоге я нашел ошибку, она оказалась в ethernet шилдах W5100. Читать далее Ethernet shield W5100 для Arduino, нестабильный линк

Персональный блог