class Teamlab::Mail
Public Class Methods
new()
click to toggle source
# File lib/teamlab/modules/mail.rb, line 3 def initialize @request = Teamlab::Request.new('mail') end
Public Instance Methods
add_tag_to_conversations(tag_id, *conversation_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 207 def add_tag_to_conversations(tag_id, *conversation_ids) @request.put(['conversations', 'tag', tag_id.to_s, 'set'], messages: conversation_ids.flatten) end
add_trusted_address(address)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 247 def add_trusted_address(address) @request.post(%w(display_messages addresses), addres: address) end
attach_teamlab_document(message_id, file_id, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 33 def attach_teamlab_document(message_id, file_id, options = {}) @request.post(['messages', message_id.to_s, 'document'], { fileId: file_id }.merge(options)) end
create_account_by_email(email, password)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 117 def create_account_by_email(email, password) @request.post(%w(accounts simple), email: email, password: password) end
create_account_with_custom_mail_service(name, email, account, password, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 109 def create_account_with_custom_mail_service(name, email, account, password, options = {}) @request.post(%w(accounts), { name: name, email: email, account: account, password: password }.merge(options)) end
create_oauth_account(email, token, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 113 def create_oauth_account(email, token, options = {}) @request.post(%w(accounts oauth), { email: email, token: token }.merge(options)) end
create_tag(name, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 263 def create_tag(name, options = {}) @request.post(%w(tags), { name: name }.merge(options)) end
delete_account(email)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 133 def delete_account(email) @request.delete(['accounts', email.to_s]) rescue @request.delete(['accounts'], email: email.to_s) # for version 8.7 end
delete_alert_by_id(id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 147 def delete_alert_by_id(id) @request.delete(['alert', id.to_s]) end
delete_attachment_from_message(message_id, attachment_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 73 def delete_attachment_from_message(message_id, attachment_id) @request.delete(['messages', message_id.to_s, 'attachments', attachment_id.to_s]) end
delete_tag(id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 279 def delete_tag(id) @request.delete(['tags', id.to_s]) end
export_all_message_attachments_to_my_docs(message_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 69 def export_all_message_attachments_to_my_docs(message_id) @request.put(%w(attachments mydocuments export), messageId: message_id) end
export_attachments_to_my_docs(attachment_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 65 def export_attachments_to_my_docs(attachment_id) @request.put(%w(attachment mydocuments export), attachmentId: attachment_id) end
export_mail_to_crm_relations_history(message_id, *crm_contact_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 61 def export_mail_to_crm_relations_history(message_id, *crm_contact_ids) @request.put(%w(messages crm export), messageId: message_id, crmContactIds: crm_contact_ids.flatten) end
generate_custom_guid()
click to toggle source
region GUID
# File lib/teamlab/modules/mail.rb, line 235 def generate_custom_guid @request.get(%w(random_guid)) end
get_account_by_email(email)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 101 def get_account_by_email(email) @request.get(['accounts', email.to_s]) end
get_account_list()
click to toggle source
region Accounts
# File lib/teamlab/modules/mail.rb, line 97 def get_account_list @request.get(%w(accounts)) end
get_alerts_list()
click to toggle source
region Alerts
# File lib/teamlab/modules/mail.rb, line 143 def get_alerts_list @request.get('alert') end
get_contact_list_for_auto_complete(term)
click to toggle source
region Contacts
# File lib/teamlab/modules/mail.rb, line 155 def get_contact_list_for_auto_complete(term) @request.get(%w(contacts), term: term) end
get_crm_linked_entities(message_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 159 def get_crm_linked_entities(message_id) @request.get(%w(crm linked entities), messageId: message_id) end
get_default_account_settings(email, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 105 def get_default_account_settings(email, options = {}) @request.get(['accounts', email.to_s, 'default'], options) end
get_filtered_conversations(options = {})
click to toggle source
region Conversations
# File lib/teamlab/modules/mail.rb, line 167 def get_filtered_conversations(options = {}) @request.get(%w(conversations), options) end
get_filtered_messages(page, options = {})
click to toggle source
region Messages
# File lib/teamlab/modules/mail.rb, line 9 def get_filtered_messages(page, options = {}) @request.get(%w(messages), { page: page }.merge(options)) end
get_folder_change_date(folder_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 223 def get_folder_change_date(folder_id) @request.get(['folders', folder_id.to_s, 'modify_date']) end
get_folders(options = {})
click to toggle source
region Folders
# File lib/teamlab/modules/mail.rb, line 219 def get_folders(options = {}) @request.get(%w(folders), options) end
get_html_of_help_center()
click to toggle source
region HelpCenter
# File lib/teamlab/modules/mail.rb, line 81 def get_html_of_help_center @request.get(%w(helpcenter)) end
get_meail_signature(mailbox_id)
click to toggle source
endregion
# File lib/teamlab/modules/mail.rb, line 87 def get_meail_signature(mailbox_id) @request.get(['signature', mailbox_id.to_s]) end
get_message(id, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 13 def get_message(id, options = {}) @request.get(['messages', id.to_s], options) end
get_message_modify_date()
click to toggle source
# File lib/teamlab/modules/mail.rb, line 21 def get_message_modify_date @request.get(%w(messages modify_date)) end
get_message_template()
click to toggle source
# File lib/teamlab/modules/mail.rb, line 17 def get_message_template @request.get(%w(messages template)) end
get_messages_linked_into_one_chain(message_id, load_all_content)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 171 def get_messages_linked_into_one_chain(message_id, load_all_content) @request.get(['conversation', message_id.to_s], loadAllContent: load_all_content) end
get_previous_or_next_conversation_id(id, direction, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 175 def get_previous_or_next_conversation_id(id, direction, options = {}) @request.get(['conversation', id.to_s, direction.to_s], options) end
get_previous_or_next_message_id(id, direction, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 25 def get_previous_or_next_message_id(id, direction, options = {}) @request.get(['messages', id.to_s, direction.to_s], options) end
get_tag_list()
click to toggle source
region Tags
# File lib/teamlab/modules/mail.rb, line 259 def get_tag_list @request.get(%w(tags)) end
get_trusted_addresses()
click to toggle source
region IMAGES
# File lib/teamlab/modules/mail.rb, line 243 def get_trusted_addresses @request.get(%w(display_messages addresses)) end
is_chain_crm_linked_by_message(message_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 179 def is_chain_crm_linked_by_message(message_id) @request.get(%w(conversations link crm status), messageId: message_id) end
mark_conversation_as_crm_linked(message_id, *crm_contact_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 199 def mark_conversation_as_crm_linked(message_id, *crm_contact_ids) @request.put(%w(conversations crm mark), messageId: message_id, crmContactIds: crm_contact_ids.flatten) end
move_conversations_to_folder(folder_id, *message_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 183 def move_conversations_to_folder(folder_id, *message_ids) @request.put(%w(conversations move), folderId: folder_id, ids: message_ids.flatten) end
move_messages_to_folder(folder_id, *message_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 41 def move_messages_to_folder(folder_id, *message_ids) @request.put(%w(,essages move), folderId: folder_id, ids: message_ids.flatten) end
remove_all_messages_from_folder(folder_id)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 227 def remove_all_messages_from_folder(folder_id) @request.get(['folders', folder_id.to_s, 'messages']) end
remove_conversations(*ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 191 def remove_conversations(*ids) @request.put(%w(conversations remove), ids: ids.flatten) end
remove_from_trusted_addresses(address)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 251 def remove_from_trusted_addresses(address) @request.delete(%w(display_messages addresses), addres: address) end
remove_messages(*ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 53 def remove_messages(*ids) @request.put(%w(messages remove), ids: ids.flatten) end
remove_tag_from_conversations(tag_id, *conversation_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 211 def remove_tag_from_conversations(tag_id, *conversation_ids) @request.put(['conversations', 'tag', tag_id.to_s, 'unset'], messages: conversation_ids.flatten) end
remove_tag_from_messages(id, *message_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 275 def remove_tag_from_messages(id, *message_ids) @request.put(['tags', id.to_s, 'remove'], messages: message_ids.flatten) end
restore_conversations_to_folders(*ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 195 def restore_conversations_to_folders(*ids) @request.put(%w(conversations restore), ids: ids.flatten) end
restore_message_to_folders()
click to toggle source
# File lib/teamlab/modules/mail.rb, line 57 def restore_message_to_folders @request.put(%w(messages restore)) end
save_message(id, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 49 def save_message(id, options = {}) @request.put(%w(messages save), { id: id }.merge(options)) end
send_message(id, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 45 def send_message(id, options = {}) @request.put(%w(messages send), { id: id }.merge(options)) end
set_account_state(email, state)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 125 def set_account_state(email, state) @request.put(['accounts', email.to_s, 'state'], state: state) end
set_account_state_by_mailbox(mailbox_id, email_in_folder)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 129 def set_account_state_by_mailbox(mailbox_id, email_in_folder) @request.put(['accounts', mailbox_id.to_s, 'emailinfolder'], emailInFolder: email_in_folder) end
set_conversations_status(status, *ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 187 def set_conversations_status(status, *ids) @request.put(%w(conversations mark), status: status, ids: ids.flatten) end
set_message_crm_status(emails, *user_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 29 def set_message_crm_status(emails, *user_ids) @request.post(%w(messages update_crm), emails: emails, userIds: user_ids.flatten) end
set_message_status(status, *ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 37 def set_message_status(status, *ids) @request.put(%w(messages mark), status: status, ids: ids.flatten) end
set_tag_to_messages(id, *message_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 271 def set_tag_to_messages(id, *message_ids) @request.put(['tags', id.to_s, 'set'], messages: message_ids.flatten) end
unmark_conversation_link_with_crm(message_id, *crm_contact_ids)
click to toggle source
# File lib/teamlab/modules/mail.rb, line 203 def unmark_conversation_link_with_crm(message_id, *crm_contact_ids) @request.put(%w(conversations crm unmark), messageId: message_id, crmContactIds: crm_contact_ids.flatten) end
update_account(name, email, password, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 121 def update_account(name, email, password, options = {}) @request.put(%w(accounts), { name: name, email: email, password: password }.merge(options)) end
update_signature(mailbox_id, html, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 91 def update_signature(mailbox_id, html, options = {}) @request.post(['signature', 'update', mailbox_id.to_s], { html: html }.merge(options)) end
update_tag(id, name, options = {})
click to toggle source
# File lib/teamlab/modules/mail.rb, line 267 def update_tag(id, name, options = {}) @request.put(['tags', id.to_s], { name: name }.merge(options)) end