I would look at what term you are using and how that differs from PHP to expect. Also create a basic php script to execute the expect script and see if it works through cli. if that works then check through apache. if it fails through apache it might be because of a term issue.<br>
<br><div class="gmail_quote">On Thu, Jun 19, 2008 at 11:44 AM,  &lt;<a href="mailto:ccusmith@aol.com">ccusmith@aol.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">I have a webpage that is in HTML and PHP. &nbsp;In PHP I have tried using exec, system, shell_exec and passthru functions to call an Expect Script file (temp.exp). &nbsp;This expects file spawns a telnet session that uses &quot;expect/send&quot; commands to retrieve information from an environmental unit (not a normal server). &nbsp;This data is placed in a file and then loaded to the webpage. &nbsp;<br>

<br>
The problem is if I call &quot;./temp.exp&quot; it runs great, but when I call the same program from the webpage exec(&quot;./temp.exp&quot;) using PHP (because it retrieves the data is displayed in the webpage), it will connect but then stops responding.&nbsp; It never returns the password prompt to achieve a yes to move on. &nbsp;<br>

<br>
I inserted "exp_internal 1" in the expect file to produce the diagnostic results. &nbsp;<br>
<br>
<b><u><span style="font-weight: bold;">When temp.exp is ran manually</span></u></b><br>
spawn telnet <a href="http://111.111.11.111" target="_blank">111.111.11.111</a><br>
parent: waiting for sync byte<br>
parent: telling child to go ahead<br>
parent: now unsynchronized from child<br>
spawn: returns {18790}<br>
expect: does &quot;&quot; (spawn_id exp5) match glob pattern &quot;Password:&quot;? no<br>
Trying 111.111.11.111...<br>
Connected to <a href="http://111.111.11.111" target="_blank">111.111.11.111</a>.<br>
Escape character is &#39;^]&#39;.<br>
Password: <br>
expect: does &quot;Trying 111.111.11.111...\r\nConnected to 111.111.11.111.\r\nEscape character is &#39;^]&#39;.\r\</span></font><font color="black" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: black;">n</span></font><b><font color="maroon" face="Lucida Sans" size="2"><span style="font-weight: bold; font-size: 10pt; color: maroon;">Password: &quot; (spawn_id exp5) match glob pattern &quot;Password:&quot;? yes</span></font></b><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);"><br>

expect: set expect_out(0,string) &quot;Password:&quot;<br>
expect: set expect_out(spawn_id) &quot;exp5&quot;<br>
<br>
<br>
<b><u><span style="font-weight: bold;">When temp.exp is called from the webpage</span></u></b><br>
spawn telnet <a href="http://111.111.11.111" target="_blank">111.111.11.111</a><br>
parent: waiting for sync byte<br>
parent: telling child to go ahead<br>
parent: now unsynchronized from child<br>
spawn: returns {19909}<br>
expect: does &quot;&quot; (spawn_id exp19) match glob pattern &quot;Password:&quot;? no<br>
Trying 111.111.11.111...<br>
Connected to <a href="http://111.111.11.111" target="_blank">111.111.11.111</a>.<br>
Escape character is &#39;^]&#39;.<br>
expect: does &quot;Trying 111.111.11.111...\r\nConnected to 111.111.11.111.\r\nEscape character is &#39;^]&#39;.\r\n</span></font><b><font color="maroon" face="Lucida Sans" size="2"><span style="font-weight: bold; font-size: 10pt; color: maroon;">&quot; (spawn_id exp19) match glob pattern &quot;Password:&quot;? no</span></font></b><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);"><br>

expect: timed out<br>
<br>
I have checked/changed the Apache user, the permissions and ownership of the files are fine. &nbsp;&nbsp;I have put debug on the expect and the telnet sessions. &nbsp;I have specified the telnet used and the port.&nbsp; I have upgraded my Tcl/Tk. &nbsp; The link <a title="http://unix.derkeiler.com/Newsgroups/comp.unix.shell/2005-06/0454.html" href="http://unix.derkeiler.com/Newsgroups/comp.unix.shell/2005-06/0454.html" target="_blank">http://unix.derkeiler.com/Newsgroups/comp.unix.shell/2005-06/0454.html</a> is similar but I am not getting the &quot;setsocket(SO_DEBUG):Permission denied&quot; error and that solution did not work for me. &nbsp;&nbsp;</span></font></div>



<div><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">&nbsp;</span></font></div>


<div><u><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">System info</span></font></u></div>


<div><font face="Lucida Sans Typewriter" size="2"><span style="font-size: 10pt;"># find / -name telnet</span></font></div>


<div><font face="Lucida Sans Typewriter" size="2"><span style="font-size: 10pt;">/usr/bin/telnet</span></font></div>


<div><font face="Lucida Sans Typewriter" size="2"><span style="font-size: 10pt;">/usr/ucb/telnet</span></font></div>


<div><font face="Lucida Sans Typewriter" size="2"><span style="font-size: 10pt;"># expect -v</span></font></div>


<div><font face="Lucida Sans Typewriter" size="2"><span style="font-size: 10pt;">expect version 5.40.0</span></font></div>


<div><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">&nbsp;</span></font></div>


<div><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">Below are versions that I have tried.</span></font></div>


<div><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">&nbsp;</span></font></div>


<div><u><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">The script 1</span></font></u></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#!/usr/local/bin/expect</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">exp_internal -f /opt/xampp/htdocs/temp/diag.txt 1</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">spawn -nottycopy /bin/telnet -d <a href="http://111.11.11.111" target="_blank">111.11.11.111</a> 23</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;Password:&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send &quot;OMNI\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;X. Exit (end connection)&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send &quot;p\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;&gt;&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">log_file -noappend -a &quot;/opt/xampp/htdocs/temp/data.txt&quot; </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#Sensor Name&nbsp;&nbsp;&nbsp;&nbsp; POS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Temp Sensor&nbsp;&nbsp;&nbsp;&nbsp; 1</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send &quot;GET 3052.5.1.1.1.1.4.3.1.1\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;1.3.6.1.4.1.3052.5.1.1.1.1.4.3.1.1&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#Read Out&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Temp Sensor&nbsp;&nbsp;&nbsp;&nbsp; 1</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send &quot;GET 3052.5.1.1.1.1.6.3.1.1\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;1.3.6.1.4.1.3052.5.1.1.1.1.6.3.1.1&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#Read Out&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Humidity Sensor 2</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send &quot;GET 3052.5.1.1.1.1.6.3.3.1\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;1.3.6.1.4.1.3052.5.1.1.1.1.6.3.3.1&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">log_file</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send &quot;BYE\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">exit 0</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><u><font color="#333333" face="Lucida Sans" size="2"><span style="font-size: 10pt; color: rgb(51, 51, 51);">The script 2</span></font></u></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#!/usr/local/bin/expect -f </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">exp_internal -f /opt/xampp/htdocs/temp/diag.txt 1</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">set force_conservative 1 ;# set to 1 to force conservative mode even if </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;# script wasn&#39;t run conservatively originally </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">if {$force_conservative} { </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; set send_slow {1 .1} </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; proc send {ignore arg} { </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sleep .1 </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exp_send -s -- $arg </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">} </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">set timeout 3 </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">spawn $env(SHELL) </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">match_max 100000 </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;telnet <a href="http://111.11.11.111" target="_blank">111.11.11.111</a>\r&quot; </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;Password: &quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;OMNI\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;X. Exit (end connection)&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;p\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;&gt;&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">log_file -noappend -a &quot;/opt/xampp/htdocs/temp/data.txt&quot; </span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#Sensor Name&nbsp;&nbsp;&nbsp;&nbsp; POS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Temp Sensor&nbsp;&nbsp;&nbsp;&nbsp; 1</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;GET 3052.5.1.1.1.1.4.3.1.1\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;1.3.6.1.4.1.3052.5.1.1.1.1.4.3.1.1&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#Read Out&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Temp Sensor&nbsp;&nbsp;&nbsp;&nbsp; 1</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;GET 3052.5.1.1.1.1.6.3.1.1\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;1.3.6.1.4.1.3052.5.1.1.1.1.6.3.1.1&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">#Read Out&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POS3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Humidity Sensor 2</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;GET 3052.5.1.1.1.1.6.3.3.1\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">sleep 3</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">expect &quot;1.3.6.1.4.1.3052.5.1.1.1.1.6.3.3.1&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">log_file</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">send -- &quot;BYE\r&quot;</span></font></div>


<div><font face="Lucida Sans" size="2"><span style="font-size: 10pt;">exit 0</span></font></div>
<div><font style="color: black; font-family: ARIAL,SAN-SERIF; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10pt; line-height: normal; font-size-adjust: none; font-stretch: normal;"><hr style="margin-top: 10px;">
<a title="http://toolbar.aol.com/moviefone/download.html?ncid=aolcmp00050000000011" href="http://toolbar.aol.com/moviefone/download.html?ncid=aolcmp00050000000011" target="_blank">Get the Moviefone Toolbar</a>. Showtimes, theaters, movie news, &amp; more!</font> </div>

<br>_______________________________________________<br>
Rancid-discuss mailing list<br>
<a href="mailto:Rancid-discuss@shrubbery.net">Rancid-discuss@shrubbery.net</a><br>
<a href="http://www.shrubbery.net/mailman/listinfo.cgi/rancid-discuss" target="_blank">http://www.shrubbery.net/mailman/listinfo.cgi/rancid-discuss</a><br></blockquote></div><br>