23 lines
587 B
Go
23 lines
587 B
Go
package usecase
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/TelegramExchange/tgex-backend/tg_parser/internal/domain"
|
|
)
|
|
|
|
func (uc *UseCase) FetchChannelMeta(ctx context.Context, username string) (domain.Channel, error) {
|
|
channel, err := uc.telegram.ParseChannelMeta(ctx, username)
|
|
if err != nil {
|
|
return domain.Channel{}, fmt.Errorf("uc.telegram.ParseChannelMeta: %s", err)
|
|
}
|
|
|
|
err = uc.database.UpdateChannelIfNotAccessible(ctx, channel.TelegramID)
|
|
if err != nil {
|
|
return domain.Channel{}, fmt.Errorf("uc.database.UpdateChannelIfNotAccessible: %s", err)
|
|
}
|
|
|
|
return channel, nil
|
|
}
|