米Slackは11月16日、同17日まで年次のユーザーカンファレンス「Slack Frontiers」を開催。本稿では、カンファレンスで発表された新機能を紹介する。
Slackは今年7月にSalesforceによる買収が完了し、両社で注力しているのがSalesforceのソリューションをSlack上に構築する仕事のための空間である「Digital HQ(会社を動かすデジタル中枢)」を構築できる製品の開発だ。これを効果的に実現するために、Slackプラットフォームを基礎から新たに再構築している。
Slackコネクトの組織数が最大250に拡大
現在、10万以上の組織が顧客や社外パートナーとの仕事でSlackコネクトを利用しており、これまで最大20の組織とつながることができるが、2022年初めには1つのチャネルで最大250の組織とコラボレーションできるようになる。
また、2022年後半には何千もの企業がかかわる大規模で複雑なプロジェクトでも、Slack上でセキュアな職場環境の設定を可能としている。
例えば、何百ものベンダーが参加する大規模イベントを計画している場合でも、何千ものベンダーが複数年にわたって関わる建設プロジェクトを管理する場合でも、誰もが仕事に必要なチャンネルやアプリ、メンバーにアクセスできようになる。
一から作り直したワークフロービルダー
一方、営業担当者や管理者、マーケティング担当者などのビジネスユーザーからエンジニアまで、誰でも各自のSlackをカスタマイズできるだけでなく、働き方の変化に合わせてDigital HQを調整できる機能として、2年前から提供しているワークフロービルダーを一から作り直した。
これにより、コーディングなしに自動化することを可能とし、どのようなユーザーでも既存アプリのパーツをドラッグ&ドロップしてワークフローを作成できるほか、働き方に合わせてカスタマイズも可能となり、使い方のトレーニングは必要ないという。2022年の提供を予定している。
一例として、営業部門宛てに特定の地域であらかじめ設定されている閾(しきい)値を満たす商談が入ってきた場合、設定された閾値をトリガーにして、地域のリセラーパートナーとのSlackチャンネルを自動的に作成するワークフローを作成することができる。「Salesforceの通知」ブロックをドラッグして「Slackコネクトチャンネル」ブロックに接続するだけで自動ワークフローが完成する。
ワークフロービルダーは、さまざまなユーザー企業において150万を超えるワークフローが作成され、2億回以上も使われており、すべてにおいてコードは1行も書かれていないという。今回、この手軽さを難しい問題を抱える開発者にも提供するための新機能も発表している。
関数、ワークフロー、トリガーがあれば、自動化は容易となり、関数はデータベースのクエリやAPIの呼び出しなど単一のステップを定義するもので、それらはワークフローとしてコードへの組み込みを可能としており、チャンネル作成などネイティブのSlack関数をワークフローにも含めることもできる。
トリガーはワークフローが呼び出される方法を定義し、そこにはショートカットのようなコマンドやアプリのメタデータに応答できるイベントが含まれる。
新しいTables APIでは、Slackの管理対象インフラストラクチャで必要なすべてのデータを保管できるようになり、Tablesには想定される標準的なCRUD(作成、読み取り、更新、削除)操作がすべて含まれる。運用の規模は問わず、状態を一時的に管理したい状況からSlackで機能するデータ分析システムを構築する場合まで対応を可能としている。
これら機能を組み合わせると、APIを呼び出す単純なラッパー関数を作成するだけでほかのツールへのアクセスを簡単に組み込めるようになることに加え、関数をSlack のビルトイン関数と一緒にグループ化すれば、新しいトリガーでワークフローを呼び出すことも容易だという。
一例として、休暇承認ワークフローではリクエストをデータ表に保管するトリガーとしてメッセージショートカットを使用し、APIを呼び出してリクエストを自動生成し、承認チェーンの適切な人物にそのリクエストを送信。リクエスト送信者は全プロセスの状況を確認でき、外部システムは最新の状態に保たれる。
開発者向けの機能を拡充
現在、Slackコミュニティでは100万超の開発者が93万5000以上のカスタムアプリとインテグレーションを構築している。開発者が安全かつコンプライアンスに準拠した環境でアプリと自動化を数分で作成・提供できる新機能は、Slack上でのアプリのビルド・デプロイ・ホストが簡単かつ迅速になるという。すでに、開発者向けプライベートベータ版ではツールセット、ホスティングサポート、データストレージにアクセスできる。
これにより、開発者は再利用可能なワークフローの「ビルディングブロック」を作成できるようになり、ほかの開発者や技術部門外のユーザーとも共有し、カスタムユースケース用にデプロイ・調整することも可能としている。
また、メタデータを使用することで、さまざまなアプリがSlack上でやり取りできるようになり、高度な自動ワークフローを実現。例えば、WorkdayからSlackに投稿された有給承認にメタデータのタグが付けられている場合、Google Calendarがユーザーのカレンダーを自動的に更新するという。
一方、開発者からは以前よりSlackアプリをスピーディかつ簡単に作成したいという要望があったため、Slackアプリを迅速に構築するための開発者用ツールセットとして、CLIツールとソフトウェア開発キット(SDK)をリリース。
Slack CLIはSlackが作成したシンプルなコマンドを使い、新たなアプリIDを作成したり、イベントサブスクリプションを管理したり、コードを自動生成したりすることができるほか、アプリ作成のベストプラクティスに沿ったプロジェクトを作成できる機能も備えている。
アプリマニフェストと組み合わせれば、Slackアプリの管理は完全自動化が可能になるため開発者はシステム間で構成パラメーターをコピーする必要がなくなり、CLIとアプリマニフェストを継続的なインテグレーションパイプラインや、そのほかの自動化に連携させることも可能。
SDKはTypeScriptで構築され、Denoランタイム(JavaScriptとTypeScriptのためのランタイム)をターゲットにしており、幅広いプラットフォーム機能をサポートするだけでなく、オートコンプリートやコードのヒントなどのビルトイン機能を備えることで開発者の負担を減らし、生産性が高まるように最適化した。
また、デフォルトでセキュリティ保護されたDenoのアーキテクチャ、ポータビリティ、TypeScriptのサポートを活用すれば、エンタープライズグレードのアプリを速やかに構築でき、コードを1行書くよりも容易だという。Slackアプリだけでなく、データのホスティングも新たに提供する。
これにより、開発者はカスタムアプリの構築に専念でき、管理者はSlackと同じインフラストラクチャを用いて、そのアプリを安全に管理できるようになる。Slackホスティングはオプションとなり、エンタープライズグレードのアプリに向けたフルマネージドのアドオンのため管理者が管理でき、よく使われる開発者用ツールと連携が可能。
さらに、管理者が承認したアプリをベースにカスタムアプリが構築され、その際に新たな管理者機能でワークスペースのオーナーと管理者は、誰がアプリを構築してワークスペースにデプロイできるか否かを管理することができる。さらに、開発者はアプリのコマンドにアクセスできるユーザーの指定も可能。
Slack CLIで新たなアプリを素早く作成したり、ローカルマシン上であらゆるものを開発したり、TypeScriptベースのSDKでエラーを発見したり、自動化されたテストを実行したり、コードを全体的なソフトウェア開発ライフサイクルに組み込んだりすることが可能となる。コードをGitリポジトリに追加すると、コードのレビューを求めるパイプラインが立ち上がり、すべての段階を通過すると新しいコードがデプロイされるという状態も実現できる。
そのほか、近日中にリリース予定の機能として、Slackのアカウント情報を使い、ほかのツールをシームレスに接続できることに加え、サードパーティーツールをインストールしなくても自身やチャンネルに届く通知を設定できるようになる。