1

SMS テキスト メッセージを Drupal に挿入したいと考えています。

SMS ゲートウェイは、受信したメッセージをサーバー上の PHP スクリプトに転送するように構成されており、現時点では、メッセージと電話番号をデータベースに挿入しているだけです。

たとえば、メッセージはhttp://www.example.com/smsupdate.php?phone=123445&text=message_contentに転送されます

このデータを Drupal に取り込むにはどうすればよいでしょうか?

4

3 に答える 3

2

Drupal では、 を使用してプログラムでコンテンツを簡単に作成できnode_save()ます。

  $node = new stdClass();
  node_object_prepare($node);
  $node->title = $_GET['title'];
  $node->body = $_GET['text'];
  node_save($node)

ノードを作成する前に.php呼び出すことにより、このコードを別のファイルに保持できます。drupal_bootstrap()

  chdir('/path/to/drupal');
  require_once('includes/bootstrap.inc');
  drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

別のよりクリーンな解決策は、すべてを小さなカスタム モジュールに入れ、hook_menu()を使用して処理コードを公開することです。モジュール作成の詳細については、 http://drupal.org/node/231276を参照してください。

ただし、これにより、URL スキーマを理解した人が Web サイトにノードを作成できるようになることに注意してください。おそらく、スクリプトへのアクセスを保護する必要があります。安全なソリューションは、サービスモジュールを使用して SMS ゲートウェイからノードを作成することです。

于 2010-06-29T18:43:11.200 に答える
1

Drupal でどのように使用するかによって異なります。最も簡単な方法は、ブロックを定義するモジュールを作成することです (または、ブロックのコードを貼り付ける PHP 入力フィルターを備えた単なるブロックにすることもできます)。ここで、データベースからメッセージを読み取って表示します。

于 2010-06-29T16:39:47.893 に答える
0

SMS メッセージを保存するデータベースに接続する cron ジョブをスケジュールし、それを取り出し、node_save() を利用してデータを保存していただけますか?

于 2010-06-29T19:46:00.277 に答える