8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Salesforceから簡単にSMS送信等ができるTwilio for Salesforceを試してみた

Last updated at Posted at 2019-10-03

Twilio for Salesforceでできること

  • プロセスビルダーからSMS送信やTwilio Studioを呼び出せる

  • キャンペーンに関連付けられたリードおよび連絡先に、カスタマイズされたSMSメッセージを送信

  • Salesforceレコードページから連絡先と1対1でメッセージ(Chat形式のコンポーネントを配置できる)

  • Twilio REST APIをApexで呼び出せる(電話とかSMS送信とかを自由に組み込めるみたい)

チュートリアル

基本的には以下のドキュメントをみながら設定していくことで簡単に上記のことができる。
Twilio for Salesforce公式ドキュメント

プロセスビルダーからSMS送信

流れ(全部チュートリアルに書いてあります)

  • Salesforceの組織にAppExchange「Twilio for Salesforce」をインストール
  • Twilioアカウントの用意 sign up
  • TwilioでUSの電話番号を購入 ※投稿時点で日本の電話番号はSMS未対応のため
  • Twilioで Messaging Serviceを作成し購入したTwilio電話番号を登録
  • Salesforce側でTwilioの認証を行う
  • プロセスビルダー作成
  • レコードを更新してSMS送信検証

商談の金額が一定以上の時に、商談の所有者の電話番号にSMS送信するプロセスビルダー

スクリーンショット 2019-10-03 22.36.42.png

商談のレコード

この金額を変えてみる
スクリーンショット 2019-10-03 22.43.33.png

商談所有者の宛先にTwilio電話番号からSMSが送信されていることを確認

スクリーンショット 2019-10-03 22.50.58.png

かなり簡単にできましたね。

Salesforceレコードページから連絡先と1対1でメッセージ(Chat形式のコンポーネントを配置できる)

ページレイアウトに埋め込むだけでこんなこともできるみたいですね。
スクリーンショット 2019-10-03 22.55.59.png

ApexでSMSを送信してみる

テスト用VFページ
SendSMSボタン押したらSMSを送信
スクリーンショット 2019-10-03 23.10.19.png

Visualforce

<apex:page controller="TestSendSMSTwilioFromApexPageController">
  <!-- Begin Default Content REMOVE THIS -->
  <h1>Congratulations</h1>
  This is your new Page<br/>
  sid:<apex:outputText value="{!sid}"></apex:outputText><br/>
  totalSegments:<apex:outputText value="{!totalSegments}"></apex:outputText><br/>
  media:<apex:outputText value="{!media}"></apex:outputText>
   <apex:form >
          
    <apex:commandButton action="{!sendSMS}" value="SendSMS" id="theButton"/>

   </apex:form>
  <!-- End Default Content REMOVE THIS -->
</apex:page>

Apex Controller

public with sharing class TestSendSMSTwilioFromApexPageController {

    public String sid { get; set; }
    public Integer totalSegments { get; set; }
    public String media { get; set; }
    
    public PageReference sendSMS() {
        //Post Example
        TwilioSF.TwilioApiClient api = new TwilioSF.TwilioApiClient();
        api.addUrlPart('Accounts');
        api.addUrlPart('Account SIDをここに書く');
        api.addUrlPart('Messages.json');
        
        api.addParam('To','宛先の電話番号(+819012345678)');
        api.addParam('From','Twilioの電話番号');
        api.addParam('Body','Here is my message');
        TwilioSF.TwilioApiClientResponse response = api.doPost();
        
        //Example with key value pairs
        sid = response.getTwilioJsonParser().get('sid').getString();
        totalSegments = response.getTwilioJsonParser().get('num_segments').getInteger();
        
        //Example a key with object
        media = response.getTwilioJsonParser().get('subresource_uris').get('media').getString();

        return null;
    }


}

送信結果
Inkedsid_LI.jpg

まとめ

Twilio for SalesforceをSalesforceに導入することで結構簡単に、SMSの送信などができることがわかりました。
ApexでTwilioのRest APIを叩くところがSMS送信しかドキュメントが見当たらなかったので、電話など他の機能もドキュメントが欲しいですね。。

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?