/** * Sends a message to a contact. * * Depending on the inputs sends a * message/video/image/location message to * a contact. * * @param $toNumbers * @param $message * @param $type * @return array */ public function sendMessage($toNumbers, $message, $type) { $this->connectToWhatsApp(); if (!is_array($toNumbers)) { $toNumbers = array($toNumbers); } $messagesId = array(); foreach ($toNumbers as $to) { $id = null; if ($type === self::MESSAGE_TYPE_TEXT) { $this->wa->sendMessageComposing($to); $id = $this->wa->sendMessage($to, $message); } if ($type === self::MESSAGE_TYPE_IMAGE) { $id = $this->wa->sendMessageImage($to, $message); } if ($type === self::MESSAGE_TYPE_AUDIO) { $id = $this->wa->sendMessageAudio($to, $message); } if ($type === self::MESSAGE_TYPE_VIDEO) { $id = $this->wa->sendMessageVideo($to, $message); } if ($type === self::MESSAGE_TYPE_LOCATION) { $id = $this->wa->sendMessageLocation($to, $message['userlong'], $message['userlat'], $message['locationname'], null); } $messagesId[$to] = $id; } return $messagesId; }
// password // konek ------------------------------------------------------------------------------------------------------------ echo "+ Login sebagai {$nickname} ({$username})\n+\n"; $w = new WhatsProt($username, $nickname, $debug); sleep(3); $w->connect(); $w->loginWithPassword($password); $w->sendGetServerProperties(); $w->sendClientConfig(); $w->sendGetGroups(); $w->sendPing(); // kirim pesan ke nomor tujuan -------------------------------------------------------------------------------------- $target = "62xxxxxxxxxxx"; $pesan = "Halo Dunia!"; echo "+ Mengirim pesan\n"; echo "+ target : {$target}\n"; echo "+ pesan : {$pesan}\n+\n"; $w->sendMessageComposing($target); // typing.. sleep(3); $w->sendMessagePaused($target); // selesai typing sleep(1); $w->sendMessage($target, $pesan); // kirim pesan $w->pollMessage(); sleep(1); $w->pollMessage(); sleep(1); $w->pollMessage(); echo "+ Selesai\n+\n";
$w->setNewMessageBind($pn); $chatting = true; $compose = true; $lastSeen = true; while ($chatting) { $w->pollMessage(); $msgs = $w->getMessages(); foreach ($msgs as $m) { // process inbound messages $string = $m->NodeString(""); $xml = new SimpleXMLElement($string); $body = (string) $xml->body; print $nickname . ": " . $body . "\n"; } if ($compose) { $w->sendMessageComposing($contact); $compose = false; } if ($lastSeen) { if (!in_array($contact, $GLOBALS['online_contacts'])) { $w->sendPresenceSubscription($contact); } $lastSeen = false; } $line = fgets_u(STDIN); /* $typing = true; while (($c = fread(STDIN, 1)) && ($w->pollMessage())) { if ($typing) $w->sendMessageComposing($contact);