slack-sdk-go

module
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Dec 29, 2024 License: MIT

README ΒΆ

πŸš€ Slack SDK for Go

A lightweight and modular SDK for building Slack bots and apps in Go. With this SDK, you can easily send messages, manage users, and extend functionality to integrate with the Slack API seamlessly.


🌟 Features
  • πŸ“¨ Send messages to Slack channels
  • πŸ‘€ Fetch user information
  • ⚑️ Extendable for additional Slack APIs
  • 🧩 Lightweight and modular design
  • 🎯 Easy integration into Go projects

πŸ›  Getting Started
βœ… Prerequisites
  • Go 1.18 or later
  • A Slack Bot Token with the required permissions.

    Create a Slack App to generate your token.

πŸ“¦ Installation

Add the SDK to your project using:

go get github.com/pramithamj/slack-sdk-go/pkg/slack  

✨ Example Usage

Here’s a quick example to send a message using the SDK:

package main  

import (  
	"fmt"  
	"log"  

	"github.com/pramithamj/slack-sdk-go/pkg/slack"  
)  

func main() {  
	// Replace with your actual Slack Bot Token  
	token := "xoxb-your-slack-bot-token"  
	sdk := slack.NewSlackSDK(token)  

	channel := "C123456789" // Slack channel ID  
	message := "Hello, Slack from Go SDK!"  

	response, err := sdk.SendMessage(channel, message)  
	if err != nil {  
		log.Fatalf("Error sending message: %v", err)  
	}  

	fmt.Printf("Message sent successfully: %v\n", response)  
}  
πŸ“– API Methods

1️⃣ SendMessage

Send a message to a Slack channel.

πŸ“₯ Parameters: β€’ channel (string): The channel ID where the message will be sent. β€’ text (string): The message text.

πŸ“€ Example:

response, err := sdk.SendMessage("C123456789", "Hello, Slack!")  
if err != nil {  
	log.Fatalf("Error: %v", err)  
}  
fmt.Println(response)  

2️⃣ GetUserInfo

Fetch details about a Slack user.

πŸ“₯ Parameters: β€’ userID (string): The ID of the user.

πŸ“€ Example:

response, err := sdk.GetUserInfo("U123456789")  
if err != nil {  
	log.Fatalf("Error: %v", err)  
}  
fmt.Println(response)  
πŸ” Testing

Run all tests using:

go test ./tests/...

🀝 Contributing

We welcome contributions! To contribute: 1. Fork the repository 2. Create a new branch: git checkout -b feature-name 3. Commit your changes: git commit -m 'Add feature' 4. Push the branch: git push origin feature-name 5. Open a Pull Request

πŸ“œ License

This project is licensed under the MIT License. See the LICENSE file for more details.

πŸ‘€ Author

PramithaMJ β€’ πŸ’» [PramithaMJ]](https://github.com/pramithamj) β€’ πŸ“§ lpramithamj@gmail.com

Enjoy coding with the Slack SDK for Go! πŸ§‘β€πŸ’»

Directories ΒΆ

Path Synopsis
internal
pkg

Jump to

Keyboard shortcuts

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