日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

服務端配置與運行

AUI Kits課堂AppServer提供了登錄服務和教室(直播間)管理服務等后臺服務,通過與AUI Kits課堂場景SDK搭配使用,可以快速實現互動直播應用,助力業務創新快速上線。本文介紹如何使用Java版本的源碼構建并部署AUI Kits課堂AppServer。

項目原理

AppServer的作用

image

集成方基于AUI Kits框架快速搭建互動課堂應用時,場景SDK對接了以下產品能力,AppServer對此進行封裝,提供一套標準化的HTTP接口供場景SDK使用,降低了集成方的開發成本。

  1. 視頻直播:用于直播推流、觀看及音視頻連麥。

  2. 互動消息:用于教室(直播間)傳遞信令消息。

  3. 視頻點播(可選):用于直播錄屏、回放。

  4. 互動白板:用于線上學科輔導等課堂場景,教師可借助涂鴉、文本、直線、激光筆等基礎教具,邊演示課件邊勾畫要點,由網易云信互動白板服務提供。

AppServer除了封裝上面4個產品的能力外,還實現了互動課堂管理服務,例如創建、修改、刪除課堂、開始、結束互動課堂等常見功能。AppServer不直接依賴視頻直播提供的接口,而是按照視頻直播推拉流協議拼接地址實現推拉流地址獲取。同時,AppServer也實現了監聽視頻直播的推流狀態回調,以解決主播端異常退出而直播間狀態不對的問題。

項目框架

  • 基于主流的Java8 + Springboot2搭建框架。

  • 基于Mybatis plus作為Repository層選型。

  • 基于SpringSecurity + JWT實現權限控制。

項目部署

前提條件

創建數據庫

以MySQL為例,創建數據庫,并執行該SQL文件

正確創建后應該有如下7個表。

image

部署方式

  • 方式一(推薦):通過源碼部署。

    本示例主要通過源碼構建并部署AppServer。根據源碼的說明文檔配置并執行,詳細信息,請參見AUI Kits課堂AppServer

  • 方式二:如果熟悉函數計算,也可以使用Serverless平臺快速部署,參見快速創建函數

重要

在首次部署服務器時,請務必編輯代碼文件code/src/main/java/com/aliyuncs/aui/common/utils/JwtUtils.java,給屬性SECRET隨機設置一個字符串。

項目參數配置

  1. 下載互動課堂源碼至服務器。

  2. 打開源碼Server\Java\code\src\main\resources目錄下的application.yml文件,配置相關參數。

    參數配置信息

    說明

    server:
      port: 8080

    默認監聽端口是8080,開發者可以自行更改。

    # DB連接信息,連接到MySQL數據庫
    url: jdbc:mysql://******:3306/*****?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
    username: "******"
    password: "******"

    jdbc:mysql://MySQL數據庫服務器的主機名或IP地址:3306/數據庫的名稱?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai

    • username:數據庫用戶名

    • password:數據庫密碼

    # pop配置。需要配置賬號的AccessKey ID和AccessKey Secret,用于調用IM及VOD相關服務
      openapi:
        access:
          key: "*********"
          secret: "*********"

    調用阿里云IM及VOD相關服務API時,您需要使用AccessKey完成身份驗證。AccessKey包括AccessKey ID和AccessKey Secret。具體如下:

    • AccessKey ID:用于標識用戶。

    • AccessKey Secret:用于驗證用戶的密鑰。AccessKey Secret必須保密。

    更多信息,請參見創建AccessKey

    # IM服務的應用Id    
      new_im:
        appId: "*********"
        appKey: "*********"
        appSign: "*********"

    直播互動消息AppIdAppKeyAppSign,請參見創建直播互動消息應用獲取。

    # 直播推拉流配置
      live_stream:
        #推流域名
        push_url: push.*****.vip
        #拉流域名
        pull_url: pull.*****.vip
        #推流對應的authkey
        push_auth_key: zJl4******
        #拉流對應的authkey
        pull_auth_key: mDZs********
        app_name: live
        auth_expires: 604800
    • push_url: 推流域名

    • pull_url: 拉流域名

    • push_auth_key: 推流域名的鑒權主KEY

    • pull_auth_key: 播流域名的鑒權主KEY

    • app_name: 轉推后直播流地址中的AppName,默認為live,可自定義。

      說明

      若您需要為轉推后的流綁定轉碼、錄制、截圖等模板,需要設置該AppName與模板中的AppName一致模板才會生效。

    請參見查看鑒權值獲取。

    # 連麥應用信息
      live_mic:
        app_id: 7c61********
        app_key: c461b*********

    視頻連麥應用IDAppKey,請參見創建實時音視頻應用獲取。

     # 推流狀態回調的authKey
      live_callback:
        auth_key: avdsd*******

    如果需要監聽某個推流地址的推流狀態,請配置該參數。請參見回調設置獲取該參數值。

    # 白板信息
    room:
      boards:
        app_key: "*********"
        app_secret: "*********"

    網易云信互動白板服務應用的AppKeyAppSecret,請參見白板配置獲取。

    # 配置允許跨域的請求域名
    http:
      cors:
        host: "*"

    Web端使用該服務時請正確設置CORS,以允許跨域請求。

面向服務的鑒權配置說明

本項目需要先調用/login接口獲取鑒權的token,將token放到請求頭中,然后再調用其它接口。但是本項目token的生成方式較為簡易,僅適用于測試,用戶基于Demo開發時需要自行調整鑒權策略。用戶可按自身業務需求實現鑒權配置,包括token的生成算法也可以自定義,要確保生成及檢驗token使用相同的算法。

說明

鑒權token的相關代碼文件見code/src/main/java/com/aliyuncs/aui/common/utils/JwtUtils.java

image.png/login接口說明詳見登錄的詳細接口定義

項目打包和運行

打包

  1. 使用IDEA自帶的Maven打包,jar在target目錄下。

  2. Server\Java\code路徑下使用以下命令執行打包操作。

    mvn package -DskipTests
  3. target目錄下的jar包發送到服務器。

    scp xxx.jar root@ip:/root

運行項目

在jar包所在目錄下打開終端。

  1. 終端運行,日志打印到終端。

    java -jar ***.jar
  2. 后臺運行,將日志打印輸出到nohup.out文件。

    nohup java -jar ***.jar &
  3. 查看是否啟動成功。

    訪問對應接口,顯示如下,說明AppServer啟動成功。

    image