InlineQuery и NextOffset в telegram боте на go
Всем привет. Помогите разобраться с проблемой обработки большой пачки результатов (ограничение 50) при инлайн режиме. Нашел параметр NextOffset в InlineConfig, но что то не могу понять как его обработать, все время упираюсь в Bad Request: too many inline query results specified
func (b *Bot) handleInlineQuery(update tgbotapi.Update) {
inlineQuery := update.InlineQuery
offset, _ := strconv.Atoi(inlineQuery.Offset)
results := make([]interface{}, 0)
articles, _ := b.db.GetArticlesByTitle(strings.ToLower(inlineQuery.Query))
for _, article := range articles {
inlineResult := tgbotapi.NewInlineQueryResultArticle(article.Id(), article.Title, article.Title)
results = append(results, inlineResult)
}
if len(results) < 50 {
inlineConfig := tgbotapi.InlineConfig{
InlineQueryID: inlineQuery.ID,
Results: results,
IsPersonal: true,
CacheTime: 0,
}
_, err := b.api.AnswerInlineQuery(inlineConfig)
if err != nil {
log.Println(err)
}
} else {
inlineConfig := tgbotapi.InlineConfig{
InlineQueryID: inlineQuery.ID,
Results: results,
IsPersonal: true,
CacheTime: 0,
NextOffset: strconv.Itoa(offset + 50),
}
_, err := b.api.AnswerInlineQuery(inlineConfig)
if err != nil {
log.Println(err)
}
}
}