{"id":520,"date":"2010-08-31T07:37:00","date_gmt":"2010-08-31T14:37:00","guid":{"rendered":"http:\/\/www.serialporttool.com\/sptblog\/?p=520"},"modified":"2010-08-31T07:37:00","modified_gmt":"2010-08-31T14:37:00","slug":"run-perl-script-in-auto-send-of-comm-operator-4-5","status":"publish","type":"post","link":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/","title":{"rendered":"Run Perl Script Automatically in Comm Operator"},"content":{"rendered":"<p>Comm Operator v4.5 supports Perl script in \u201cAuto Send\u201d function. Per Script will be run automatically.<\/p>\n<p><strong><font size=\"4\"><a href=\"http:\/\/www.serialporttool.com\/download\/CommOperator\/CommOpV4.5.zip\"><u>Download Comm Operator v4.5<\/u><\/a><\/font><\/strong>&#160;<\/p>\n<p><a href=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain4.gif\"><img loading=\"lazy\" decoding=\"async\" style=\"border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px\" title=\"Comm Operator Screenshot\" border=\"0\" alt=\"Comm Operator Screenshot\" src=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif\" width=\"454\" height=\"390\" \/><\/a> <\/p>\n<p>Here are the steps to add Perl Script to Auto Send Rule in Comm Operator.<\/p>\n<p>1. Valid Perl interpreter need to be installed. It can be downloaded from <a href=\"http:\/\/www.perl.org\">http:\/\/www.perl.org<\/a> <\/p>\n<p>2. Click menu [Tools]-&gt;[Options] to open Options dialog. The path of Perl interpreter \u201cPerl.exe\u201d&#160; has to be setup correctly on Script page. <\/p>\n<p><a href=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/08\/image41.png\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px\" title=\"Options - Script\" border=\"0\" alt=\"Options - Script\" src=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/08\/image4_thumb.png\" width=\"454\" height=\"417\" \/><\/a> <\/p>\n<\/p>\n<p>3. Click menu [Edit]-&gt;[Auto Send] to open the \u201cAuto Send Rule Setting\u201d dialog. <\/p>\n<p><a href=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/frmAutoSend2.gif\"><img loading=\"lazy\" decoding=\"async\" style=\"border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px\" title=\"Auto Send Rule Setting\" border=\"0\" alt=\"Auto Send Rule Setting\" src=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/frmAutoSend_thumb2.gif\" width=\"454\" height=\"263\" \/><\/a> <\/p>\n<p>4. Click \u201cNew\u201d button to show \u201cSelect Rule Type\u201d dialog. <\/p>\n<p><a href=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/RuleSelect_Perl.gif\"><img loading=\"lazy\" decoding=\"async\" style=\"border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px\" title=\"Select Rule Type - Perl\" border=\"0\" alt=\"Select Rule Type - Perl\" src=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/RuleSelect_Perl_thumb.gif\" width=\"250\" height=\"369\" \/><\/a> <\/p>\n<p>5. Select \u201cPerl Script\u201d and Click \u201cOK\u201d. The \u201cPerl Script Rule\u201d dialog will be shown. <\/p>\n<p><a href=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/08\/image20.png\"><img loading=\"lazy\" decoding=\"async\" style=\"border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px\" title=\"Per Script Rule Dialog\" border=\"0\" alt=\"Per Script Rule Dialog\" src=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/08\/image_thumb20.png\" width=\"481\" height=\"245\" \/><\/a> <\/p>\n<p>6. Choose your Perl script. Click \u201cView\u201d button will open the script with Windows Notepad. <\/p>\n<p>Tip: <\/p>\n<ul>\n<li>If the checkbox\u201dAlways\u201d is selected, the script will be run again and again. Otherwise, it won\u2019t be called once it is matched. <\/li>\n<li>Comm Operator comes with a demo Perl script called \u201cSample.pl\u201d. The file can be find in Comm Operator\u2019s install folder. The default folder is \u201cC:\\Program Files\\Serial Port Tool\\Comm Operator\\\u201d or \u201cC:\\Program Files(x86)\\Serial Port Tool\\Comm Operator\\\u201d for 64 bits OS. <\/li>\n<\/ul>\n<p>7. Click OK to finish adding Perl Script Rule. <\/p>\n<p><strong>How does it work?<\/strong><\/p>\n<p>Comm Operator process the \u201cAuto Send\u201d in a separate thread. The script will be called in every loop. The script handles the events and determine if there are data need to be sent in \u201cAuto Send\u201d. \u201cMatched\u201d means there is data come back from script and need to be sent.<\/p>\n<p>When a script is called, Comm Operator write the event type as well as data of this event in STDIN. The event type could be one of the following.<\/p>\n<p>\u201cDataReceived\u201d,&#160; raised when data received in Comm Operator in current connection. The data received are followed after the event string in hex string format.<\/p>\n<p>\u201cStart\u201d,&#160; raised when the auto send starts.<\/p>\n<p>\u201cPause\u201d,&#160; raised when the auto send pauses.<\/p>\n<p>\u201cResume\u201d,&#160; raised when the auto send resumes.<\/p>\n<p>\u201cLoop\u201d, raised in every loop of the auto send. <\/p>\n<p>Only \u201cDataReceived\u201d has data, the data are hex strings separated by one space. Like \u201c61 62 63 64 \u201c represents the data \u201cABCD\u201d. The whole package write to STDIN in this case will be<\/p>\n<p>DataReceived,61 62 63 64<\/p>\n<p>For other event types, the package only has only the type name followed with a \u201c,\u201d.<\/p>\n<p>The package ends with a CR. In perl script, the following code will read the whole data package.<\/p>\n<blockquote>\n<p><em>$input=&lt;STDIN&gt;<\/em><\/p>\n<\/blockquote>\n<p>As&#160; the event and data are separated by \u201c,\u201d, it can be parsed easily by the following code.<\/p>\n<blockquote>\n<p><em>@data = split(\/,\/, $input);<\/em> <\/p>\n<\/blockquote>\n<p>data[0] is the event type and data[1] contains the data related.<\/p>\n<p>The data send back to Comm Operator is written to STDOUT, the data are formatted in hex string.<\/p>\n<p>Here is the sample code that echo all data received.<\/p>\n<blockquote>\n<p><em>if(@data[0] eq &quot;DataReceived&quot;){&#160; <br \/>&#160;&#160;&#160; print $data[1];         <br \/>} <\/em><\/p>\n<\/blockquote>\n<p>Here is the help function for creating hex string from ascii string.<\/p>\n<blockquote>\n<p><em>##Convert each ASCII character to a two-digit hex number separated with a space char        <br \/>## like &quot;A5 B3 &quot;         <br \/>sub ascii_to_hex ($)         <br \/>{         <br \/>&#160;&#160;&#160; (my $str = shift) =~ s\/(.|\\n)\/sprintf(&quot;%2lx &quot;, ord $1)\/eg;         <br \/>&#160;&#160;&#160; return $str;         <br \/>} <\/em><\/p>\n<\/blockquote>\n<p>Here is the sample code to send string \u201cHello\u201d to Comm Operator.<\/p>\n<blockquote>\n<p><em>print ascii_to_hex(\u201cHello\u201d);<\/em><\/p>\n<\/blockquote>\n<p>Here is the help function for converting hex string to ASCII string. It is useful to parse the data comes from Comm Operator.<\/p>\n<blockquote>\n<p><em>##Convert each two-digit hex number back to an ASCII character.        <br \/>## the string format like &quot;A5 B3 &quot;, there is a space char between two hex numbers         <br \/>sub hex_to_ascii ($)         <br \/>{         <br \/>&#160;&#160;&#160; (my $str = shift) =~ s\/([a-fA-F0-9 ]{3})\/chr(hex $1)\/eg;         <br \/>&#160;&#160;&#160; return $str;         <br \/>} <\/em><\/p>\n<\/blockquote>\n<p>Here is the code of \u201cSample.pl\u201d. <\/p>\n<blockquote>\n<p><em>## To make this script run, please setup the Perl path correctly in &quot;Tools-&gt;Options&quot;        <br \/>## sample ruby script to Comm Operator         <br \/>## Comm Operator will write data to STDIN         <br \/>## Format         <br \/>## Type, hex hex hex &#8230;         <br \/>## Type: String that represent the type of event, can be&#160; <br \/>##&#160;&#160;&#160;&#160;&#160;&#160; &quot;DataReceived&quot;         <br \/>##&#160;&#160;&#160;&#160;&#160;&#160; &quot;Start&quot;         <br \/>##&#160;&#160;&#160;&#160;&#160;&#160; &quot;Pause&quot;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br \/>##&#160;&#160;&#160;&#160;&#160;&#160; &quot;Resume&quot;         <br \/>## If the type is &quot;DataReceived&quot;, it will follow byte &quot;,&quot; and then the data in hex string.         <br \/>## For example, if the Comm Operator recieved string &quot;abcd&quot;, it will call script with data like below         <br \/>##&#160;&#160; DataReceived, 61 62 63 64 <\/em><\/p>\n<p><em>## Read data send from Comm Operator        <br \/>$input=&lt;STDIN&gt;; <\/em><\/p>\n<p><em>## Parse data, the data contains two parts. The first part is event type, the seond part are data in hex string        <br \/>@data = split(\/,\/, $input); <\/em><\/p>\n<p><em>## test if it is the &quot;DataReceived&quot; event        <br \/>if(@data[0] eq &quot;DataReceived&quot;){         <br \/>&#160;&#160;&#160; ## echo back the data received, replace it with you own code         <br \/>&#160;&#160;&#160; print $data[1];         <br \/>} <\/em><\/p>\n<p><em>## test if it is the &quot;Start&quot; event        <br \/>if(@data[0] eq&#160; &quot;Start&quot;){         <br \/>&#160;&#160;&#160; ## send string &quot;Start&quot;, replace it with you own code         <br \/>&#160;&#160;&#160; print ascii_to_hex(&quot;start&quot;);         <br \/>} <\/em><\/p>\n<p><em>## test if it is the &quot;Pause&quot; event        <br \/>if(@data[0] eq&#160; &quot;Pause&quot;){         <br \/>&#160;&#160;&#160; ## send string &quot;Pause&quot;, replace it with you own code         <br \/>&#160;&#160;&#160; print ascii_to_hex(&quot;Pause&quot;);         <br \/>} <\/em><\/p>\n<p><em>## test if it is the &quot;Resume&quot; event        <br \/>if(@data[0] eq&#160; &quot;Resume&quot;){         <br \/>&#160;&#160;&#160; ## send string &quot;Resume&quot;, replace it with you own code         <br \/>&#160;&#160;&#160; print ascii_to_hex(&quot;Resume&quot;);         <br \/>} <\/em><\/p>\n<p><em>## test if it is the &quot;Loop&quot; event        <br \/>if(@data[0] eq &quot;Loop&quot;) {         <br \/>&#160; ## process data here is not recommended.         <br \/>&#160; #sleep 1         <br \/>&#160; #print ascii_to_hex(&quot;Loop&quot;)         <br \/>} <\/em><\/p>\n<p><em>##Convert each ASCII character to a two-digit hex number separated with a space char        <br \/>## like &quot;A5 B3 &quot;         <br \/>sub ascii_to_hex ($)         <br \/>{         <br \/>&#160;&#160;&#160; (my $str = shift) =~ s\/(.|\\n)\/sprintf(&quot;%2lx &quot;, ord $1)\/eg;         <br \/>&#160;&#160;&#160; return $str;         <br \/>} <\/em><\/p>\n<p><em>##Convert each two-digit hex number back to an ASCII character.        <br \/>## the string format like &quot;A5 B3 &quot;, there is a space char between two hex numbers         <br \/>sub hex_to_ascii ($)         <br \/>{         <br \/>&#160;&#160;&#160; (my $str = shift) =~ s\/([a-fA-F0-9 ]{3})\/chr(hex $1)\/eg;         <br \/>&#160;&#160;&#160; return $str;         <br \/>}<\/em> <\/p>\n<\/blockquote>\n<p><strong>See Also<\/strong><\/p>\n<blockquote>\n<p><strong><font color=\"#333333\"><a href=\"http:\/\/www.serialporttool.com\/sptblog\/?p=550\">Run User Exe in Auto Send<\/a><\/font><\/strong><\/p>\n<p><strong><font color=\"#333333\"><a href=\"http:\/\/www.serialporttool.com\/sptblog\/?p=534\">Run Python Script in Auto Send<\/a><\/font><\/strong><\/p>\n<p><strong><font color=\"#333333\"><a href=\"http:\/\/www.serialporttool.com\/sptblog\/?p=543\">Run Ruby Script in Auto Send<\/a><\/font><\/strong><\/p>\n<p><strong><font color=\"#333333\"><a href=\"http:\/\/www.serialporttool.com\/sptblog\/?p=559\">Run Plugin(.net Dll) in Auto Send<\/a><\/font><\/strong><\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Comm Operator v4.5 supports Perl script in \u201cAuto Send\u201d function. Per Script will be run automatically. Download Comm Operator v4.5&#160; Here are the steps to add Perl Script to Auto Send Rule in Comm Operator. 1. Valid Perl interpreter need [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,3],"tags":[29,30],"class_list":["post-520","post","type-post","status-publish","format-standard","hentry","category-commop","category-news","tag-comm-operator","tag-run-perl-script"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Run Perl Script Automatically in Comm Operator - Serial Port Tool<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Run Perl Script Automatically in Comm Operator - Serial Port Tool\" \/>\n<meta property=\"og:description\" content=\"Comm Operator v4.5 supports Perl script in \u201cAuto Send\u201d function. Per Script will be run automatically. Download Comm Operator v4.5&#160; Here are the steps to add Perl Script to Auto Send Rule in Comm Operator. 1. Valid Perl interpreter need [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\" \/>\n<meta property=\"og:site_name\" content=\"Serial Port Tool\" \/>\n<meta property=\"article:published_time\" content=\"2010-08-31T14:37:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif\" \/>\n<meta name=\"author\" content=\"xushirui\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"xushirui\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\"},\"author\":{\"name\":\"xushirui\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#\/schema\/person\/f588b4f9d1e2e18ebc56957bcdb417cf\"},\"headline\":\"Run Perl Script Automatically in Comm Operator\",\"datePublished\":\"2010-08-31T14:37:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\"},\"wordCount\":1015,\"publisher\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif\",\"keywords\":[\"Comm Operator\",\"run Perl script\"],\"articleSection\":[\"Comm Operator\",\"News\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\",\"url\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\",\"name\":\"Run Perl Script Automatically in Comm Operator - Serial Port Tool\",\"isPartOf\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif\",\"datePublished\":\"2010-08-31T14:37:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage\",\"url\":\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif\",\"contentUrl\":\"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.serialporttool.com\/GK\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Run Perl Script Automatically in Comm Operator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#website\",\"url\":\"https:\/\/www.serialporttool.com\/GK\/\",\"name\":\"Serial Port Tool\",\"description\":\"Software Solution for Serial Port and Network Control\",\"publisher\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.serialporttool.com\/GK\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#organization\",\"name\":\"Ginkgo LLC\",\"url\":\"https:\/\/www.serialporttool.com\/GK\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.serialporttool.com\/GK\/wp-content\/uploads\/2019\/07\/SerialPortToolSmallOutline.png\",\"contentUrl\":\"https:\/\/www.serialporttool.com\/GK\/wp-content\/uploads\/2019\/07\/SerialPortToolSmallOutline.png\",\"width\":565,\"height\":128,\"caption\":\"Ginkgo LLC\"},\"image\":{\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#\/schema\/person\/f588b4f9d1e2e18ebc56957bcdb417cf\",\"name\":\"xushirui\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.serialporttool.com\/GK\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d4eaaf6aba2e36365bc8d8ca8dca05e05082a6df3df53c180d609d133fa2ae3f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d4eaaf6aba2e36365bc8d8ca8dca05e05082a6df3df53c180d609d133fa2ae3f?s=96&d=mm&r=g\",\"caption\":\"xushirui\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Run Perl Script Automatically in Comm Operator - Serial Port Tool","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/","og_locale":"en_US","og_type":"article","og_title":"Run Perl Script Automatically in Comm Operator - Serial Port Tool","og_description":"Comm Operator v4.5 supports Perl script in \u201cAuto Send\u201d function. Per Script will be run automatically. Download Comm Operator v4.5&#160; Here are the steps to add Perl Script to Auto Send Rule in Comm Operator. 1. Valid Perl interpreter need [&hellip;]","og_url":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/","og_site_name":"Serial Port Tool","article_published_time":"2010-08-31T14:37:00+00:00","og_image":[{"url":"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif","type":"","width":"","height":""}],"author":"xushirui","twitter_card":"summary_large_image","twitter_misc":{"Written by":"xushirui","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#article","isPartOf":{"@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/"},"author":{"name":"xushirui","@id":"https:\/\/www.serialporttool.com\/GK\/#\/schema\/person\/f588b4f9d1e2e18ebc56957bcdb417cf"},"headline":"Run Perl Script Automatically in Comm Operator","datePublished":"2010-08-31T14:37:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/"},"wordCount":1015,"publisher":{"@id":"https:\/\/www.serialporttool.com\/GK\/#organization"},"image":{"@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage"},"thumbnailUrl":"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif","keywords":["Comm Operator","run Perl script"],"articleSection":["Comm Operator","News"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/","url":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/","name":"Run Perl Script Automatically in Comm Operator - Serial Port Tool","isPartOf":{"@id":"https:\/\/www.serialporttool.com\/GK\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage"},"image":{"@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage"},"thumbnailUrl":"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif","datePublished":"2010-08-31T14:37:00+00:00","breadcrumb":{"@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#primaryimage","url":"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif","contentUrl":"http:\/\/www.serialporttool.com\/sptblog\/wp-content\/uploads\/2010\/09\/commOpMain_thumb4.gif"},{"@type":"BreadcrumbList","@id":"https:\/\/www.serialporttool.com\/GK\/2010\/08\/run-perl-script-in-auto-send-of-comm-operator-4-5\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.serialporttool.com\/GK\/"},{"@type":"ListItem","position":2,"name":"Run Perl Script Automatically in Comm Operator"}]},{"@type":"WebSite","@id":"https:\/\/www.serialporttool.com\/GK\/#website","url":"https:\/\/www.serialporttool.com\/GK\/","name":"Serial Port Tool","description":"Software Solution for Serial Port and Network Control","publisher":{"@id":"https:\/\/www.serialporttool.com\/GK\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.serialporttool.com\/GK\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.serialporttool.com\/GK\/#organization","name":"Ginkgo LLC","url":"https:\/\/www.serialporttool.com\/GK\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.serialporttool.com\/GK\/#\/schema\/logo\/image\/","url":"https:\/\/www.serialporttool.com\/GK\/wp-content\/uploads\/2019\/07\/SerialPortToolSmallOutline.png","contentUrl":"https:\/\/www.serialporttool.com\/GK\/wp-content\/uploads\/2019\/07\/SerialPortToolSmallOutline.png","width":565,"height":128,"caption":"Ginkgo LLC"},"image":{"@id":"https:\/\/www.serialporttool.com\/GK\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.serialporttool.com\/GK\/#\/schema\/person\/f588b4f9d1e2e18ebc56957bcdb417cf","name":"xushirui","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.serialporttool.com\/GK\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/d4eaaf6aba2e36365bc8d8ca8dca05e05082a6df3df53c180d609d133fa2ae3f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d4eaaf6aba2e36365bc8d8ca8dca05e05082a6df3df53c180d609d133fa2ae3f?s=96&d=mm&r=g","caption":"xushirui"}}]}},"_links":{"self":[{"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/posts\/520","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/comments?post=520"}],"version-history":[{"count":0,"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/posts\/520\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/media?parent=520"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/categories?post=520"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.serialporttool.com\/GK\/wp-json\/wp\/v2\/tags?post=520"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}