/** * Modify the Labels a Message is associated with. * * @param Google_Service_Gmail $service Authorized Gmail API instance. * @param string $userId User's email address. The special value 'me' * can be used to indicate the authenticated user. * @param string $messageId ID of Message to modify. * @param array $labelsToAdd Array of Labels to add. * @param array $labelsToRemove Array of Labels to remove. */ function modifyMessage($service, $userId, $messageId, $labelsToAdd, $labelsToRemove) { $mods = new Google_Service_Gmail_ModifyMessageRequest(); $mods->setAddLabelIds($labelsToAdd); $mods->setRemoveLabelIds($labelsToRemove); try { $message = $service->users_messages->modify($userId, $messageId, $mods); } catch (Exception $e) { print G::LoadTranslation("ID_PMGMAIL_GENERAL_ERROR") . $e->getMessage(); } }
function modifyMessage($service, $userId, $messageId, $labelsToAdd, $labelsToRemove) { $mods = new Google_Service_Gmail_ModifyMessageRequest(); $mods->setAddLabelIds($labelsToAdd); $mods->setRemoveLabelIds($labelsToRemove); try { $message = $service->users_messages->modify($userId, $messageId, $mods); return $message; } catch (Exception $e) { //print 'An error occurred: ' . $e->getMessage(); } }
public function addProcessedLabel() { $labels = array(); $service = Mailbox::getGmailService(); try { $labelsResponse = $service->users_labels->listUsersLabels("me"); if ($labelsResponse->getLabels()) { $labels = array_merge($labels, $labelsResponse->getLabels()); } } catch (Excetion $e) { print 'An error occurred: ' . $e->getMessage(); } $processed_label = false; foreach ($labels as $label) { if ($label->getName() == 'PROCESSED') { $processed_label = true; $processed_label_id = $label->getId(); } } if (!$processed_label) { $label = new \Google_Service_Gmail_Label(); $label->setName("PROCESSED"); try { $label = $service->users_labels->create("me", $label); } catch (Exception $e) { print 'An error occurred: ' . $e->getMessage(); } } $mods = new \Google_Service_Gmail_ModifyMessageRequest(); $mods->setAddLabelIds([$processed_label_id]); try { $message = $service->users_messages->modify("me", $this->gmail_uid, $mods); } catch (Exception $e) { print 'An error occurred: ' . $e->getMessage(); } }
/** * Apply a label to a message * * @param unknown_type $messageID * @param string $labelName The label name to add * @return boolean Returns TRUE on success, else FALSE */ function applyLabel($messageID, $labelName) { global $ini; $labelID = $this->getOrCreateLabelID($labelName); $modReq = new Google_Service_Gmail_ModifyMessageRequest(); $modReq->setAddLabelIds(array($labelID)); try { $retVal = $this->service->users_messages->modify($ini['gmail_username'], $messageID, $modReq); if ($retVal->getId() != $messageID) { print "Error: Failed to apply label '{$labelName}' (ID '{$labelID}') to message\n"; return FALSE; } } catch (Exception $e) { print 'Error: Exception - ' . $e->getMessage() . "\n"; return FALSE; } return TRUE; }