public function getDataForCall() { $payload = []; if ($this->typeAttachment == self::ATTACHMENT_TYPE_IMAGE) { if (isset($this->data['url'])) { $payload['url'] = $this->data['url']; } } else { $payload['template_type'] = $this->typePayolad; } switch ($this->typePayolad) { case self::TEMPLATE_PAYLOAD_TYPE_BUTTON: $payload['text'] = $this->data['text']; $buttons = []; foreach ($this->data['buttons'] as $button) { $buttons[] = $button->getDataForCall(); } $payload['buttons'] = $buttons; break; default: if ($this->typeAttachment != self::ATTACHMENT_TYPE_IMAGE) { $payloadData = null; if (is_array($this->data)) { foreach ($this->data as $data) { $payloadData[] = $data->getDataForCall(); } $payload = array_replace($payload, ['elements' => $payloadData]); } else { $payload = array_replace($payload, $this->data->getDataForCall()); } } break; } $this->messageTemplate = ['attachment' => ['type' => $this->typeAttachment, 'payload' => $payload]]; return parent::getDataForCall(); }
$file_size = 0; // echo "Size of files: " . sizeof($files['files'][array_keys($files['files'])[0]]) . "\r\n"; for ($i = 0; $i < sizeof($files['files'][array_keys($files['files'])[0]]); $i++) { $f = null; foreach ($files['files'] as $key => $value) { $f[$key] = $value[$i]; } $file[$i] = $f; $file_size += $f['size']; } // print_r($files['files']['size']); // echo "Total file size: " . $file_size . "\r\n"; // print_r($file); } // error_reporting(0); $message = new MessageSend($post); if (sizeof($files) > 0) { $message->setAttachments($file); } try { // The message needs to be encoded in Base64URL // $mime = rtrim(strtr(base64_encode($message->formatMessage()), '+/', '-_'), '='); // $msg = new Google_Service_Gmail_Message(); // $msg->setRaw($mime); // $msg->setRaw($message->formatMessage()); // echo $mime . "\r\n"; // $msg->setThreadId('15231854c99addab'); // echo "\n\r" . strlen($msg->getPayload()) . " - " . strlen($mime) . "\n\r"; // $objSentMsg = $service->users_messages->send($userId, $msg); // $objSentMsg = $service->users_messages->send($userId, $msg, ['uploadType' => 'multipart']); // print('Message sent object');
public function __construct($recipient, $textMessage, $data, $notificationType = self::NOTIFICATION_TYPE_REGULAR) { parent::__construct($recipient, $textMessage, $notificationType); $this->replies = $data; }