Documentation ¶
Index ¶
- Constants
- func FindFileType(FileName string) string
- type Attachment
- type BasicIdentity
- type BlockBase
- type BlockElement
- type BlockTitle
- type File
- type FilesRemoteAddParameters
- type GetConversationHistoryParameters
- type Handler
- func (s Handler) AuthTest() (*BasicIdentity, error)
- func (s *Handler) ChatUnfURL(parameters UnfURLsParameters) error
- func (s *Handler) FilesRemoteAdd(file FilesRemoteAddParameters) (*slack.File, error)
- func (s *Handler) FilesRemoteInfo(externalID, fileID string) (*slack.File, error)
- func (s *Handler) FilesRemoteRemove(externalID, fileID string) error
- func (s *Handler) FilesUpload(file File, channels ...string) (*slack.File, error)
- func (s *Handler) GetMessage(channelID, timestamp string) (*Message, error)
- func (s *Handler) GetMessages(channelID, timestamp string, limit int) ([]Message, error)
- func (s Handler) GetUserIdentity() (identity *UserIdentity, err error)
- func (s Handler) GetUserProfile(user string, includeLabels bool) (profile *UserProfile, err error)
- func (s Handler) Remove(channel, ts string) (string, error)
- func (s *Handler) Send(message Message) (string, error)
- func (s Handler) SetUserProfile(user string, name string, value string) (profile *UserProfile, err error)
- func (s *Handler) Update(message Message) (string, error)
- type Message
- type ProfileLabel
- type UnfURL
- type UnfURLs
- type UnfURLsParameters
- type UserIdentity
- type UserProfile
Constants ¶
View Source
const SlackAPIEndpoint = "https://slack.com/api"
Variables ¶
This section is empty.
Functions ¶
func FindFileType ¶
Types ¶
type Attachment ¶
type Attachment struct { Color string `json:"color,omitempty"` Fallback string `json:"fallback,omitempty"` CallbackID string `json:"callback_id,omitempty"` ID int `json:"id,omitempty"` AuthorID string `json:"author_id,omitempty"` AuthorName string `json:"author_name,omitempty"` AuthorSubname string `json:"author_subname,omitempty"` AuthorLink string `json:"author_link,omitempty"` AuthorIcon string `json:"author_icon,omitempty"` Title string `json:"title,omitempty"` TitleLink string `json:"title_link,omitempty"` Pretext string `json:"pretext,omitempty"` Text string `json:"text,omitempty"` ImageURL string `json:"image_url,omitempty"` ThumbURL string `json:"thumb_url,omitempty"` ServiceName string `json:"service_name,omitempty"` ServiceIcon string `json:"service_icon,omitempty"` FromURL string `json:"from_url,omitempty"` OriginalURL string `json:"original_url,omitempty"` Fields []slack.AttachmentField `json:"fields,omitempty"` Actions []slack.AttachmentAction `json:"actions,omitempty"` MarkdownIn []string `json:"mrkdwn_in,omitempty"` Ts json.Number `json:"ts,omitempty"` }
Attachment contains all the information for an attachment
type BasicIdentity ¶
type BlockBase ¶
type BlockBase struct { Type string `json:"type"` Text BlockElement `json:"text,omitempty"` Elements []BlockElement `json:"elements,omitempty"` ImageURL string `json:"image_url"` AltText string `json:"alt_text"` Title BlockTitle `json:"title"` ExternalID string `json:"external_id"` Source string `json:"source"` }
func ContextBlock ¶
func ContextBlock(elements ...BlockElement) BlockBase
func DividerBlock ¶
func DividerBlock() BlockBase
func ImageBlock ¶
func SectionBlock ¶
func SectionBlock() BlockBase
func (BlockBase) MarshalJSON ¶
type BlockElement ¶
type BlockElement struct { Type string `json:"type,omitempty"` ImageURL string `json:"image_url,omitempty"` AltText string `json:"alt_text,omitempty"` Text string `json:"text,omitempty"` Verbatim bool `json:"verbatim,omitempty"` }
func ImageElement ¶
func ImageElement(imageURL, altText string) BlockElement
func MrkdwnElement ¶
func MrkdwnElement(text string, verbatim bool) BlockElement
type BlockTitle ¶
type BlockTitle struct { Type string `json:"type,omitempty"` Text string `json:"text,omitempty"` Emoji bool `json:"emoji,omitempty"` }
func ImageTitle ¶
func ImageTitle(title string, emoji bool) BlockTitle
type Handler ¶
type Handler struct { Identity BasicIdentity // contains filtered or unexported fields }
func (Handler) AuthTest ¶
func (s Handler) AuthTest() (*BasicIdentity, error)
func (*Handler) ChatUnfURL ¶
func (s *Handler) ChatUnfURL(parameters UnfURLsParameters) error
func (*Handler) FilesRemoteAdd ¶
func (s *Handler) FilesRemoteAdd(file FilesRemoteAddParameters) (*slack.File, error)
func (*Handler) FilesRemoteInfo ¶
func (*Handler) FilesRemoteRemove ¶
func (*Handler) FilesUpload ¶
func (*Handler) GetMessage ¶
func (*Handler) GetMessages ¶
func (Handler) GetUserIdentity ¶
func (s Handler) GetUserIdentity() (identity *UserIdentity, err error)
func (Handler) GetUserProfile ¶
func (s Handler) GetUserProfile(user string, includeLabels bool) (profile *UserProfile, err error)
func (Handler) SetUserProfile ¶
type Message ¶
type Message struct { TS string `json:"ts,omitempty"` Channel string `json:"channel"` Type string `json:"type,omitempty"` Text string `json:"text,omitempty"` Blocks []BlockBase `json:"blocks,omitempty"` Attachments []Attachment `json:"attachments,omitempty"` LinkNames bool `json:"link_names,omitempty"` Username string `json:"username,omitempty"` User string `json:"user,omitempty"` AsUser bool `json:"as_user,omitempty"` Parse string `json:"parse,omitempty"` ThreadTimestamp string `json:"thread_ts,omitempty"` ReplyBroadcast bool `json:"reply_broadcast,omitempty"` UnfurlLinks bool `json:"unfurl_links"` UnfurlMedia bool `json:"unfurl_media"` IconURL string `json:"icon_url,omitempty"` IconEmoji string `json:"icon_emoji,omitempty"` }
HookMessage SlackにIncommingWebhook経由のMessage送信形式
type ProfileLabel ¶
type UnfURLsParameters ¶
type UnfURLsParameters struct { Channel string `json:"channel"` TimeStamp string `json:"ts"` UnfURLs UnfURLs `json:"unfurls"` Source string `json:"source,omitempty"` UnfUrlID string `json:"unfurl_id,omitempty"` UserAuthBlocks []BlockBase `json:"user_auth_blocks,omitempty"` UserAuthRequired bool `json:"user_auth_required,omitempty"` }
type UserIdentity ¶
type UserProfile ¶
type UserProfile struct { FirstName string `json:"first_name"` LastName string `json:"last_name"` RealName string `json:"real_name"` RealNameNormalized string `json:"real_name_normalized"` DisplayName string `json:"display_name"` DisplayNameNormalized string `json:"display_name_normalized"` Email string `json:"email,omitempty"` Skype string `json:"skype,omitempty"` Phone string `json:"phone,omitempty"` Image24 string `json:"image_24"` Image32 string `json:"image_32"` Image48 string `json:"image_48"` Image72 string `json:"image_72"` Image192 string `json:"image_192"` Image512 string `json:"image_512"` ImageOriginal string `json:"image_original"` StatusText string `json:"status_text,omitempty"` StatusEmoji string `json:"status_emoji,omitempty"` StatusExpiration int `json:"status_expiration"` Team string `json:"team"` Fields map[string]ProfileLabel `json:"fields"` }
UserProfile contains all the information details of a given user
func (UserProfile) GetUserImageURI ¶
func (u UserProfile) GetUserImageURI() string
Click to show internal directories.
Click to hide internal directories.