code: func (mod *TelegramBee) Run(eventChan chan bees.Event) {
  	var err error
  	mod.bot, err = telegram.NewBotAPI(mod.apiKey)
  	if err != nil {
  		mod.LogErrorf("Authorization failed, make sure the Telegram API key is correct: %s", err)
  		return
  	}
  	mod.Logf("Authorized on account %s", mod.bot.Self.UserName)
  
  	u := telegram.NewUpdate(0)
  	u.Timeout = 60
  
  	updates, err := mod.bot.GetUpdatesChan(u)
  	if err != nil {
  		panic(err)
  	}
  
  	for {
  		select {
  		case <-mod.SigChan:
  			return
  		case update := <-updates:
  			if update.Message == nil || update.Message.Text == "" {
  				continue
  			}
  
  			ev := bees.Event{
  				Bee:  mod.Name(),
  				Name: "message",
  				Options: []bees.Placeholder{
  					{
  						Name:  "text",
  						Type:  "string",
  						Value: update.Message.Text,
  					},
  					{
  						Name:  "chat_id",
  						Type:  "string",
  						Value: strconv.FormatInt(update.Message.Chat.ID, 10),
  					},
  					{
  						Name:  "user_id",
  						Type:  "string",
  						Value: strconv.Itoa(update.Message.From.ID),
  					},
  				},
  			}
  			eventChan <- ev
  		}
  	}
  }
docs: // Run executes the Bee's event loop.