WhatsAppのURLスキームをDrafts、Launch Center Pro、ブックマークレットで使う

WhatsAppのURLスキームをDrafts、Launch Center Pro、ブックマークレットで使う
WhatsAppのURLスキームをDrafts、Launch Center Pro、ブックマークレットで使う

私はWhatsAppをあまり使用していませんが[1]、昨夜アプリのドキュメントでURLスキームについて言及されていたので、少し試してみようと思いました。

WhatsAppのURLスキームは非常に基本的なものですが、うまく動作しない部分が1つあります。スキーム自体は当然ながら問題なく、whatsapp://WhatsAppを起動したいだけならLaunch Center Proから使用できます。URLスキームにはパラメータも用意されtextており、例えば、アプリのメッセージ作成欄に自動的に挿入される(適切にエンコードされた)テキストメッセージを渡したり、abid「アドレス帳ID」を指定して特定の連絡先にメッセージを送信したりできます。

WhatsAppチームは次のように説明しています。

チャットを開始する連絡先のアドレス帳ID。このIDの連絡先にWhatsApp対応の電話番号が1つしかない場合、アプリケーションはその連絡先との会話を開始します。このIDの連絡先にWhatsApp対応の電話番号が複数ある場合、アプリケーションはチャット可能なすべての電話番号を含むメニューを表示します。連絡先にWhatsApp対応の電話番号がない場合、このIDの連絡先が存在しない場合、またはこのパラメータが指定されていない場合は、アプリケーションはWhatsAppでチャット可能なすべての連絡先をリストした連絡先ピッカーを表示します。

次のような URL を使えば、連絡先の「Alex」に「Test」というテキスト メッセージを送信できると思いました。

whatsapp://send?abid=Alex&text=Test

しかし、実際にはパラメータがうまく動作しませんでしたabid。電話番号、パーセントエンコードされた名前と電話番号、メールアドレスで試してみましたが、WhatsAppabidに渡したパラメータを認識させることができず、アプリは連絡先ピッカーを表示し続けます。そこで、この記事では、アプリ内蔵の連絡先ピッカーから受信者を選択して、WhatsAppにテキストメッセージを送信する方法をご紹介します。もしうまくabid動作するようでしたら、ぜひ教えてください。

URLスキームとtextパラメータは、Launch Center ProやDraftsなどのアプリと簡単に連携できます。Launch Center Proでは、キーボードプロンプトにメッセージを入力し、入力したテキストでWhatsAppを起動できるアクションを作成できます。

whatsapp://send?text=[[prompt]]

一方、Drafts では、アプリのタグを使用して、URL アクションで下書きの内容を WhatsApp に送信できます。

whatsapp://send?text=[[draft]]

さらに一歩進んで、ブックマークレットを使用して、現在の Web ページの URL を WhatsApp アドレス帳の連絡先に送信することもできます。

javascript:window.location='whatsapp://send?text='+encodeURIComponent(location.href);

更新:読者のErnesto Miquelさんのおかげで、「アドレス帳ID」パラメータをうまく動作させることができました。このIDは、WhatsAppが友達リスト内の各連絡先に関連付ける一意の文字列です。開発者はiOS SDKを使ってこのIDを取得できるかもしれませんが、一般ユーザー向けの回避策もあります。

最新のアップデートにより、WhatsAppはチャット履歴をiCloudにバックアップできるようになりました。そして、ご存知の通り、iCloudのデータはMacの「Mobile Documents」フォルダから閲覧可能です。WhatsAppユーザーのIDを見つけるには、WhatsAppをiCloudにバックアップし、Macの「Mobile Documents」フォルダにある「WhatsApp」フォルダを見つけます。そのフォルダ内で「アカウント」を選択し、アカウント名または電話番号の「backup」をクリックすると、「ChatStorage.sqlite」というファイルがあります。このファイルをコピーし、Mac用の無料SQLiteデータベースブラウザをダウンロードしてください。

ファイルを開き、「データの参照」をクリックし、テーブルのドロップダウンメニューから「ZWACHATSESSION」を選択します。ここには、バックアップしたチャットセッションと、「パートナー名」や「最後のメッセージ」などのフィールドが表示されます。これらのフィールドの横には、「ZCONTACTABID」というフィールドも表示されます。これは、私の場合、WhatsAppの連絡先の3桁のIDの並びでした。

この ID を使用すると、URL スキームを微調整し、Launch Center Pro/Drafts で作成したメッセージを使用して WhatsApp を起動し 特定のチャット セッションに直接参加することができます。

whatsapp://send?abid=122&text=[[prompt]]

WhatsAppはApp Storeで無料で入手できます。


  1. 「ほとんど」というのは、1日に数回程度という意味です。私が見た限りでは、このサービスはAppleのiMessageよりも信頼性が高く(WhatsAppのダウンタイムは一度も見たことがありません)、アプリのメディア添付オプションはメッセージアプリよりも使いやすいと感じています。iPadやMac用のクライアントがないのは残念です。↩︎

クラブ・マックストーリーズ

追加コンテンツと特典にアクセスする

Club MacStories は 2015 年に設立され、ほぼ 10 年間にわたって毎週独占コンテンツを提供してきました。

毎週、毎月の電子メール ニュースレターから始まったものが、すべての MacStories ファン向けに設計されたメンバーシップ ファミリーに成長しました。

詳細については、こちらおよびクラブの FAQ をご覧ください。

Club MacStories : アプリ、ヒント、自動化ワークフロー、長​​文執筆、MacStories Unwind ポッドキャストへの早期アクセス、定期的な景品など、盛りだくさんの情報を満載した、電子メールと Web 経由の週刊および月刊ニュースレター。

Club MacStories+ : Club MacStories が提供するすべての機能に加え、アクティブな Discord コミュニティ、クラブの過去のカタログ全体を閲覧するための高度な検索機能とカスタム RSS 機能、ボーナス コラム、多数のアプリ割引などが含まれます。

Club Premier : 上記のすべてに加え、早期に、広告なしで、高ビットレートのオーディオで配信される当社の主力ポッドキャストの拡張バージョンである AppStories+ が含まれます。