asp.net 创建QQ连接
如果在个人网站上添加一个QQ留言的功能是不是很酷呀?比留下一个email或者留下个QQ号码要好的多。
看看效果吧。
点击该图标就建立一个临时会话,就可以直接和我说话(如果我在线),或者我不在线给我留言。
废话少说,代码如下:
(1)创建一个图像按钮,代码如下:
<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="http://wpslogo.qq.com/13_online.gif"
OnClick="ImageButton1_Click" />
QQ给我们提供的webservice图标很多,修改13_online.gif前面的13可以显示不同的图标。
(2)OnClick="ImageButton1_Click"事件的代码如下:
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
Response.Write("<script language='javascript'type='text/javascript'> window.open('http://wpa.qq.com/msgrd?v=1&uin=您的QQ号码','','', false);</script>");
}
检测QQ是否在线的C#代码:
Public Static int GetQQState(long qq)
{
WebClient client = new WebClient();
byte[ ] data;
try{data=client.DownLoadData("http://wpa.qq/pa?p=1: "+qq.ToString()+":1");}
catch{data=new byte[0];}
Swith(data.Length)
{
case 2329: return 1; break;
case 2262: return 0; break;
case 0 : return -1; break;
default :return -1 ; break;
//返回1 就是在线 0 不在线 -1 就是不存在此号码
}
}
当然这执行的是脚本,所以也可以把这行代码放到脚本里面去。改成静态网页也是很方便的。
<script type="text/javascript">
var a;
function aa() {
a = window.open('http://wpa.qq.com/msgrd?v=1&uin=365171752', '', '', false);
window.setTimeout(function() { a.close()}, 5000);
}
或者
function aa() {
window.location = " tencent://message/?uin=17139925&";
}
</script>
<img src="http://wpslogo.qq.com/13_online.gif" alt=""onclick="aa()" />