public function sync()
    {
        $url = sprintf($this->vbot->config['server.uri.base'].'/webwxsync?sid=%s&skey=%s&lang=zh_CN&pass_ticket=%s',
            $this->vbot->config['server.sid'],
            $this->vbot->config['server.skey'],
            $this->vbot->config['server.passTicket']
        );

        $result = $this->vbot->http->json($url, [
            'BaseRequest' => $this->vbot->config['server.baseRequest'],
            'SyncKey'     => $this->vbot->config['server.syncKey'],
            'rr'          => ~time(),
        ], true);

        if ($result && $result['BaseResponse']['Ret'] == 0) {
            $this->generateSyncKey($result);
        }

        return $result;
    }