hipchat-go

module
v0.0.0-...-c2c0e97 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 30, 2021 License: Apache-2.0

README

hipchat-go

Go client library for the HipChat API v2.

GoDoc Build Status

Currently only a small part of the API is implemented, so pull requests are welcome.

Usage
import "github.com/tbruyelle/hipchat-go/hipchat"

Build a new client, then use the client.Room service to spam all the rooms you have access to (not recommended):

c := hipchat.NewClient("<your AuthToken here>")

opt := &hipchat.RoomsListOptions{IncludePrivate:  true, IncludeArchived: true}
rooms, _, err := c.Room.List(opt)
if err != nil {
	panic(err)
}

notifRq := &hipchat.NotificationRequest{Message: "Hey there!"}

for _, room := range rooms.Items {
	_, err := c.Room.Notification(room.Name, notifRq)
	if err != nil {
		panic(err)
	}
}
Testing the auth token

HipChat allows to test the auth token by adding the auth_test=true param, into any API endpoints.

You can do this with hipchat-go by setting the global var hipchat.AuthTest. Because the server response will be different from the one defined in the API endpoint, you need to check another global var AuthTestReponse to see if the authentication succeeds.

hipchat.AuthTest = true

client.Room.Get(42)

_, ok := hipchat.AuthTestResponse["success"]
fmt.Println("Authentification succeed :", ok)
// Dont forget to reset the variable, or every other API calls
// will be impacted.
hipchat.AuthTest = false

The code architecture is hugely inspired by google/go-github.

Directories

Path Synopsis
examples
Package hipchat provides a client for using the HipChat API v2.
Package hipchat provides a client for using the HipChat API v2.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL