我被要求在mysql上的表中更改数据时自动发送短信(短信)。我已多次搜索并附带触发器..
我想知道mysql将如何发送短信(sms)..是使用gammu还是somethingelse?
无论如何,谢谢你的回复..
答案 0 :(得分:0)
MySQL没有任何内置功能来发送短信。
当您的搜索显示时,我们可以使用TRIGGER在从表中插入,更新或删除行时执行操作。触发器可能执行的操作之一是将行插入另一个表。
单独的组件(不是MySQL数据库)可以连接到数据库并定期轮询该其他表,并发送短信。
答案 1 :(得分:0)
你在这里有几个选择,没有一个很棒。
一种是用某种应用程序语言(也许是php或java)编写程序来轮询dbms以查找表中的更改。然后它可以发送必要的消息。您可以通过在表的每一行中添加时间更新的时间戳来完成此操作。然后,您的轮询将查询自上次轮询运行以来更改的行。例如,如果您每六秒运行一次此查询,则这些SMS消息的过时时间不会超过十分之一。这可能适用于大多数无线网络短信。
另一种方法是向MySQL添加用户定义的函数,然后从触发器调用该函数。例如,这个消息将消息发送到消息排队系统,如RabbitMQ或ActiveMQ。 https://github.com/mysqludf/lib_mysqludf_stomp
然后,您可以编写一个队列消费者应用程序来发送您的SMS消息。这种方法具有低延迟并且可以很好地扩展。但是,它需要扩展MySQL,并绑定一个非常重要的排队系统。
第三种方法是获取更新表格的软件以发送短信。