1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Mattermot APIのPHPドライバを Laravel で実行する手順

Posted at

概要

Mattermost API には、以下のドライバ群がありますが、ここでは PHP Driver を Laravel 上で実行する手順を整理したいと思います。

Mattermost PHP Driver ソースコードの簡単な解説

フォルダ構成

大きく分けると以下の3部構成です。

  • src/Driver.php
    • ユーザフロントのDriverクラスが定義されており、セッション情報を管理しています。
    • ログインするとこのDriverクラスインスタンスがトークンが登録されますので、
    • 以降はこのトークンを利用してAPIコールが可能になります。
  • src/Client.php
    • PHPのデファクト?のライブラリGuzzleHttpをラップしたクラスです。
    • ここでREST APIを発行しています。
  • src/Models/*.php
    • Mattermost APIの種別ごとにクラス定義されています。
    • このクラスを利用して、簡単にMattermost APIをコールできます。

使い方

Laravel, PHP 玄人なら、github の READMEを見てすぐに使えるのかな?と思われます。

ただ、自分にはちょっと壁があったので、自分なりにソース解釈して手順を整理したほうが良さそうだと思った次第です。

Mattermostってそもそもどうやってインストールする?

Mattermosの導入手順は、こちらをご参照ください。

Mattermot APIのPHPドライバを Laravel で実行する手順

今回整理した成果は以下のリポジトリで一般公開しております。

上記では、環境はすべて docker-composeベースで行っておりますので、Dockerfileを見ていただければ、本番のテスト環境構築にも役立つと思います。

また、Laravelでのサンプルコード作成では、Laravelのコマンドで実装しておりますので、bash 等で負荷テストスクリプト化も用意に実現できます。

現時点では、以下のサンプルコードを公開しております。

  • ユーザのログインサンプル
  • ユーザの新規追加サンプル
  • チームの新規追加サンプル
  • チャネルの新規追加サンプル
  • チームへのユーザ登録サンプル
  • チャネルへのユーザ登録サンプル
  • チャネルへのメッセージ投稿サンプル

最後に

なぜPHPでやっているの?と思われる方がいらっしゃるかもしれません。
その答えは、単に自分が、PHPを勉強したかったからです〜。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?