我有一个想法,这将需要我能够发送和接收信息通过标准信使的协议,例如msn、icq,目的,skype,等等。

我目前只有悉PHP和蟒蛇从而享有一个图书馆我可以访问所说的语言。我已经找到phurple(http://sourceforge.net/projects/phurple/)for php和python-紫(http://developer.pidgin.im/wiki/PythonHowTo 的),这似乎不是最新的。什么你们的建议做?我的目标就是编写一个web在一个遥远的方式喜欢meebo.com

答案应该包括一个教程或例的执行情况和体面的文件..该洋泾浜.im没有一个真正有用的教程..

alternativly你也可以只告诉我不同种类的实现,以便我会建立我自己流出的现有网,目的是,msn等的实现。

一个例子如何以连接到一个帐户(登录),然后发送一个信息将是最终的帮助!

来一个家伙:)

有帮助吗?

解决方案

这里是怎么连接洋泾浜d-bus服务器。

#!/usr/bin/env python
import dbus

bus = dbus.SessionBus()

if "im.pidgin.purple.PurpleService" in bus.list_names():
    purple = bus.get_object("im.pidgin.purple.PurpleService",
            "/im/pidgin/purple/PurpleObject",
            "im.pidgin.purple.PurpleInterface")

    print "Connected to the pidgin DBus."
    for conv in purple.PurpleGetIms():
        purple.PurpleConvImSend(purple.PurpleConvIm(conv), "Ignore this message.")

else:
    print "Could not find piding DBus service, make sure Pidgin is running."

不知道如果你有看到这一点,但这里是官方python d-bus教程: 链接.

编辑: 重新添加的链接洋泾浜开发wiki。它教导你一切我贴上面, 只是滚动的进一步下页。 http://developer.pidgin.im/wiki/PythonHowTo

其他提示

一个很好的赌注将要通过将d-bus的界面:混杂语(紫色的)充分支持和d-bus界面的图书馆为蟒蛇是相当稳定。

如果你压缩文件从phurple你得到一例这样的:

<?php
  if(!extension_loaded('phurple')) {
  dl('phurple.' . PHP_SHLIB_SUFFIX);
  }

  class CustomPhurpleClient extends PhurpleClient {
    private $someVar;
    protected function initInternal() {
        $this->someVar = "Hello World";
    }

    protected function writeIM($conversation, $buddy, $message, $flags, $time) {
        if(PhurpleClient::MESSAGE_RECV == $flags) {
            printf( "(%s) %s %s: %s\n",
                        $conversation->getName() ? $conversation->getName() : $buddy->getName(),
                        date("H:i:s", $time),
                        is_object($buddy) ? $buddy->getAlias() : $buddy,
                        $message
                );
        }
    }

    protected function onSignedOn($connection) {
        print $this->justForFun($this->someVar);
    }

    public function justForFun($param) {
        return "just for fun, the param is: $param";
    }
  } 
  // end Class CustomPhurpleClient

  // Example Code Below:
  try {
    $user_dir = "/tmp/phphurple-test";
    if(!file_exists($user_dir) || !is_dir($user_dir)) {
        mkdir($user_dir);
    }

    PhurpleClient::setUserDir($user_dir);
    PhurpleClient::setDebug(true);
    PhurpleClient::setUiId("TestUI");

    $client = CustomPhurpleClient::getInstance();
    $client->addAccount("msn://nick@hotmail.com:password@messenger.hotmail.com:1863");
    $client->connect();

    $client->runLoop();
  } catch (Exception $e) {
    echo "[Phurple]: " . $e->getMessage() . "\n";
    die();
  }
?>

我用 WebIcqLite:ICQ消息发送者 为ICQ协议。它的工作和类是很容易理解。我不知道的其它协议,虽然。什么是错的Phurple图书馆?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top