Online Documents
繁體中文
繁體中文
  • First Launch Experience
  • How to Train EMILY?
  • Simple Web Automation
  • Web Automation Tools
  • Web Automation Processor
  • User Fill
  • Workspace Script
  • File Exporter
  • File Enumerator
  • EXCEL Processor
  • EXCEL Analyzer
  • EXCEL Writer
  • EXCEL Filler
  • CSV Creator
  • PowerShell
  • PDF Analyzer
  • Mail Sender
  • Mail Reader
  • Exchange Mail Sender
  • Exchange Mail Reader
  • HTTP Analyzer
  • Command Line
  • DOCX Templater
  • SQL Executor
  • Desktop Automation (DA)
  • SFTP
  • JSON API Server
  • Chart
  • DOCX2HTML
  • Folder Processor
  • Google Drive
  • Google Sheets
  • Google OCR
  • Google NLU
  • Azure Form Recognizer
  • Anti-Captcha
  • ChatGPT
  • Gemini
  • Schedule Trigger
  • Mail Trigger
  • File Trigger
  • API Trigger
  • Protect Text
  • Flexibility & Security
  • Announcement
    • Version Releases
    • Third Party Notice
Powered by GitBook
On this page
  • TENANT ID (支援文檔變數)
  • CLIENT ID (支援文檔變數)
  • CLIENT SECRET (支援文檔變數)
  • SIGN IN
  • ACCOUNT
  • MAILBOX
  • SINCE DAY(S) AGO
  • UNREAD ONLY
  • input 物件陣列
  • output 物件陣列
  • api 物件

Exchange Mail Reader

以 IMAP 讀取 Exchange Online 電子郵件,必須使用支援 Exchange Online 的帳號

PreviousExchange Mail SenderNextHTTP Analyzer

Last updated 1 month ago

TENANT ID (支援文檔變數)

使用者郵件帳號在 Azure Portal 開的 Azure Active Directory 租用戶識別碼:

CLIENT ID (支援文檔變數)

CLIENT ID 是上述的租用戶中新增註冊的企業應用程式用戶端識別碼。註冊步驟如下:

帳戶類型保留預設值單一租用戶,平台設定為 Web,URI 設定為 http://localhost:3650/callback

完成註冊後可以取得用戶端識別碼,接著繼續新增憑證或秘密:

完成新增用戶端密碼後複製用戶端密碼的值:

CLIENT SECRET (支援文檔變數)

填入上述用戶端密碼的值。

SIGN IN

ACCOUNT

填完 TENANT ID、CLIENT ID 與 CLIENT SECRET 後,點擊 SIGN IN 會帶出瀏覽器讓使用者完成身分認證,並自動帶入 ACCOUNT。

MAILBOX

郵件信箱名稱。

SINCE DAY(S) AGO

讀取自幾天前的郵件。

UNREAD ONLY

是否選擇只讀取未讀郵件。

input 物件陣列

在 input 物件陣列中的每個元素代表讀取自指定郵件信箱的每封郵件:

// 印出讀取到的每封郵件主旨與寄件者
input.forEach((mail) => {
  console.log('from:' + mail.from + ', title:' + mail.subject)
})

output 物件陣列

加入 output 陣列中的每個物件元素代表輸出表格的一列資料,物件中的 key 為表頭欄位,value 為該欄位在這一列資料的值,最後表格將被輸出成工作資料夾內的 output.csv 檔案。

// 將讀取的每封郵件文字欄位輸出到CSV,並且將附件檔案存檔
input.forEach((mail) => {
  output.push({
    from: mail.from,
    subject: mail.subject,
    date: mail.date.toLocaleString(),
  })
  
  if (mail.attachments.length > 0) {
    mail.attachments.forEach((att) => {
      api.write(att.filename, att.content)
    })
  }
})

// 指定表頭欄位
output.header.push('from','subject','date')

api 物件

除了提供同步函式:api.files(), api.read(filename, encoding='utf8'), api.write(filename, text), api.rename(oldname, newname), api.remove(filename) 存取工作資料夾內的檔案;另外提供 mail 物件與相關非同步函式 api.mail.moveto(uid, mailbox), api.mail.remove(uid)

// 找到標題包含'促銷'的郵件
let mail = _.find(input, (m) => m.subject.includes('促銷'))

// 移到'Trash'郵件資料夾
await api.mail.moveto(mail.uid, 'Trash')

// 找到標題包含'中獎'的郵件
mail = _.find(input, (m) => m.subject.includes('中獎'))

// 移除郵件
await api.mail.remove(mail.uid)

按下 SIGN IN 按鈕後會進行 Microsoft Account 的驗證,驗證成功後會自動帶入使用者電子郵件帳號,EMILY.RPA 才能使用這個郵件信箱。請注意:微軟會強制在 SIGN IN 後 90 天讓登入資訊過期,因此每 90 天需要回到模組介面重新登入一次

https://learn.microsoft.com/en-us/azure/active-directory/develop/configurable-token-lifetimes#refresh-and-session-token-lifetime-policy-properties