all repos — telegram-bot-api @ 65947daaab88cefc8f87b936cb1fafb60d09115d

Golang bindings for the Telegram Bot API

Added `live_period` for Location
pr0head pr0head@gmail.com
Fri, 13 Oct 2017 17:00:04 +0300
commit

65947daaab88cefc8f87b936cb1fafb60d09115d

parent

846d467e14e674846aea543559900b7832e0b435

3 files changed, 29 insertions(+), 20 deletions(-)

jump to
M configs.goconfigs.go

@@ -571,8 +571,9 @@

// LocationConfig contains information about a SendLocation request. type LocationConfig struct { BaseChat - Latitude float64 // required - Longitude float64 // required + Latitude float64 // required + Longitude float64 // required + LivePeriod int // optional } // values returns a url.Values representation of LocationConfig.

@@ -584,6 +585,9 @@ }

v.Add("latitude", strconv.FormatFloat(config.Latitude, 'f', 6, 64)) v.Add("longitude", strconv.FormatFloat(config.Longitude, 'f', 6, 64)) + if config.LivePeriod != 0 { + v.Add("live_period", strconv.Itoa(config.LivePeriod)) + } return v, nil }
M helpers.gohelpers.go

@@ -268,13 +268,14 @@

// NewLocation shares your location. // // chatID is where to send it, latitude and longitude are coordinates. -func NewLocation(chatID int64, latitude float64, longitude float64) LocationConfig { +func NewLocation(chatID int64, latitude float64, longitude float64, live_period int) LocationConfig { return LocationConfig{ BaseChat: BaseChat{ ChatID: chatID, }, - Latitude: latitude, - Longitude: longitude, + Latitude: latitude, + Longitude: longitude, + LivePeriod: live_period, } }

@@ -465,13 +466,14 @@ }

} // NewInlineQueryResultLocation creates a new inline query location. -func NewInlineQueryResultLocation(id, title string, latitude, longitude float64) InlineQueryResultLocation { +func NewInlineQueryResultLocation(id, title string, latitude, longitude float64, live_period int) InlineQueryResultLocation { return InlineQueryResultLocation{ - Type: "location", - ID: id, - Title: title, - Latitude: latitude, - Longitude: longitude, + Type: "location", + ID: id, + Title: title, + Latitude: latitude, + Longitude: longitude, + LivePeriod: live_period, } }
M types.gotypes.go

@@ -331,8 +331,9 @@ }

// Location contains information about a place. type Location struct { - Longitude float64 `json:"longitude"` - Latitude float64 `json:"latitude"` + Longitude float64 `json:"longitude"` + Latitude float64 `json:"latitude"` + LivePeriod int `json:"live_period"` } // Venue contains information about a venue, including its Location.

@@ -639,11 +640,12 @@ }

// InlineQueryResultLocation is an inline query response location. type InlineQueryResultLocation struct { - Type string `json:"type"` // required - ID string `json:"id"` // required - Latitude float64 `json:"latitude"` // required - Longitude float64 `json:"longitude"` // required - Title string `json:"title"` // required + Type string `json:"type"` // required + ID string `json:"id"` // required + Latitude float64 `json:"latitude"` // required + Longitude float64 `json:"longitude"` // required + LivePeriod int `json:"live_period"` // optional + Title string `json:"title"` // required ReplyMarkup *InlineKeyboardMarkup `json:"reply_markup,omitempty"` InputMessageContent interface{} `json:"input_message_content,omitempty"` ThumbURL string `json:"thumb_url"`

@@ -679,8 +681,9 @@

// InputLocationMessageContent contains a location for displaying // as an inline query result. type InputLocationMessageContent struct { - Latitude float64 `json:"latitude"` - Longitude float64 `json:"longitude"` + Latitude float64 `json:"latitude"` + Longitude float64 `json:"longitude"` + LivePeriod int `json:"live_period"` } // InputVenueMessageContent contains a venue for displaying