【问题标题】:Good example of using libpurple? [closed]使用 libpurple 的好例子? [关闭]
【发布时间】:2010-07-27 03:30:32
【问题描述】:

我家里有一台旧机器,还有一个东西 这台机器的作用是检测特定门是否在 房子刚刚打开或关闭。

现在,我让那台机器在私人上发布了一条推文 Twitter 帐户。

我现在想给这台机器自己的 AIM 帐户 并让它在 AIM 上向我发送消息。唯一的消息 将发送的字面意思是“前门打开”,并且 “前门关上了。”

看来 libpurple 是一个常用的库 处理各种即时通讯协议,是 甚至在 Adium 中也使用过,但它非常复杂且 不知道怎么用。

是否有人拥有或知道一个简单的代码示例 使用 libpurple?

【问题讨论】:

    标签: c instant-messaging aim libpurple


    【解决方案1】:

    我个人觉得Pidgin 的源代码读起来直截了当。还有更多使用 libpurple 的 IM 客户端,您可以查看Wikipedia 了解更多详细信息。

    【讨论】:

    • libpurple 是作为 Pidgin 的后端开发的,因此这应该是事实上的起点。但正如你所说,现在还有很多其他人也在使用它。
    • 2 年后。你认为你的答案应该更新吗!
    【解决方案2】:

    我以前在 bash 脚本中做过这种事情。不幸的是,代码丢失了,但您可能希望将 dbus 视为解决方案的一部分。代码相对简单。

    This page on updating pidgin status 可能是一个很好的起点。

    对于您的应用程序,它可能很简单:

    purple-remote uri 'aim:goim?screenname=yourimhandle&message="front door open"'
    

    (观看报价!)

    见purple-remote(1)。

    【讨论】:

      【解决方案3】:

      我与龙战斗^W不存在的文件,这似乎是合理的:-) 有时间整理一些东西,我认为值得快速检查一下。

      使用内部 DBus 服务的重要提示,

      1. 在例如长时间的屏幕:),
      2. 紫色遥控器应该在 相同的 dbus 会话。我制造了一个 在启动时启动会话的脚本 并导出 DBUS_SESSION_BUS_ADDRESS 在所有用户的 bashrc 中。感觉很老套?:)

      任何对 libpurple 有更好技能的人,请阻止我们! :-)

      【讨论】:

      【解决方案4】:

      您绝对应该查看 libpurple 源 (libpurple/example/nullclient.c) 中提供的 nullclient.c。它执行登录到服务器并添加一些有用的回调。要发送消息,请将其添加到(例如)函数 signed_on:

      PurpleConvIm im;
      im.conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, "other@example.com");
      purple_conv_im_send(&im, "open door");
      

      【讨论】:

        猜你喜欢
        • 2011-08-22
        • 2010-11-07
        • 1970-01-01
        • 1970-01-01
        • 2011-05-29
        • 1970-01-01
        • 1970-01-01
        • 2011-06-27
        • 2010-09-17
        相关资源
        最近更新 更多