ChatOps は、人、プロセス、ツール、自動化を透明なワークフローに接続するコラボレーション モデルです。 Mattermost は、組織が安全、効果的、効率的に通信できるようにする、オープンソースの自己ホスト型メッセージング プラットフォームです。これは、Slack、Discord、その他の独自のメッセージング プラットフォームに代わる優れたオープンソースです。この記事では、必要なコード例と説明を含め、Mattermost で ChatOps ボットを作成する手順の概要を説明します。 前提条件
、 使用されている pip # を確認してください。 ## Mattermost Python ドライバーをインストールします。 Mattermost でボット アカウントを作成する
ボット アカウントを作成するには、Mattermost システム コンソールにアクセスし、適切なアクセス権限を持つボット アカウントを追加します。 Python スクリプトで使用するボットのユーザー名とパスワードを取得します。 Mattermost Python ドライバーをセットアップするPython で ChatOps ボットを作成する
from mattermostdriver import Driver bot_username = 'bot_username' bot_password = 'bot_password' server_url = 'https://your.mattermost.server.url' def main(): driver = Driver({'url': server_url, 'login_id': bot_username, 'password': bot_password, 'scheme': 'https'}) driver.login() team = driver.teams.get_team_by_name('team_name') channel = driver.channels.get_channel_by_name(team['id'], 'channel_name') @driver.on('message') def handle_message(post, **kwargs): if post['message'] == 'hello': driver.posts.create_post({ 'channel_id': post['channel_id'], 'message': 'Hi there!' }) driver.init_websocket() if __name__ == '__main__': main()
from mattermostdriver import Driver import requests bot_username = 'bot_username' bot_password = 'bot_password' server_url = 'https://your.mattermost.server.url' def main(): driver = Driver({'url': server_url, 'login_id': bot_username, 'password': bot_password, 'scheme': 'https'}) driver.login() team = driver.teams.get_team_by_name('team_name') channel = driver.channels.get_channel_by_name(team['id'], 'channel_name') @driver.on('message') def handle_message(post, **kwargs): if post['message'] == 'status': # Make a request to the third-party tool API to get the status response = requests.get('https://api.thirdpartytool.com/status') if response.status_code == 200: status = response.json()['status'] driver.posts.create_post({ 'channel_id': post['channel_id'], 'message': f'The status is {status}' }) else: driver.posts.create_post({ 'channel_id': post['channel_id'], 'message': 'Failed to get status' }) driver.init_websocket() if __name__ == '__main__': main()
status
をリッスンし、サードパーティ ツール API にリクエストを送信して現在のステータスを取得します。次に、コマンドが発行された Mattermost チャネルにステータス更新を投稿します。これにより、チーム メンバーはチャット プラットフォームを離れることなく、タスクのステータスに関する最新情報を迅速に取得できるようになります。オープンソース ChatOps
以上がPython を使用して Mattermost で ChatOps チャットボットを作成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。