最近BTC和LTC很火啊。。但我又没有时间关注它,所以就写了个脚本,利用macosx 的notification来提醒。其实有很多办法,比如chrome的桌面提醒等。windows的messmage,邮件都OK
我这个只是最简单的版本,花了5分钟写完。。用了一些技术:
1、php
2、crontab
3、terminal-notifier (这个是ruby的,在mac下面安装也很简单,直接brew install terminal-notifier 就OK了)
上代码:
PHP代码
- if (count($argv) == 1) {
- echo "\nUse age:\n\n";
- echo "php okcoin.php --ltc=100 --btc=500 \n\n";
- echo "--ltc 代表参数,ltc和btc不分顺序\n\n";
- exit;
- }
- array_shift($argv);
- $params = array();
- foreach ($argv as $val) {
- if (strncasecmp($val, "--", 2) === 0) {
- $p = explode("=", substr($val, 2));
- if (!isset($p[1])) {
- continue;
- }
- $params[trim($p[0])] = trim($p[1]);
- }
- }
- if(!$params){
- exit("参数不正确");
- }
- $api = "https://www.okcoin.com/ticker.do?random=" . rand(1, 9);
- $data = @json_decode(file_get_contents($api), true);
- $warning = array(
- 'btc' => 5000,
- 'ltc' => 150,
- );
- if ($data) { //证明是正常数据
- $btcLast = $data['btcLast'];
- $ltcLast = $data['ltcLast'];
- if (isset($params['btc']) && $btcLast <= $params['btc']) {
- exec("terminal-notifier -message '关注一下BTC,价格在指定价位附近了' -title 'BTC 警告'");
- }
- if (isset($params['ltc']) && $ltcLast <= $params['ltc']) {
- exec("terminal-notifier -message '关注一下LTC,价格在指定价位附近了' -title 'LTC 警告'");
- }
- }
- exit;