View in English

  • メニューを開く メニューを閉じる
  • Apple Developer
検索
検索を終了
  • Apple Developer
  • ニュース
  • 見つける
  • デザイン
  • 開発
  • 配信
  • サポート
  • アカウント
次の内容に検索結果を絞り込む

クイックリンク

5 クイックリンク

ビデオ

メニューを開く メニューを閉じる
  • コレクション
  • トピック
  • すべてのビデオ
  • 利用方法

その他のビデオ

ストリーミングはほとんどのブラウザと
Developerアプリで視聴できます。

  • 概要
  • トランスクリプト
  • コード
  • SMSメッセージフィルタの紹介

    SMSメッセージフィルタの拡張機能を使用すると、不明な送信者からのSMSメッセージをフィルタリングすることで、メッセージの管理ができるようになります。このような拡張機能を備えたAppを作成する方法を紹介します。これで、メッセージの内容や他の識別手法に基づいて、SMSメッセージをフォルダやサブフォルダに自動的に振り分けることができるようになります。

    リソース

      • HDビデオ
      • SDビデオ
  • このビデオを検索

    ようこそWWDCへ Ajay Singhです 今日はSMSメッセージ フィルタについて お話ししたいと思います これによってメッセージ フィルタ拡張を作成し 不明な差出人からの SMSメッセージを 分類するのに役立ちます まずSMSメッセージフィルタ の仕組みを説明します 次にiOS 16の 新機能についてお話しします iOS 16 APIを使って メッセージフィルタ拡張の 作成方法の例をご覧いただき その拡張を使用した場合 メッセージに どう現れるかお見せします 最後にインドでの SMSフィルタにおける 改良点をお話しします

    まずはSMSメッセージ フィルタについてです 多くの国でSMSメッセージが ビジネスで 顧客への取引に関する通知や マーケティングや お知らせ そして リマインダーに使用されています この例には さまざまな SMSメッセージがあります 短いコードや アルファベットコードや 普通の電話番号があります これでは インボックスが乱雑で 大切な人たちからの 個人メッセージが 見つけにくくなります

    iOSは不明な送信者を フィルタできますが 毎日何通も受け取れば 不明な送信者フォルダも すぐに未読メッセージで 一杯になってしまいます 多くの人にとって 自動フィルタは重要です iOSは安全で Sandboxベースの 拡張モデルを提供し 不明な差出人からのメッセージ’を さらに分類します App StoreからSMSフィルタ Appをダウンロードできます インストールすると フィルタをオンできます 「Settings」で「メッセージ」を選び 「Unknown & Spam」で 「Filter Unknown Senders」をオンにし お好みに合わせて SMSフィルタを選びます ここには2つ インストールされていますが 作動できるのは1つだけです

    iOS 14以降ならメッセージに 新しいフォルダが現れます 「Transactions」と「Promotions」 そして「Junk」です これらのフォルダによって メッセージがまとめられ 重要なものを検索できます どのフィルタを選んでも メッセージは同じ 分類構成を提供します 「Transactions」と「Promotions」 そして「Junk」です さらに分類を 詳細化したいという みなさんの意見を たくさん受け取りました そこでiOS 16でFilter Classification APIを さらに向上させました SMSメッセージ フィルタ拡張を さらに12のサブカテゴリに 分類できるようになります

    SMSフィルタ拡張に 追加されるサブカテゴリは 以下の通りです 新しいカテゴリは「Transactions」と 「Promotions」の トップカテゴリの下につき そこからさらに分類し 体験を向上させることが できます 例えばインドでは 金融取引に関する メッセージを 大量に受け取ります これらには銀行口座の活動や クレジットカードの 使用警告などです これらのメッセージは 「Transactions」下の 「Finance」サブフォルダに 分類されます SMSメッセージフィルタの 流れを見てみましょう 流れは2つに分けられます Configurationと Runtime Classificationです Configurationでは ユーザーは設定で フィルタを選びます これによりiOS 16の 新APIが起動され フィルタがサポートする Capabilitiesを要求します サポートするカテゴリと サブカテゴリで これに応えます この例の場合 フィルタはサブカテゴリの FinanceとOrdersと Couponsを返します iOSはこれらの Capabilitiesを検証し メッセージの インボックスにおいて 適切なフォルダを更新します Runtime Classificationでは 不明な送信者から SMSメッセージを受信する度に iOSはフィルタをクエリし それが属するカテゴリと サブカテゴリを決定します ActionとSub-actionが 使われているのがわかります フィルタはConfigurationで 宣言したCapabilitiesの 1つで応える必要があります するとSMSメッセージは メッセージ内の 対応するサブフォルダに 現れます 簡単なメッセージ フィルタ拡張を作り どのようにAPIが使われ どうメッセージに現れるか 見てみましょう

    Xcodeでメッセージ フィルタ拡張を 作成するところから始めます 新しいターゲットを作り Template Selectionに行くと メッセージフィルタ拡張が 選択の1つに現れます メッセージフィルタ拡張を 選んで「Next」をクリックします フィルタに名前をつけ 「Finish」をクリックします

    ターゲットが作成され MessageFilterExtension .swiftが必要機能と共に 自動設定されます iOS 16には 新しいAPIハンドルである capabilitiesRequestが あります ILMessageFilterCapa bilitiesQueryResponseを transactional または promotionalSubActionsで 埋めます 最高5つのSubActionsを 指定できます ここではFinanceと Orders Health SubActionsを Transactions下で そしてCouponsとOffersを Promotionsでサポートします フィルタ拡張を作成し インストールします 設定でフィルタを選ぶと メッセージインボックスの サブカテゴリが 宣言したものに更新されます FinanceとOrdersとHealthが All Transactions下に現れ CouponsとOffersが All Promotions下に現れます これらの設定が 確認できたところで SMSメッセージを 受け取った時 iOSに適切なカテゴリを 返せるように シンプルなロジックを 定義しましょう まずmessage body textを queryRequestから抽出します 特定のキーワードが 見つかれば それに相応しいActionと SubActionを返します ここではdebitedの コードを足し filterActionを transactionとして filterSubactionを transactionalFinanceで返し 同様にキーワードの couponが見つかれば promotionとpromotional Couponsが返されます またTransationsと Promotions内の 他のsub classificationsの ロジックも更新できます ただしfilterActionと filterSubActionで 組み合わせを間違えた場合 iOSはSubActionを無効にし Actionだけを受け入れます 例えばもし TransactionをAction Couponsを SubActionとすれば All Transactionsフォルダ のみに配信されます

    ここにdebitedという キーワードを含んだ 銀行のメッセージがあり Financeサブフォルダに 分類されました

    また別の例では キーワードのcouponを含んだ セールのメッセージがあり これはメッセージ内で Couponsに分類されました

    iOS 16ではユーザーの デモグラフィックに最も相応しい サブカテゴリを選択できます 最初の例では All Transactions下に OrdersとRemindersと Healthと Public Servicesと Weatherがあります 次の例では All Transactions下に FinanceとRemindersと HealthとRewardsが 含まれています そしてOffersは All Promotions下です フィルタ拡張は これらのサブカテゴリで 違ったユーザー体験を 提供できます AppleはインドでSMS フィルタを提供していますが iOS 16での改善を使用して 改良を加えました インドのApple SMSフィルタは さらなるサブフォルダを サポートし All Transactions下の FinanceとOrders そしてRemindersがあります 銀行の取引は Financeに現れます 出前や荷物の 配達メッセージは Ordersにまとめられます 重要なイベントやToDoは Remindersに現れます おさらいです ここでは SMSメッセージフィルタで メッセージをTransactionsと PromotionsとJunkに 分類する方法を見ました iOS 16ではメッセージ フィルタ拡張で 12のサブカテゴリに 分類できるようになりました 詳細はこのビデオの リンクにある APIドキュメントを ご覧ください SMSメッセージを 整理するための 創造的なアイデアを 楽しみにしています また みなさんのご意見で SMSメッセージフィルタを さらに向上させましょう

    • 7:02 - Message filter extension example

      func handle(_ capabilitiesRequest: ILMessageFilterCapabilitiesQueryRequest, context: ILMessageFilterExtensionContext, completion: @escaping (ILMessageFilterCapabilitiesQueryResponse) -> Void) {
          let response = ILMessageFilterCapabilitiesQueryResponse()
          // choose up to five sub-categories supported by the filter
          response.transactionalSubActions = [.transactionalFinance,
                                              .transactionalOrders,
                                              .transactionalHealth]
          response.promotionalSubActions   = [.promotionalCoupons,
                                              .promotionalOffers]
          completion(response)
      }
    • 8:16 - Return categories for incoming messages

      func handle(_ queryRequest: ILMessageFilterQueryRequest, context: ILMessageFilterExtensionContext, completion: @escaping (ILMessageFilterQueryResponse) -> Void) {
          guard let message = queryRequest.messageBody else { return }
          let response = ILMessageFilterQueryResponse()
          switch(message) {
          case _ where message.contains("debited"):
              response.filterAction = .transaction
              response.filterSubAction = .transactionalFinance
              break
          case _ where message.contains("coupon"):
              response.filterAction = .promotion
              response.filterSubAction = .promotionalCoupons
              break
           // update other cases
          }
          completion(response)
      }

Developer Footer

  • ビデオ
  • WWDC22
  • SMSメッセージフィルタの紹介
  • メニューを開く メニューを閉じる
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • SF Symbols
    メニューを開く メニューを閉じる
    • アクセシビリティ
    • アクセサリ
    • App Extension
    • App Store
    • オーディオとビデオ(英語)
    • 拡張現実
    • デザイン
    • 配信
    • 教育
    • フォント(英語)
    • ゲーム
    • ヘルスケアとフィットネス
    • アプリ内課金
    • ローカリゼーション
    • マップと位置情報
    • 機械学習
    • オープンソース(英語)
    • セキュリティ
    • SafariとWeb(英語)
    メニューを開く メニューを閉じる
    • 英語ドキュメント(完全版)
    • 日本語ドキュメント(一部トピック)
    • チュートリアル
    • ダウンロード(英語)
    • フォーラム(英語)
    • ビデオ
    Open Menu Close Menu
    • サポートドキュメント
    • お問い合わせ
    • バグ報告
    • システム状況(英語)
    メニューを開く メニューを閉じる
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles(英語)
    • フィードバックアシスタント
    メニューを開く メニューを閉じる
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program(英語)
    • News Partner Program(英語)
    • Video Partner Program(英語)
    • セキュリティ報奨金プログラム(英語)
    • Security Research Device Program(英語)
    Open Menu Close Menu
    • Appleに相談
    • Apple Developer Center
    • App Store Awards(英語)
    • Apple Design Awards
    • Apple Developer Academy(英語)
    • WWDC
    Apple Developerアプリを入手する
    Copyright © 2025 Apple Inc. All rights reserved.
    利用規約 プライバシーポリシー 契約とガイドライン