GoでZoomのMTGを作成してみた

はじめに

この記事は、仕事で触ることになったGo製Zoomライブラリを触った時の備忘録です。

実際に試せるサンプルコードもありますので、気になった人は以下のリポジトリをクローンして試してみてください。

github.com

やりかた

まず、Zoomの開発者登録とか済ませてAPIキーなどを取得します。

marketplace.zoom.us

APIキー取得後、.envに取得したAPIキーとシークレットキー、そしてZoomのMTGを作成するために必要なホストのユーザーIDを追加します。

ZOOM_API_KEY=<APIキー>
ZOOM_API_SECRET=<シークレットキー>
USER_ID=<ユーザーID>

次に、必要なライブラリを落としてきます。

go get -u github.com/himalayan-institute/zoom-lib-golang github.com/joho/godotenv

最後に、main.goを以下のように作成します。

package main

import (
    "log"
    "os"
    "github.com/joho/godotenv"
    "github.com/himalayan-institute/zoom-lib-golang"
)

func main() {
    err := godotenv.Load()
    if err != nil {
        log.Fatalf("Error loading .env file")
    }

    var (
        apiKey    = os.Getenv("ZOOM_API_KEY")
        apiSecret = os.Getenv("ZOOM_API_SECRET")
        userID    = os.Getenv("USER_ID")
    )

    zoom.APIKey = apiKey
    zoom.APISecret = apiSecret

    var createMeetingOpts zoom.CreateMeetingOptions
    createMeetingOpts.HostID = userID
    meeting, err := zoom.CreateMeeting(createMeetingOpts)
    if err != nil {
        log.Printf("Got err: %+v\n", err)
    }
    log.Printf("Get Meeting Info: %+v\n", meeting)
}

あとはgo run main.goを実行するとZoomのMTGが作成されます。

go run main.go

おわりに

仕事でも使っているライブラリなんですが、結構簡単にMTGが作成できるので良い感じです。 今後GoでZoomのAPIを使う必要があるかたは是非触ってみて欲しいですね。