Как реализовать отправку SMS или email оповещений при выполнении конкретного процесса в базе данных mysql?
Использую базу данных mysql. Имеется две таблицы с идентичными столбцами, во вторую дублируются данные удовлетворяющие условию прописанному в триггере. Как правильно и какими средствами можно реализовать отправку оповещений, содержащих информацию из строк второй таблицы по электронной почте или смс? Более простым языком: в таблицу 2 добавилась запись, нужно отправить письмо или сообщение, что в таблицу 2 записана новая запись и данные из добавленной строки (дата, время, номер телефона, страна, оператор). Приветствуются ссылки, примеры кода. Использую Ubuntu 16.04, phpmyadmin, mysql. Заранее премного благодарен за любую помощь.
Ответы (1 шт):
Делай новый триггер, который дернет sys_exec
DELIMITER $$
CREATE TRIGGER `test_after_insert` AFTER INSERT ON `trig_test`
FOR EACH ROW BEGIN
SET @exec_var = sys_exec(CONCAT('/usr/local/bin/send_sms +792312345678 "', NEW.id, NEW.date, '"'));
END;
$$
DELIMITER ;
Для проектов с упором на надежность скрипт отправки должен поставить сообщения в очередь на отправку, а другой скрипт их оттуда выгребает.
Очередь реализуется через fifo, socket или через папку с файлами через inotify. Для чего-то крупного через брокер kafka/rabbit.