RTMPGW(8) System Manager's Manual RTMPGW(8) نام (NAME) rtmpgw - درگاه پخش رسانه جریانی RTMP خلاصه دستور (SYNOPSIS) rtmpgw [-r url] [-n hostname] [-c port] [-l protocol] [-S host:port] [-a app] [-t tcUrl] [-p pageUrl] [-s swfUrl] [-f flashVer] [-u auth] [-C conndata] [-y playpath] [-v] [-d subscription] [-e] [-k skip] [-A start] [-B stop] [-b buffer] [-m timeout] [-T key] [-j JSON] [-w swfHash] [-x swfSize] [-W swfUrl] [-X swfAge] [-D address] [-g port] [-q] [-V] [-z] rtmpgw -h توضیحات (DESCRIPTION) دستور rtmpgw سروری برای انتشار جریانی محتوای چندرسانه‌ای از پروتکل RTMP به خروجی HTTP است. دستور rtmpgw به درخواست‌های HTTP که پارامترهای جریان RTMP را مشخص می‌کنند گوش فرامی‌دهد و سپس داده‌های RTMP را در پاسخ HTTP برمی‌گرداند. تنها درخواست معتبر HTTP عبارت "GET /" است، اما گزینه‌های اضافی را می‌توان به صورت کدگذاری‌شده در نشانی وب (URL-encoded) مشخص کرد. گزینه‌های تعیین‌شده در خط فرمان به عنوان مقادیر پیش‌فرض استفاده می‌شوند که می‌توان آن‌ها را توسط گزینه‌های موجود در درخواست HTTP بازنویسی کرد. گزینه‌ها (OPTIONS) پارامترهای شبکه (Network Parameters) این گزینه‌ها چگونگی اتصال به سرور رسانه را تعیین می‌کنند. --rtmp -r url نشانی وب (URL) سرور و محتوای رسانه. --host -n hostname نام میزبان موجود در نشانی وب RTMP را بازنویسی می‌کند. --port -c port شماره درگاه موجود در نشانی وب RTMP را بازنویسی می‌کند. --protocol -l number پروتکل موجود در نشانی وب RTMP را بازنویسی می‌کند. 0 = rtmp 1 = rtmpt 2 = rtmpe 3 = rtmpte 4 = rtmps 5 = rtmpts --socks -S host:port استفاده از پراکسی SOCKS4 مشخص‌شده. پارامترهای اتصال (Connection Parameters) این گزینه‌ها محتوای بسته درخواست اتصال (Connect) در پروتکل RTMP را مشخص می‌کنند. اگر مقادیر صحیح ارائه نشوند، سرور رسانه تلاش برای برقراری اتصال را رد خواهد کرد. --app -a app نام برنامه‌ای که باید در سرور RTMP به آن متصل شد. برنامه موجود در نشانی وب RTMP را بازنویسی می‌کند. گاهی اوقات تجزیه‌کننده نشانی وب rtmpdump نمی‌تواند نام برنامه را به طور خودکار تشخیص دهد، بنابراین باید با استفاده از این گزینه به صراحت مشخص شود. --tcUrl -t url نشانی وب (URL) جریان هدف. پیش‌فرض rtmp[e]://host[:port]/app/playpath است. --pageUrl -p url نشانی وب (URL) صفحه وبی که رسانه در آن تعبیه شده بود. به طور پیش‌فرض هیچ مقداری ارسال نمی‌شود. --swfUrl -s url نشانی وب (URL) پخش‌کننده SWF برای رسانه. به طور پیش‌فرض هیچ مقداری ارسال نمی‌شود. --flashVer -f version نسخه افزونه فلش مورد استفاده برای اجرای پخش‌کننده SWF. مقدار پیش‌فرض "LNX 10,0,32,18" است. --auth -u string یک رشته احراز هویت برای افزودن به پیام Connect. استفاده از این گزینه یک مقدار بولی TRUE و سپس رشته مشخص‌شده را اضافه می‌کند. این گزینه فقط توسط برخی سرورهای خاص استفاده می‌شود و منسوخ شده است. به جای آن باید از گزینه عمومی‌تر --conn استفاده شود. --conn -C type:data پیوست کردن داده‌های دلخواه AMF به پیام Connect. مقدار type باید B برای بولی، N برای عدد، S برای رشته، O برای شیء یا Z برای تهی (null) باشد. برای مقادیر بولی، داده باید به ترتیب 0 یا 1 برای FALSE یا TRUE باشد. به همین ترتیب برای اشیاء، داده باید به ترتیب 0 یا 1 برای پایان یا آغاز یک شیء باشد. اقلام داده در زیرشیءها می‌توانند نام‌گذاری شوند؛ این کار با قرار دادن پیشوند 'N' قبل از نوع و مشخص کردن نام قبل از مقدار انجام می‌شود، مانند NB:myFlag:1. این گزینه می‌تواند چندین بار برای ایجاد توالی‌های دلخواه AMF استفاده شود. به عنوان مثال: -C B:1 -C S:authMe -C O:1 -C NN:code:1.23 -C NS:flag:ok -C O:0 پارامترهای نشست (Session Parameters) این گزینه‌ها پس از موفقیت‌آمیز بودن درخواست Connect اعمال می‌شوند. --playpath -y path مسیر پخش استخراج‌شده از نشانی وب RTMP را بازنویسی می‌کند. گاهی اوقات تجزیه‌کننده نشانی وب rtmpdump نمی‌تواند مسیر پخش درست را به طور خودکار تعیین کند، بنابراین باید با استفاده از این گزینه به صراحت مشخص شود. --live -v مشخص می‌کند که رسانه یک پخش زنده است. امکان ادامه (resume) یا جلو/عقب بردن (seek) در پخش‌های زنده وجود ندارد. --subscribe -d stream نام جریان زنده برای اشتراک در آن. پیش‌فرض برابر با playpath است. --start -A num شروع از ثانیه num درون جریان. برای جریان‌های زنده معتبر نیست. --stop -B num توقف در ثانیه num درون جریان. --buffer -b num تنظیم زمان بافر روی num میلی‌ثانیه. مقدار پیش‌فرض 20000 است. --timeout -m num پایان دادن به نشست پس از num ثانیه در صورت دریافت نکردن هیچ داده‌ای از سرور. مقدار پیش‌فرض 120 است. پارامترهای امنیتی (Security Parameters) این گزینه‌ها درخواست‌های احراز هویت اضافی از سوی سرور را مدیریت می‌کنند. --token -T key کلید برای پاسخ SecureToken، در صورتی که سرور به احراز هویت SecureToken نیاز داشته باشد استفاده می‌شود. --jtv -j JSON توکن JSON مورد استفاده سرورهای قدیمی Justin.tv. این گزینه NetStream.Authenticate.UsherToken را فراخوانی می‌کند. --swfhash -w hexstring هش SHA256 از فایل SWF غیرفشرده. این گزینه ممکن است در صورتی که سرور از تأیید SWF استفاده کند مورد نیاز باشد، اما گزینه --swfVfy در زیر را نیز ببینید. هش 32 بایت است و باید به صورت شانزده‌شانزدهی (هگزادسیمال) داده شود. گزینه --swfsize همیشه باید به همراه این گزینه استفاده شود. --swfsize -x num اندازه فایل SWF غیرفشرده. این گزینه ممکن است در صورتی که سرور از تأیید SWF استفاده کند مورد نیاز باشد، اما گزینه --swfVfy در زیر را نیز ببینید. گزینه --swfhash همیشه باید به همراه این گزینه استفاده شود. --swfVfy -W url نشانی وب (URL) پخش‌کننده SWF برای این رسانه. این گزینه جایگزین هر سه گزینه --swfUrl، --swfhash، و --swfsize می‌شود. هنگامی که این گزینه استفاده شود، پخش‌کننده SWF از نشانی وب مشخص‌شده دریافت شده و هش و اندازه آن به طور خودکار محاسبه می‌شود. همچنین اطلاعات در یک فایل .swfinfo در دایرکتوری خانگی کاربر کش می‌شود تا نیازی به دریافت و محاسبه مجدد در هر بار اجرای rtmpdump نباشد. فایل .swfinfo نشانی وب، زمان دریافت، برچسب زمان ویرایش فایل SWF، اندازه و هش آن را ثبت می‌کند. به طور پیش‌فرض، اطلاعات کش‌شده پیش از بررسی مجدد به مدت 30 روز استفاده خواهند شد. --swfAge -X days مشخص می‌کند اطلاعات کش‌شده SWF چند روز پیش از بررسی مجدد استفاده شوند. از 0 برای بررسی همیشگی نشانی وب SWF استفاده کنید. توجه داشته باشید اگر بررسی نشان دهد فایل SWF همان برچسب زمان ویرایش قبلی را دارد، دوباره دریافت نخواهد شد. متفرقه (Miscellaneous) --device -D address نشانی IP شنونده. مقدار پیش‌فرض 0.0.0.0 است، یعنی هر نشانی IP. --sport -g port درگاه شنونده. مقدار پیش‌فرض 80 است. --quiet -q صرف‌نظر کردن از تمام خروجی‌های دستور. --verbose -V خروجی پرجزئیات دستور. --debug -z خروجی سطح اشکال‌زدایی. بسیار پرجزئیات، شامل روبرداری هگزادسیمال (hex dump) از تمام داده‌های بسته‌ها. --help -h چاپ خلاصه گزینه‌های دستور. مثال‌ها (EXAMPLES) درخواست HTTP GET /?r=rtmp:%2f%2fserver%2fmyapp&y=somefile HTTP/1.0 معادل فراخوانی زیر با rtmpdump(1) است: rtmpdump -r rtmp://server/myapp -y somefile توجه داشته باشید که فقط گزینه‌های فرم کوتاه (تک‌حرفی) پشتیبانی می‌شوند. محیط (ENVIRONMENT) HOME مقدار $HOME به عنوان محل ذخیره فایل .swfinfo استفاده می‌شود. فایل‌ها (FILES) $HOME/.swfinfo حافظه نهان (کَش) اطلاعات اعتبارسنجی SWF همچنین ببینید (SEE ALSO) rtmpdump(1) نویسندگان (AUTHORS) Andrej Stepanchuk, Howard Chu, The Flvstreamer Team RTMPDump v2.4 2011-07-20 RTMPGW(8)