1

我正在尝试创建一个 cron php 脚本,该脚本使用ChatApi从 whatsapp 读取传入消息......当我循环消息时,我能够发送消息并保持连接,但是当我阅读它们时,正文内容是加密的。

我运行此代码示例:

    require_once './include/class/ChatAPI/src/whatsprot.class.php'; 
require_once './include/class/ChatAPI/src/events/MyEvents.php'; 

$username = 'xxx';
$password = 'xxx';
$nickname = 'xxx';
$debug = true;

$w = new WhatsProt($username, $nickname, $debug);
$w->setMessageStore(new SqliteMessageStore($username));

$events = new MyEvents($w);
$events->setEventsToListenFor($events->activeEvents); 

$w->Connect();
$w->LoginWithPassword($password);

$target = 'xxx'; 

$w->SendPresenceSubscription($target);


$w->pollMessage();
$w->sendGetServerProperties();
$w->pollMessage();

$w->sendMessage($target, "Test");

while (1) {
    if (!$w->isConnected()) {
        $w->connect();
        $w->loginWithPassword($password);
    }

    $w->pollMessage();

        $data = $w->getMessages();

        foreach ($data as $item) {
            $from_number = $item->getAttribute("from");
            $from_nickname = $item->getAttribute("notify");

            if ($item->getAttribute("type") == "text") {
                //var_dump($item);
                $msg = $item->getChild("body");
                //var_dump($msg);
            } else {
                //$msg = $item->getChild("media")->getAttribute("url");
            }

        }

}

我在 true 的调试模式下获得了这个结果

rx  <message from="39xxxxxxxxxxx@s.whatsapp.net" type="text" id="E13D166CBE22427EA47B8C02549F52" offline="3" t="1456238361" notify="Michele"> rx    <enc v="2" type="pkmsg">331221050618d99b0d875b0a7cd72667a505501228d85533d4dcfa53d7419980146e1d691a2105c6875f6103741ec89679e90539d3f35ff1705ada636840e2d478abab69b0895a2242330a2105a9e6aee7a544414656234e79d17e108fb222ad216dd31ca83c5a108052c8e157105418002210e394ff9457660fc75c174bd82b94dbeb22d9b9522f4e3ac4288befdc930130b08f24</enc> rx  </message>

有没有办法解码消息内容?

我已经尝试使用激活getMessage事件的事件管理器......并添加一个函数来输出数据,但事件管理器不触发输出函数......

4

0 回答 0