privatemsgモジュールでユーザー毎に送信できるメッセージ数を指定する方法について

Events happening in the community are now at Drupal community events on www.drupal.org.
h7110y's picture

はじめまして!

現在、大学生向けのコミュニティサイトを学生だけの手で構築しています。
その中で、サイト内メッセ―ジを導入したいと考えているのですが、ユーザー毎に送信可能なメッセージ数を制限したいと考えています。
GoogleやDrupal本家サイトでも探してみたところ、"Private Message Limits"モジュールを発見しましたが、どうやらこれは一定期間内に送信可能な
メッセージ数を指定できるモジュールで、ユーザー毎の指定や一定期間内に関わらずn通まで送信可能というような従量制のような運用はできないことがわかりました。

機能の詳細としては、申請があったユーザー(学生団体主催者やサークル代表など)のみに、n通までユーザーにメッセ―ジを送ることができるというものにしたいと考えています。
また、一旦送信可能メッセージ数がゼロになった場合、あるいは残り少なくなってきた場合には、改めて申請をもらうことで管理側が自由に送信数を付与できるようにしたいと考えています。

他に案を考えたところ、UserPointモジュール・Ruleモジュールと組み合わせて送信ごとにポイント数を減らす(or付加する)ことで、一定のポイント数に達した場合にメッセージを使用不可にする
というシステムが組めないかと考えましたが、初心者の私にはこの案が実現可能なのか、はたまたこれ以外にもっと容易な方法があるのかの判断がつきませんでした。

もし、お分かりになられる方がいらっしゃいましたら、策を授けていただけますと幸いです。
どうぞよろしくお願いします!

Comments

qchan's picture

使ったことがないのであやふやですが、ひとつのヒントになるかもしれない情報として聞いてください。
Privatemsgモジュールのprojectページを見ると、Rulesとの統合もされていて、6.x-2.xでは受信数の制限ができるように読めます。
送信数の制限ができるか、または望みのActionがRulesに設定されるかはちょっとわからないのですが、
6.x-2.x系を試してみてはどうでしょうか。

UserPointsとの連動も可能なようです。
これもRulesのTriggerとして読み込まれるかは試してみる必要があります。

また、プログラムをする前提になるかもしれませんが
messeageを投げたときのhookは用意されているので、カスタムモジュールを作ることで
望みの動作は得られると思いますよ。
Message hooks Berdir's API Documentation

日本 コミュニティ: Drupal Japan User Group

Group organizers

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week