我想将短信插入Drupal。
SMS网关配置为将收到的消息转发到我们服务器上的PHP脚本,此时它只是将消息和电话号码插入数据库。
例如,邮件会转发到http://www.example.com/smsupdate.php?phone=123445&text=message_content
我如何将这些数据导入Drupal?
答案 0 :(得分:2)
使用node_save()
在Drupal中以编程方式创建内容非常简单。
$node = new stdClass();
node_object_prepare($node);
$node->title = $_GET['title'];
$node->body = $_GET['text'];
node_save($node)
您可以在创建节点之前调用drupal_bootstrap()
将此代码保存在单独的.php
文件中。
chdir('/path/to/drupal');
require_once('includes/bootstrap.inc');
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
另一个更清洁的解决方案是将所有内容放在一个小型自定义模块中,并使用hook_menu()向您公开处理代码。有关模块创建的更多信息,请参阅http://drupal.org/node/231276。
但请注意,这可以让任何想出您的网址架构的人在您的网站上创建节点。您可能需要保护对脚本的访问权限。安全的解决方案可能是使用Services模块从您的SMS网关创建节点。
答案 1 :(得分:1)
取决于你想如何在Drupal中使用它。最简单的方法是编写一个定义块的模块(或者它可以只是一个带有PHP输入过滤器的块,您可以在其中粘贴块的代码),在这里您可以从数据库中读取消息并显示它们。
答案 2 :(得分:0)
您是否可以安排连接到存储SMS消息的数据库的cron作业,将其拉出来并利用node_save()来保存数据?