ProをSlackのアプリとして連動する2023年4月11日はじめにココネ株式会社のサービス基盤開発室クライアントチームでツール開発している鞠(クク)です。このページではDeepLでSlack用の翻訳ツールを作成してみました。本ツールは、Slack上の文言に対してDeepLを利用して自動翻訳してくれるツールになります。やり方はSlackのメッセージに対して、国旗のリアクションを行うと、自動翻訳されたメッセージがスレッドに投稿されます。DeepLとは?DeepL翻訳は、2017年8月28日にサービスを開始したニューラル機械翻訳サービス。翻訳よりも精度が高く、微妙なニュアンスのある翻訳ができると肯定的な報道と評価を受けている。Wikipediahttps://ja.wikipedia.org2023年1月31日に韓国語とノルウェー語がリリースされました。機械学習にも使われないようになります。正常に登録を完了すると、次のアカウント情報ページに認証キーとAPIのドメインが表示されます。LambdaでAPIコールするとき、必要になります。使用量確認(文字数&料金)次のURLで文字数&料金が確認できます。Method]->[POST]メソッドを作成します。typeでLambda関数を選びます。integrationをチェックします。Stage]を指定して入力後デプロイします。Stage名は自由に入力してください。APIのアプリに入力します。Runtimeで動作確認しました。}※コメントなどのリアクションがあったら、現ソースコードをリファクタリングする予定です。Slackhttps://api.slack.comSlackにログインした状態で、上記のURLにアクセスします。App]をクリックしてアプリの名前と下記の文言の後にアプリを使用するWorkspaceを選択します。Scope]で権限を追加します。ボットの設定こちらではボットの名とメンション名の設定します。Editボタンを押して、設定を行います。Informationアプリの設定画面で、アプリ名、説明文、バックグラウンドカラー、アイコン画像など設定します。Permissionsからも同様の操作が可能です。)権限によって実装内容が次のように変わります。Workspace]でインストール後そのまま許可できます。Install]でインストールを依頼して管理者の承認待ちになります。Appをインストールできます。Tokenが取得できます。セキュリティなどの必要に応じていつでもトークンが再発行できます。翻訳するときリアクションが付けることになりますが、その時の確認のためイベントのサブスクライブ機能を使用します。[Off]クリックします。GatewayからデプロイしたURLを記入します。最初にURLを登録するにはchallenge認証が必要です。eventhttps://api.slack.comLambdaの次の関数で実装されています。Changes]ボタンを押して保存するだけです。functionalityの設定画面は最終的に次のようになります。チャンネルアプリのボットユーザーを招待します。[アプリを追加する]アプリを検索して[追加]メッセージに翻訳したい国の国旗の絵文字をリアクションでつけてください。TS)で実装する方はこちらをご参考ください。API周りは割と分かりやすくて、特に問題なかったんですが、Slackの設定とAWS実装で色々試行錯誤しました。今回の実装の開発環境で必須になるSlackとDeepLとは違ってAWS環境は自作サーバーでも他のサーバーレスクラウドでも何でも使いやすい環境で各自試してみてください。Sera様の次のドキュメントをご参考ください。Qiitahttps://qiita.comココネでは一緒に働く仲間を募集中です。ご興味のある方は、ぜひこちらの採用特設サイトをご覧ください。GatewaycoconeDeepLlambdapythonslackbot一緒に働くエンジニアを募集していますココネのエンジニア採用はこちら感性をカタチに。株式会社%d人のブロガーが「いいね」をつけました。