winlin

for #319, query vhost detail.

@@ -7,7 +7,7 @@ daemon off; @@ -7,7 +7,7 @@ daemon off;
7 http_api { 7 http_api {
8 enabled on; 8 enabled on;
9 listen 1985; 9 listen 1985;
10 - crossdomain on; 10 + #crossdomain on;
11 raw_api { 11 raw_api {
12 enabled on; 12 enabled on;
13 allow_reload on; 13 allow_reload on;
@@ -187,6 +187,12 @@ stream_caster { @@ -187,6 +187,12 @@ stream_caster {
187 # rtsp://192.168.1.173:8544/live/livestream.sdp 187 # rtsp://192.168.1.173:8544/live/livestream.sdp
188 # where the [app] is "live" and [stream] is "livestream", output is: 188 # where the [app] is "live" and [stream] is "livestream", output is:
189 # rtmp://127.0.0.1/live/livestream 189 # rtmp://127.0.0.1/live/livestream
  190 + # for flv caster, the typically output url:
  191 + # rtmp://127.0.0.1/[app]/[stream]
  192 + # for example, POST to url:
  193 + # http://127.0.0.1:8936/live/livestream.flv
  194 + # where the [app] is "live" and [stream] is "livestream", output is:
  195 + # rtmp://127.0.0.1/live/livestream
190 output rtmp://127.0.0.1/live/livestream; 196 output rtmp://127.0.0.1/live/livestream;
191 # the listen port for stream caster. 197 # the listen port for stream caster.
192 # for mpegts_over_udp caster, listen at udp port. for example, 8935. 198 # for mpegts_over_udp caster, listen at udp port. for example, 8935.
1 -listen 1935; 1 +listen 1935 1936;
2 pid ./objs/srs.pid; 2 pid ./objs/srs.pid;
3 chunk_size 60000; 3 chunk_size 60000;
4 ff_log_dir ./objs; 4 ff_log_dir ./objs;
@@ -1509,7 +1509,19 @@ int SrsConfig::global_to_json(SrsAmf0Object* obj) @@ -1509,7 +1509,19 @@ int SrsConfig::global_to_json(SrsAmf0Object* obj)
1509 } else if (sdir->name == "crossdomain") { 1509 } else if (sdir->name == "crossdomain") {
1510 sobj->set(sdir->name, sdir->dumps_arg0_to_boolean()); 1510 sobj->set(sdir->name, sdir->dumps_arg0_to_boolean());
1511 } else if (sdir->name == "raw_api") { 1511 } else if (sdir->name == "raw_api") {
1512 - sobj->set(sdir->name, SrsAmf0Any::boolean(get_raw_api())); 1512 + SrsAmf0Object* ssobj = SrsAmf0Any::object();
  1513 + sobj->set(sdir->name, ssobj);
  1514 +
  1515 + for (int j = 0; j < (int)sdir->directives.size(); j++) {
  1516 + SrsConfDirective* ssdir = sdir->directives.at(j);
  1517 + if (ssdir->name == "enabled") {
  1518 + ssobj->set(ssdir->name, ssdir->dumps_arg0_to_boolean());
  1519 + } else if (ssdir->name == "allow_reload") {
  1520 + ssobj->set(ssdir->name, ssdir->dumps_arg0_to_boolean());
  1521 + } else if (ssdir->name == "allow_query") {
  1522 + ssobj->set(ssdir->name, ssdir->dumps_arg0_to_boolean());
  1523 + }
  1524 + }
1513 } 1525 }
1514 } 1526 }
1515 obj->set(dir->name, sobj); 1527 obj->set(dir->name, sobj);