можно встать select-ом на 2 канала: с сообщениями и с time.After
при получении сообщения из 1-го append-ить его в слайс (и если там >N элементов, отправлять их), при срабатывании time.After просто отправлять все сообщения
ну вот примерно сейчас так и есть
только for бесконечный на канале приема сообщения для отправки и потом чтение канала до нуля пока там что-то есть и отправка пачкой