本文整理汇总了PHP中WhatsProt::sendGetHasVoipEnabled方法的典型用法代码示例。如果您正苦于以下问题:PHP WhatsProt::sendGetHasVoipEnabled方法的具体用法?PHP WhatsProt::sendGetHasVoipEnabled怎么用?PHP WhatsProt::sendGetHasVoipEnabled使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WhatsProt
的用法示例。
在下文中一共展示了WhatsProt::sendGetHasVoipEnabled方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: fire
/**
* Execute the console command.
*
* @return mixed
*/
public function fire()
{
if (!$this->argument('number')) {
return $this->error('No number specified.');
}
$number = Number::where('number', $this->argument('number'))->first();
if (is_null($number) || is_null($number->wa_password) || is_null($number->wa_expiration)) {
return $this->error('Whatsapp not registered. Run php artisan whatsapp:register');
}
$contacts = $number->contacts->map(function ($contact) {
return $contact->number;
});
$wa = new WhatsProt($number->number, $number->number, true);
$wa->connect();
// Connects to WhatsApp
$wa->loginWithPassword($number->wa_password);
// Login
$wa->pollMessage();
$wa->sendGetPrivacyBlockedList();
// Get our privacy list
$wa->sendGetClientConfig();
// Get client config
$wa->sendGetServerProperties();
// Get server properties
if (!$contacts->isEmpty()) {
$wa->sendGetHasVoipEnabled($contacts);
}
// Get which users have voip enabled
$wa->sendGetGroups();
// Get groups (participating)
$wa->sendGetBroadcastLists();
// Get broadcasts lists
// $wa->sendGetProfilePicture(self); // self preview profile picture [OPTIONAL]
if (!$contacts->isEmpty()) {
$wa->sendSync($contacts);
}
// Sync all contacts
// $wa->sendGetStatuses(All contacts); // Get contacts status [OPTIONAL]
/*
for (All contacts) [OPTIONAL]
{
$wa->sendGetProfilePicture(contact); // preview profile picture of every contact
}
*/
// $wa->sendPing(); // Keep alive
$wa->eventManager()->bind("onGetMessage", function ($mynumber, $from, $id, $type, $time, $name, $body) {
// todo // save message id and compare to avoid duplicate
$inbound = new Inbound();
$inbound->from = $this->getFrom($from);
$inbound->to = $mynumber;
$inbound->text = $body;
$inbound->type = 'whatsapp';
$inbound->save();
});
$wa->eventManager()->bind("onPresenceAvailable", function ($mynumber, $from) {
$from = $this->getFrom($from);
// todo // add or update wa-contact
});
$wa->eventManager()->bind("onPresenceUnavailable", function ($mynumber, $from, $last) {
$from = $this->getFrom($from);
// todo // add or update wa-contact
});
$wa->eventManager()->bind("onMessageReceivedClient", function ($mynumber, $from, $id) {
$outbound_chunk = OutboundChunk::where('message_id', $id)->first();
if (!$outbound_chunk) {
return;
}
$outbound_chunk->dn_error_code = 0;
$outbound_chunk->dn_status = 'delivered';
$outbound_chunk->save();
});
$time = time();
while (true) {
sleep(1);
$wa->pollMessage();
$this->processMessages($wa);
if (time() - $time >= 8) {
$wa->sendActiveStatus();
$time = time();
// whatsapp command action
$whatsAppAction = Cache::get('whatsAppAction_' . $number->number, false);
if ($whatsAppAction) {
$whatsAppActionInput = Cache::get('whatsAppActionInput_' . $number->number, false);
Cache::forget('whatsAppAction_' . $number->number);
Cache::forget('whatsAppActionInput_' . $number->number);
switch (strtolower($whatsAppAction)) {
case 'updatestatus':
$wa->sendStatusUpdate($whatsAppActionInput);
break;
case 'setprofilepicture':
try {
$wa->sendSetProfilePicture($whatsAppActionInput);
} catch (Exception $e) {
}
break;
//.........这里部分代码省略.........