Dropbox にPDF ファイルがアップロードされたら Twilio で FAX 送信


Dropbox の特定のフォルダーに PDF ファイルがアップロードされたら、Twilio の API で FAX 送信します。

Twilio の API

API で FAX 送信できます。

TITLE: プログラマブルFax REST API
URL: https://jp.twilio.com/docs/fax/api

Microsoft Flow

Microsoft Flow で一連の動作を実行します。

Dropbox の特定フォルダーへのファイル アップロードをトリガーにします。
https://docs.microsoft.com/ja-jp/connectors/dropbox/

Twilio の API で FAX 送信できるファイルは、URL でアクセス可能な場所におかれた PDF のみです。そのため Dropbox 以外の場所にいったんコピーします。ここでは別の Web サーバーに FTP 転送しています。

Azure Automation の Runbook で Twilio の API 操作

PowerShell の Invoke-RestMethod コマンドレットで Twilio の API を実行します。
Dropbox にアップロードされたファイル名をパラメータで渡す想定です。

Param
(
  [Parameter (Mandatory= $true)]
  [string] $filename
)

$USER = <Twilio の アカウントSID>
$PASS = <Twilio の AUTHTOKEN>
$secpasswd = ConvertTo-SecureString $PASS -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($USER, $secpasswd)

Invoke-RestMethod -Uri "https://fax.twilio.com/v1/Faxes/" -Credential $cred -Method POST -Body @{To=<宛先番号>; From=<Twilio で取得した番号>; MediaUrl="http://example.com/$filename"}

動作確認

Dropbox のフォルダーに PDF をアップロードすることで、宛先の番号宛にファックス送信されることを確認します。