如何在 Pidgin 中使用 Python 和 WhatsApp?

-2 投票
1 回答
1038 浏览
提问于 2025-04-18 00:03

如果我们有这段用于 Pidgin 的代码,用来支持 MSN:

#!/usr/bin/python
import sys, dbus, gobject;
bus = dbus.SessionBus()
obj = bus.get_object("im.pidgin.purple.PurpleService", "/im/pidgin/purple/PurpleObject")
purple = dbus.Interface(obj, "im.pidgin.purple.PurpleInterface")


msnusers = (["someon@hotmail.com", "someoneelse@msn.com", "thatguy@hotmail.com", "somethingoranother@hotmail.com"])

for msn_id in msnusers:
        account_id = purple.PurpleAccountsGetAllActive()[0]
        conversation = purple.PurpleConversationNew(1, account_id, msn_id)
        im = purple.PurpleConvIm(conversation)
        purple.PurpleConvImSend(im, 'hi')

我想用同样的方法来支持 WhatsApp,但我找不到怎么做。

我试过这个,但不管用:

#!/usr/bin/python
import sys, dbus, gobject;
bus = dbus.SessionBus()
obj = bus.get_object("im.pidgin.purple.PurpleService", "/im/pidgin/purple/PurpleObject")
purple = dbus.Interface(obj, "im.pidgin.purple.PurpleInterface")

wpusrs = str(96895605520)

for i in wpusrs:
    account = purple.PurpleAccountsGetAllActive()
    conversation = purple.PurpleConversationNew(1,account,i)
    im = purple.PurpleConvIm(conversation)
    purple.PurpleConvImSend(im,'hi')

请帮帮我 :'(

1 个回答

0

谢谢大家的回复……我找到了我需要的东西。

import dbus
session_bus = dbus.SessionBus()
purple_obj = session_bus.get_object("im.pidgin.purple.PurpleService",
                                "/im/pidgin/purple/PurpleObject")
purple_int = dbus.Interface(purple_obj, 
                        "im.pidgin.purple.PurpleInterface")
my_account_id = purple_int.PurpleAccountsGetAllActive()[0] # or some other account from yours
conv = purple_int.PurpleConversationNew(1, my_account_id, "recipient's number")
conv_im = purple_int.PurpleConvIm(conv)
purple_int.PurpleConvImSend(conv_im, "This is your message")

撰写回答