'\" t .\" Title: mosquitto_pub .\" Author: [see the "Author" section] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 04/03/2026 .\" Manual: Commands .\" Source: Mosquitto Project .\" Language: Persian .\" .TH "MOSQUITTO_PUB" "1" "04/03/2026" "Mosquitto Project" "Commands" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" mosquitto_pub \- کلاینت انتشار پیام‌های ساده در پروتکل MQTT نسخه‌های ۵، ۳.۱.۱ و ۳.۱ .SH "خلاصه دستور (SYNOPSIS)" .HP \w'\fBmosquitto_pub\fR\ 'u \fBmosquitto_pub\fR [options] \fB\-t\fR\ \fItopic\fR {payload\-options} .HP \w'\fBoptions:\fR\ 'u \fBoptions:\fR .br [auth\-options] [connection\-options] [misc\-options] [mqtt\-options] [output\-options] [publish\-options] [tls\-certificate\-options | tls\-psk\-options] .HP \w'\fBauth\-options:\fR\ 'u \fBauth\-options:\fR .br [\fB\-u\fR\ \fIusername\fR] [\fB\-P\fR\ \fIpassword\fR] .HP \w'\fBconnection\-options\fR\ 'u \fBconnection\-options\fR .br {[\fB\-h\fR\ \fIhostname\fR]\ [\fB\-\-unix\fR\ \fIsocket\ path\fR]\ [\fB\-p\fR\ \fIport\-number\fR] | \fB\-L\fR\ \fIURL\fR} .br [\fB\-A\fR\ \fIbind\-address\fR] [\fB\-\-nodelay\fR] [\fB\-S\fR] [\fB\-\-ws\fR] .br [\fB\-\-proxy\fR\ \fIsocks\-url\fR] .HP \w'\fBmisc\-options:\fR\ 'u \fBmisc\-options:\fR .br [\fB\-o\fR\ \fIconfig\-file\fR] .HP \w'\fBmqtt\-options:\fR\ 'u \fBmqtt\-options:\fR .br [\fB\-c\fR] [\fB\-D\fR\ \fIcommand\fR\ \fIidentifier\fR\ \fIvalue\fR] [\fB\-i\fR\ \fIclient\-id\fR] [\fB\-I\fR\ \fIclient\-id\-prefix\fR] [\fB\-k\fR\ \fIkeepalive\-time\fR] [\fB\-x\fR\ \fIsession\-expiry\-interval\fR] [\fB\-V\fR\ \fIprotocol\-version\fR] .br [\fB\-\-will\-topic\fR\ \fItopic\fR\ [\fB\-\-will\-payload\fR\ \fIpayload\fR]\ [\fB\-\-will\-qos\fR\ \fIqos\fR]\ [\fB\-\-will\-retain\fR]] .HP \w'\fBoutput\-options:\fR\ 'u \fBoutput\-options:\fR .br [\fB\-d\fR] [\fB\-\-quiet\fR] .HP \w'\fBpayload\-options:\fR\ 'u \fBpayload\-options:\fR .br \fB\-f\fR\ \fIfile\fR | \fB\-l\fR | \fB\-m\fR\ \fImessage\fR | \fB\-n\fR | \fB\-s\fR .HP \w'\fBpublish\-options:\fR\ 'u \fBpublish\-options:\fR .br [\fB\-q\fR\ \fImessage\-QoS\fR] [\fB\-r\fR] [\fB\-\-repeat\fR\ \fIcount\fR] [\fB\-\-repeat\-delay\fR\ \fIseconds\fR] .HP \w'\fBtls\-certificate\-options:\fR\ 'u \fBtls\-certificate\-options:\fR .br [\fB\-\-no\-tls\fR] .br {\fB\-\-cafile\fR\ \fIfile\fR | \fB\-\-capath\fR\ \fIdir\fR} .br [\fB\-\-tls\-use\-os\-certs\fR] .br [\fB\-\-cert\fR\ \fIfile\fR] [\fB\-\-key\fR\ \fIfile\fR] .br [\fB\-\-ciphers\fR\ \fIciphers\fR] [\fB\-\-insecure\fR] [\fB\-\-tls\-alpn\fR\ \fIprotocol\fR] [\fB\-\-tls\-keylog\fR\ \fIfile\fR] [\fB\-\-tls\-version\fR\ \fIversion\fR] .br [\fB\-\-tls\-engine\fR\ \fIengine\fR] [\fB\-\-keyform\fR\ {\fIpem\fR\ |\ \fIengine\fR}] [\fB\-\-tls\-engine\-kpass\-sha1\fR\ \fIkpass\-sha1\fR] .br .HP \w'\fBtls\-psk\-options:\fR\ 'u \fBtls\-psk\-options:\fR .br \fB\-\-psk\fR\ \fIhex\-key\fR \fB\-\-psk\-identity\fR\ \fIidentity\fR [\fB\-\-ciphers\fR\ \fIciphers\fR] [\fB\-\-tls\-version\fR\ \fIversion\fR] .HP \w'\fBmosquitto_pub\fR\ 'u \fBmosquitto_pub\fR [\fB\-\-help\fR] .SH "توضیحات (DESCRIPTION)" .PP \fBmosquitto_pub\fR یک کلاینت ساده برای پروتکل MQTT نسخه ۵، ۳.۱.۱ و ۳.۱ است که یک پیام منفرد را بر روی یک موضوع (topic) منتشر کرده و سپس خارج می‌شود. .SH "اتصالات رمزنگاری‌شده (ENCRYPTED CONNECTIONS)" .PP این کلاینت از اتصالات رمزنگاری‌شده با TLS پشتیبانی می‌کند. اکیداً توصیه می‌شود برای هرگونه کاربردی فراتر از ساده‌ترین تنظیمات آزمایشی، از اتصال رمزنگاری‌شده استفاده کنید. .PP جهت فعال‌سازی اتصالات TLS هنگام استفاده از گواهی‌های x509، می‌توان یکی از گزینه‌های \fB\-\-cafile\fR یا \fB\-\-capath\fR را مشخص کرد. .PP همچنین اگر از گزینه \fB\-p 8883\fR استفاده شود، گواهی‌های ارائه‌شده توسط سیستم‌عامل بارگذاری خواهند شد و نیازی به مشخص کردن هیچ‌یک از گزینه‌های \fB\-\-cafile\fR یا \fB\-\-capath\fR نخواهد بود. .PP برای فعال‌سازی اتصالات TLS در صورت استفاده از TLS\-PSK، باید از گزینه‌های \fB\-\-psk\fR و \fB\-\-psk\-identity\fR استفاده کنید. .SH "گزینه‌ها (OPTIONS)" .PP سه روش برای ارائه گزینه‌ها به mosquitto_pub وجود دارد: فایل پیکربندی پیش‌فرض، یک فایل پیکربندی مشخص‌شده، یا گزینه‌ها در خط فرمان. .SS "فایل پیکربندی پیش‌فرض (Default Config File)" .PP فایل پیکربندی پیش‌فرض در مسیر \fB$XDG_CONFIG_HOME/mosquitto_pub\fR یا \fB$HOME/\&.config/mosquitto_pub\fR در سیستم‌های سازگار با POSIX، یا در مسیر \fB%USERPROFILE%\emosquitto_pub\fR در سیستم‌های ویندوز قرار دارد. .PP محتوای فایل پیکربندی باید شامل گزینه‌ها باشد، هر گزینه در یک خط به صورت: \fB\-option \fR\fB\fIvalue\fR\fR\&. اگر گزینه‌ها در خط فرمان نیز مشخص شوند، آن گزینه‌ها مقادیر تعیین‌شده در فایل پیکربندی را بازنویسی خواهند کرد. استثنای این قاعده گزینه‌های نوع پیام هستند که تنها یکی از آن‌ها می‌تواند مشخص شود. همچنین توجه داشته باشید که در حال حاضر برخی گزینه‌ها را نمی‌توان نفی کرد، مانند \fB\-S\fR\&. گزینه‌های رمزنگاری TLS را می‌توان با گزینه \fB\-\-no\-tls\fR غیرفعال کرد. .PP خطوطی از فایل پیکربندی که با نویسه \fB#\fR شروع می‌شوند به عنوان توضیحات در نظر گرفته شده و پردازش نمی‌شوند. .PP پیشنهاد می‌شود فایل‌های پیکربندی عمدتاً برای احراز هویت به کار روند. استفاده از فایل پیکربندی امکان احراز هویت را بدون نیاز به نمایش نام کاربری و گذرواژه در خط فرمان فراهم می‌کند. .SS "فایل پیکربندی (Config File)" .PP از نسخه ۲.۱ در دسترس است. .PP یک فایل پیکربندی را می‌توان با گزینه \fB\-o \fR\fB\fIconfig\-file\fR\fR در خط فرمان مشخص کرد. در صورت استفاده از گزینه \fB\-o\fR فایل پیکربندی پیش‌فرض بارگذاری نخواهد شد. .PP قالب آن همانند فایل پیکربندی پیش‌فرض است. .SS "فهرست گزینه‌ها (The options)" .PP \fB\-A\fR .RS 4 اتصال خروجی را به یک نشانی IP یا نام میزبان محلی متصل (bind) می‌کند. در صورتی که نیاز به محدود کردن ارتباطات شبکه به یک رابط خاص دارید از این آرگومان استفاده کنید. .RE .PP \fB\-c\fR, \fB\-\-disable\-clean\-session\fR .RS 4 غیرفعال‌سازی «نشست تمیز» (clean session) / فعال‌سازی حالت کلاینت پایدار (persistent). با استفاده از این آرگومان، به کارگزار (broker) دستور داده می‌شود که هنگام اتصال کلاینت، نشست‌های موجود برای همان شناسه کلاینت (client id) را پاک نکند و با قطع اتصال کلاینت، نشست هرگز منقضی نشود. کلاینت‌های MQTT نسخه ۵ می‌توانند با آرگومان \fB\-x\fR مدت‌زمان انقضای نشست خود را تغییر دهند. .sp هنگامی که یک نشست روی کارگزار پایدار بماند، اشتراک‌های کلاینت پس از قطع اتصال حفظ می‌شوند و پیام‌های بعدی با سطوح کیفیتی QoS 1 و QoS 2 که برسند ذخیره می‌گردند. زمانی که کلاینت دوباره متصل شود و نشست را پاک نکند، تمامی پیام‌های صف‌بندی‌شده را دریافت خواهد کرد. .sp در صورت استفاده از این گزینه، شناسه کلاینت باید به صورت دستی با \fB\-\-id\fR تنظیم شود. .RE .PP \fB\-\-cafile\fR .RS 4 مسیر یک فایل حاوی گواهی‌های مرجع گواهی (CA) معتبر و کدگذاری‌شده با فرمت PEM را مشخص می‌کند. برای فعال‌سازی ارتباط امن SSL/TLS استفاده می‌شود. .sp همچنین ببینید: \fB\-\-capath\fR .RE .PP \fB\-\-capath\fR .RS 4 مسیر پوشه‌ای حاوی گواهی‌های مرجع گواهی (CA) معتبر و کدگذاری‌شده با فرمت PEM را مشخص می‌کند. برای فعال‌سازی ارتباط امن SSL/TLS استفاده می‌شود. .sp برای کارکرد صحیح \fB\-\-capath\fR باید پسوند فایل‌های گواهی «.crt» باشد و هر بار که گواهی جدیدی اضافه یا حذف می‌کنید، دستور «openssl rehash » را اجرا نمایید. .sp همچنین ببینید: \fB\-\-cafile\fR .RE .PP \fB\-\-cert\fR .RS 4 مسیر فایل حاوی گواهی کدگذاری‌شده با فرمت PEM برای این کلاینت را مشخص می‌کند (در صورتی که سرور آن را درخواست کند). .sp همچنین ببینید: \fB\-\-key\fR و بخش «اتصالات رمزنگاری‌شده». .RE .PP \fB\-\-ciphers\fR .RS 4 فهرستی از الگوریتم‌های رمزنگاری TLS سازگار با OpenSSL برای پشتیبانی در کلاینت. برای اطلاعات بیشتر به \fBciphers\fR(1) مراجعه کنید. .RE .PP \fB\-d\fR, \fB\-\-debug\fR .RS 4 فعال‌سازی پیام‌های اشکال‌زدایی (debug). .RE .PP \fB\-D\fR, \fB\-\-property\fR .RS 4 تنظیم ویژگی‌های MQTT نسخه ۵ برای این کلاینت. در صورت استفاده از این گزینه، کلاینت به عنوان کلاینت MQTT نسخه ۵ تنظیم خواهد شد. این گزینه دو شکل دارد: .sp \fB\-D command identifier value\fR .sp \fB\-D command identifier name value\fR .sp \fBcommand\fR شناسه دستور یا بسته MQTT است و می‌تواند یکی از مقادیر CONNECT، PUBLISH، PUBACK، PUBREC، PUBCOMP، SUBSCRIBE، UNSUBSCRIBE، DISCONNECT، AUTH یا WILL باشد. ویژگی‌های در دسترس برای هر دستور در بخش ویژگی‌ها فهرست شده‌اند. .sp \fBidentifier\fR نام ویژگی مورد نظر برای افزودن است. این نام مطابق مشخصات استاندارد است، اما خط تیره «\-» به عنوان جداکننده کلمات به کار می‌رود؛ به عنوان مثال: \fBpayload\-format\-indicator\fR\&. جزئیات بیشتر در بخش ویژگی‌ها آمده است. .sp \fBvalue\fR مقدار ویژگی مورد نظر است که نوع داده آن وابسته به همان ویژگی مشخص است. .sp \fBname\fR فقط برای ویژگی \fBuser\-property\fR به عنوان اولین رشته از جفت‌رشته‌ها به کار می‌رود. در این حالت، \fBvalue\fR رشته دوم جفت خواهد بود. .RE .PP \fB\-f\fR, \fB\-\-file\fR .RS 4 ارسال محتوای یک فایل به عنوان بدنه پیام. .RE .PP \fB\-\-help\fR .RS 4 نمایش اطلاعات راهنمای استفاده از دستور. .RE .PP \fB\-h\fR, \fB\-\-host\fR .RS 4 مشخص کردن میزبان مقصد برای اتصال. مقدار پیش‌فرض localhost است. .RE .PP \fB\-i\fR, \fB\-\-id\fR .RS 4 شناسه‌ای که برای این کلاینت استفاده می‌شود. در صورت مشخص نشدن، شناسه کلاینت با توجه به نسخه MQTT مورد استفاده تولید می‌شود. برای نسخه v3.1.1/v3.1، کلاینت شناسه‌ای با قالب \fBmosq\-XXXXXXXXXXXXXXXXXX\fR تولید می‌کند که در آن \fBX\fR با نویسه‌های الفبایی\-عددی تصادفی جایگزین می‌شود. برای نسخه v5.0، کلاینت شناسه‌ای با طول صفر ارسال می‌کند و سرور شناسه‌ای برای کلاینت تولید خواهد کرد. .RE .PP \fB\-I\fR, \fB\-\-id\-prefix\fR .RS 4 پیشوندی که با افزودن شناسه فرایند (PID) کلاینت به انتهای آن، شناسه کلاینت ساخته می‌شود. این گزینه در شرایطی که کارگزار از گزینه clientid_prefixes استفاده می‌کند کاربرد دارد. نمی‌توان آن را هم‌زمان با آرگومان \fB\-\-id\fR به کار برد. .RE .PP \fB\-\-insecure\fR .RS 4 هنگام استفاده از رمزنگاری مبتنی بر گواهی، این گزینه اعتبارسنجی نام میزبان سرور در گواهی سرور را غیرفعال می‌کند. این ویژگی می‌تواند هنگام آزمایش پیکربندی اولیه سرور مفید باشد، اما این امکان را فراهم می‌کند که شخص ثالث مخرب بتواند از طریق جعل DNS سرور شما را جعل کند. از این گزینه فقط در محیط آزمایش استفاده کنید. اگر مجبور به استفاده از این گزینه در محیط عملیاتی هستید، پیکربندی شما ایراد دارد و استفاده از رمزنگاری بی‌فایده است. .RE .PP \fB\-k\fR, \fB\-\-keepalive\fR .RS 4 تعداد ثانیه‌های بین ارسال دستورات PING به کارگزار به منظور اطلاع‌رسانی اینکه کلاینت هنوز متصل و فعال است. مقدار پیش‌فرض ۶۰ ثانیه است. .RE .PP \fB\-\-key\fR .RS 4 مسیر یک فایل حاوی کلید خصوصی کدگذاری‌شده با فرمت PEM برای این کلاینت جهت انجام احراز هویت دوطرفه TLS با سرور. .sp همچنین ببینید: \fB\-\-cert\fR و بخش «اتصالات رمزنگاری‌شده». .RE .PP \fB\-\-keyform\fR .RS 4 نوع کلید خصوصی مورد استفاده هنگام برقراری اتصالات TLS را مشخص می‌کند. این مقدار می‌تواند «pem» یا «engine» باشد. این پارامتر زمانی مفید است که از ماژول TPM استفاده شده و کلید خصوصی با آن ایجاد شده باشد. مقدار پیش‌فرض «pem» است که به معنای استفاده از فایل‌های کلید خصوصی معمولی است. .sp همچنین ببینید: \fB\-\-tls\-engine\fR\&. .RE .PP \fB\-L\fR, \fB\-\-url\fR .RS 4 مشخص کردن کاربر، گذرواژه، نام میزبان، پورت و موضوع به صورت هم‌زمان در قالب یک نشانی URL. قالب نشانی باید به شکل زیر باشد: mqtt(s)://[username[:password]@]host[:port]/topic یا ws(s)://[username[:password]@]host[:port]/path .sp بسته به طرح نشانی (scheme)، پورت پیش‌فرض مقادیر متفاوتی خواهد داشت: mqtt:// \- 1883، mqtts:// \- 8883، ws:// \- 80، wss:// \- 443. .RE .PP \fB\-l\fR, \fB\-\-stdin\-line\fR .RS 4 ارسال پیام‌های خوانده‌شده از ورودی استاندارد (stdin)، با تفکیک هر خط به یک پیام مجزا. .RE .PP \fB\-m\fR, \fB\-\-message\fR .RS 4 ارسال یک پیام تکی از طریق خط فرمان. .RE .PP \fB\-n\fR, \fB\-\-null\-message\fR .RS 4 ارسال یک پیام تهی (با طول صفر). .RE .PP \fB\-\-nodelay\fR .RS 4 غیرفعال‌سازی الگوریتم نِیگل (Nagle) برای سوکت. این کار تاخیر پیام‌های ارسالی را کاهش می‌دهد، که به‌ویژه برای پیام‌های کوچک با تواتر کم ملموس است. استفاده از این گزینه ممکن است منجر به ارسال بسته‌های بیشتری نسبت به حالت معمول شود. .RE .PP \fB\-\-no\-tls\fR .RS 4 از نسخه ۲.۱ در دسترس است. .sp غیرفعال‌سازی کامل استفاده از رمزنگاری TLS. این گزینه زمانی کاربرد دارد که گزینه‌های TLS را در یک فایل پیکربندی تعیین کرده‌اید اما قصد دارید آن گزینه‌ها را موقتاً غیرفعال کنید. همچنین استفاده خودکار از TLS را هنگام اتصال به پورت 8883 متوقف می‌سازد. .RE .PP \fB\-o\fR \fIconfig\-file\fR .RS 4 از نسخه ۲.۱ در دسترس است. .sp بارگذاری گزینه‌ها از یک فایل پیکربندی. بخش‌های «فایل پیکربندی پیش‌فرض» و «فایل پیکربندی» در ابتدای بخش گزینه‌ها را مشاهده کنید. .RE .PP \fB\-p\fR, \fB\-\-port\fR .RS 4 اتصال به پورت مشخص‌شده. در صورت تعیین نشدن، مقدار پیش‌فرض ۱۸۸۳ برای MQTT ساده یا ۸۸۸۳ برای MQTT بر روی TLS استفاده خواهد شد. .RE .PP \fB\-P\fR, \fB\-\-pw\fR .RS 4 تعیین گذرواژه برای احراز هویت در کارگزار. استفاده از این آرگومان بدون مشخص کردن نام کاربری در نسخه‌های v3.1 یا v3.1.1 پروتکل MQTT نامعتبر است. .sp همچنین گزینه \fB\-\-username\fR را مشاهده کنید. .RE .PP \fB\-\-proxy\fR .RS 4 مشخص کردن یک پروکسی SOCKS5 برای اتصال از طریق آن. انواع احراز هویت «None» و «username» پشتیبانی می‌شوند. مقدار \fBsocks\-url\fR باید به صورت \fBsocks5h://[username[:password]@]host[:port]\fR باشد. پیشوند پروتکل \fBsocks5h\fR به این معنی است که نام‌های میزبان توسط پروکسی ترجمه می‌شوند. نمادهای %25، %3A و %40 در صورت وجود در نام کاربری یا گذرواژه به ترتیب به %، : و @ تبدیل می‌شوند. .sp اگر نام کاربری داده نشود، هیچ تلاشی برای احراز هویت انجام نمی‌شود. اگر پورت داده نشود، مقدار پیش‌فرض ۱۰۸۰ استفاده می‌شود. .sp اگر میزبان به صورت نشانی IPv6 داده شود، باید درون کروشه قرار گیرد؛ مانند \fBsocks5h://[::1]:1080\fR\&. توجه داشته باشید که کروشه‌ها در برخی پوسته‌ها معنی خاصی دارند، بنابراین ممکن است لازم باشد نشانی پروکسی داخل نقل‌قول تکی یا دوتایی قرار گیرد. .sp نسخه‌های بیشتری از SOCKS ممکن است در آینده بسته به نیاز اضافه شوند و از پیشوندهای پروتکل متفاوتی استفاده کنند، همان‌طور که در \fBcurl\fR(1) توضیح داده شده است. .RE .PP \fB\-\-psk\fR .RS 4 ارائه کلید از پیش اشتراک‌گذاشته‌شده (PSK) به صورت هگزادسیمال (بدون پیشوند 0x) مطابق با کلید تعریف‌شده در کارگزار جهت استفاده از رمزنگاری TLS\-PSK. برای فعال‌سازی TLS\-PSK باید گزینه \fB\-\-psk\-identity\fR نیز مشخص شود. .RE .PP \fB\-\-psk\-identity\fR .RS 4 شناسه کلاینت برای استفاده در پشتیبانی از TLS\-PSK. در صورتی که کارگزار برای آن پیکربندی شده باشد، می‌توان از این مقدار به جای نام کاربری استفاده کرد. .RE .PP \fB\-q\fR, \fB\-\-qos\fR .RS 4 تعیین سطح کیفیت خدمات (Quality of Service) برای پیام، از بین مقادیر ۰، ۱ و ۲. مقدار پیش‌فرض ۰ است. .RE .PP \fB\-\-quiet\fR .RS 4 با تعیین این آرگومان، هیچ خطای زمان اجرایی چاپ نخواهد شد. این موضوع پیام‌های خطای مربوط به ورودی نامعتبر کاربر را شامل نمی‌شود (مانند استفاده از \fB\-\-port\fR بدون تعیین شماره پورت). .RE .PP \fB\-r\fR, \fB\-\-retain\fR .RS 4 در صورت فعال بودن این گزینه، پیام به عنوان «آخرین مقدار معتبر شناخته‌شده» در کارگزار نگهداری (retain) خواهد شد. برای اطلاعات بیشتر به \fBmqtt\fR(7) مراجعه کنید. توجه داشته باشید که پیام‌های با طول صفر هرگز نگهداری نمی‌شوند؛ اگر پیامی با طول صفر و فلگ retain ارسال کنید، هرگونه پیام نگهداری‌شده قبلی روی آن موضوع پاک خواهد شد. .RE .PP \fB\-\-repeat\fR .RS 4 اگر حالت انتشار برابر با \fB\-m\fR، \fB\-f\fR یا \fB\-s\fR باشد (یعنی حالت‌هایی که فقط یک پیام تکی ارسال می‌شود)، می‌توان از \fB\-\-repeat\fR برای تعیین تعداد دفعات تکرار ارسال پیام استفاده کرد. .sp همچنین ببینید: \fB\-\-repeat\-delay\fR\&. .RE .PP \fB\-\-repeat\-delay\fR .RS 4 در صورت استفاده از \fB\-\-repeat\fR، رفتار پیش‌فرض این است که پیام‌های تکراری بلافاصله پس از تحویل پیام قبلی ارسال شوند. با استفاده از \fB\-\-repeat\-delay\fR می‌توان تعداد ثانیه‌های انتظار پس از تحویل پیام قبلی پیش از انتشار پیام بعدی را مشخص کرد. این مقدار الزامی به عدد صحیح بودن ندارد و می‌تواند اعشاری باشد. .sp توجه داشته باشید که هیچ تضمینی برای فاصله زمانی دقیق بین پیام‌ها وجود ندارد؛ این گزینه صرفاً حداقل زمان از تحویل یک پیام تا شروع انتشار پیام بعدی را تعریف می‌کند. .RE .PP \fB\-s\fR, \fB\-\-stdin\-file\fR .RS 4 خواندن پیام از ورودی استاندارد (stdin) و ارسال تمام محتوا به عنوان یک پیام واحد. .RE .PP \fB\-S\fR .RS 4 استفاده از جستجوهای رکوردهای SRV در DNS برای تعیین میزبان مقصد جهت اتصال. در صورت استفاده به همراه \fB\-h\fR جستجو را روی \fB_mqtt\&._tcp\&.\fR انجام می‌دهد؛ در غیر این صورت از \fB_mqtt\&._tcp\&.\fR استفاده می‌کند. .RE .PP \fB\-t\fR, \fB\-\-topic\fR .RS 4 موضوع (topic) در MQTT که پیام باید روی آن منتشر شود. برای اطلاعات بیشتر درباره موضوعات MQTT به \fBmqtt\fR(7) مراجعه کنید. .RE .PP \fB\-\-tls\-alpn\fR .RS 4 تعیین پروتکل مورد استفاده هنگام اتصال به کارگزاری که چندین پروتکل را روی یک پورت ارائه می‌دهد (مانند MQTT و WebSockets). .RE .PP \fB\-\-tls\-engine\fR .RS 4 شناسه یک موتور معتبر OpenSSL (موتور رمزنگاری). این موارد را می‌توان با دستور \fBopenssl engine\fR فهرست کرد. .sp همچنین ببینید: \fB\-\-keyform\fR\&. .RE .PP \fB\-\-tls\-engine\-kpass\-sha1\fR .RS 4 هش SHA1 گذرواژه کلید خصوصی در هنگام استفاده از یک موتور TLS. برخی از موتورهای TLS مانند موتور TPM ممکن است برای دسترسی به گذرواژه نیاز داشته باشند. این گزینه امکان ارسال مستقیم هش SHA1 با کدگذاری هگزادسیمال گذرواژه به موتور را فراهم می‌کند، به جای اینکه از کاربر برای وارد کردن گذرواژه سوال شود. .sp همچنین ببینید: \fB\-\-tls\-engine\fR\&. .RE .PP \fB\-\-tls\-keylog\fR \fIfile\fR .RS 4 از نسخه ۲.۱ در دسترس است. .sp ثبت گزارش اطلاعات اتصال TLS در \fIfile\fR\&. این گزینه به ابزارهایی مانند \fBtcpdump\fR، \fBwireshark\fR و \fBmqttshark\fR امکان رمزگشایی ترافیک TLS و بررسی ترافیک MQTT را می‌دهد. در Wireshark این کار با تنظیم گزینه \fB(Pre)\-Master\-Secret log filename\fR برای پروتکل \fBTransport Layer Security\fR قابل انجام است. .sp این گزینه فقط باید برای اشکال‌زدایی استفاده شود و هرگز نباید در محیط عملیاتی به کار رود. .RE .PP \fB\-\-tls\-use\-os\-certs\fR .RS 4 در صورت استفاده، گواهی‌های مرجع گواهی (CA) ارائه‌شده توسط سیستم‌عامل بارگذاری و مورد اعتماد قرار می‌گیرند. این گزینه می‌تواند در ترکیب با \fB\-\-cafile\fR و \fB\-\-capath\fR یا به تنهایی برای فعال کردن حالت TLS استفاده شود. در صورتی که از \fB\-L mqtts://\&.\&.\&.\fR استفاده شود یا پورت برابر با ۸۸۸۳ باشد و هیچ گزینه گواهی دیگری تعیین نشده باشد، این گزینه به صورت پیش‌فرض فعال خواهد بود. .RE .PP \fB\-\-tls\-version\fR .RS 4 انتخاب نسخه پروتکل TLS مورد استفاده هنگام برقراری ارتباط با کارگزار. گزینه‌های معتبر شامل \fBtlsv1\&.3\fR و \fBtlsv1\&.2\fR هستند. مقدار پیش‌فرض \fBtlsv1\&.2\fR است. این مقدار باید با نسخه پروتکل مورد استفاده کارگزار مطابقت داشته باشد. .RE .PP \fB\-u\fR, \fB\-\-username\fR .RS 4 تعیین نام کاربری برای احراز هویت در کارگزار. .sp همچنین آرگومان \fB\-\-pw\fR را مشاهده کنید. .RE .PP \fB\-\-unix\fR .RS 4 اتصال به کارگزار از طریق سوکت محلی دامنه یونیکس (unix domain socket) به جای سوکت TCP. این گزینه جایگزینی برای \fB\-h\fR و \fB\-L\fR است؛ به عنوان مثال: \fBmosquitto_pub \-\-unix /tmp/mosquitto\&.sock \&.\&.\&.\fR .sp برای پیکربندی Mosquitto جهت گوش دادن روی سوکت یونیکس، گزینه \fBsocket_domain\fR در \m[blue]\fBmosquitto\&.conf\fR\m[](5) را بررسی کنید. .RE .PP \fB\-V\fR, \fB\-\-protocol\-version\fR .RS 4 تعیین نسخه پروتکل MQTT مورد استفاده هنگام اتصال به کارگزار راه دور. می‌تواند مقادیر \fB5\fR، \fB311\fR، \fB31\fR، یا حالت‌های طولانی‌تر \fBmqttv5\fR، \fBmqttv311\fR یا \fBmqttv31\fR باشد. مقدار پیش‌فرض \fB311\fR است. .RE .PP \fB\-\-will\-payload\fR .RS 4 مشخص کردن پیامی که توسط کارگزار ذخیره می‌شود و در صورت قطع ناگهانی و غیرمنتظره اتصال این کلاینت ارسال خواهد شد. این گزینه باید همراه با \fB\-\-will\-topic\fR استفاده شود. .RE .PP \fB\-\-will\-qos\fR .RS 4 سطح کیفیت خدمات (QoS) برای پیام وصیت (Will). مقدار پیش‌فرض ۰ است. این گزینه باید همراه با \fB\-\-will\-topic\fR استفاده شود. .RE .PP \fB\-\-will\-retain\fR .RS 4 در صورت تعیین، اگر اتصال کلاینت به طور غیرمنتظره قطع شود، پیام ارسالی به عنوان یک پیام نگهداری‌شده (retained) تلقی خواهد شد. این گزینه باید همراه با \fB\-\-will\-topic\fR استفاده شود. .RE .PP \fB\-\-will\-topic\fR .RS 4 موضوعی (topic) که در صورت قطع ناگهانی و غیرمنتظره اتصال کلاینت، پیام وصیت روی آن ارسال می‌شود. .RE .PP \fB\-\-ws\fR .RS 4 برقراری اتصال با استفاده از وب‌سوکت (WebSockets) به جای TCP ساده. .RE .PP \fB\-x\fR .RS 4 تنظیم ویژگی session\-expiry\-interval در بسته CONNECT. در صورت استفاده از این گزینه، کلاینت به عنوان کلاینت MQTT نسخه ۵ تنظیم خواهد شد. عددی بین 0 تا 4294967294 تعیین می‌کند که نشست پس از قطع اتصال کلاینت تا چند ثانیه معتبر بماند، یا برای نشستی که هرگز منقضی نمی‌شود از مقادیر \-1، 4294967295 یا ∞ استفاده کنید. در صورت ارائه گزینه \-c مقدار پیش‌فرض \-1 و در غیر این صورت 0 خواهد بود. .sp اگر نشست با استفاده از \-x یا \-c طوری تنظیم شود که هرگز منقضی نشود، باید شناسه کلاینت مشخص گردد. .RE .SH "وصیت‌نامه‌ها (WILLS)" .PP کلاینت می‌تواند پیامی را نزد کارگزار ثبت کند تا در صورت قطع اتصال غیرمنتظره، به صورت خودکار ارسال شود. برای اطلاعات بیشتر به \fBmqtt\fR(7) مراجعه کنید. .PP حداقل نیاز برای این ویژگی، استفاده از \fB\-\-will\-topic\fR جهت تعیین موضوعی است که پیام وصیت باید روی آن ارسال شود. این کار منجر به ارسال پیامی با طول صفر، بدون نگهداری (non-retained) و با سطح QoS 0 خواهد شد. .PP از آرگومان‌های \fB\-\-will\-retain\fR، \fB\-\-will\-payload\fR و \fB\-\-will\-qos\fR برای تغییر سایر پارامترهای وصیت استفاده کنید. .SH "ویژگی‌ها (PROPERTIES)" .PP گزینه \fB\-D\fR / \fB\-\-property\fR امکان افزودن ویژگی‌ها را در مراحل مختلف اجرای mosquitto_pub فراهم می‌کند. ویژگی‌های پشتیبانی‌شده برای هر دستور به شرح زیر است: .SS "اتصال (Connect)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBauthentication\-data\fR (داده دودویی \- توجه: به عنوان رشته رفتار می‌شود) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBauthentication\-method\fR (جفت‌رشته UTF\-8) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBmaximum\-packet\-size\fR (عدد صحیح بی‌علامت ۳۲ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBreceive\-maximum\fR (عدد صحیح بی‌علامت ۱۶ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBrequest\-problem\-information\fR (عدد صحیح بی‌علامت ۸ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBrequest\-response\-information\fR (عدد صحیح بی‌علامت ۸ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBsession\-expiry\-interval\fR (عدد صحیح بی‌علامت ۳۲ بیتی؛ توجه: به جای آن از \fB\-x\fR استفاده کنید) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBtopic\-alias\-maximum\fR (عدد صحیح بی‌علامت ۱۶ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBuser\-property\fR (جفت‌رشته UTF\-8) .RE .SS "انتشار (Publish)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBcontent\-type\fR (رشته UTF\-8) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBcorrelation\-data\fR (داده دودویی \- توجه: به عنوان رشته رفتار می‌شود) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBmessage\-expiry\-interval\fR (عدد صحیح بی‌علامت ۳۲ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBpayload\-format\-indicator\fR (عدد صحیح بی‌علامت ۸ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBresponse\-topic\fR (رشته UTF\-8) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBtopic\-alias\fR (عدد صحیح بی‌علامت ۱۶ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBuser\-property\fR (جفت‌رشته UTF\-8) .RE .SS "قطع اتصال (Disconnect)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBsession\-expiry\-interval\fR (عدد صحیح بی‌علامت ۳۲ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBuser\-property\fR (جفت‌رشته UTF\-8) .RE .SS "ویژگی‌های وصیت (Will properties)" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBcontent\-type\fR (رشته UTF\-8) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBcorrelation\-data\fR (داده دودویی \- توجه: به عنوان رشته رفتار می‌شود) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBmessage\-expiry\-interval\fR (عدد صحیح بی‌علامت ۳۲ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBpayload\-format\-indicator\fR (عدد صحیح بی‌علامت ۸ بیتی) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBresponse\-topic\fR (رشته UTF\-8) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBuser\-property\fR (جفت‌رشته UTF\-8) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fBwill\-delay\-interval\fR (عدد صحیح بی‌علامت ۳۲ بیتی) .RE .SH "وضعیت خروج (EXIT STATUS)" .PP در صورت موفقیت مقدار صفر و در صورت بروز خطا مقداری غیر صفر بازگردانده می‌شود. اگر اتصال توسط کارگزار در سطح MQTT رد شود، کد خروج همان کد دلیل CONNACK خواهد بود. در صورت بروز هر خطای دیگری، کد خروج مقدار بازگشتی libmosquitto است. .PP کدهای CONNACK در MQTT نسخه v3.1.1: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB0\fR موفقیت‌آمیز (Success) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB1\fR اتصال رد شد: نسخه پروتکل نامعتبر است (Connection refused: Bad protocol version) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB2\fR اتصال رد شد: شناسه پذیرفته نشد (Connection refused: Identifier rejected) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB3\fR اتصال رد شد: سرور در دسترس نیست (Connection refused: Server unavailable) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB4\fR اتصال رد شد: نام کاربری یا گذرواژه نادرست است (Connection refused: Bad username/password) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB5\fR اتصال رد شد: فاقد مجوز (Connection refused: Not authorized) .RE .PP کدهای CONNACK در MQTT نسخه v5: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB0\fR موفقیت‌آمیز (Success) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB128\fR خطای نامشخص (Unspecified error) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB129\fR بسته ناقص یا بدشکل (Malformed packet) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB130\fR خطای پروتکل (Protocol error) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB131\fR خطای وابسته به پیاده‌سازی (Implementation specific error) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB132\fR نسخه پروتکل پشتیبانی نمی‌شود (Unsupported protocol version) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB133\fR شناسه کلاینت نامعتبر است (Client ID not valid) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB134\fR نام کاربری یا گذرواژه نادرست است (Bad username or password) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB135\fR فاقد مجوز (Not authorized) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB136\fR سرور در دسترس نیست (Server unavailable) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB137\fR سرور مشغول است (Server busy) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB138\fR مسدود شده (Banned) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB139\fR سرور در حال خاموش شدن است (Server shutting down) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB140\fR روش احراز هویت نادرست است (Bad authentication method) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB141\fR پایان مهلت زنده ماندن (Keep alive timeout) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB142\fR نشست توسط اتصال دیگری تصاحب شد (Session taken over) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB143\fR فیلتر موضوع نامعتبر است (Topic filter invalid) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB144\fR نام موضوع نامعتبر است (Topic name invalid) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB147\fR سقف دریافت رد شد (Receive maximum exceeded) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB148\fR نام مستعار موضوع نامعتبر است (Topic alias invalid) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB149\fR بسته بیش از حد بزرگ است (Packet too large) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB148\fR نرخ ارسال پیام بیش از حد بالاست (Message rate too high) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB151\fR سهمیه مصرف تمام شده است (Quota exceeded) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB152\fR اقدام مدیریتی (Administrative action) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB153\fR قالب داده بدنه نامعتبر است (Payload format invalid) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB154\fR نگهداری پیام پشتیبانی نمی‌شود (Retain not supported) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB155\fR سطح کیفیت خدمات پشتیبانی نمی‌شود (QoS not supported) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB156\fR از سرور دیگری استفاده کنید (Use another server) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB157\fR سرور منتقل شده است (Server moved) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB158\fR اشتراک‌های هم‌رسان پشتیبانی نمی‌شود (Shared subscriptions not supported) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB159\fR نرخ برقراری اتصال بیش از حد مجاز است (Connection rate exceeded) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB160\fR حداکثر زمان مجاز اتصال (Maximum connect time) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB161\fR شناسه‌های اشتراک پشتیبانی نمی‌شود (Subscription IDs not supported) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB162\fR اشتراک‌های با نویسه عمومی پشتیبانی نمی‌شود (Wildcard subscriptions not supported) .RE .PP سایر کدها: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB27\fR پایان مهلت انتظار برای دریافت پیام (Timed out waiting for message) .RE .SH "مثال‌ها (EXAMPLES)" .PP انتشار اطلاعات دما بر روی میزبان محلی (localhost) با سطح کیفیت خدمات QoS 1: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} mosquitto_pub \-t sensors/temperature \-m 32 \-q 1 .RE .PP انتشار برچسب زمان و اطلاعات دما به یک میزبان راه دور بر روی پورت غیر استاندارد و با QoS 0: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} mosquitto_pub \-h 192\&.168\&.1\&.1 \-p 1885 \-t sensors/temperature \-m "1266193804 32" .RE .PP انتشار وضعیت کلید روشنایی. پیام به صورت نگهداری‌شده (retained) تنظیم می‌شود زیرا ممکن است فاصله زمانی زیادی میان رویدادهای تغییر وضعیت کلید وجود داشته باشد: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} mosquitto_pub \-r \-t switches/kitchen_lights/status \-m "on" .RE .PP ارسال محتوای یک فایل به دو روش: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} mosquitto_pub \-t my/topic \-f \&./data .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} mosquitto_pub \-t my/topic \-s < \&./data .RE .PP ارسال داده‌های تحلیل‌شده مصرف برق از یک کنتور Current Cost، با خواندن از ورودی استاندارد (stdin) به طوری که هر خط به عنوان یک پیام جداگانه ارسال شود: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} read_cc128\&.pl | mosquitto_pub \-t sensors/cc128 \-l .RE .PP روشن کردن یک وسیله برقی با استفاده از zigbee2mqtt و یک پریز هوشمند با پیکربندی مناسب: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} mosquitto_pub \-t zigbee2mqtt/power\-microwave/set \-m \*(Aq{"state":"ON"}\*(Aq .RE .SH "فایل‌ها (FILES)" .PP $XDG_CONFIG_HOME/mosquitto_pub, $HOME/\&.config/mosquitto_pub, $HOME/snap/mosquitto/current/\&.config/mosquitto_pub (برای نسخه‌های نصب‌شده از طریق snap) .RS 4 فایل پیکربندی برای گزینه‌های پیش‌فرض. .RE .SH "اشکالات (BUGS)" .PP اطلاعات مربوط به اشکالات \fBmosquitto\fR را می‌توانید در نشانی زیر بیابید: \m[blue]\fB\%https://github.com/eclipse-mosquitto/mosquitto/issues\fR\m[] .SH "همچنین ببینید (SEE ALSO)" \fBmosquitto\fR(7), \fBmqtt\fR(7), \fBmosquitto_rr\fR(1), \fBmosquitto_sub\fR(1), \fBmosquitto\fR(8), \fBlibmosquitto\fR(3), \fBmosquitto-tls\fR(7) .SH "نویسنده (AUTHOR)" .PP Roger Light