2016-09-19 1 views
1

wowza 스트리밍 엔진을 통해 실시간 "RTMP"스트림을 다시 스트리밍하려고합니다. 이 목적을 위해 wowza REST API를 사용하고 있습니다. 스트림 파일을 만들 수 있었지만 RTMP URI 대상이이 파일에서 생성되거나 업데이트되지 않습니다. 다음은 세부 단계와 결과입니다. 1. 요청을WOWZA RTMP URL을 업데이트하지 않는 스트리밍 엔진 REST API

POST: `http://<server-ip>:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/<app-name>/streamfiles` 

HEADERS 다음과 같이 스트림 파일을 만들 수 있습니다 :

Accept :application/json 
    Content-Type: application/json 

BODY

{ 
    "name": "test_stream", 
    "uri": "rtmp://ingest-sgp-01.lb.nanocosmos.de:80/live/<stream-name>" 
} 

결과를

{ 
    "success": true, 
    "message": "", 
    "data": null 
} 

나는 스트림 상태 RTMP와 상태를 선택하면 URL 속성에 생성되지 않았습니다.

`http://<server-ip>:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/<app-name>/streamfiles/test_stream/adv` 

BODY 
{ 
     "enabled": false, 
     "canRemove": true, 
     "name": "uri", 
     "valuhttp://<server-ip>:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/<app-name>/streamfiles/test_stream/adve": null, 
     "defaultValue": null, 
     "type": "String", 
     "sectionName": "Common", 
     "section": null, 
     "documented": true 
    } 

가 다시 나는 다음과 같은 세부 사항을 서버에 PUT 요청을 보내 GET을 다음과 같이 세부 사항은.

http://<server-ip>:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/<app-name>/streamfiles/test_stream/adv 

BODY

{ 
    "advancedSettings": [ 
{ 
"enabled": true, 
"canRemove": true, 
"name": "uri", 
"value": "rtmp://ingest-sgp-01.lb.nanocosmos.de:80/live/Q0f8HNVJ1P", 
"defaultValue": null, 
"type": "String", 
"sectionName": "Common", 
"section": null, 
"documented": true 
}, 
{ 
"enabled": true, 
"canRemove": true, 
"name": "streamTimeout", 
"value": "0", 
"defaultValue": "12000", 
"type": "Integer", 
"sectionName": "Common", 
"section": null, 
"documented": true 
}, 
{ 
"enabled": true, 
"canRemove": true, 
"name": "reconnectWaitTime", 
"value": "0", 
"defaultValue": "3000", 
"type": "Integer", 
"sectionName": "Common", 
"section": null, 
"documented": true 
} 
], 
    "serverName": "_defaultServer_" 
} 

결과

{ 
    "success": true, 
    "message": "", 
    "data": null 
} 

하지만 여전히 streamfile 세부 URI가 null 결과

{ 
     "enabled": false, 
     "canRemove": true, 
     "name": "uri", 
     "value": null, 
     "defaultValue": null, 
     "type": "String",these End points were hit with. swagger-ui tool provided by wowza, POST man tool with chrome, and nodej 
     "sectionName": "Common", 
     "section": null, 
     "documented": true 
    } 

이 RTMP URL이 생성되지 않는 이유는 우둔 오전

/upd 다른 요청을 통해 ated? 이 REST 엔드 포인트는 타격을 입었다. wowza에서 제공

  1. 자신감-UI 도구, 크롬
  2. POST 남자 도구,
  3. nodejs 요청 API.

모든 결과가 동일합니다. wowza 서버의 Server.xml 파일에서 REST 서비스가 인증 없음으로 설정되었습니다.

답변

0

REST API를 통해 스트림 파일을 만들려면 다음을 시도하십시오.

curl -X POST --header 'Accept:application/json; charset=utf-8' --header 'Content-type:application/json; charset=utf-8' http://localhost:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/live/streamfiles/test_stream -d' 
{ 
    "restURI": "http://localhost:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/live/streamfiles", 
    "streamFiles": [ 
     { 
     "id": "connectAppName=live&appInstance=_definst_&mediaCasterType=rtp", 
     "href": "http://localhohst:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/live/streamfiles/connectAppName=live&appInstance=_definst_&mediaCasterType=rtp" 
     } 
    ] 
}' 

기존 스트림 파일을 업데이트하려면, 당신은 또한 당신의 JSON 몸에 resturi 매개 변수를 사용해야합니다, 다음과 유사한 :

curl -X PUT --header 'Accept:application/json; charset=utf-8' --header 'Content-type:application/json; charset=utf-8' http://localhost:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/live/streamfiles/test_stream/adv -d' 
{ 
"restURI": "http://localhost:8087/v2/servers/_defaultServer_/vhosts/_defaultVHost_/applications/live/streamfiles/test_stream/adv", 
"version": "1430601267443", 
"advancedSettings": [ 
{ 
"enabled": true, 
"canRemove": true, 
"name": "uri", 
"value": "rtmp://ingest-sgp-01.lb.nanocosmos.de:80/live/Q0f8HNVJ1P", 
"defaultValue": null, 
"type": "String", 
"sectionName": "Common", 
"section": null, 
"documented": true 
}, 
{ 
"enabled": true, 
"canRemove": true, 
"name": "streamTimeout", 
"value": "0", 
"defaultValue": "12000", 
"type": "Integer", 
"sectionName": "Common", 
"section": null, 
"documented": true 
}, 
{ 
"enabled": true, 
"canRemove": true, 
"name": "reconnectWaitTime", 
"value": "0", 
"defaultValue": "3000", 
"type": "Integer", 
"sectionName": "Common", 
"section": null, 
"documented": true 
} 
] 
}' 
관련 문제