Сервис Channel #
Сервис Channel служит для централизованного управления (добавления, редактирования, или удаления) прошивок для приборов.
Авторизация в сервис Channel #
-
Для авторизации через логин и пароль используется метод signin. Детальнее метод описан в Авторизация пользователя
-
Для авторизации по Токену используется метод 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.
-
ВСЕ (даже не зарегистрованные пользователи) - Могут получать только список видео из открытых методов.