Message

メールやメッセージを送受信します。

GmailSend

概要

GmailSendは、GmailのAPIによりメールを送信します。この機能により、利用者は、自分のGmailアカウントからメールを送信することができます。

パラメーター

*は、必須パラメーター

名前

概要

to*

文字列

メールの送信先アドレス

john.doe@example.com

subject*

文字列

送信するメールの件名

Hello! John!

body*

文字列

送信するメールの本文

Hi John, I'm very happy to send this mail to you.

provider*

文字列

送信に使うGmail ConnectionのProvider ID

gmail_**

アウトプット

タイプ

概要

Boolean

真理値

APIのリクエストが、200で返却されたときにtrue

true

使用例

+gmail_send:
action>: GmailSend
to: 'john.doe@example.com'
subject: 'Hello! John!'
body: 'Hi John, I\'m very happy to send this mail to you.'
provider: 'gmail_e7502c3b8b8147410ce2'

GmailGet

概要

GmailGetは、Gmailのアカウントからメールを取得するアクションです。この機能により、利用者は、自分のGmailアカウントからメールを取得することができます。

パラメーター

*は、必須パラメーター

名前

概要

query*

文字列

検索条件

from:john.doe@example.com (検索条件の詳細についてはこちら参照してください。)

provider*

文字列

送信に使うGmail ConnectionのProvider ID

gmail_**

limit

文字列

取得するメールの上限値

10(default)

アウトプット

タイプ

概要

List

配列

取得したメールオブジェクトの配列

※使用例のアウトプット参照

使用例

+gmail_get_1:
action>: GmailGet
query: 'from:chan-shiro'
provider: gmail_********************
limit: 10
#=> [
# {
# "id": "1234567890aaaaaa",
# "subject": "ミーティング日程調整",
# "to": "minna <minna@gmail.com>",
# "cc": "aaa <aaa@gmail.com>",
# "from": "bbb <bbb@gmail.com>",
# "date": "2019-03-14T10:41:09.000Z",
# "body": "ミーティングはXX月XX日XX時開始にしましょう。",
# "html": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n<title></title>\r\n</head>\r\n<body>\r\n<div name=\"messageBodySection\">\r\n<div dir=\"auto\">ミーティング日程調整</div>\r\n</div>\r\n</body>\r\n</html>\r\n",
# "attachements": [
# {
# "filename": "combine.pdf",
# "contentType": "application/octet-stream",
# "attachmentId": "ANGjdJ8xf--nLYOiblQaphB0PPmxwiHzqWb189HnjTBSsfYaIEDtgYj2ERCLNrDwMw_okMmC6yPCsip0rHRTvzwH7PbjuEd7TPE1mkYHPANdMCd0K8BU9kNEwR0AEKfw8JFPuHlxcTznvBBVlyjXfdMdjtrRSYRKPKwD-sqRZL0mleYM5TARSDLLKFVl0rhlMNFhvnFwUCLQPx_EmrHByTu2iZOQqDFLwF2gPuAvsvz3qc_ZmrCMs6A825NfRcniz0AzcNvDaCEEAMjbrif6hzOVqnaT1wBeBw-uRX9KxiFLquwuxW3-GI6oRROSG5QdzuzuvCUzcaK4vqxCaGzcDil0OjOOgbYBKCEZMXjKpGfeSq416VpQcj4t3YCaO0c8mfjP7MbwkHxmAS7wT8kGUSMI_0icEtmHKuQNwy3dgQ"
# },
# {
# "filename": "添付画像.png",
# "contentType": "image/png",
# "attachmentId": "ANGjdJ9A5SjcD6C0B3vB-DKy5bt7b8FxTPJpnAVwJ7KmtZ3bPRH8vYyM8XbWqUbNGLvGveHo0f4B0ucUiyTTV1zLRRQigFPTTHtdxE4rZodBQQjvQng3Fnyv82Z8H7rlyA2ST8eXP4sEvaWuJy16Gs8qS_QNVME86VLkSllif19xEwddOK3fM2WXmCG8A8kGdOl1W8xHpJ44wAVgzjxn1ah2VbxKbS-HEjx9n-kZ70rtlIKBlRl-5Nhr2MrifV4LtTvSx6Z-14Iw7RmECkB4PC6fHQk7CseD3z6x3aa4oRDygNeAwakSHbYq-FFajw1elYkCfG6b6t8sIEslCvNHERw8J3JiQfdcWE6QSoXkCSsp56xrkAsS4W__iQQ3hxR1iehbMu_h1rPTw4oANJ3R"
# }
# ]
# },...
# ]

GmailGetAttachments

概要

GmailGetAttachmentsは、GmailGetで取得したメールオブジェクトをインプットにして、メールに添付されているファイルをダウンロードフォルダに保存します。

パラメーター

*は、必須パラメーター

名前

概要

mail*

Gmail

メールオブジェクト

GmailGet で取得したリストから GetItemFromList で取得してください。

ignoreError

真偽値

true の場合、Gmailにメールが添付されていなかった例外を無視します。その他の例外はエラーとなります。

false (default)

アウトプット

タイプ

概要

List

配列

ダウンロードしたファイルの情報

※使用例のアウトプット参照

ダウンロードされたファイルは、ダウンロード一覧を取得アクションで確認できます。

使用例

+gmail_get_1:
action>: GmailGet
query: 'from:chan-shiro'
provider: gmail_********************
limit: 10
+get_item_from_list_1:
action>: GetItemFromList
list: +gmail_get_1
index: 0
+gmail_get_attachments_1:
action>: GmailGetAttachments
mail: +get_item_from_list_1
ignoreError: false
#=> [
# [{
# "size": 12025,
# "filename": "添付画像.png",
# "contentType": "image/png",
# "path": "/path/to/添付画像.png"
# }]
+get_download_files_1:
action>: GetDownloadFiles
#=> [
# "/path/to/添付画像.png"
# ]

SendSlackMessage

概要

SendSlackMessageは、Slackのアプリからbotとしてメッセージを送信するアクションです。この機能により、任意のチャンネルに追加したアプリのbotから自動でメッセージの送信が可能です。

アクション実行前の準備

このアクションを実行する為に、事前にSlack APIでアプリを作成しておく必要があります。 詳しくは、こちら(Slack APIアプリの設定)の記事をご覧ください。

パラメーター

*は、必須パラメーター

名前

概要

provider*

文字列

SlackコネクションのプロバイダーID

slack_**

channel*

文字列

送信先のチャンネル名。プロバイダーIDが入力されている時は、ハンバーガーメニューのslackのアイコンボタンから選択できます。予めチャンネルにアプリを追加しておく必要があります。

#general

text*

文字列

送信するメッセージ

Hello,World!

file

文字列

添付ファイル。ファイルは、「ファイルを取得」アクションなどで、ロボット内にダウンロードされている必要があります。

+get_file_1

アウトプット

タイプ

概要

JSON

オブジェクト

JSONレスポンス

※使用例のアウトプット参照

使用例

メッセージのみ送信する場合

# Slackでメッセージを送信
+send_slack_message:
action>: SendSlackMessage
provider: slack_**
channel: '#test'
text: 'Hello, World!'
# =>
# { "ok": true,
# "channel": "123456",
# "ts": "1558588475.001100",
# "message": {
# bot_id: '123456',
# type: 'message',
# text: 'Hello, World!',
# user: '123456',
# ts: '1558588475.001100',
# team: '123456',
# bot_profile: {
# id: '123456',
# deleted: false,
# name: 'Robotic Crowd',
# updated: 1584090964,
# app_id: '123456',
# icons: [Object],
# team_id: '123456'
# }
# }
# "response_metadata": {
# "scopes": [
# "files:write",
# "chat:write",
# "channels:read"
# ],
# "acceptedScopes": [
# "chat:write"
# ]
# }
# }

ファイルを添付する場合

# ファイルを取得
+get_file_1:
action>: GetFile
filename: 'rc_hogehoge'
provider: local
# Slackでメッセージを送信
+send_slack_message_1:
action>: SendSlackMessage
provider: slack_**
channel: '#test'
text: 'ファイルを送信する'
file: +get_file_1
# =>
# { "ok": "true",
# "file": {
# "id": "123456",
# "created": "1583938905",
# "timestamp": "1583938905",
# "name": "test.txt",
# "title": "test.txt",
# "mimetype": "text/plain",
# filetype: "text",
# pretty_type: "プレーンテキスト",
# ...
# },
# "response_metadata": {
# "scopes": [
# "files:write",
# "chat:write",
# "channels:read"
# ],
# "acceptedScopes": [
# "files:write"
# ]
# }
# }

GetChatworkMessages

概要

GetChatworkMessages は、Chatwork のルームからメッセージを取得するアクションです。 force パラメータを設定することで、メッセージの取得方法を指定することができます。

パラメーター

*は、必須パラメーター

名前

概要

provider*

文字列

プロバイダーID

chatwork_**

room_id*

文字列

メッセージを取得するルームID。プロバイダーIDが入力されている時は、chatworkのアイコンボタンから選択できます。

1234567890

force

真偽値

未取得にかかわらず最新の100件を取得するか。trueの場合、未取得にかかわらず最新の100件を取得します。falseの場合、未読のメッセージのみ取得します。未読のメッセージがない場合は、空文字が返却されます。デフォルトは false です。

false

ルームIDの取得方法

Chatwork にて送信先のルームを開きます。URLの「#!rid」より後の数字がルームIDです。

アウトプット

タイプ

概要

JSON

オブジェクト

JSONレスポンス

※使用例のアウトプット参照

使用例

# Chatworkからメッセージを取得
# +get_chatwork_messages_1:
# action>: GetChatworkMessages
# provider: chatwork_**
# room_id: 1234567890
# force: false
# =>
# [ { message_id: '1234567890',
# account:
# { account_id: 123456,
# name: '山田 太郎',
# avatar_image_url: 'https://appdata.chatwork.com/avatar/ico_default_green.png' },
# body: 'Hello Charwork! read',
# send_time: 1576740683,
# update_time: 0
# },
# ....
# ]

SendChatworkMessage

概要

SendChatworkMessage は、Chatwork アカウントからメッセージを送信するアクションです。指定したルームにメッセージを送信します。self_unread パラメータを設定することで、追加したメッセージを自分から見て未読とするか既読とするかを選択できます。

パラメーター

*は、必須パラメーター

名前

概要

provider*

文字列

プロバイダーID

chatwork_**

room_id*

文字列

送信先のルームID。プロバイダーIDが入力されている時は、chatworkのアイコンボタンから選択できます。

1234567890

body*

文字列

メッセージ本文

Hello Chatwork!

file

文字列

添付ファイル。ファイルは、「ファイルを取得」アクションなどで、ロボット内にダウンロードされている必要があります。添付ファイルを送る場合、メッセージ本文は任意となります。

+get_file_1

self_unread

真偽値

追加したメッセージを自分から見て未読とするか。true の場合は未読、false の場合は既読となります。デフォルトは false(既読)です。添付ファイルを送る場合、自動的にfalseとなります。

false

ルームIDの取得方法

Chatwork にて送信先のルームを開きます。URLの「#!rid」より後の数字がルームIDです。

アウトプット

タイプ

概要

JSON

オブジェクト

JSONレスポンス

※使用例のアウトプット参照

使用例

メッセージのみ送信する場合

# Chatworkにメッセージを送信
+send_chatwork_message_1:
action>: SendChatworkMessage
provider: chatwork_**
room_id: 1234567890
body: 'Hello Chatwork!'
self_unread: false
# =>
# {
# "message_id": "1234567890"
# }

添付ファイルを送信する場合

# Chatworkにメッセージを送信
+send_chatwork_message_1:
action>: SendChatworkMessage
provider: chatwork_**
room_id: 1234567890
body: 'Hello Chatwork!'
file: +get_file_1
# =>
# {
# "message_id": "1234567890"
# }

OutlookSend

概要

OutlookSendは、Outlookアカウントからメールを送信するアクションです。

パラメーター

*は、必須パラメーター

名前

概要

provider*

文字列

OutlookコネクションのProvider ID

outlook_**

to*

文字列

メールの送信先アドレス

john.doe@example.com

subject*

文字列

送信するメールの件名

Hello! John!

body*

文字列

送信するメールの本文

Hi John, I'm very happy to send this mail to you.

attachment

文字列

メールに添付するファイルのパス

/tmp/sample.txt

アウトプット

タイプ

概要

Boolean

真理値

メール送信に成功したときにtrue

true

使用例

+outlook_send:
action>: OutlookSend
provider: 'outlook_e7502c3b8b8147410ce2'
to: 'john.doe@example.com'
subject: 'Hello! John!'
body: 'Hi John, I\'m very happy to send this mail to you.'
attachment: '/tmp/sample.txt'

OutlookGet

概要

OutlookGetは、Outlookアカウントからメールを取得するアクションです。

パラメーター

*は、必須パラメーター

名前

概要

provider*

文字列

OutlookコネクションのProvider ID

outlook_**

folder

文字列

メールフォルダー名(パス指定も可能)

受信トレイ

query

文字列

クエリパラメーター

$select=id,subject (検索条件の詳細についてはこちらを参照してください。)

limit*

数値

最大取得件数(0の場合は、全件取得)

10

アウトプット

タイプ

概要

List

配列

取得したメールオブジェクトの配列

例は下記参照(メールオブジェクトの詳細についてはこちらを参照してください。)

[
{
"@odata.etag": "W/\"CQAAABYAAABtaUN2QyPsS6QzjVEesIOcAAAFyQ/9\"",
"id": "AAMkADY0YTkzNDM3LWYwZGItNDhlOC05YWU4LTU0Nzc5OWM1ODEyYQBGAAAAAACnJlOhO_yqRoxxwC8pFn_4BwBtaUN2QyPsS6QzjVEesIOcAAAAAAEMAABtaUN2QyPsS6QzjVEesIOcAAAFzZwSAAA=",
"createdDateTime": "2020-06-29T06:58:59Z",
"lastModifiedDateTime": "2020-06-29T06:59:00Z",
"changeKey": "CQAAABYAAABtaUN2QyPsS6QzjVEesIOcAAAFyQ/9",
"categories": [],
"receivedDateTime": "2020-06-29T06:58:59Z",
"sentDateTime": "2020-06-29T06:58:58Z",
"hasAttachments": true,
"internetMessageId": "<TYBP286MB03513C9BE95C31DCB2B179F9D16E0@TYBP286MB0351.JPNP286.PROD.OUTLOOK.COM>",
"subject": "this is test",
"bodyPreview": "hello world",
"importance": "normal",
"parentFolderId": "AAMkADY0YTkzNDM3LWYwZGItNDhlOC05YWU4LTU0Nzc5OWM1ODEyYQAuAAAAAACnJlOhO_yqRoxxwC8pFn_4AQBtaUN2QyPsS6QzjVEesIOcAAAAAAEMAAA=",
"conversationId": "AAQkADY0YTkzNDM3LWYwZGItNDhlOC05YWU4LTU0Nzc5OWM1ODEyYQAQAOMe6S_MZVJIqo6jq-_0Ics=",
"conversationIndex": "AQHWTeLD4x7pL4xlUkiqjqOr/7Qhyw==",
"isDeliveryReceiptRequested": false,
"isReadReceiptRequested": false,
"isRead": false,
"isDraft": false,
"webLink": "https://outlook.office365.com/owa/?ItemID=AAMkADY0YTkzNDM3LWYwZGItNDhlOC05YWU4LTU0Nzc5OWM1ODEyYQBGAAAAAACnJlOhO%2ByqRoxxwC8pFn%2B4BwBtaUN2QyPsS6QzjVEesIOcAAAAAAEMAABtaUN2QyPsS6QzjVEesIOcAAAFzZwSAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
"inferenceClassification": "focused",
"body": {
"contentType": "text",
"content": "hello world"
},
},
]

使用例

+outlook_get:
action>: OutlookGet
provider: 'outlook_e7502c3b8b8147410ce2'
folder: '受信トレイ'
query: '$select=id,subject'
limit: 10

OutlookGetAttachments

概要

OutlookGetAttachmentsは、メールに添付されたファイルを取得するアクションです。

パラメーター

*は、必須パラメーター

名前

概要

provider*

文字列

OutlookコネクションのProvider ID

outlook_**

mail*

JSON

Outlookのメールオブジェクト

OutlookGetのアウトプットを参照

アウトプット

タイプ

概要

Array

配列

取得したファイルオブジェクトの配列

例は下記参照

[
{
"filename": "excel.xlsx",
"contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"path": "/tmp/a4b81858-2453-40fa-83df-992e14a10e1a/download/excel.xlsx",
"size": 8364
}
]

使用例

# Outlookメールを取得する
+outlook_get_1:
action>: OutlookGet
provider: outlook_1237bc9d0838a4b4cc1e
folder: '受信トレイ'
query: '$filter=hasAttachments eq true'
limit: 10
# リストから要素を取得
+get_item_from_list_1:
action>: GetItemFromList
list: +outlook_get_1
index: '0'
+outlook_get_attachments_1:
action>: OutlookGetAttachments
provider: 'outlook_e7502c3b8b8147410ce2'
mail: +get_item_from_list_1