feat: Added EscapeMarkdown and Client#SendMarkdownMessage
This commit is contained in:
parent
ba3e7a59c1
commit
a814325e9a
1 changed files with 15 additions and 0 deletions
15
client.go
15
client.go
|
@ -7,8 +7,11 @@ import (
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/url"
|
"net/url"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const badChars = "_*[]()~`>#+-=|{}.!"
|
||||||
|
|
||||||
type Client struct {
|
type Client struct {
|
||||||
Key string
|
Key string
|
||||||
Offset int64
|
Offset int64
|
||||||
|
@ -37,6 +40,18 @@ func (c *Client) GetUpdates() (Response, error) {
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func EscapeMarkdown(msg string) string {
|
||||||
|
for _, char := range badChars {
|
||||||
|
ch := string(char)
|
||||||
|
msg = strings.Replace(msg, ch, "\\"+ch, -1)
|
||||||
|
}
|
||||||
|
return msg
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *Client) SendMarkdownMessage(chatId, body string) (*SendMessageResponse, error) {
|
||||||
|
return c.SendMessage(chatId, body, url.Values{"parse_mode": {"MarkdownV2"}})
|
||||||
|
}
|
||||||
|
|
||||||
func (c *Client) SendMessage(chatId, body string, options ...url.Values) (ret *SendMessageResponse, err error) {
|
func (c *Client) SendMessage(chatId, body string, options ...url.Values) (ret *SendMessageResponse, err error) {
|
||||||
values := url.Values{
|
values := url.Values{
|
||||||
"chat_id": {chatId},
|
"chat_id": {chatId},
|
||||||
|
|
Loading…
Reference in a new issue