Hi All

I'm trying to write a program that will log into my account on www.vyke.com and send an SMS. I have used HttpWatch in IE to determine the following request response pattern that WORKS:

Code:
GET /index.jsf HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/msword, application/xaml+xml, application/vnd.ms-xpsdocument, application/x-ms-xbap, application/x-ms-application, */*
Accept-Language: en-gb
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; FDM; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; FDM)
Host: www.vyke.com
Connection: Keep-Alive
Cookie: __utma=116302721.1326336135.1200306177.1209817205.1209817314.31; __utmz=116302721.1209769998.19.7.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=sms%20site%3Avyke.com; __utmb=116302721.1.10.1209817313906; cookieHolder=H4sIAAAAAAAAAFvzloG13JiBL9TPM8TVRcHb08/dxd8Xg8/s7hTAAAWMjECCCQDNbV+3OQAAAA==; osas_id=120976839400080413; language=en
Response:
Code:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: JSESSIONID=A68FE7EA615D936C4F836407298FA028; Path=/; Secure
X-Powered-By: JSF/1.2
Set-Cookie: cookieHolder=H4sIAAAAAAAAAFvzloG13JiBL9TPM8TVRcHb08/dxd8Xg8/s7hTAAAWMjECCCQDNbV+3OQAAAA==; Expires=Sun, 03-May-2009 12:22:15 GMT; Path=/
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Sat, 03 May 2008 12:22:14 GMT

2000
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
	<script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg.ajax4jsf.javascript.AjaxScript.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg/ajax4jsf/javascript/scripts/form.js.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg.ajax4jsf.javascript.PrototypeScript.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/utils.js.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/browser_info.js.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/modalPanel.js.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/modalPanelBorders.js.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTscripts/scriptaculous/effects.js.jsf'></script><script type='text/javascript' src='/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/script/processEffect.js.jsf'></script><meta http-equiv="Content-type" content="text/html; charset=utf-8" />
	<link href="/style/common.css" type="text/css" rel="stylesheet" />
	<link href="/style/dinamic_panel.css" type="text/css" rel="stylesheet" />
	<link href="/style/white_panels.css" type="text/css" rel="stylesheet" />
		<link href="/style/registration_form.css" type="text/css" rel="stylesheet" />
		<link href="/style/log_on_form.css" type="text/css" rel="stylesheet" />
		<link href="style/calculator.css" type="text/css" rel="stylesheet" />
		<link href="style/tabs.css" type="text/css" rel="stylesheet" />
			<script src="js/dinamic_panel.js" type="text/javascript"></script>
	<script type="text/javascript" language="javascript" src="/js/common.js">
	</script>
	<script type="text/javascript" language="javascript" src="/js/swfobject.js">
	</script>
	<script type="text/javascript" language="javascript" src="/js/validateCC.js">
	</script>
	<title>
			VYKE - The Worlds No 1 VoIP Service Provider - Mobile VoIP, PC to Phone, Callback, VoIP Phone
	</title>
	<meta name="description" content="VYKE - The Worlds No 1 VoIP Service Provider - Mobile VoIP, PC to Phone, Callback, VoIP Phone" />
	<meta name="keywords" content="VoIP, VoIP mobile, Callback, Cheap calls, Cheap mobile calls, Dialer, Free calls, Free text, International calls, Mobile VoIP, PC phone, SIP mobile, SMS, Softphone" />
	<meta name="author" content="Admin" />
	<meta name="robots" content="" />
</head>
<body>
<div class="main_container">
	<div class="header">
		<div class="top_panel">
			<div class="bg_main_right">
...more..
I click login:
Code:
POST /index.jsf;jsessionid=A68FE7EA615D936C4F836407298FA028 HTTP/1.1
Accept: */*
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: https://www.vyke.com/index.jsf
Accept-Language: en-gb
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; FDM; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; FDM)
Host: www.vyke.com
Content-Length: 146
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: __utma=116302721.1326336135.1200306177.1209817314.1209817342.32; __utmz=116302721.1209769998.19.7.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=sms%20site%3Avyke.com; __utmb=116302721.1.10.1209817342375; __utmc=116302721; cookieHolder=H4sIAAAAAAAAAFvzloG13JiBL9TPM8TVRcHb08/dxd8Xg8/s7hTAAAWMjECCCQDNbV+3OQAAAA==; osas_id=120976839400080413; JSESSIONID=A68FE7EA615D936C4F836407298FA028; language=en

AJAXREQUEST=_viewRoot&topMenuForm=topMenuForm&autoScroll=&javax.faces.ViewState=j_id56452&topMenuForm%3AopenLoginForm=topMenuForm%3AopenLoginForm&
The response:
Code:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: JSF/1.2
Ajax-Response: true
Cache-Control: no-cache, must-revalidate, max_age=0, no-store
Expires: 0
Pragma: no-cache
Content-Type: text/xml;charset=UTF-8
Content-Length: 7099
Date: Sat, 03 May 2008 12:24:26 GMT

<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title></title><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg.ajax4jsf.javascript.AjaxScript.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg/ajax4jsf/javascript/scripts/form.js.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg.ajax4jsf.javascript.PrototypeScript.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/utils.js.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/browser_info.js.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/modalPanel.js.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/scripts/modalPanelBorders.js.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTscripts/scriptaculous/effects.js.jsf">
</script><script type="text/javascript" src="/a4j_3_2_0-SNAPSHOTorg/richfaces/renderkit/html/script/processEffect.js.jsf">
</script></head><body><span id="floatPanelInclude"><form id="floatPanelInclude:loginForm" name="floatPanelInclude:loginForm" method="post" onfocus="defaultSubmitId = this.id + ':logonButton';" action="/index.jsf"><!--login.xhtml -->
<div class="warning_panel"><!-- It is a module of log_on_form-->
<div class="border_inner"><script type="text/javascript" language="javascript">//<![CDATA[
                                floatPanelTitle('<h3>Log in to your Vyke account.<\/h3>');
                        //]]>
</script> <!--  WARNING PANEL ON DISAPLED PAGE start -->
 <!--  LOGIN PANEL start --> <div class="log_on_main_part"><div class="columns_part"><div class="column_description"><div class="title">Did you know that...</div><p>Mobile VoIP by Vyke is free to download and only cost $0.04 pr call to fixed phones in Western Europe, USA and Canada?</p><p>All you need to get started with Mobile VoIP is a Wi-Fi enabled Nokia E or N series and a Vyke account. Save on all your mobile calls with Mobile VoIP by Vyke!</p></div><div class="column_input_fields"><div class="title">Log in to Vyke:</div><p>Username</p><input id="floatPanelInclude:loginForm:username" type="text" name="floatPanelInclude:loginForm:username" class="text_long" maxlength="32" onfocus="saveFocus(event)" /> <p>Password</p><input id="floatPanelInclude:loginForm:password" type="password" name="floatPanelInclude:loginForm:password" value="" maxlength="12" onfocus="saveFocus(event)" class="text_long" /> <div class="checkbox"><input id="floatPanelInclude:loginForm:rememberMe" type="checkbox" name="floatPanelInclude:loginForm:rememberMe" onfocus="saveFocus(event)" /> <label>Remember me</label> <div class="cl_b"><!-- --></div></div><div class="btn_part"><script type="text/javascript" language="Javascript">//<![CDATA[
function dpf(f) {var adp = f.adp;if (adp != null) {for (var i = 0;i < adp.length;i++) {f.removeChild(adp[i]);}}};function apf(f, pvp) {var adp = new Array();f.adp = adp;var ps = pvp.split(',');for (var i = 0,ii = 0;i < ps.length;i++,ii++) {var p = document.createElement("input");p.type = "hidden";p.name = ps[i];p.value = ps[i + 1];f.appendChild(p);adp[ii] = p;i += 1;}};function jsfcljs(f, pvp, t) {apf(f, pvp);var ft = f.target;if (t) {f.target = t;}f.submit();f.target = ft;dpf(f);};
//]]>
</script> <a id="floatPanelInclude:loginForm:logonButton" href="#" onclick="var a=function(){A4J.AJAX.Submit('_viewRoot','floatPanelInclude:loginForm',event,{'oncomplete':function(request,event,data){showFloatPanel()},'parameters':{'floatPanelInclude:loginForm:j_id265':'floatPanelInclude:loginForm:j_id265'} ,'actionUrl':'/index.jsf'} ); return false;};var b=function(){if(typeof jsfcljs == 'function'){jsfcljs(document.forms['floatPanelInclude:loginForm'],'floatPanelInclude:loginForm:logonButton,floatPanelInclude:loginForm:logonButton','');}return false};return (a()==false) ? false : b();" class="btn_standart_green"><strong class="border_left"><strong class="bg_middle">Log in</strong></strong></a></div></div><div class="cl_b"><!-- --></div></div></div><div class="bottom_forgot_part">Create new account? <a href="#" id="floatPanelInclude:loginForm:loginShowSignup" name="floatPanelInclude:loginForm:loginShowSignup" onclick="A4J.AJAX.Submit('_viewRoot','floatPanelInclude:loginForm',event,{'oncomplete':function(request,event,data){showFloatPanel()},'parameters':{'floatPanelInclude:loginForm:loginShowSignup':'floatPanelInclude:loginForm:loginShowSignup'} ,'actionUrl':'/index.jsf'} );return false;">Click here</a><br /> Forgot your username or password? <a href="#" id="floatPanelInclude:loginForm:forgottenPwd" name="floatPanelInclude:loginForm:forgottenPwd" onclick="A4J.AJAX.Submit('_viewRoot','floatPanelInclude:loginForm',event,{'oncomplete':function(request,event,data){showFloatPanel()},'parameters':{'floatPanelInclude:loginForm:forgottenPwd':'floatPanelInclude:loginForm:forgottenPwd'} ,'actionUrl':'/index.jsf'} );return false;">Click here</a></div><!--  LOGIN PANEL end -->
<div class="bottom_close_links pad_left_13"><a id="floatPanelInclude:loginForm:closeLoginLink" href="#" onclick="var a=function(){A4J.AJAX.Submit('_viewRoot','floatPanelInclude:loginForm',event,{'oncomplete':function(request,event,data){javascript:Richfaces.hideModalPanel('floatPanel')},'parameters':{'floatPanelInclude:loginForm:j_id272':'floatPanelInclude:loginForm:j_id272'} ,'actionUrl':'/index.jsf'} ); return false;};var b=function(){if(typeof jsfcljs == 'function'){jsfcljs(document.forms['floatPanelInclude:loginForm'],'floatPanelInclude:loginForm:closeLoginLink,floatPanelInclude:loginForm:closeLoginLink','');}return false};return (a()==false) ? false : b();" class="bottom_link_close">Cancel and close window</a></div></div></div><input type="hidden" name="floatPanelInclude:loginForm" value="floatPanelInclude:loginForm" /><input type="hidden" name="autoScroll" value="" /><input type="hidden" name="floatPanelInclude:loginForm:j_idcl" value="" /><input type="hidden" name="floatPanelInclude:loginForm:_link_hidden_" value="" /><script type="text/javascript">//<![CDATA[
function clear_floatPanelInclude_3AloginForm() {
_clearJSFFormParameters('floatPanelInclude:loginForm','',['floatPanelInclude:loginForm:j_idcl','floatPanelInclude:loginForm:_link_hidden_']);
}
function clearFormHiddenParams_floatPanelInclude_3AloginForm(){clear_floatPanelInclude_3AloginForm();}
function clearFormHiddenParams_floatPanelInclude_loginForm(){clear_floatPanelInclude_3AloginForm();}
clear_floatPanelInclude_3AloginForm();
//]]>
</script><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="j_id56452" /></form></span><meta name="Ajax-Update-Ids" content="floatPanelInclude" /><span id="ajax-view-state"><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="j_id56452" /></span><meta id="Ajax-Response" name="Ajax-Response" content="true" /><span id="org.ajax4jsf.oncomplete">showFloatPanel()</span></body></html>
some sort of flashy modal dialog box appears and it does a post of the username and password:
Code:
POST /index.jsf HTTP/1.1
Accept: */*
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: https://www.vyke.com/index.jsf
Accept-Language: en-gb
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; FDM; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; FDM)
Host: www.vyke.com
Content-Length: 310
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: __utma=116302721.1326336135.1200306177.1209817314.1209817342.32; __utmz=116302721.1209769998.19.7.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=sms%20site%3Avyke.com; __utmb=116302721.1.10.1209817342375; __utmc=116302721; cookieHolder=H4sIAAAAAAAAAFvzloG13JiBL9TPM8TVRcHb08/dxd8Xg8/s7hTAAAWMjECCCQDNbV+3OQAAAA==; osas_id=120976839400080413; JSESSIONID=A68FE7EA615D936C4F836407298FA028; language=en

AJAXREQUEST=_viewRoot&floatPanelInclude%3AloginForm%3Ausername=cjard&floatPanelInclude%3AloginForm%3Apassword=mypassword&floatPanelInclude%3AloginForm=floatPanelInclude%3AloginForm&autoScroll=&javax.faces.ViewState=j_id56452&floatPanelInclude%3AloginForm%3Aj_id265=floatPanelInclude%3AloginForm%3Aj_id265&
and the response is a redirect:
Code:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: JSF/1.2
Ajax-Response: redirect
Cache-Control: no-cache, must-revalidate, max_age=0, no-store
Expires: 0
Pragma: no-cache
Location: /index.jsf
Content-Type: text/xml;charset=UTF-8
Transfer-Encoding: chunked
Date: Sat, 03 May 2008 12:26:13 GMT

c3
<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta name="Ajax-Response" content="redirect" /><meta name="Location" content="/index.jsf" /></head></html>
0

continued below..