Mediation
文章平均质量分 54
yui
这个作者很懒,什么都没留下…
展开
-
Destroy, to be continue (2010-6-30)
<br />基于BER编码的CDR解码程序——destroy,已经于2010年6月底正式发布了1.0版本。在我看来,目前的destroy还显得很稚嫩,还有许多可以改进和值得改进的地方。以下简单列出其未来的开发要点,由于该项目都是在业余时间进行的,开发进度容易受本职工作所影响,但是,如果时间允许,我觉得将来的destroy在功能上,是十分令人期待的。<br /> <br />1. 批量处理。Destroy 1.0每执行一次,只能解码一个文件,希望不久的将来,能够识别正则表达式,实现批量处理<br />原创 2010-06-30 21:54:00 · 874 阅读 · 0 评论 -
NSN HLR simulator for provisioning in expect
<br />电信设备中,HLR(Home Location Register)是非常昂贵的,通常不会有为provisioning开发而准备的HLR。因此,我们需要一个模拟器,能够简单地应答客户端发送过来的HLR指令。Expect是Unix/Linux下自动处理人机交互指令的脚步语言,用它来写一个HLR模拟器就最合适不过了。<br /> <br />一个最简单的NSN HLR模拟器是这样的,它可以<br />1. 模拟登录和退出<br />2. 模拟执行ZM开头的NSN HLR指令并回复“COMMAND EX原创 2011-03-12 16:36:00 · 3455 阅读 · 0 评论 -
Shell编程关于Sha-Bang(#!)的Q & A
<br />Q. #!的名字为什么叫Sha-Bang?<br /><br /> A. Sha-Bang是Sharp和Bang的组合词。Sharp for #, Bang for ! 类似的情况是,C#通常被称为C Sharp<br /><br /><br /> Q. Sha-Bang(#!)是不是注释?<br /><br /> A. 不是注释。Sha-Bang(#!)所在行的作用是告知该脚本使用的是哪种命令解释器,并不是可有可无的。虽然很多情况下省略了Sha-Bang(#!)仍然能够运行脚本,这是由于原创 2011-01-12 18:36:00 · 3379 阅读 · 1 评论 -
POP3 + IMAP + CURL
<br />呵呵,话题有点敏感,只截几幅图,不解释。<br /> <br />POP3: telnet pop3.163.com 110<br /> <br /><br /> <br /><br /> <br /> <br />IMAP: telnet imap.163.com 143<br /> <br /><br /> <br /><br /> <br /><br /> <br />使用越来越强大的CURL命令,实现同样的功能:<br /> <br /><br /> <br />CURL + POP3,原创 2010-12-24 23:36:00 · 5554 阅读 · 2 评论 -
uuencode + uudecode + base64
基于安全理由,公司封闭了我个人的e-mail账户对外的收发功能,以后在公司往自己的邮箱发一些有价值的东西就麻烦一些了,如果,个人PC的外网web mail/smtp/pop3连接也断了就更是雪上加霜了。呵呵,不过,我暂时还是有办法应对的。公司有几台unix服务器是随时要监控作业运行状况的,如果发现出了点问题就通过e-mail通知相关负责人。幸好,目前其连接状况还是对外开放的,也就是说,在服务器上还是可以通过mailx发邮件到我自己的邮箱的。不带附件的邮件可以这样发:cat readme | mailx -s原创 2010-09-19 13:54:00 · 2645 阅读 · 0 评论 -
ftp获取文件列表的脚本
<br />GGSNID=ggsn04 SERVER=192.168.1.1 userid=user passwd=password WPATH=/var/log/ggsn ftp -n $SERVER << _END >> $GGSNID.log quote USER $userid quote PASS $passwd bin cd $WPATH ls quit _END原创 2010-09-14 18:10:00 · 1391 阅读 · 0 评论 -
Destroy and NoSQL (2010-09-02)
最近刚刚接触NoSQL的概念,其实是连门都没入啦,只不过是为destroy吸收一些思想的火花,有点发现就马上记下来,以免事情太多,过几天就忘记了。 据百度,NoSQL就是非关系型数据库的统称。 我认为,NoSQL的最大特点,是海量数据的键/值存储,正好与设计中的destroy不谋而合。 NoSQL通过对数据的键值进行散列运算,把数据分散映射到各个数据分区上去,而设计中的destroy,则对其索引记录的键值进行散列,通过索引记录找到数据,可以说非常相似。 还有,NoSQL的一条记录可以有任意个列,而且原创 2010-09-02 18:55:00 · 868 阅读 · 0 评论 -
sample of spool & sqlldr
<br />平时工作中,spool和sqlldr用得少,显得有点生疏,上次没保存使用过程,这次找不到样本,囧!好不容易才搞出来,马上记下来吧。<br /> <br />spool导出<br /> <br />#! /bin/ksh sqlplus -S user/password >/dev/null<<!EOD set heading off set feedback off set echo off set pagesize 0 set linesize 200 spool ipad_im原创 2010-09-10 12:19:00 · 972 阅读 · 0 评论 -
一个稍微复杂的awk & sed应用
<br />最近做了一个文本CDR转换器,从A样式转换为B样式,如下所示。<br /> <br />A样式<br /><br />RECORD #input_id 1282892739x001_0011058 #output_id #input_type GGSNPDPRecord #output_type GGSNPDPRecord #addkey #source_id ggsn01 #filename ggsn01_20100827121321_13251 F recordType 13原创 2010-08-27 23:44:00 · 1475 阅读 · 0 评论 -
destroy长远开发计划(2010-08-22)
<br />近期主要研究了一下XML、SOAP和Web service,目的是为了destroy,不仅是一个单机版的程序,还要成为网络版的应用。跨越平台、跨越开发语言的障碍,现阶段看,Web service是一个不错的选择。<br /> <br />以下是在前一版本的开发计划的基础上修改的新版本。<br /> <br />基于BER编码的CDR解码程序——destroy,已经于2010年6月底正式发布了1.0版本。在我看来,目前的destroy还显得很稚嫩,还有许多可以改进和值得改进的地方。以下简单列出其未原创 2010-08-22 17:42:00 · 852 阅读 · 0 评论 -
一个没有索引引起的问题
这个案例说来也很简单。话说我们公司旧版本的mediation系统每天都需要从各个network element(NE)的服务器上采集CDR,采集程序一般都是用expect写的,其实就是ftp到对方的机器上拷贝文件过来。NE里的CDR一般不会轻易做house keep,这就要求我们的采集程序自己能够辨认哪些文件已经下载过,否则的话,全部下载过来处理,客户就要被重复计费了。因此,在本地数据库中,有一个原创 2010-05-28 21:56:00 · 950 阅读 · 0 评论 -
发布一个基于BER编码的CDR文件高速解码程序——destroy
<br />主要功能:理论上,该程序可以解码任何基于BER编码的CDR文件。不过,由于我在工作中只接触到Ericsson的某些版本的CDR,而且,用于解析CDR文件的描述文件来源于供应商,我的程序也只能识别来自于这个供应商的描述文件,所以,移植到其它厂商的环境下可能会产生一些问题。希望大家试用过后能够把各种情况反馈给我,最好能够把BER编码的CDR样本及其描述文件发给我,这样我就能够作为依据,完善这个程序了。<br /> <br />主要特点:高速!该程序比目前我在网上见到过的所有能够使用的同类型程序都要快原创 2010-06-29 21:09:00 · 2365 阅读 · 2 评论 -
使用curl提交SOAP请求
最近的项目,需要研究一下libcurl提交XML请求,顺便也用curl测试了一下SOAP请求。以下给出三种案例,方便以后查询。 1. curl提交无需认证的SOAP请求 这个案例使用webxml.com.cn的中国股票Web Service服务,SOAP消息和执行命令如下: sh600000原创 2011-01-26 18:45:00 · 21413 阅读 · 3 评论