运行C Demo
本文介绍在ubuntu 18.04环境中运行C Demo的方法。
使用前必读
本文操作步骤以普通用户权限为例。如果您在操作过程中涉及到管理员权限才能执行的操作,可尝试使用sudo
命令执行。
前提条件
已开通音视频通信增值服务,具体操作,请参见开通服务。
环境准备
需要在ubuntu 18.04环境中编译运行Demo,本文以docker环境为例演示Demo的运行:
sudo docker pull ubuntu:18.04 sudo docker run -it ubuntu:18.04 sudo apt-get update; apt-get install build-essential wget unzip openssh-client
(可选)由于C Demo(Linux,x86_64架构)仅支持音视频的传输,不支持播放和采集。为了您更好地体验Demo,可以准备一台Android系统的实体设备来播放传输的视频。
操作步骤
在阿里云物联网平台创建产品。具体操作请参见创建产品。
在阿里云物联网平台创建两台设备作为主叫方和被呼叫方。DeviceName示例:C_Host、C_Guest,具体操作请参见创建设备。
说明请在物联网平台获取以下参数,后续编译Demo文件需要使用。
设备证书:设备创建成功后,将生成设备证书。设备证书包含ProductKey、DeviceName和DeviceSecret。
设备接入域名:在实例详情页面,单击查看开发配置,获取设备接入域名。
下载并解压Demo运行的相关文件。
wget https://linkkit-export.oss-cn-shanghai.aliyuncs.com/rtc/c-rtc-demo.zip unzip c-rtc-demo.zip
打开demos/rtc_guest_integrated_demo.c文件并修改。
/* TODO:填入被呼叫方C_Guest的设备证书 */ char *product_key = "${YourProductKey}"; char *device_name = "${YourDeviceName}"; char *device_secret = "${YourDeviceSecret}"; //IoT实例的接入点。TODO:填入设备的接入域名 char *mqtt_host = "${YourInstanceId}.mqtt.iothub.aliyuncs.com";
编译与运行Demo。
cd c-rtc-demo; sh run.sh
出现如下信息表示Demo运行成功。
root@********fc1:/c-demo-export# sh run.sh : Compiling portfiles/aiot_port/posix_port.c ... : Compiling core/aiot_state_api.c ... : Compiling components/rtc/aiot_rtc_api.c ... : Compiling core/aiot_http_api.c ... : Compiling core/sysdep/core_sysdep.c ... : Compiling core/sysdep/core_adapter.c ... : Compiling core/utils/core_sha256.c ... : Compiling core/utils/core_auth.c ... : Compiling core/utils/core_log.c ... : Compiling core/utils/core_global.c ... : Compiling core/utils/core_diag.c ... : Compiling core/utils/core_string.c ... : Compiling external/ali_ca_cert.c ... : Compiling core/aiot_mqtt_api.c ... : Compiling core/utils/core_http.c ... + Linking output/rtc-host-integrated-demo ... + Linking output/rtc-guest-integrated-demo ... EEEE: entering set_http_functions (LWS version) ... created lock for http access leaving set_http_functions (LWS version) ... [163*****778.322][LK-0313] MQTT user calls aiot_mqtt_connect api, connect [163*****778.322][LK-032A] mqtt host: iot-t********t-as-mqtt.unify.aliyuncs.com [16*******778.322][LK-0317] user name: KTDrd****************M [16*****8.322][LK-0318] password: 01****************132AFB2489EB6A36F61ABE111B establish tcp connection with server(host='io********e.iot-as-mqtt.unify.aliyuncs.com', port=[443]) success to establish tcp, fd=3 local port: 4***0 [16******.588][LK-0313] MQTT connect success in 260 ms AIOT_MQTTEVT_CONNECT [2021-09-18 06:32:58.584][INFO] [iot_sdk.c:155] func alirtc_rtc_set_log_level start [2021-09-18 06:32:58.584][INFO] [iot_sdk.c:159] func alirtc_rtc_set_log_level stop [2021-09-18 06:32:58.584][INFO] [iot_sdk.c:500] func alirtc_config_log start [2021-09-18 06:32:58.584][INFO] [iot_sdk.c:513] func alirtc_config_log stop heartbeat response wait for rtc initing
(可选)为了您更好地体验Demo,请参考Android Demo中提供的方法,生成一个Host apk文件,将该文件安装在准备好的实体设备中,单击拉新会,将播放运行Demo成功后传输的阿里云宣传视频。
说明
编辑AliRtcChatActivity.java文件时,主叫方的设备证书为本文步骤2中创建的C_Host的设备证书,被呼叫方的设备证书为本文步骤2中创建的C_Guest的设备证书。
