La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritta la procedura per configurare e risolvere i problemi di integrazione di Cisco Meeting Server (CMS) con Next-Generation Streamer e Uploader. Next Generation Streamer è stato introdotto da CMS versione 3.0 ed è basato su SIP (Session Initiation Protocol).
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
CMS versione 2.1 e successive introdusse il supporto per lo streaming live con il CMS streamer utilizzando il protocollo RTMP (Real-Time Messaging Protocol) standard. In CMS 3.0 è stato introdotto il Next Generation Streamer, un componente basato su SIP. Nelle versioni precedenti alla 3.0 veniva utilizzato il protocollo XMPP (Extensible Messaging and Presence Protocol). Il CMS versione 3.1 e successive supportano il protocollo RTMPS; di conseguenza, la comunicazione tra il componente del CMS Streamer e il server esterno può essere crittografata. Ciò consente al CMS Streamer di integrarsi con qualsiasi piattaforma di streaming che supporti RTMP(S) (Youtube, Facebook, Wowza e così via). Attualmente CMS Streamer è stato testato con Vbrick DME come server di streaming esterno ed è la piattaforma consigliata per l'integrazione.
L'integrazione di Live Streaming (Webcast) con VBrick DME consente agli utenti di guardare qualsiasi conferenza CMS in streaming live da qualsiasi punto della rete da diversi dispositivi. Inoltre, quando si utilizza VBrick Rev con VBrick DME, questa funzionalità estende la possibilità di visualizzazione dall'esterno della rete interna per ogni utente autorizzato VBrick Rev.Inoltre, il componente CMS Uploader semplifica il flusso di lavoro per il caricamento delle registrazioni di Meeting Server al gestore del contenuto video, Vbrick, da un NFS configurato collegato a un Meeting Server. Non è richiesta l'importazione manuale delle registrazioni. Una volta configurato e abilitato il componente Uploader, le registrazioni vengono trasferite dal NFS a Vbrick.
Streamer
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi qui usati le configurazioni sono state ripristinate ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Uploader
Il componente Uploader può essere installato sullo stesso server del componente Recorder o su un server separato. Se installato sullo stesso server del registratore, aggiungere un paio di vCPU da utilizzare. Se eseguito su un server diverso, utilizzare le stesse specifiche del server utilizzate per il registratore: VM dedicata con un minimo di 4 core fisici e 4 GB di RAM.
Il Meeting Server che esegue il programma di caricamento richiederà autorizzazioni di lettura e scrittura per Condivisione file di rete (NFS). Il caricatore deve essere eseguito su un Meeting Server diverso e non su un bridge di chiamate che ospita le conferenze.
Per distribuire Streamer e Uploader con CMS sono supportati diversi scenari, ad esempio: un singolo callbridge con più server di streaming, un cluster callbridge con un singolo server di streaming e un cluster callbridge con più server di streaming. Questo documento si basa su una distribuzione di base con un cluster di callbridge che si connette a un singolo server di streaming, Uploader. Tutti i passaggi di configurazione con questo scenario si applicano anche ad altri scenari.
Come mostrato nell'immagine precedente
Cluster CallBridge CMS
Streamer/registratore CMS
CMS Uploader
VBrick DME per streaming
VBrick Rev per streaming
Streamer
Si presume che il callbridge sia già impostato e accetti chiamate.
Passaggio 1. Certificati
I nuovi componenti dello streamer non richiedono l'ascolto delle connessioni https. Tuttavia, il server dello streamer deve essere in grado di ascoltare le connessioni SIP e deve disporre di un certificato valido per la comunicazione 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
Ottenere il certificato firmato dall'Autorità di certificazione (CA) locale. Caricare il certificato generato utilizzando il protocollo SFTP (Secure File Transfer Protocol) nel server Streamer. Selezionare per confermare il caricamento dei certificati.
In questo documento vengono utilizzati i certificati jolly per streamer. Utilizzare la guida ai certificati come riferimento.
streamer> pki list
User supplied certificates and keys:
tac.key
tac.cer
ROOTCA.cer
example.key
example.csr
tac.csr
Passaggio 2. Configurazione MMP/SSH
streamer sip Listen <interfaccia> <porta-tcp|none> <porta-tls|none>
streamer> streamer sip ascolto a 7000 7001
Per utilizzare solo la connessione SIP TLS. Configurare la connessione TCP SIP come "none". Il comando è riportato di seguito
streamer> streamer sip ascolto a none 7001
streamer> risoluzione sip streamer 720p
streamer> abilitazione streamer
streamer> tls sip trust ROOTCA.cer
Nota: per proteggere la connessione TLS, è consigliabile abilitare la verifica TLS.
streamer> tls sip verify enable
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
Passaggio 3. Configurazione API
Questa configurazione viene eseguita nel CMS che ospita CallBridge. Di seguito, API su interfaccia Webadmin di CMS. Qualsiasi client REST come Postman, Poster può essere utilizzato anche per eseguire questo.
Una volta abilitato, il nuovo streamer SIP può essere configurato e utilizzato nel bridge di chiamate in /callProfiles per sipStreamerUri.
Per utilizzare API sul server CMS. Vai a Webadmin > Configurazione > 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.
Passaggio 4. Crea "Regole in uscita"
Configure, un URI personalizzato che esegue il mapping a una regola DialPlan in uscita (il dominio può essere qualsiasi cosa, ad esempio "streamer.com"). Configurare una regola outboundDialPlan in modo che corrisponda al dominio utilizzato in streamerUri per la route.
Come mostrato nell'immagine precedente, per il programma di streaming SIP, se non vengono utilizzate le porte predefinite per il programma di streaming SIP (5060,5061), è obbligatorio specificare le porte nella configurazione del programma di streaming e includere il seguente numero di porta per connettersi al campo "sip proxy to use" quando outboundDialPlanRule è configurato per il servizio.
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
Uploader
streamer> uploader nfs 192.168.15.38:Registrazione
streamer> uploader cms host join.mextp.local
streamer> porta cms uploader 445
streamer> uploader cms user apiadmin
streamer> password cms uploader
Immettere la password:
Nota: per impostazione predefinita, la porta è 443, a meno che non sia specificato diversamente
Crea un bundle di certificati (crt-bundle) contenente una copia del certificato della CA radice e tutti i certificati intermedi nella catena per il server Vbrick Rev
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
Se la configurazione è corretta, usare il comando "uploader enable" per abilitare il componente Uploader. Tutti i messaggi devono riportare "SUCCESS" come mostrato di seguito.
streamer> uploader enable
SUCCESS: uploader enabled
Streamer
Uploader
È possibile visualizzare il log per un evento riuscito in syslog follow of uploader.
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
Streamer
1. Nessuna licenza
Streamer richiede una licenza "recorder" sul server che dispone del componente callbridge. In caso contrario o se la licenza non è sufficiente, gli errori riportati di seguito verranno visualizzati nei registri eventi.
Accertarsi di aggiungere la licenza richiesta. Lo stato della licenza può essere controllato dalla CLI usando il comando "license"
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.Porta TLS
· Se la porta TLS è configurata e non è applicato alcun certificato. Configura certificati per l'utilizzo di TLS con Streamer
· Se il certificato non è disponibile. Configurare solo la porta TCP
streamer> streamer sip listen a 7000 7001
streamer> streamer enable
FAILURE: TLS port set but no certificates configured
FAILURE: Streamer configuration not complete
Sono disponibili due opzioni per rimuovere la porta TLS o aggiungere il certificato SIP TLS Trust and Streamer
Cisco consiglia di abilitare la porta TLS.
3. Stream RTMP non configurato correttamente
Nei registri verrà visualizzato un errore
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
Verificare la procedura nella configurazione del flusso e configurare correttamente l'URL RTMP nel formato "rtmp://<VBrickBroadcastUsername>:<VBrickBroadcastPassword>@<VBrick IP or FQDN>/live/Name of theStream"
4.Problemi correlati al routing delle chiamate
Poiché il CMS Streamer è un client basato su SIP e, come accennato in precedenza, è necessario disporre del routing. Ciò potrebbe causare errori nelle chiamate. Si consideri questo esempio, in cui il Callbridge CMS ha inviato una chiamata in uscita, ma l'operazione non è riuscita con il seguente errore 'timeout transazione - nessuna risposta provvisoria invio 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)
Verificare le impostazioni delle chiamate in uscita nei server Callbridge CMS per verificare la posizione a cui vengono inviate e se sono impostate correttamente. Verificare inoltre che il profilo di chiamata sia configurato con l'URI del flusso corretto e che lo stesso sia associato a Cospace.
Uploader
1. Dettagli Vbrick non corretti.
È possibile visualizzare l'errore nel log di Uploader
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
Assicurarsi di aver configurato le credenziali e la porta corrette per il server vbrick. Accertarsi inoltre che Uploader sia in grado di raggiungere la porta webadmin del callbridge CMS.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
23-Aug-2021 |
Versione iniziale |