mirror of
https://github.com/cwinfo/matterbridge.git
synced 2025-07-03 18:57:45 +00:00
Update dependencies and go1.18 (#1873)
* Update dependencies and go1.18 * Exclude unnecessary linters and update build to go1.18
This commit is contained in:
19
vendor/github.com/slack-go/slack/chat.go
generated
vendored
19
vendor/github.com/slack-go/slack/chat.go
generated
vendored
@ -64,6 +64,9 @@ type PostMessageParameters struct {
|
||||
// chat.postEphemeral support
|
||||
Channel string `json:"channel"`
|
||||
User string `json:"user"`
|
||||
|
||||
// chat metadata support
|
||||
MetaData SlackMetadata `json:"metadata"`
|
||||
}
|
||||
|
||||
// NewPostMessageParameters provides an instance of PostMessageParameters with all the sane default values set
|
||||
@ -285,6 +288,7 @@ type sendConfig struct {
|
||||
endpoint string
|
||||
values url.Values
|
||||
attachments []Attachment
|
||||
metadata SlackMetadata
|
||||
blocks Blocks
|
||||
responseType string
|
||||
replaceOriginal bool
|
||||
@ -306,6 +310,7 @@ func (t sendConfig) BuildRequestContext(ctx context.Context, token, channelID st
|
||||
endpoint: t.endpoint,
|
||||
values: t.values,
|
||||
attachments: t.attachments,
|
||||
metadata: t.metadata,
|
||||
blocks: t.blocks,
|
||||
responseType: t.responseType,
|
||||
replaceOriginal: t.replaceOriginal,
|
||||
@ -336,6 +341,7 @@ type responseURLSender struct {
|
||||
endpoint string
|
||||
values url.Values
|
||||
attachments []Attachment
|
||||
metadata SlackMetadata
|
||||
blocks Blocks
|
||||
responseType string
|
||||
replaceOriginal bool
|
||||
@ -352,6 +358,7 @@ func (t responseURLSender) BuildRequestContext(ctx context.Context) (*http.Reque
|
||||
Timestamp: t.values.Get("ts"),
|
||||
Attachments: t.attachments,
|
||||
Blocks: t.blocks,
|
||||
Metadata: t.metadata,
|
||||
ResponseType: t.responseType,
|
||||
ReplaceOriginal: t.replaceOriginal,
|
||||
DeleteOriginal: t.deleteOriginal,
|
||||
@ -662,6 +669,18 @@ func MsgOptionIconEmoji(iconEmoji string) MsgOption {
|
||||
}
|
||||
}
|
||||
|
||||
// MsgOptionMetadata sets message metadata
|
||||
func MsgOptionMetadata(metadata SlackMetadata) MsgOption {
|
||||
return func(config *sendConfig) error {
|
||||
config.metadata = metadata
|
||||
meta, err := json.Marshal(metadata)
|
||||
if err == nil {
|
||||
config.values.Set("metadata", string(meta))
|
||||
}
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
// UnsafeMsgOptionEndpoint deliver the message to the specified endpoint.
|
||||
// NOTE: USE AT YOUR OWN RISK: No issues relating to the use of this Option
|
||||
// will be supported by the library, it is subject to change without notice that
|
||||
|
18
vendor/github.com/slack-go/slack/conversation.go
generated
vendored
18
vendor/github.com/slack-go/slack/conversation.go
generated
vendored
@ -571,12 +571,13 @@ func (api *Client) JoinConversationContext(ctx context.Context, channelID string
|
||||
}
|
||||
|
||||
type GetConversationHistoryParameters struct {
|
||||
ChannelID string
|
||||
Cursor string
|
||||
Inclusive bool
|
||||
Latest string
|
||||
Limit int
|
||||
Oldest string
|
||||
ChannelID string
|
||||
Cursor string
|
||||
Inclusive bool
|
||||
Latest string
|
||||
Limit int
|
||||
Oldest string
|
||||
IncludeAllMetadata bool
|
||||
}
|
||||
|
||||
type GetConversationHistoryResponse struct {
|
||||
@ -615,6 +616,11 @@ func (api *Client) GetConversationHistoryContext(ctx context.Context, params *Ge
|
||||
if params.Oldest != "" {
|
||||
values.Add("oldest", params.Oldest)
|
||||
}
|
||||
if params.IncludeAllMetadata {
|
||||
values.Add("include_all_metadata", "1")
|
||||
} else {
|
||||
values.Add("include_all_metadata", "0")
|
||||
}
|
||||
|
||||
response := GetConversationHistoryResponse{}
|
||||
|
||||
|
5
vendor/github.com/slack-go/slack/messages.go
generated
vendored
5
vendor/github.com/slack-go/slack/messages.go
generated
vendored
@ -129,8 +129,13 @@ type Msg struct {
|
||||
ReplaceOriginal bool `json:"replace_original"`
|
||||
DeleteOriginal bool `json:"delete_original"`
|
||||
|
||||
// metadata
|
||||
Metadata SlackMetadata `json:"metadata,omitempty"`
|
||||
|
||||
// Block type Message
|
||||
Blocks Blocks `json:"blocks,omitempty"`
|
||||
// permalink
|
||||
Permalink string `json:"permalink,omitempty"`
|
||||
}
|
||||
|
||||
const (
|
||||
|
7
vendor/github.com/slack-go/slack/metadata.go
generated
vendored
Normal file
7
vendor/github.com/slack-go/slack/metadata.go
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
package slack
|
||||
|
||||
// SlackMetadata https://api.slack.com/reference/metadata
|
||||
type SlackMetadata struct {
|
||||
EventType string `json:"event_type"`
|
||||
EventPayload map[string]interface{} `json:"event_payload"`
|
||||
}
|
69
vendor/github.com/slack-go/slack/usergroups.go
generated
vendored
69
vendor/github.com/slack-go/slack/usergroups.go
generated
vendored
@ -183,32 +183,77 @@ func (api *Client) GetUserGroupsContext(ctx context.Context, options ...GetUserG
|
||||
return response.UserGroups, nil
|
||||
}
|
||||
|
||||
// UpdateUserGroupsOption options for the UpdateUserGroup method call.
|
||||
type UpdateUserGroupsOption func(*UpdateUserGroupsParams)
|
||||
|
||||
// UpdateUserGroupsOptionName change the name of the User Group (default: empty, so it's no-op)
|
||||
func UpdateUserGroupsOptionName(name string) UpdateUserGroupsOption {
|
||||
return func(params *UpdateUserGroupsParams) {
|
||||
params.Name = name
|
||||
}
|
||||
}
|
||||
|
||||
// UpdateUserGroupsOptionHandle change the handle of the User Group (default: empty, so it's no-op)
|
||||
func UpdateUserGroupsOptionHandle(handle string) UpdateUserGroupsOption {
|
||||
return func(params *UpdateUserGroupsParams) {
|
||||
params.Handle = handle
|
||||
}
|
||||
}
|
||||
|
||||
// UpdateUserGroupsOptionDescription change the description of the User Group. (default: nil, so it's no-op)
|
||||
func UpdateUserGroupsOptionDescription(description *string) UpdateUserGroupsOption {
|
||||
return func(params *UpdateUserGroupsParams) {
|
||||
params.Description = description
|
||||
}
|
||||
}
|
||||
|
||||
// UpdateUserGroupsOptionChannels change the default channels of the User Group. (default: unspecified, so it's no-op)
|
||||
func UpdateUserGroupsOptionChannels(channels []string) UpdateUserGroupsOption {
|
||||
return func(params *UpdateUserGroupsParams) {
|
||||
params.Channels = &channels
|
||||
}
|
||||
}
|
||||
|
||||
// UpdateUserGroupsParams contains arguments for UpdateUserGroup method call
|
||||
type UpdateUserGroupsParams struct {
|
||||
Name string
|
||||
Handle string
|
||||
Description *string
|
||||
Channels *[]string
|
||||
}
|
||||
|
||||
// UpdateUserGroup will update an existing user group
|
||||
func (api *Client) UpdateUserGroup(userGroup UserGroup) (UserGroup, error) {
|
||||
return api.UpdateUserGroupContext(context.Background(), userGroup)
|
||||
func (api *Client) UpdateUserGroup(userGroupID string, options ...UpdateUserGroupsOption) (UserGroup, error) {
|
||||
return api.UpdateUserGroupContext(context.Background(), userGroupID, options...)
|
||||
}
|
||||
|
||||
// UpdateUserGroupContext will update an existing user group with a custom context
|
||||
func (api *Client) UpdateUserGroupContext(ctx context.Context, userGroup UserGroup) (UserGroup, error) {
|
||||
func (api *Client) UpdateUserGroupContext(ctx context.Context, userGroupID string, options ...UpdateUserGroupsOption) (UserGroup, error) {
|
||||
params := UpdateUserGroupsParams{}
|
||||
|
||||
for _, opt := range options {
|
||||
opt(¶ms)
|
||||
}
|
||||
|
||||
values := url.Values{
|
||||
"token": {api.token},
|
||||
"usergroup": {userGroup.ID},
|
||||
"usergroup": {userGroupID},
|
||||
}
|
||||
|
||||
if userGroup.Name != "" {
|
||||
values["name"] = []string{userGroup.Name}
|
||||
if params.Name != "" {
|
||||
values["name"] = []string{params.Name}
|
||||
}
|
||||
|
||||
if userGroup.Handle != "" {
|
||||
values["handle"] = []string{userGroup.Handle}
|
||||
if params.Handle != "" {
|
||||
values["handle"] = []string{params.Handle}
|
||||
}
|
||||
|
||||
if userGroup.Description != "" {
|
||||
values["description"] = []string{userGroup.Description}
|
||||
if params.Description != nil {
|
||||
values["description"] = []string{*params.Description}
|
||||
}
|
||||
|
||||
if len(userGroup.Prefs.Channels) > 0 {
|
||||
values["channels"] = []string{strings.Join(userGroup.Prefs.Channels, ",")}
|
||||
if params.Channels != nil {
|
||||
values["channels"] = []string{strings.Join(*params.Channels, ",")}
|
||||
}
|
||||
|
||||
response, err := api.userGroupRequest(ctx, "usergroups.update", values)
|
||||
|
17
vendor/github.com/slack-go/slack/users.go
generated
vendored
17
vendor/github.com/slack-go/slack/users.go
generated
vendored
@ -292,6 +292,13 @@ func GetUsersOptionPresence(n bool) GetUsersOption {
|
||||
}
|
||||
}
|
||||
|
||||
// GetUsersOptionTeamID include team Id
|
||||
func GetUsersOptionTeamID(teamId string) GetUsersOption {
|
||||
return func(p *UserPagination) {
|
||||
p.teamId = teamId
|
||||
}
|
||||
}
|
||||
|
||||
func newUserPagination(c *Client, options ...GetUsersOption) (up UserPagination) {
|
||||
up = UserPagination{
|
||||
c: c,
|
||||
@ -310,6 +317,7 @@ type UserPagination struct {
|
||||
Users []User
|
||||
limit int
|
||||
presence bool
|
||||
teamId string
|
||||
previousResp *ResponseMetadata
|
||||
c *Client
|
||||
}
|
||||
@ -344,6 +352,7 @@ func (t UserPagination) Next(ctx context.Context) (_ UserPagination, err error)
|
||||
"presence": {strconv.FormatBool(t.presence)},
|
||||
"token": {t.c.token},
|
||||
"cursor": {t.previousResp.Cursor},
|
||||
"team_id": {t.teamId},
|
||||
"include_locale": {strconv.FormatBool(true)},
|
||||
}
|
||||
|
||||
@ -364,13 +373,13 @@ func (api *Client) GetUsersPaginated(options ...GetUsersOption) UserPagination {
|
||||
}
|
||||
|
||||
// GetUsers returns the list of users (with their detailed information)
|
||||
func (api *Client) GetUsers() ([]User, error) {
|
||||
return api.GetUsersContext(context.Background())
|
||||
func (api *Client) GetUsers(options ...GetUsersOption) ([]User, error) {
|
||||
return api.GetUsersContext(context.Background(), options...)
|
||||
}
|
||||
|
||||
// GetUsersContext returns the list of users (with their detailed information) with a custom context
|
||||
func (api *Client) GetUsersContext(ctx context.Context) (results []User, err error) {
|
||||
p := api.GetUsersPaginated()
|
||||
func (api *Client) GetUsersContext(ctx context.Context, options ...GetUsersOption) (results []User, err error) {
|
||||
p := api.GetUsersPaginated(options...)
|
||||
for err == nil {
|
||||
p, err = p.Next(ctx)
|
||||
if err == nil {
|
||||
|
27
vendor/github.com/slack-go/slack/websocket_managed_conn.go
generated
vendored
27
vendor/github.com/slack-go/slack/websocket_managed_conn.go
generated
vendored
@ -16,6 +16,31 @@ import (
|
||||
"github.com/slack-go/slack/internal/timex"
|
||||
)
|
||||
|
||||
// UnmappedError represents error occurred when there is no mapping between given event name
|
||||
// and corresponding Go struct.
|
||||
type UnmappedError struct {
|
||||
// EventType returns event type name.
|
||||
EventType string
|
||||
// RawEvent returns raw event body.
|
||||
RawEvent json.RawMessage
|
||||
|
||||
ctxMsg string
|
||||
}
|
||||
|
||||
// NewUnmappedError returns new UnmappedError instance.
|
||||
func NewUnmappedError(ctxMsg, eventType string, raw json.RawMessage) *UnmappedError {
|
||||
return &UnmappedError{
|
||||
ctxMsg: ctxMsg,
|
||||
EventType: eventType,
|
||||
RawEvent: raw,
|
||||
}
|
||||
}
|
||||
|
||||
// Error returns human-readable error message.
|
||||
func (u UnmappedError) Error() string {
|
||||
return fmt.Sprintf("%s: Received unmapped event %q", u.ctxMsg, u.EventType)
|
||||
}
|
||||
|
||||
// ManageConnection can be called on a Slack RTM instance returned by the
|
||||
// NewRTM method. It will connect to the slack RTM API and handle all incoming
|
||||
// and outgoing events. If a connection fails then it will attempt to reconnect
|
||||
@ -474,7 +499,7 @@ func (rtm *RTM) handleEvent(typeStr string, event json.RawMessage) {
|
||||
v, exists := EventMapping[typeStr]
|
||||
if !exists {
|
||||
rtm.Debugf("RTM Error - received unmapped event %q: %s\n", typeStr, string(event))
|
||||
err := fmt.Errorf("RTM Error: Received unmapped event %q", typeStr)
|
||||
err := NewUnmappedError("RTM Error", typeStr, event)
|
||||
rtm.IncomingEvents <- RTMEvent{"unmarshalling_error", &UnmarshallingErrorEvent{err}}
|
||||
return
|
||||
}
|
||||
|
85
vendor/github.com/slack-go/slack/workflow_step_execute.go
generated
vendored
Normal file
85
vendor/github.com/slack-go/slack/workflow_step_execute.go
generated
vendored
Normal file
@ -0,0 +1,85 @@
|
||||
package slack
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
)
|
||||
|
||||
type (
|
||||
WorkflowStepCompletedRequest struct {
|
||||
WorkflowStepExecuteID string `json:"workflow_step_execute_id"`
|
||||
Outputs map[string]string `json:"outputs"`
|
||||
}
|
||||
|
||||
WorkflowStepFailedRequest struct {
|
||||
WorkflowStepExecuteID string `json:"workflow_step_execute_id"`
|
||||
Error struct {
|
||||
Message string `json:"message"`
|
||||
} `json:"error"`
|
||||
}
|
||||
)
|
||||
|
||||
type WorkflowStepCompletedRequestOption func(opt WorkflowStepCompletedRequest) error
|
||||
|
||||
func WorkflowStepCompletedRequestOptionOutput(outputs map[string]string) WorkflowStepCompletedRequestOption {
|
||||
return func(opt WorkflowStepCompletedRequest) error {
|
||||
if len(outputs) > 0 {
|
||||
opt.Outputs = outputs
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// WorkflowStepCompleted indicates step is completed
|
||||
func (api *Client) WorkflowStepCompleted(workflowStepExecuteID string, options ...WorkflowStepCompletedRequestOption) error {
|
||||
// More information: https://api.slack.com/methods/workflows.stepCompleted
|
||||
r := WorkflowStepCompletedRequest{
|
||||
WorkflowStepExecuteID: workflowStepExecuteID,
|
||||
}
|
||||
for _, option := range options {
|
||||
option(r)
|
||||
}
|
||||
|
||||
endpoint := api.endpoint + "workflows.stepCompleted"
|
||||
jsonData, err := json.Marshal(r)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
response := &SlackResponse{}
|
||||
if err := postJSON(context.Background(), api.httpclient, endpoint, api.token, jsonData, response, api); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if !response.Ok {
|
||||
return response.Err()
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// WorkflowStepFailed indicates step is failed
|
||||
func (api *Client) WorkflowStepFailed(workflowStepExecuteID string, errorMessage string) error {
|
||||
// More information: https://api.slack.com/methods/workflows.stepFailed
|
||||
r := WorkflowStepFailedRequest{
|
||||
WorkflowStepExecuteID: workflowStepExecuteID,
|
||||
}
|
||||
r.Error.Message = errorMessage
|
||||
|
||||
endpoint := api.endpoint + "workflows.stepFailed"
|
||||
jsonData, err := json.Marshal(r)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
response := &SlackResponse{}
|
||||
if err := postJSON(context.Background(), api.httpclient, endpoint, api.token, jsonData, response, api); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if !response.Ok {
|
||||
return response.Err()
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
Reference in New Issue
Block a user