⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00000003.htm

📁 一份很好的linux入门资料
💻 HTM
字号:
<HTML><HEAD>  <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人:&nbsp;wxb1&nbsp;(ben),&nbsp;信区:&nbsp;Linux&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>标&nbsp;&nbsp;题:&nbsp;[4/8]&nbsp;语音、传真、EMAIL的整合&nbsp;<BR>发信站:&nbsp;BBS&nbsp;水木清华站&nbsp;(Fri&nbsp;Jun&nbsp;11&nbsp;14:17:10&nbsp;1999)&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>&nbsp;<BR>以Linux实作&nbsp;语音/传真/EMAIL/BBC&nbsp;整合系统&nbsp;<BR>4.语音、传真、EMAIL的整合&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Linux系统要建立具有语音、传真及EMAIL的各项服务功能,并不困难,&nbsp;<BR>但若都各自独立无法互通,那对讯息的利用,就显得颇为狭隘,无法因时至宜选&nbsp;<BR>择最适合的方式传送或接收讯息,以下即承接先前两篇语音及传真的作法,探讨&nbsp;<BR>语音与EMAIL的互转,及传真与EMAIL的互通。&nbsp;<BR>&nbsp;<BR>语音至EMAIL&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;语音至EMAIL是指在系统中的留言,可根据使用者当初的设定,决定是&nbsp;<BR>否要送出一EMAIL通知他,此EMAIL会将留言转成WAVE档案,以UUENCODE的方式附&nbsp;<BR>加在电子邮递中,使用者收到此信的同时,也可听取对方的语音留言。&nbsp;<BR>留言档案PCM格式转成WAVE格式的档案,可以用一工具程式&quot;sox&quot;来做转换,在此&nbsp;<BR>处用法为:&nbsp;<BR>sox&nbsp;&nbsp;-r&nbsp;7200&nbsp;&nbsp;-b&nbsp;&nbsp;-u&nbsp;&nbsp;voice.pcm&nbsp;&nbsp;voice.wav&nbsp;<BR>其中&nbsp;-r&nbsp;7200&nbsp;是指PCM&nbsp;Raw&nbsp;Data的取样频率为7200次/每秒,-b&nbsp;是指每次取样&nbsp;<BR>是以一个位元组(byte)表示,且为无正负号的表示(-u&nbsp;:&nbsp;unsigned&nbsp;),&nbsp;输&nbsp;<BR>入的档案为&nbsp;voice.pcm,转换後输出的档案为&nbsp;voice.wav。发出EMAIL是用&nbsp;<BR>sendmail,&nbsp;<BR>完整的语音至电子邮递副程式如下:&nbsp;<BR>&nbsp;<BR>Voc2Mail()&nbsp;<BR>{&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;先读取该使用者的设定&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;read&nbsp;userReg&nbsp;&lt;&nbsp;${MAINPATH}conf/$1.reg&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;由第五栏位得知USER的EMAIL&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;email=`echo&nbsp;$userReg&nbsp;|&nbsp;cut&nbsp;-d&quot;,&quot;&nbsp;-f5,5&nbsp;-s`&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;由第十一栏位得知是否要发送EMAIL&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to_email=`echo&nbsp;$userReg&nbsp;|&nbsp;cut&nbsp;-d&quot;,&quot;&nbsp;-f11,11&nbsp;-s`&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;'$to_email'&nbsp;!=&nbsp;'0'&nbsp;];&nbsp;then&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$email&nbsp;];&nbsp;then&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;先将EMAIL的标头及内容写入一暂存档,再由sendmail寄出&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ECHO&nbsp;&nbsp;&quot;From:&nbsp;<A HREF="mailto:fax@ns.fancy.com.tw">fax@ns.fancy.com.tw</A>&nbsp;(VOICE&nbsp;to&nbsp;EMAIL)&quot;&nbsp;&gt;&nbsp;${1}mailv.&nbsp;<BR>txt&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ECHO&nbsp;&nbsp;&quot;Subject:&nbsp;有您的语音讯息&quot;&nbsp;&gt;&gt;&nbsp;${1}mailv.txt&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;加入&nbsp;LF&nbsp;作为标头与内容的分野&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$ECHO&nbsp;&nbsp;&quot;&quot;&nbsp;&gt;&gt;&nbsp;${1}mailv.txt&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;PCM&nbsp;a&nbsp;WAVE&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$SOX&nbsp;-r&nbsp;7200&nbsp;-b&nbsp;-u&nbsp;${MAINPATH}voc/${2}.raw&nbsp;/tmp/${1}voc.wav&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;以UUENCODE编码後加入暂存档&nbsp;<BR>$UUENCODE&nbsp;${1}_voc.wav&nbsp;&lt;&nbsp;/tmp/${1}voc.wav&nbsp;&gt;&gt;&nbsp;${1}mailv.txt&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;sendmail&nbsp;送出EMAIL&nbsp;<BR>/usr/sbin/sendmail&nbsp;$email&nbsp;&lt;&nbsp;${1}mailv.txt&nbsp;<BR>#&nbsp;删除暂存档及已送出的WAVE档&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$RM&nbsp;-f&nbsp;${1}mailv.txt&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$RM&nbsp;-f&nbsp;/tmp/${1}voc.wav&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi&nbsp;<BR>}&nbsp;<BR>&nbsp;<BR>除了将以上副程式加入外,在先前论及&quot;语音数据机录/放音&quot;的程式范例中,尚&nbsp;<BR>未填入的&quot;-------&nbsp;Voice&nbsp;a&nbsp;EMAIL&nbsp;-----&quot;段落中,也需加入以下的呼叫:&nbsp;<BR>&nbsp;<BR>Voc2Mail&nbsp;$UserID&nbsp;$filename&nbsp;<BR>&nbsp;<BR>传真至EMAIL&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;传真至EMAIL与语音至EMAIL类似,也就是将送进系统的传真档案,转成&nbsp;<BR>GIF的图档,以UUENCODE编码後再以EMAIL的形式送给使用者,因此使用者即使没&nbsp;<BR>有传真机,依然可以接收对方的传真。因EFIX软体并未直接支援GIF的档案格式&nbsp;<BR>,所以传真档案格式(tiffg3)要转成GIF档,尚需藉助其他的工具软体:&nbsp;<BR>PBMPLUS,PBMPLUS是一组处理各式图档转换的程式,这里仅用到其中两个程式,&nbsp;<BR>其转换流成为:&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TIFFG3&nbsp;-(efix)a&nbsp;PGM&nbsp;-(pgmtoppm)a&nbsp;PPM&nbsp;-(ppmtogif)a&nbsp;GIF&nbsp;<BR>&nbsp;<BR>完整的传真至电子邮递副程式如下:&nbsp;<BR>&nbsp;<BR>Fax2Mail()&nbsp;<BR>{&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;先读取该使用者的设定&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;read&nbsp;userReg&nbsp;&lt;&nbsp;${MAINPATH}conf/$1.reg&nbsp;<BR>#&nbsp;由第五栏位得知USER的EMAIL&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;email=`$ECHO&nbsp;$userReg&nbsp;|&nbsp;cut&nbsp;-d&quot;,&quot;&nbsp;-f5,5&nbsp;-s`&nbsp;<BR>&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;由第十一栏位得知是否要发送EMAIL&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to_email=`$ECHO&nbsp;$userReg&nbsp;|&nbsp;cut&nbsp;-d&quot;,&quot;&nbsp;-f10,10&nbsp;-s`&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;'$to_email'&nbsp;!=&nbsp;'0'&nbsp;];&nbsp;then&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;[&nbsp;$email&nbsp;];&nbsp;then&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;传真可能不只一页,找出每页档案&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;faxfiles=`$FIND&nbsp;${MAINPA辉荽娴抵校

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -