tracker

Форк
0
/
uploader.go 
58 строк · 1.0 Кб
1
package uploader
2

3
import (
4
	"net/http"
5
	"time"
6

7
	"github.com/pocketbase/pocketbase"
8
)
9

10
type Task struct {
11
	app    *pocketbase.PocketBase
12
	client *http.Client
13
	loc    *time.Location
14
}
15

16
func New(app *pocketbase.PocketBase) *Task {
17
	location, err := time.LoadLocation("Europe/Moscow")
18
	if err != nil {
19
		panic(err)
20
	}
21

22
	return &Task{
23
		app:    app,
24
		client: &http.Client{},
25
		loc:    location,
26
	}
27
}
28

29
func (t *Task) Do() {
30
	// upload fired conversions
31
	t.app.Logger().Info("start upload conversions")
32

33
	trackers, err := t.app.Dao().FindRecordsByFilter(
34
		"tracker",
35
		"enabled = true && network = 'yandex'",
36
		"-created",
37
		100, // limit
38
		0,
39
	)
40

41
	if err != nil {
42
		t.app.Logger().Error("error on get trackers")
43

44
		return
45
	}
46

47
	for _, tracker := range trackers {
48
		if err := t.yandex(tracker); err != nil {
49
			t.app.Logger().Error("error on upload yandex conversions", "error", err)
50
		}
51

52
		if err := t.vk(tracker); err != nil {
53
			t.app.Logger().Error("error on upload vk conversions", "error", err)
54
		}
55
	}
56

57
	t.app.Logger().Info("finish upload conversions")
58
}
59

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.