Channel

Сервис Channel #

Сервис Channel служит для централизованного управления (добавления, редактирования, или удаления) прошивок для приборов.

Авторизация в сервис Channel #

  1. Для авторизации через логин и пароль используется метод signin. Детальнее метод описан в Авторизация пользователя

  2. Для авторизации по Токену используется метод authenticate, после того как пользователь прошел signin. Детальнее метод описан в Авторизация пользователя

Методы которые требуют авторизации по Токену #

Следующие методы доступны только авторизованным пользователям. Сервер ожидает Токен в запросе.

// videos
router.HandleFunc("/videos/add", controllers.CreateVideoHandler).Methods("POST")
router.HandleFunc("/videos/remove/{id}", controllers.DeleteVideoHandler).Methods("GET")
router.HandleFunc("/videos/checkurl/", controllers.VideosCheckUrlHandler).Methods("POST")
router.HandleFunc("/videos/getmaxvideoid", controllers.VideoGetMaxVideoIdHandler).Methods("GET")
router.HandleFunc("/videos/update", controllers.UpdateVideoHandler).Methods("POST")
// video
router.HandleFunc("/video/addgrouptovideo", controllers.AddVideosGroupsToVideoHandler).Methods("POST")
router.HandleFunc("/video/deletegroupfromvideo", controllers.DeleteVideosGroupsFromVideoHandler).Methods("POST")
router.HandleFunc("/video/deleteallgroupsfromvideo/{id}",controllers.RemoveAllGroupFromVideoHandler).Methods("GET")

Данные методы находятся в файле controllers/videos.go

// videosgroup
router.HandleFunc("/videosgroup/add", controllers.CreateVideoGroupHandler).Methods("POST")
router.HandleFunc("/videosgroup/update", controllers.UpdateVideoGroupHandler).Methods("POST")
router.HandleFunc("/videosgroup/remove/{id}", controllers.DeleteVideoGroupHandler).Methods("GET")
router.HandleFunc("/videosgroup/list", controllers.VideoGroupsListHandler).Methods("GET")
router.HandleFunc("/videosgroup/getmaxorder", controllers.VideoGroupsGetMaxOrderHandler).Methods("GET")
router.HandleFunc("/videosgroup/getmaxgroupid", controllers.VideoGroupsGetMaxGroupIdHandler).Methods("GET")
router.HandleFunc("/videosgroup/getcurrentorder", controllers.VideoGroupsGetCurrentOrderHandler).Methods("GET")
router.HandleFunc("/videosgroup/list/{id}", controllers.VideosGroupsListByGroupIdHandler).Methods("GET")

Данные методы находятся в файле controllers/videogroups.go

Методы без авторизации #

Следующие методы общедоступны, к ним могут обратится все, даже не зарегистрированный в системе пользователь.

// videos
router.HandleFunc("/videos/list", controllers.VideosListHandler).Methods("GET")
router.HandleFunc("/videos/list/{id}", controllers.VideosListByGroupIdHandler).Methods("GET")
router.HandleFunc("/videos/listwithgroups", controllers.VideosListHandlerWithGroups).Methods("GET")
router.HandleFunc("/videos/getcurrentvideo/{id}", controllers.VideosGetCurrentHandler).Methods("GET")
router.HandleFunc("/videos/getvideobygroupsids", controllers.VideosGetVideoByGroupsIdsHandler).Methods("GET")
router.HandleFunc("/videos/getvideobygroupsids/{id}",controllers.VideosListHandlerWithGroupsIdIn).Methods("GET")
router.HandleFunc("/videos/featured", controllers.VideosFeatured).Methods("GET")

Данные методы находятся в файле controllers/videos.go

Зависимости сервиса Channel #

Channel обменявается данными со следующими сервисами:

Права доступа к сервису Channel #

  • ADMIN и SALES - Имеют полный доступ ко всем функциям сервиса Channel.

  • ВСЕ (даже не зарегистрованные пользователи) - Могут получать только список видео из открытых методов.

user rules img