import type { VoiceTool } from './_types'
import { tabletGet } from './_http'

export const tool: VoiceTool = {
  schema: {
    type: 'function',
    function: {
      name: 'get_weather',
      description:
        'Получить текущую погоду и короткий прогноз для города. ' +
        'Для вопросов вроде «какая сегодня погода», «холодно ли на улице», «нужен ли зонт». ' +
        'По умолчанию — Санкт-Петербург.',
      parameters: {
        type: 'object',
        properties: {
          city: {
            type: 'string',
            description:
              'Город на русском или шорткод (spb, msk, sochi, ekb, kzn, nsk, krd). ' +
              'По умолчанию Санкт-Петербург.',
          },
        },
      },
    },
  },

  async execute(args) {
    const city = (args?.city as string) || ''
    return tabletGet('/api/voice/tools/weather', city ? { city } : undefined)
  },
}
