• Что такое webhook?

    Negezor
    @Negezor
    Senior Shaurma Developer
    Webhook — механизм оповещения системы о событиях.

    Допустим есть определённый сервис который должен оповещать о событиях когда они происходят.
    Как вариант постоянно запрашивать новые данные на сервере, минус будет скорее в скорости получения данных если на сервере например стоит задержка на получения новых оповещений.
    А вот webhook исправляет этот недочёт, когда происходит событие он запрашивает адрес сайта с параметрами, например example.com/webhook/notification и передаёт в теле POST запроса JSON (зачастую) и там будут свежие данные.

    Простой пример можно посмотреть: создание бота для telegram на webhooks.
    Ответ написан
    4 комментария
  • После обновления Windows 10 не работает Apache, как быть?

    @uaLion777
    Автор, крутое решение ))), всего навсего нужно было добавить в "переменные среды" путь к php
    тип так D:/www/bin/php/ ну т.е. тот путь который у вас )) и потом конечно перезапустить сервер!
    Ответ написан
    5 комментариев
  • В каких случая и зачем нужно использовать трейты ?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Трейты нужны для уменьшения дублирования кода. Причем выносить в них стоит только тупой код, который не имеет смысла покрывать тестами. Все что делает хоть что нибудь умное в трейте хранить не стоит.

    Пример когда трейты хороши - паттерн композиция.

    interface A {
        function foo();
    }
    
    interface B {
        function bar();
    }
    
    trait AImpl {
        function foo() {
            return $this->a->foo();
        }
    }
    
    trait BImpl {
        function bar() {
            return $this->b->bar();
        }
    }
    
    class AB implements A, B {
        private $a;
        private $b;
    
        use AImpl;
        use BImpl;
    
        public function __construct(A $a, B $b) {
            $this->a = $a;
            $this->b = $b;
        }
    }
    Ответ написан
    4 комментария
  • Как заставить бота автоматически отправлять сообщения в заданное время?

    @nllm
    Самый простой вариант.
    В базу писать дату, время, id пользователя и текст сообщения. Для каждого сообщения существует статус: новое, отправка, отправлено.

    С помощью крона запускать скрипт каждую минуту (или другой период времени). При запуске смотреть каким пользователям уже можно/пора отправлять сообщения.
    Если уже пора, то делаем отметку в базе "идет отправка" и начинаем отправлять сообщения.
    После отправки пишем в базу "отправлено".
    Ответ написан
    4 комментария