본 제품에 대한 문서 세트는 편견 없는 언어를 사용하기 위해 노력합니다. 본 설명서 세트의 목적상, 편견 없는 언어는 나이, 장애, 성별, 인종 정체성, 민족 정체성, 성적 지향성, 사회 경제적 지위 및 교차성에 기초한 차별을 의미하지 않는 언어로 정의됩니다. 제품 소프트웨어의 사용자 인터페이스에서 하드코딩된 언어, RFP 설명서에 기초한 언어 또는 참조된 서드파티 제품에서 사용하는 언어로 인해 설명서에 예외가 있을 수 있습니다. 시스코에서 어떤 방식으로 포용적인 언어를 사용하고 있는지 자세히 알아보세요.
Cisco는 전 세계 사용자에게 다양한 언어로 지원 콘텐츠를 제공하기 위해 기계 번역 기술과 수작업 번역을 병행하여 이 문서를 번역했습니다. 아무리 품질이 높은 기계 번역이라도 전문 번역가의 번역 결과물만큼 정확하지는 않습니다. Cisco Systems, Inc.는 이 같은 번역에 대해 어떠한 책임도 지지 않으며 항상 원본 영문 문서(링크 제공됨)를 참조할 것을 권장합니다.
이 문서에서는 Next Generation Streamer 및 Uploader와의 Cisco Meeting Server(CMS) 통합을 구성하고 트러블슈팅하는 단계에 대해 설명합니다. Next Generation Streamer는 CMS 버전 3.0에서 도입되었으며 SIP(Session Initiation Protocol) 기반입니다.
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
CMS 버전 2.1 이상에서는 표준 RTMP(Real-Time Messaging Protocol)를 사용하는 CMS 스트리머와의 라이브 스트리밍 지원을 도입했습니다. CMS 3.0에는 SIP 기반 구성 요소인 Next Generation Streamer가 도입되었습니다. 3.0 이전 버전에서는 XMPP(Extensible Messaging and Presence Protocol)를 사용했습니다. CMS 버전 3.1 이상은 RTMPS 프로토콜을 지원하므로 CMS 스트리머 구성 요소와 외부 서버 간의 통신을 암호화할 수 있습니다. 이를 통해 CMS 스트리머는 RTMP(Youtube, Facebook, Wowza 등)를 지원하는 모든 스트리밍 플랫폼과 통합할 수 있습니다. 현재 CMS Streamer는 Vbrick DME를 외부 스트리밍 서버로 사용하여 테스트되었으며 통합을 위한 권장 플랫폼입니다.
VBrick DME와의 라이브 스트리밍(웹캐스트) 통합을 통해 사용자는 네트워크 내부 어디에서나 다른 디바이스에서 라이브 스트리밍 CMS 컨퍼런스를 시청할 수 있습니다. 또한 VBrick Rev를 VBrick DME와 함께 사용하면 VBrick Rev에서 권한을 부여받은 모든 사용자에 대해 내부 네트워크 외부에서 볼 수 있도록 이 기능이 확장됩니다.또한 CMS 업로더 구성 요소는 Meeting Server에 연결된 구성된 NFS에서 Video Content Manager, Vbrick에 Meeting Server 녹화 파일을 업로드하기 위한 작업 흐름을 간소화합니다. 녹음을 수동으로 가져올 필요는 없습니다. 업로더 구성 요소가 구성되고 활성화되면 녹음이 NFS에서 Vbrick으로 푸시됩니다.
기드림
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 여기에 사용된 모든 디바이스는 지워진(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.
업로더
Uploader 구성 요소는 Recorder 구성 요소와 동일한 서버에 설치하거나 별도의 서버에 설치할 수 있습니다. 레코더와 동일한 서버에 설치된 경우 사용할 vCPU를 몇 개 추가합니다. 다른 서버에서 실행하는 경우 레코더에 대해 동일한 서버 사양을 사용합니다. 최소 4개의 물리적 코어와 4GB의 RAM을 갖춘 전용 VM
업로더를 실행 중인 Meeting Server에는 NFS(네트워크 파일 공유)에 대한 읽기 및 쓰기 권한이 필요합니다. 업로더는 컨퍼런스를 호스팅하는 호출 브리지가 아닌 다른 회의 서버에서 실행해야 합니다.
CMS와 함께 Streamer 및 Uploader를 구축하는 데 다음과 같은 몇 가지 시나리오가 지원됩니다. 여러 스트리밍 서버가 있는 단일 callbridge, 단일 스트리밍 서버가 있는 callbridge 클러스터, 여러 스트리밍 서버가 있는 callbridge 클러스터. 이 문서는 단일 스트리머, 업로더 서버에 연결된 callbridge 클러스터를 사용하는 기본 구축을 기반으로 합니다. 이 시나리오의 모든 컨피그레이션 단계는 다른 시나리오에도 적용됩니다.
위 이미지에 표시된 대로
CMS CallBridge 클러스터
CMS 스트리머/레코더
CMS 업로더
스트리밍을 위한 VBrick DME
스트리밍용 VBrick Rev
기드림
callbridge가 이미 설정되어 있으며 통화를 수락하는 것으로 가정합니다.
1단계. 인증서
새 Streamer 구성 요소는 https 연결을 수신할 필요가 없지만 SIP 연결을 수신합니다. Streamer 서버에는 TLS 통신을 위한 유효한 인증서가 있어야 합니다.
streamer> pki csr tac CN:.*.tptac9.com subjectAltName:streamer.tptac9.com
..............
......
Created key file tac.key and CSR tac.csr
CSR file tac.csr ready for download via SFTP
로컬 CA(Certificate Authority)에서 서명한 인증서를 가져옵니다. SFTP(Secure File Transfer Protocol)를 사용하여 생성된 인증서를 Streamer 서버에 업로드합니다. 인증서가 성공적으로 업로드되었는지 확인하기 위해 선택합니다.
이 문서에서 와일드카드 인증서는 streamer에 사용됩니다. 인증서 가이드를 참조하여 주십시오.
streamer> pki list
User supplied certificates and keys:
tac.key
tac.cer
ROOTCA.cer
example.key
example.csr
tac.csr
2단계. MMP/SSH 컨피그레이션
streamer sip listen <인터페이스> <tcp-port|none> <tls-port|none>
streamer> streamer sip listen a 7000 7001
TLS sip 연결만 사용하려면 명령이 아래에 있는 TCP sip 연결을 "none"으로 구성합니다
streamer> streamer sip listen a none 7001
streamer> streamer sip resolution 720p
streamer> streamer enable
streamer> tls sip trust ROOTCA.cer
참고: TLS 연결을 안전하게 보호하려면 TLS 확인을 활성화하는 것이 좋습니다.
streamer> tls sip verify enable(tls sip 확인 활성화)
streamer> streamer
Enabled : false
SIP interfaces : tcp a:7000, tls a:7001
SIP key file : tac.key
SIP certificate file : tac.cer
SIP CA Bundle file : none
SIP Resolution : 720p
SIP traffic trace : Disabled
Call Limit : none
streamer> streamer enable
SUCCESS: Key and certificate pair match
SUCCESS: Streamer enabled
3단계. API 컨피그레이션
이 컨피그레이션은 CallBridge를 호스팅하는 CMS에서 수행됩니다. 아래는 CMS의 Webadmin 인터페이스의 API입니다. Postman, Poster와 같은 REST 클라이언트도 이 작업을 수행하는 데 사용할 수 있습니다.
새 SIP 스트리머가 활성화되면 Call Bridge의 /callProfiles for sipStreamerUri 아래에서 구성하고 사용할 수 있습니다.
CMS 서버에서 API를 사용하려면 Webadmin > Configuration > API로 이동합니다.
The user part of the configured "sipStreamuri" (i.e. the part before '@' symbol) has no significant meaning, and for the new SIP streamer component, although required, it can usually be anything, e.g. "streamer@streamer.com".The important part of the URI is the "domain" part.
sipStreamuri=demo@streamer.com 및 StreamingMode= Automatic/Manual 구성
시스템/프로필에 callProfile 추가
스트리밍에 사용되는 공간
4단계. "아웃바운드 규칙" 생성
outboundDialPlan 규칙에 매핑되는 사용자 지정 URI를 구성합니다(도메인은 예를 들어 "streamer.com"과 같을 수 있음). streamerUri에서 라우팅에 사용되는 도메인과 일치하도록 outboundDialPlan 규칙을 구성하십시오.
아웃바운드 규칙 생성
위 이미지에 표시된 대로 SIP 스트리머의 경우 SIP(5060,5061)의 기본 포트가 사용되지 않을 경우, 서비스에 대해 outboundDialPlanRule이 구성된 경우 스트리머의 컨피그레이션에서 포트를 지정하고 다음 포트 번호를 포함하여 "사용할 sip proxy" 필드에 연결해야 합니다.
streamer> streamer
Enabled : true
SIP interfaces : tcp a:7000, tls a:7001
SIP key file : tac.key
SIP certificate file : tac.cer
SIP CA Bundle file : none
SIP Resolution : 720p
SIP traffic trace : Disabled
Call Limit : none
업로더
streamer> uploader nfs 192.168.15.38:녹음
streamer> uploader cms host join.mextp.local
streamer> uploader cms 포트 445
streamer> uploader cms 사용자 apiadmin
streamer> uploader cms 비밀번호
암호를 입력하십시오.
참고: 달리 명시되지 않는 한 포트는 기본적으로 443입니다.
Vbrick Rev 서버용 체인에 루트 CA 인증서 및 모든 중간 인증서의 복사본을 포함하는 인증서 번들(crt-bundle)을 생성합니다.
streamer> uploader rev trust vbrickbundle.cer
streamer> uploader
Enabled : false
NFS hostname : 192.168.15.38
NFS directory : Recording
CMS host : join.mextp.local
CMS port : 445
CMS user : apiadmin
CMS trust bundle : ROOTCA.cer
Vbrick Rev hostname : ciscotac.rev-na.demo.vbrick.com
Vbrick Rev port : 443
Vbrick Rev username : tacuser
Vbrick Rev trust bundle : brick.cer
View access : Public
cospace_member_access : edit
recording_owned_by_cospace_owner : false
fallback_owner : admin
comments_enabled : true
ratings_enabled : true
downloads_enabled : true
active_upon_upload : true
delete_after_upload : false
컨피그레이션이 올바르면 "uploader enable" 명령을 사용하여 Uploader 구성 요소를 활성화합니다. 모든 메시지에 아래와 같이 "SUCCESS(성공)"가 표시되어야 합니다.
streamer> uploader enable
SUCCESS: uploader enabled
기드림
스트리밍 작동 및 sip 스트리밍 통화가 연결됨
업로더
업로더의 syslog 팔로우에서 성공한 이벤트에 대한 로그를 볼 수 있습니다.
Jun 17 22:24:41.867 user.info cms-02 Uploader[1]: scanning directory: /mnt/recordings/forwardedCalls
Jun 17 22:24:41.867 user.info cms-02 Uploader[1]: scanning directory: /mnt/recordings/spaces
Jun 17 22:24:41.869 user.info cms-02 Uploader[1]: checking the status of /mnt/recordings/spaces/8a7076e2-6db6-47e9-98ee-3bd063e32559/20210618032309+0000_vid-id=c4605aaf-dc49-4cd7-9174-c46185ba1983@vbrick.mp4
Jun 17 22:24:41.870 user.info cms-02 Uploader[1]: Getting from: https://ciscotac.rev-na.demo.vbrick.com:443/api/v1/videos/c4605aaf-dc49-4cd7-9174-c46185ba1983/status
Jun 17 22:24:42.035 user.info cms-02 Uploader[1]: Received vbrick response status code: 200
Jun 17 22:24:42.035 user.info cms-02 Uploader[1]: vbrick response: main.vbrickStatusResp{Status:"Ready"}
Jun 17 22:24:42.035 user.info cms-02 Uploader[1]: file 20210618032309+0000_vid-id=c4605aaf-dc49-4cd7-9174-c46185ba1983@vbrick.mp4 vid c4605aaf-dc49-4cd7-9174-c46185ba1983 status Ready
Jun 17 22:24:42.035 user.info cms-02 Uploader[1]: Getting from: https://ciscotac.rev-na.demo.vbrick.com:443/api/v1/videos/c4605aaf-dc49-4cd7-9174-c46185ba1983/playback-url
Jun 17 22:24:42.200 user.info cms-02 Uploader[1]: Received vbrick response 200
기드림
1. 라이센스 없음
Streamer는 callbridge 구성 요소가 있는 서버에 "레코더" 라이센스가 필요합니다. 해당 항목이 없거나 라이센스가 충분하지 않은 경우 이벤트 로그에 아래와 같은 오류가 표시됩니다.
필수 라이센스를 추가해야 합니다. 라이센스 상태는 명령 "license"를 사용하여 CLI에서 확인할 수 있습니다.
cms1> license
Feature: callbridge status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: turn status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: webbridge status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: customizations status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: local_license_mode status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: recording status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: personal status: Activated expiry: 2023-Apr-28 (690 days remain)
Feature: shared status: Activated expiry: 2023-Apr-28 (690 days remain)
2.TLS 포트
· TLS 포트가 구성되었고 인증서가 적용되지 않은 경우 Streamer가 TLS를 사용하도록 인증서 구성
· 인증서를 사용할 수 없는 경우 TCP 포트만 구성
streamer> streamer sip listen a 7000 7001
streamer> streamer enable
FAILURE: TLS port set but no certificates configured
FAILURE: Streamer configuration not complete
이제 TLS 포트를 제거하거나 SIP TLS Trust and Streamer Certificate를 추가하는 두 가지 옵션이 있습니다
Cisco에서는 TLS 포트를 활성화하는 것이 좋습니다.
3. RTMP 스트림이 올바르게 구성되지 않았습니다.
로그에 오류가 표시됩니다.
daemon.info streamer streamer-sip[2280]: 144500.368 : INFO : call 3: retrieved stream URL from RTCP: "rtmp://broadcast:broadcast@10.106.81.40/test"
daemon.info streamer streamer-sip[2280]: 144500.368 : INFO : call 3: parsing rtmp://broadcast:broadcast@10.106.81.40/test
daemon.info streamer streamer-sip[2280]: 144500.368 : INFO : call 3: RTMP stream="test"
daemon.info streamer streamer-sip[2280]: 144500.368 : INFO : call 3: RTMP server="rtmp://10.106.81.40:1935/test"
daemon.info streamer streamer-sip[2280]: 144500.370 : INFO : call 3: Connected to RTMP server
daemon.info streamer streamer-sip[2280]: 144500.370 : INFO : call 3: C2 pending - len 1536
daemon.info streamer streamer-sip[2280]: 144500.370 : : call 3: snd: create new chunk stream 2
daemon.info streamer streamer-sip[2280]: 144500.370 : : call 3: snd: create new chunk stream 3
daemon.info streamer streamer-sip[2280]: 144500.370 : INFO : call 3: RTMP sent chunk size of 4096 and connect message
daemon.info streamer streamer-sip[2280]: 144500.410 : ERROR : call 3: connection : far end closed connection 5
스트림 구성의 절차를 확인하고 "rtmp://<VBrickBroadcastUsername>:<VBrickBroadcastPassword>@<VBrick IP 또는 FQDN>/live/NameofStream" 형식으로 RTMP URL을 올바르게 구성하십시오.
4. 통화 라우팅 관련 문제
CMS 스트리머는 SIP 기반 클라이언트이며 앞에서 설명한 것처럼 라우팅이 필요합니다. 이로 인해 통화가 실패할 수 있는 시나리오가 발생할 수 있습니다. CMS Callbridge에서 아웃바운드 통화를 전송했지만 다음 '트랜잭션 시간 초과 - INVITE를 전송하는 임시 응답 없음' 오류로 인해 실패한 이 예를 고려해 보십시오
2021-06-28 17:37:02.412 Info user 'guest300535034' starting streaming (space 'test') 2021-06-28 17:37:02.413 Info API call leg bc0917df-589c-4628-887d-79481d322fed in call 63f0b174-831e-4a12-b4ee-27186d4162af (API call 00286960-9af9-4d5d-9ca7-20dd40425292) 2021-06-28 17:37:02.413 Info call 44: outgoing SIP call to "demo@streamer.com" from space "test" 2021-06-28 17:37:02.413 Info call 44: configured - API call leg bc0917df-589c-4628-887d-79481d322fed with SIP call ID "7d37a80e-7996-4e8d-aa87-77c9d4729cec" 2021-06-28 17:37:04.482 Info call 42: receiver report 1 interval for rx video 0 = 6113ms (period 6108ms) 00000000 2021-06-28 17:37:22.074 Info call 44: falling back to unencrypted control connection... 2021-06-28 17:37:54.075 Info call 44: ending; local SIP teardown with reason 7 (transaction timeout - no provisional responses sending INVITE) - not connected after 0:52 2021-06-28 17:37:54.075 Info call 44: destroying API call leg bc0917df-589c-4628-887d-79481d322fed 2021-06-28 17:37:54.076 Info streaming call leg for space 'test' disconnected with reason 7 (transaction timeout - no provisional responses sending INVITE)
CMS Callbridge 서버에서 아웃바운드 통화 설정을 검토하여 전송 대상 위치 및 올바르게 설정되어 있는지 확인합니다. 또한 callprofile이 올바른 streamer URI로 구성되어 있고 동일한 URI가 Cospace와 연결되어 있는지 확인합니다.
업로더
1. Vbrick 세부 정보가 잘못되었습니다.
업로더 로그에서 오류를 볼 수 있습니다.
Jun 27 11:29:27.864 user.info streamer Uploader[1]: Received vbrick response 500
Jun 27 11:29:27.864 user.info streamer Uploader[1]: posting to: https://sales.vbrick.com:443/api/v1/user/login
Jun 27 11:29:47.870 user.info streamer Uploader[1]: Received vbrick response 500
Jun 27 11:29:47.870 user.err streamer Uploader[1]: Failed to initialise Vbrick Client
Jun 27 11:29:47.870 user.err streamer Uploader[1]: vbrick returned status code: 500
vbrick 서버에 대한 올바른 자격 증명 및 포트를 구성했는지 확인하십시오. 또한 업로더가 CMS callbridge webadmin 포트에 연결할 수 있어야 합니다.
개정 | 게시 날짜 | 의견 |
---|---|---|
1.0 |
23-Aug-2021
|
최초 릴리스 |