• "nginx: [warn] conflicting server name" - как исправить?

    @rinokonli
    у вас дубли - удалите дубли server_name
    Ответ написан
    1 комментарий
  • У кого имеется текст telegram скрипта из zabbix 5?

    akelsey
    @akelsey
    var Telegram = {
        token: null,
        to: null,
        message: null,
        proxy: null,
        parse_mode: null,
    
        sendMessage: function() {
            var params = {
                chat_id: Telegram.to,
                text: Telegram.message,
                disable_web_page_preview: true,
                disable_notification: false
            },
            data,
            response,
            request = new CurlHttpRequest(),
            url = 'https://api.telegram.org/bot' + Telegram.token + '/sendMessage';
    
            if (Telegram.parse_mode !== null) {
                params['parse_mode'] = Telegram.parse_mode;
            }
    
            if (Telegram.proxy) {
                request.SetProxy(Telegram.proxy);
            }
    
            request.AddHeader('Content-Type: application/json');
            data = JSON.stringify(params);
    
            // Remove replace() function if you want to see the exposed token in the log file.
            Zabbix.Log(4, '[Telegram Webhook] URL: ' + url.replace(Telegram.token, '<TOKEN>'));
            Zabbix.Log(4, '[Telegram Webhook] params: ' + data);
            response = request.Post(url, data);
            Zabbix.Log(4, '[Telegram Webhook] HTTP code: ' + request.Status());
    
            try {
                response = JSON.parse(response);
            }
            catch (error) {
                response = null;
            }
    
            if (request.Status() !== 200 || typeof response.ok !== 'boolean' || response.ok !== true) {
                if (typeof response.description === 'string') {
                    throw response.description;
                }
                else {
                    throw 'Unknown error. Check debug log for more information.'
                }
            }
        }
    }
    
    try {
        var params = JSON.parse(value);
    
        if (typeof params.Token === 'undefined') {
            throw 'Incorrect value is given for parameter "Token": parameter is missing';
        }
    
        Telegram.token = params.Token;
    
        if (params.HTTPProxy) {
            Telegram.proxy = params.HTTPProxy;
        } 
    
        if (['Markdown', 'HTML', 'MarkdownV2'].indexOf(params.ParseMode) !== -1) {
            Telegram.parse_mode = params.ParseMode;
        }
    
        Telegram.to = params.To;
        Telegram.message = params.Subject + '\n' + params.Message;
        Telegram.sendMessage();
    
        return 'OK';
    }
    catch (error) {
        Zabbix.Log(4, '[Telegram Webhook] notification failed: ' + error);
        throw 'Sending failed: ' + error + '.';
    }
    Ответ написан
    2 комментария
  • Можно ли установить "Алису" на linux через wine?

    @pfg21
    ex-турист
    если не заморачивать на линухе, то на малинку поставить андроид прошивку, а уже на нее штатно поставить приложение Алиса.
    если сильно нужон именно линукс, можно поставить алису внутри андроид-плеера.
    потеря производительности в обоих случаях будет минимальна.
    Ответ написан
    1 комментарий
  • На что заменить Microserver?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Надеюсь не сочтут за рекламу :)

    Недавно долго мучился со схожей задачей - дома тоже трется "сервер" сборки "На коленках Ltd.". Со временем на него много чего повисло и однажды я задумался - правильно, купить нормальный полноценный сервер. Что тут можно сказать:
    - полно контор, торгующих б/у серверами
    - практически в каждой есть онлайн-конфигуратор
    - десктопных корпусов - оочень мало и стоимость выйдет не совсем бюджетная

    Поскольку стоечный формат меня не ограничивал, я некоторое время рыл тырнет и в итоге остановился на ASUS RS500E6. Платформа с двумя ксеонами E5620, 24G RAM (а всего до 96), IPMI в одноюнитовом корпусе с четырьмя посадочными местами под винты обошлась в 31 тыр. Брал здесь

    UPD: не то, чтобы он совсем бесшумный, но достаточно тихий, самолетный вой его шесть кулеров издают только при старте, когда заводятся и в биосе есть опция управления кулерами

    Все, конечно зависит от бюджета. Мне хотелось соблюсти требование "цена-эффективность". IMHO, удалось :)

    Вообще, найти сервер в десктопном корпусе - не то, чтобы нереально, но достаточно сложно и заметно дороже - ну, конечно для серверов начального уровня, там где цены шарашат за сотню - уже все равно :)
    Ответ написан
    2 комментария
  • Есть ли фриланс ближе к 30?

    viktorvsk
    @viktorvsk
    Не учите технологии. Учитесь решать задачи. Особенно с исходными данными и запасом прочности.
    Мне кажется, есть 2 пути успеха в айти сегодня:
    1. Рвение к чему-то конкретному (например, нейронным сетям, компьютерному зрению, машинному обучению, электронной коммерции, визуализации ... ) - тут, судя по последнему абзацу, мимо кассы
    2. Не знание технологий или даже стеков, а умение решать практические задачи. Вот тут очень похоже, что оно.

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

    Посмотрите, какими "модными" средствами это решается и примите участие. Начните с малого. В реальной и интересной задаче будет куда проще влиться во все множество технологий, что сейчас используются.

    На выходе, даже если не сделаете новый супер-хит, то:
    1. Познакомитесь со всеми технологиями и приемами (где-то больше, где-то меньше)
    2. Будет опыт в реальном технологическом процессе

    P.S. Если все же интересует именно только екоммерс и интернет-магазины (не самая привлекательная часть айти, на самом деле), то не рвитесь сразу верстать шаблоны под битрикс. Найдите важные задачи для бизнеса, которые не решаются стандартными методами (их уймы) и попробуйте решить одну из них.
    Ответ написан
    4 комментария