diff options
Diffstat (limited to 'apps/mm/plugins/SenderIdentica.class.php')
-rw-r--r-- | apps/mm/plugins/SenderIdentica.class.php | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/apps/mm/plugins/SenderIdentica.class.php b/apps/mm/plugins/SenderIdentica.class.php new file mode 100644 index 0000000..ab55eb9 --- /dev/null +++ b/apps/mm/plugins/SenderIdentica.class.php @@ -0,0 +1,35 @@ +<?php +require_once('Plugin.class.php'); +require_once('Identica.class.php'); + +class SenderIdentica extends Plugin { + protected $config = array('username'=>'', + 'password'=>'', + 'length'=>140); + private $obj; + + public static function description() { + return 'Dent messages to Identi.ca.'; + } + + public static function configList() { + return array('username'=>'text', + 'password'=>'password', + 'length'=>'int'); + } + + public function init() { + $this->obj = new Identica($this->config['username'], + $this->config['password']); + } + + public function sendBroadcast($id, $subject, $body) { + global $shorturl, $messenger; + $url = $shorturl->get($messenger->id2url($id)); + $maxlen = $this->config['length']-(strlen($url)+1); + if($maxlen < strlen($subject)) { + $subject = substr($subject,0,$maxlen-3).'...'; + } + $this->obj->updateStatus($subject.' '.$url); + } +} |