呼叫系统软电话eyebeam/x-lite使用
近期为公司客服人员开发了一套呼叫系统,嫁接OA系统实现快速、随时随地登陆系统呼叫客户。
- 硬件基于上海迅时OM80E
- 呼叫系统自行开发(当前仅开发了外呼、录音等核心功能,后期逐步完善语音导航菜单、呼入及公司账号、单一OM多应用公用等等)
- 软电话使用eyebeam
- 外网访问可选择内网穿透或公网IP(穿透需局域网录音脚本上传服务器,公网可即时回放通话录音)
近期为公司客服人员开发了一套呼叫系统,嫁接OA系统实现快速、随时随地登陆系统呼叫客户。
*{
-webkit-tap-highlight-color: rgba(255,0,0,0);
-webkit-appearance:none;
}
//在样式里面加个这个就会没有蓝色的区域
bootstrap点击阴影模态框不消失
data-backdrop="static"
$("#myModal").modal({backdrop:'static',keyboard:false});
时常我们在写炫酷页面的时候想要用一种更个性的字体,无奈汉字那么多,对于移动端每一个动辄2M的字体文件引入都是灾难性的。
字蛛是一个中文字体压缩器,让网页自由引入中文字体成为可能。官网:http://font-spider.org/
git config --global user.name "hitortoise"
git config --global user.email "yzhsh89@126.com"
ssh-keygen -t rsa -C"yzhsh89@126.com"
vim ~/.ssh/authorized_keys
git init --bare sample.git
chown -R git:git sample.git
git clone git@server:/srv/sample.git
git config --global core.quotepath false
最近所做读书小程序中需从千万条数据中随机抽取一条名言语录展示,常规的select * from famous order by RAND() LIMIT 1;
,缺少索引及全表扫描,速度异常慢。SELECT * FROM
famous AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM
famous)-(SELECT MIN(id) FROM
famous))+(SELECT MIN(id) FROM
famous)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1;
时常用date("Y-m-d",strtotime("-1 month"))
获取上个月的日期,其实它并不靠谱。
如当前日期未3月3,则:var_dump(date("Y-m-d", strtotime("-1 month", strtotime("2018-03-31"))));
得到的结果并非2018-02-28而是2018-03-03
正确的方式之一是添加last day of
first day of
:var_dump(date("Y-m-d", strtotime("last day of -1 month", strtotime("2017-03-31"))));
<?php
$base64_url = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAA5CAYAAACMGIOFAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkNFN0E3M0I0Mjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkNFN0E3M0I1Mjc4NDExRTU5RkYxQjg1Rjk2QkEyNzBEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Q0U3QTczQjIyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Q0U3QTczQjMyNzg0MTFFNTlGRjFCODVGOTZCQTI3MEQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6o6V5PAAADu0lEQVR42uyaTUgVURTHm/cigiS1LEitoHoqbgtcZAStngtDoYxa9rFsYYuWfUBhuSjCneiylkH2oavoEZlC4aYsM9toakWLnpsWyfQfOMJrOvdjZs6bedQc+OF7d9499/y9M/fj3HFc110Xo3WAYfp8BozG0agTs8hFsIM+L4H6f1GkvzEnjkYz6/4DS0WmIlORSlsq+bxcKSI3gkHwBlwSGA3PkrjPNE+GnhXAZYprkOLUjOmYQjT0un/aMHAMdcqNQ3GUWq+ujqknt/i+nwZDcc1vih4cojh0cQbqyQaw4P5tSfQo14OezYNGXV0b5zly5Le+mEX2KQTmTHVtl3U58BQ0lpQtgJ2Gei2gE7SDVrANVIMf4Bt4B56Dh+C9wdc80/4RMGteTNr/J/09+lhzW3WBCTeYTVA91WPwKGgPBrldS9kFBkA/qGOuN4FnbjTz6jczvuuoXa/93UHilnxmjoMVV8ZWyJ9IbFICz4FVV9ZWyW9FiDwGfmmCnQIXQBuoBxvobxuVT2nqen57khbpPYNFRYBzoNtiPnXod3MKP0VqJxGRjmaQGQXVAf1VUz3VYOQkIbJLEdADkA3pM0v1OetKQuQ4E8gHUBXxEfDqzzC+x+MW2aL4b+eFRuu8wn9LGH9hN82dTNlrMCa02xgjf347GmdmoJ0puyu8rbrHlB2MU2QrUzYuLLJg2a6VyA7KbLsMi3Tdb9sVuwRJ+2TZrjF+b+4pTd2rkk/1hky4Z+vBapkz7lzW3Ri/ze3KpTqKTNlmYYG1TNlKmJRJpiSDxpkqq/aVKdsrLHIPU/ZFkwFUxu/dYk8M3c3ZNNjnKzsEXgmKPKxo12/G+MOOri+YslPCPXnSst2yTSEjTNkBkBcSmCd/Nu1aDF/hl15cDmdGYO26SXrtGuUs5AZT1kQrn2xIn1la6TQx1/rDT0TR9pMFxUL6fogeraJ6nBWS2k+uZQZUyauPtOO38dNNv1cltZqTzvH0WOZ49oMaqlND321yPCfSbF2ad5UXufaMFiIKLER9BqOK9Ea4m2CZEk61mrOQyYDiJjUpzFpqb5nad8olkjsfvG6RC7oIRsBsSY62SN9H6Lopd3MtyvmorcCM4gD0dkxnk7eiHARHEWg84RWkUXPinZEQeSXsCa8wOYXQqxIi31aAQN3R/rTEAv1lqCNs3taSTqoEmclmqf2FIFlCm3cGvBeBzoOt4I7vraqgJvW+awPF9B0MgJ9RRZYz+5a+75qKTEWmIstuFfm+q7RJve8ayH4LMACaxEJEaXs23AAAAABJRU5ErkJggg==';
preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_url, $result);
$type = $result[2];
$base64_body = substr(strstr($base64_url,','),1);
$img = base64_decode($base64_body);
$file_name_ok = md5(time()).".".$type;
file_put_contents($file_name_ok, $img);