Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nathan-osman/go-sechat
Go package for interacting with the Stack Exchange chat network
https://github.com/nathan-osman/go-sechat
golang stack-exchange stack-exchange-chat
Last synced: 3 months ago
JSON representation
Go package for interacting with the Stack Exchange chat network
- Host: GitHub
- URL: https://github.com/nathan-osman/go-sechat
- Owner: nathan-osman
- License: mit
- Created: 2016-12-04T00:02:23.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2017-05-07T07:03:19.000Z (over 7 years ago)
- Last Synced: 2024-06-20T16:48:28.164Z (7 months ago)
- Topics: golang, stack-exchange, stack-exchange-chat
- Language: Go
- Size: 55.7 KB
- Stars: 5
- Watchers: 4
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
## go-sechat
[![GoDoc](https://godoc.org/github.com/nathan-osman/go-sechat?status.svg)](https://godoc.org/github.com/nathan-osman/go-sechat)
[![MIT License](http://img.shields.io/badge/license-MIT-9370d8.svg?style=flat)](http://opensource.org/licenses/MIT)The [Stack Exchange chat network](http://chat.stackexchange.com) does not provide an official API. This package aims to bridge that gap for Go applications by providing a simple interface with native Go primitives (channels, etc.).
### Features
As go-sechat grows, more and more chat functionality is exposed through the package. Here's a list of just some of the things go-sechat can do:
- Run completely headless with no UI or embedded browser
- Login using Stack Exchange credentials
- Maintain a persistent connection to the chat server; reauthenticating, pausing, and reconnecting when a failure occurs
- Join, create, leave, and invite users to rooms
- Perform basic chat activities, such as posting and starring messages
- Receive a stream of all events from rooms that have been joined
- Intelligently retry failed messages when throttling occurs
- Upload images to `i.stack.imgur.com`### Usage
To use the package in an application, simply import it:
import "github.com/nathan-osman/go-sechat"
Examples are provided in the [package documentation](https://godoc.org/github.com/nathan-osman/go-sechat).