text प्रोटोकॉल

Workerman ने एक text नामक टेक्स्ट प्रोटोकॉल परिभाषित किया है, जिसका प्रोटोकॉल प्रारूप डेटा पैकेज + न्यू लाइन, अर्थात प्रत्येक डेटा पैकेज के अंत में एक न्यू लाइन जोड़ना पैकेज के समाप्त होने का संकेत देता है।

उदाहरण के लिए, नीचे दिए गए buffer1 और buffer2 स्ट्रिंग्स text प्रोटोकॉल के अनुसार हैं:

// टेक्स्ट में एक रिटर्न जोड़ें
$buffer1 = 'abcdefghijklmn
';
// PHP में डबल क्वोट्स के अंदर \n एक न्यू लाइन का प्रतिनिधित्व करता है, जैसे कि "\n"
$buffer2 = '{"type":"say", "content":"hello"}'."\n";

// सर्वर के साथ सॉकेट कनेक्शन स्थापित करें
$client = stream_socket_client('tcp://127.0.0.1:5678');
// text प्रोटोकॉल द्वारा buffer1 डेटा भेजें
fwrite($client, $buffer1);
// text प्रोटोकॉल द्वारा buffer2 डेटा भेजें
fwrite($client, $buffer2);

text प्रोटोकॉल बहुत सरल और उपयोग में आसान है, अगर डेवलपर को अपना एक प्रोटोकॉल चाहिए, जैसे मोबाइल ऐप के साथ डेटा स्थानांतरण या हार्डवेयर संचार आदि, तो वह text प्रोटोकॉल का उपयोग करने पर विचार कर सकता है, विकसित करने और डिबग करने में बहुत आसान है।

text प्रोटोकॉल डिबगिंग

text प्रोटोकॉल को telnet क्लाइंट के माध्यम से डिबग किया जा सकता है, जैसे कि नीचे दिए गए उदाहरण में:

नया फ़ाइल बनाएं test.php

require_once __DIR__ . '/Workerman/Autoloader.php';
use Workerman\Worker;

$text_worker = new Worker("text://0.0.0.0:5678");

$text_worker->onMessage =  function($connection, $data)
{
    var_dump($data);
    $connection->send("hello world");
};

Worker::runAll();

php test.php start चलाने पर निम्नलिखित प्रदर्शित होगा

php test.php start
Workerman[test.php] start in DEBUG mode
----------------------- WORKERMAN -----------------------------
Workerman version:3.2.7          PHP version:5.4.37
------------------------ WORKERS -------------------------------
user          worker        listen                         processes status
root          none          myTextProtocol://0.0.0.0:5678   1         [OK]
----------------------------------------------------------------
Press Ctrl-C to quit. Start success.

एक और टर्मिनल खोलें, telnet परीक्षण करने के लिए (Linux सिस्टम का telnet उपयोग करने की सिफारिश की जाती है)

मान लीजिए कि यह लोकलहोस्ट पर परीक्षण है,
टर्मिनल में टाइप करें telnet 127.0.0.1 5678
फिर hi टाइप करके एंटर करें
आपको डेटा hello world\n प्राप्त होगा

telnet 127.0.0.1 5678
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
hi
hello world