特定のメールアドレスに送信される定型のメールの、添付ファイルをkintoneに自動で登録できるようにしたいと考えています。
JOYZO様の
「Zapierによるkintoneと外部サービス・アプリの連携を設定してみよう!」
https://www.joyzo.co.jp/blog/1002
を参考にさせていただいて試してみました。
まず、ZapierのTRIGGERに、GmailのNew Attachmentを設定しました。
次に、ACTIONにkintoneのCreate Recordを設定しました。
そして、kintoneのアプリにGmailのフィールドを対応させるSet up kintone Recordの画面で、kintoneのアプリのフィールドの一覧に文字列_1行フィールドは表示されるのですが、添付ファイルフィールドが表示されず、Gmailの添付ファイルをkintoneの添付ファイルフィールドに取り込む設定ができませんでした。
【kitntoneのアプリの画面】
【Zapierの画面】
どこかを修正すれば、Zapierでkintoneに添付ファイルを取り込むことができるのでしょうか。
あるいは、Zapierでなくても、kintoneにメールの添付ファイルを取り込む手法がありましたら、教えていただけますと助かります。
よろしくお願いいたします。
中村さんこんにちは。
kintoneのZapier連携は添付ファイルフィールドに対応していません。
gmailからPOP3でメールを定期的に受信して、コマンドラインツール(cli-kintone)でkintoneにインポートするプログラムを書くのが手っ取り早いかなと思います。
Google Gmail APIでメールを取得する
http://qiita.com/ryurock/items/4b063372ede81780c3c8
コマンドラインツールの使い方
https://cybozudev.zendesk.com/hc/ja/articles/202957070
門屋様
やりたいことがノンプログラミングでできる、というのが嬉しいですが、この場合は難しいのですね。
ご回答ありがとうございました。
> gmailからPOP3でメールを定期的に受信して、
の代わりに、Windows10のOutlook2016でメールを定期的に受信し、kintoneに添付ファイルを自動登録することができました。
> コマンドラインツール(cli-kintone)でkintoneにインポートするプログラムを書くのが手っ取り早いかなと思います。
の部分はOutlookのVBAでプログラムを書いて、メールの受信時に、電子メールの仕分けルールの「スクリプトを実行する」で、VBAを実行しました。
以下、具体的な手順をご説明します。
まず、準備として以下の作業を行います。
- 「作業用フォルダ」にcli-kintone.exeを配置
- 「作業用フォルダ」の直下にファイルの保存用に「files」サブフォルダを作成(名前は任意)
- kintoneにアプリストアの「ファイル管理」アプリを追加
次に、以下のVBAを上記の環境に合わせて変更して、Outlookに追加します。
Sub Sample(メール As MailItem)
' 環境に合わせて、下記を変更
作業用フォルダ = "C:\Users\ユーザ名\Documents\"
保存先フォルダ = "files"
CSVファイル = "data.csv"
サブドメイン名 = "subdomain"
アプリID = 999
APIトークン = "apitokenapitokenapitokenapitokenapitoken"
' 手順1 : 添付ファイルの保存と、CSVファイルへの書き出し
保存先フォルダ = 作業用フォルダ & 保存先フォルダ
CSVファイル = 保存先フォルダ & "\" & CSVファイル
添付ファイル名 = """"
添付ファイル数 = 0
Open CSVファイル For Output As #1
For Each 添付ファイル In メール.Attachments
添付ファイル.SaveAsFile (保存先フォルダ & "\" & 添付ファイル.DisplayName)
If 添付ファイル数 > 0 Then 添付ファイル名 = 添付ファイル名 & vbCrLf
添付ファイル名 = 添付ファイル名 & 添付ファイル.DisplayName
添付ファイル数 = 添付ファイル数 + 1
Next 添付ファイル
添付ファイル名 = 添付ファイル名 & """"
Print #1, "Title,Description,File" & vbCrLf;
Print #1, メール.Subject & "," & メール.SenderEmailAddress & "," & 添付ファイル名 & vbCr;
Close #1
' 手順2 : kintoneへアップロード
コマンド = 作業用フォルダ & "cli-kintone.exe -a " & アプリID & " -d " & サブドメイン名 & " -t " & APIトークン & " -e sjis -b " & 保存先フォルダ & " -f " & CSVファイル
Set シェル = CreateObject("WScript.Shell")
シェル.Run コマンド , 0, True
End Sub
Outlookの仕訳ルールの作成でメールの受信時に「スクリプトを実行する」で上記のVBAを選択します。
すると、メールの受信時に、自動でkintoneの「ファイル管理」アプリに添付ファイルをアップロードすることができました。
ご参考まで。