Archive for category internet

支付宝不能建行信用卡支付?

昨天想用建行信用卡支付的时候我就发现在信用卡选项里面没有建行信用卡了。不过我也没在意,上次就遇到过中行网银不可用的情况。

今天潘淫买戒指的时候突然大惊小怪的说怎么没有建行信用卡支付了。为了解惑我就google了一把。发现支付宝论坛上有个帖子也在问这个问题。翻了几页之后发现有人回答说是建行合并了它的支付通道,还给出了建行这则通告的url地址。

url链接到建行网站上,上面果然说是以后都用帐号支付了。并且说每天限额提升到1000。嗯哼,以前只有500的-_-#。于是按照它的指示,在建行官网(www.ccb.com)的左边栏上找到“快捷服务”中的“帐号支付”。按照它的提示我申请成功了信用卡的帐号支付功能。

不过在支付宝里面还是没有建行信用卡支付啊。没事,只要选择储蓄卡支付即可,然后在连接到建行的支付界面选择帐号支付就还是可以使用建行信用卡支付了。

建行信用卡支付是个很废柴的功能,以前每天限额500,现在限额1000。不过我还是很喜欢塔的,因为必须要什么该死的ie插件,usb key之类的东西就可以支付了。我甚至在linux,手机浏览器上都可以完成支付。冲个话费,付个电费之类都很好。我还是不想失去它的。

No Comments

evernote的gtalk(xmpp)机器人

我在学习的时候习惯用evernote来记录,然后最近在学习rabbitmq。所以决定简单使用一下rabbitmq,我以前搭建过用来同步发布微博的xmpp机器人。所以决定在机器人原来的逻辑基础上增加一个发送到evernote mail的命令。然后中间使用rabbitmq作为消息中间件。
流程是这样的:
xmpp机器人收到消息之后将消息发送到rabbitmq上。
rabbitmq把消息分发给注册上来的处理程序。
处理程序把消息发送邮件到evernote。

中间的好处很明显,如果直接使用机器人发送邮件的话,在他发送邮件的过程中就无法处理接下去的数据了。现在使用rabbitmq之后就不会发生停顿的问题。决定改造一下机器人,发微薄之类的都可以通过rabbitmq中间件来处理。

, ,

No Comments

yuchberry-一个个人的黑莓邮件推送服务

yuchberry-a personal blackberry push mail service

使用yuchberry可以搭建一个个人的黑莓推送服务,这事我知道有几个月了。可是之前用那个cdma/gsm双模8830的时候由于它网络太差导致我都没兴趣在他上面折腾网络应用。便宜贪不得啊。前几天突发奇想把两个坏掉的8700合并成一个,没想到成功了。于是就想着折腾一下yuchberry,也让我用用黑莓的push mail。
黑莓的push mail是于短信系统结合在一块的,邮件收发就与普通短信一样,这是最赞的地方了。

如何搭建一个yuchberry服务器我就不多说了,具体可以到yuchberry的官方网站(http://code.google.com/p/yuchberry)上去看说明。

由于我是在一台debian vps上搭建的服务器与yuchberry的作者在windows上的环境可能有所不同,所以我遇到了收到中文email正常而发送中文email会变成乱码(都是???)的问题。

首先我排除了是黑莓端发送数据到服务器是乱码的问题,因为我在服务器上的签名文件中的中文发出来也是乱码的。所以我把问题定位在服务器上。通过查看yuchberry的源代码,我猜测是由于linux vps上的环境是英语的所以导致发送email之前初始化javamail message时将mail设置成英文编码了。于是修改代码编译运行果然搞定问题。

下面是diff文件。

<br />
Index: fetchEmail.java<br />
===================================================================<br />
--- fetchEmail.java	(revision 469)<br />
+++ fetchEmail.java	(working copy)<br />
@@ -736,7 +736,7 @@<br />
 	<br />
 	public void SendMail(RecvMailAttach _mail)throws Exception{<br />
 		<br />
-		Message msg = new MimeMessage(m_session_send);<br />
+		MimeMessage msg = new MimeMessage(m_session_send);<br />
 		<br />
 		String t_signature = "";<br />
 		<br />
@@ -761,7 +761,6 @@<br />
 				}else{<br />
 					m_sendTransport.connect(m_host_send,m_port_send,m_userName,m_password);<br />
 				}<br />
-				<br />
 				m_sendTransport.sendMessage(msg, msg.getAllRecipients());<br />
 				m_sendTransport.close();<br />
 				break;<br />
@@ -1137,7 +1136,7 @@<br />
 	<br />
 	public void SendImmMail(final String _subject ,final String _contain,final String _from){<br />
 		<br />
-		Message msg = new MimeMessage(m_session_send);<br />
+		MimeMessage msg = new MimeMessage(m_session_send);<br />
 		<br />
 		fetchMail t_mail = new fetchMail(m_mainMgr.m_convertToSimpleChar);<br />
 		t_mail.SetSubject(_subject);<br />
@@ -1496,7 +1495,7 @@<br />
 		return _name;<br />
 	}<br />
 	<br />
-	public void ComposeMessage(Message msg,fetchMail _mail,fetchMail _forwardMail)throws Exception{<br />
+	public void ComposeMessage(MimeMessage msg,fetchMail _mail,fetchMail _forwardMail)throws Exception{<br />
 		<br />
 		msg.setFrom(new InternetAddress(m_strUserNameFull));<br />
 				<br />
@@ -1513,7 +1512,7 @@<br />
 	    }<br />
 		<br />
 <br />
-	    msg.setSubject(_mail.GetSubject());<br />
+	    msg.setSubject(_mail.GetSubject(), "UTF-8");<br />
 	    <br />
 	    MailIndexAttachment t_forwardMailAttach = null;<br />
 	    if(_forwardMail != null){<br />
@@ -1592,7 +1591,7 @@<br />
 	    } else {<br />
 			// If the desired charset is known, you can use<br />
 			// setText(text, charset)<br />
-			msg.setText(_mail.GetContain());<br />
+			msg.setText(_mail.GetContain(), "UTF-8");<br />
 	    }<br />
 <br />
 	    msg.setHeader("X-Mailer",_mail.GetXMailer());<br />

4 Comments

刷新dns缓存

windows上我知道刷新(清除)dns缓存是用
ipconfig /flushdns
命令。

于是我猜测linux应该有清理dns缓存的命令才是正理。凭猜测在命令行上用tab自动补全找了几个命令都不是,google之才知道都是重启init.d中的服务做到的:
/etc/init.d/nscd restart

不过在ubuntu 10.10又有不同,命令是:
/etc/init.d/dns-clean restart

No Comments

在windows 7环境信任一个自签名的https站点

自从公司内部项目管理服务器换成https之后就让我郁闷了。每天在chrome上打开网站都要提示我,如果只是提示也就罢了,关键是还要按一下“proceed anyway”才让我访问。

次数多了也就受不了这样的折腾了,于是花了点时间研究了一下如何信任这个自签名的证书。
最简单的是在IE里面打开该自签名https网站,从地址栏右边的Certificate Error按钮。然后查看这个Certificate。
Certificate Error

为了信任这个Certificate,就需要将它安装到系统中去。在弹出的Certificate窗口中选择Install Certificate即可。
Certificate
install certificate

需要注意的是在Certificate中选择Certificate Store时需要选择Place all Certificates in the following store,在browse中选择”Trusted Root Certification Authorities”。
Trusted Root Certification Authorities

如此在chrome上打开该自签名https网站就不再提示了。

如果愿意折腾的话,还可以通过导出网站的Certificate文件,然后在certmgr.msc中自己导入来实现。
certificate manager

,

No Comments

iOS上的push notification

晚上简单了解了以下iOS(iPhone, iPad, iPod touch)上的push notification机制。

其实平时我说的push notification里面包含了两个东西,一个是local notification,另外一个史push notification。
local notification与push notification除了前者是本地程序发起的,后者是有远程服务器发起的之外,其他的表现形式——对用户来说——都是一样的。他们都是为了程序不再前台运行的时候通知用户的。

local notification是程序使用iOS的API注册一个定时的“通知消息”,到指定时间就会把该“通知消息”推送到屏幕上给用户(如果注册该notification的程序不在前台运行了)。
push notification是程序注册接受消息,然后当iOS从远程服务器接收到该程序的推送消息,再行推送消息到屏幕。

local notification实际上是确定的,push notification则是依赖于远程服务器并且不确定什么时候会有的。

我理解的push notification是这么一个过程,iOS底层始终有一个连接保持与远程notification 服务器的连接。当有消息要推送给用户的时候,远程服务器就在该连接里面发送消息。iOS底层接受到该消息,然后推送到用户屏幕。

No Comments

linode debian vpn 架设VPN的资料

目前用的是购买自linode的一台VPS,安装了debian系统。为了显而易见的原因,我架设了一个私人VPN服务器。

参考了此文:Debian Linux PPTP VPN安装设置(Linode VPS)

我承认我总是会有一些奇怪的做法和需求,比如我在这台debian vps服务器上用ufw管理防火墙的。所以上文提到的iptables上配置转发的方式就无效了。
对于如何在ufw管理的防火墙里面让vpn可以正常使用,我参考了此文:
How to set up a VPN server on Ubuntu

, , ,

No Comments

kindle&Google Reader

以前有一篇blog是记叙如何使用dogear.mobi这个网络服务阅读Google Reader。后来又有一篇blog谈到通过dogear.mobi订阅下来的Google Reader文章中只要少部分是想要看的,然后我选择了instapaper作为替代。

其实如果只是满足google reader中进行筛选然后在kindle上阅读,那么就完全不需要用到instapaper这个服务的。只需要转换一下思维即可,只需要把没一篇想看的Google reader中的文章打上一个特定的标签(比如RL),然后按照kindle阅读google reader中的方法订阅这个标签即可。

按照上述方法做可比使用instapaper舒服多了。使用instapaper需要使用鼠标在bookmark中点击一下instapaper的书签,而在Google Reader中为文章添加一个标签都是用键盘完成的(按’t',输入标签RL,回车。)。我想作为一个Google Reader使用者想必都熟悉如何全键盘浏览吧。

简单介绍一下我常用的按键:
ga 回到全部文章列表。
j 打开下一篇文章。
k 打开上一篇文章。
n 焦点到下一篇文章。
p 焦点到上一篇文章。
o 打开/关闭文章。
f 全屏(浏览器中)。
t 增加标签。
shirt + t 分享。

, ,

No Comments

dns影响itunes下载速度

前几天看了这篇文章下载iTunes电影不要用Google或Open DNS,受了点启发。

我在itunes上下载都是连接vpn之后进行的,主要是速度实在太慢了。一个几十兆的东西可能需要几个小时,而且中间经常会断掉。我就猜想,是不是apple的服务器在国外所以速度很慢,然后我用vpn之后速度很快,这就证明了我的猜想。我也就怡然自得于这个发现,从来没有想过:国内这么多的用户,难道他们都是用vpn的吗?显然绝大多数的普通用户是不可能使用vpn的,那么他们难道都在忍受这样的下载速度,并且经常断掉?

今天我在itunes上下载软件,突然想到上面那篇文章中说的,于是验证一番。果然如是,下面是我使用电信默认dns与使用google dns下用itunes下载的对比。

使用google dns
使用google dns

使用默认dns
使用默认dns

嗯哼,解决了itunes下载速度慢的问题。以后可以不用vpn了。

, ,

2 Comments

使用bit.ly API生成短网址

昨天写了 关于短网址,今天简单介绍以下bit.ly的API使用。

我目前只是需要生成一个短网址,所以只是用了它传入长网址生成短网址的API。实际上bit.ly提供了丰富的API,可以说去到你的短网址各种统计数据与分析数据。 bit.ly API Documentation

我用中文简单描述如何在API传入长网址生成短网址。
1、在bit.ly注册一个用户。可能需要email验证。
2、用你的用户名、密码在bit.ly登录,登录后打开Account Settings页面,找到你的API Key。
3、用HTTP GET请求该URL
http://api.bit.ly/v3/shorten?login=你的用户名&apiKey=你的API KEY&longUrl=长网址&format=json
4、在返回的HTTP数据里面找到你的短网址。

比如你在浏览器里面打开:
http://api.bit.ly/v3/shorten?login=bitlyapidemo&apiKey=R_0da49e0a9118ff35f52f629d2d71bf07&longUrl=http%3A%2F%2Fbetaworks.com%2F&format=json
如果成功就可以获得如下数据:
{
"status_code": 200,
"data": {
"url": "http://bit.ly/cmeH01",
"hash": "cmeH01",
"global_hash": "1YKMfY",
"long_url": "http://betaworks.com/",
"new_hash": 0
},
"status_txt": "OK"
}

呃,需要提供填入可用的用户名和API KEY才行。

No Comments

SetTextSize SetPageWidth