通話時間異常的自動檢查

更新於 發佈於 閱讀時間約 8 分鐘

1.    問題:

1.1一般公司電話總機,當分機對外通話時間過久之異常發生時,每個月將會有過高的電話費用支出。若沒有人負責抓出異常通話之紀錄明細,使用者將無意識,無限制地任意使用電話,可能還會持續發生,致浪費公司電話費用

1.2欲防止異常事件發生,需指派人員對每一分機,逐一手動查看明細,抓出異常的分機與異常的通話日期時間之資料內容,如此將花費工時,且人為作業可能會有錯誤疏忽之現象發生

 

 2. 改善:

2.1 利用總機每日外線通話紀錄所產出之紀錄檔案,一筆一筆抓出,並加以判斷是否異常,若有意常發生,將擷取該筆資料明細出力之

2.2 擷取出力之異常資料,以便提供給相關管理者,

2.3 設計撰寫執行檔,功能為讀取上述總機每日產出之記錄檔,檢查是否有異常資料發生,若有時,隨即自動寄出警告email 給電話相關管理者,可以依此告知通話當事者,及其所屬主管,要求提出說明,防範異常通話事件再發。

2.4執行檔完成後,設定job自動執行排程,讓它可以每日自動執行,自動檢查通話紀錄明細是否有存在異常資料。

 

3.方法:

  3.1 設計執行檔,讀取判斷電話記錄檔目錄是否存在?

         取得昨日一天之電話記錄明細 

  3.2 記錄檔內明細一筆一筆抓取通話時間,判斷條件如下:

   *大於 23:59:59 :表示資料內容欄位格式錯誤

   *大於 00:29:59 :表示通話時間大於30分鐘,定義為異常通話時間

  3.3 判斷異常發生時,執行自動寄出email,自動寄信所需之參數檔,於Bat內依據當時執行狀況作成

  3.4 執行檔測試OK後,設定Windows自動排程作業如下:

          *觸發程序:每日AM 4:00 執行

          *動作:執行本例之bat執行檔

  

4. 預估效果

* 每日自動檢查,若有通話時間超過,自動寄出mail通知擔當

*異常通話之分機,時日等訊息,通知相關人員,可以發揮告誡功能,抑制再發,進而降低經費支出

*可以提高電話事務工作效率,控管電話預算費用

*可以提高各單位人員工作效率,尤其是夜間勤務時段 (夜間通話時間可有效約束管理)

 

  5. 範例:

    5.1 讀取昨日通話紀錄所產出之檔案

          * 記錄檔 為一天一個txt檔,例如20240301.txt的部分資料如下:


2024/03/01,09:41:00,2202,,,,,中華電信,系統新增,2202,I<7561261,00:00:56,, 0.00,外線來電,撥入電話
2024/03/01,09:41:00,5211,,,,,中華電信,系統新增,5211,I<07800,00:00:41,, 0.00,外線來電,撥入電話
2024/03/01,09:41:00,5223,,,,,中華電信,系統新增,5223,I<08,00:00:40,, 0.00,外線來電,撥入電話
2024/03/01,09:40:00,7301,,,,,中華電信,系統新增,7301,0913571569,00:02:28,, 12.74,遠傳電信 2G,行動電話
2024/03/01,09:42:00,2237, , , ,,中華電信,系統新增,2237,02238800112745,00:00:24,, 1.60,大台北地區,國內長途
2024/03/01,09:37:00,7314,,,,,中華電信,系統新增,7314,I<0423586643,00:06:26,, 0.00,外線來電,撥入電話
2024/03/01,09:42:00,3534,,,,,中華電信,系統新增,3534,I<80,00:01:18,, 0.00,外線來電,撥入電話
2024/03/01,09:42:00,1237,,,,,中華電信,系統新增,1237,0287916688833,00:01:39,, 1.60,大台北地區,國內長途
2024/03/01,09:45:00,5223,,,,,中華電信,系統新增,5223,049232529942,00:00:25,, 1.60,南投地區,國內長途
2024/03/01,09:45:00,7314,,,,,中華電信,系統新增,7314,I<0900,00:01:41,, 0.00,外線來電,撥入電話
....
.....


  5.2 bat 設計內容如下

echo off
rem ---net use O: 192.168.xx.231 for getting daily TEL detail data -----
if not exist O: (
net use O: \\192.168.xx.231\Trunk /user:192.168.xx.231\honda /yes /persistent:NO
)
rem --- get preday by prevday.vbs ------
D:
cd D:\xxx-IT\TEL_find
CScript /b prevday.vbs 1
set PREVD=%errorlevel%

rem set /a Today = %date:~0,4%%date:~5,2%%date:~8,2%

rem --- 前日CSV file 存在? -------
if not EXIST O:\SMDR_304TF_01\CSV\%PREVD%.txt (
type mail_par.txt > mail_par_WK.txt
echo 0,[ 警告信 ] 電話計費系統找無記錄檔,需調查-- sent >> mail_par.txt
echo 4, ### ERROR 找無 計費系統記錄檔 %PREVD%.txt , 需確認 >> mail_par.txt
CAll xxx_mail_ReadF.exe
type mail_par_WK.txt > mail_par.txt
goto :EOF)

rem --- find 前一日紀錄file 內容 ----
set G30=N
type mail_par.txt > mail_par_WK.txt

rem --- 1.find /V "I<" --只取外線 OR 2.find "." ---內外線全取
rem --- 超過29:59分 的選出---
For /f "skip=2 tokens=1-3,7,8* delims=," %%A in ('find "." "O:\SMDR_304TF_01\CSV\%PREVD%.txt" ') do (
if %%E GTR 23:59:59 (
set G30=Y
echo 4, ### ERROR formate---%%A %%B 分機:%%C 時間:%%E 外線:%%D %%F >> mail_par.txt
) else (
if %%E GTR 00:29:59 (
set G30=Y
echo 4, %%A %%B 分機:%%C 時間:%%E 外線:%%D %%F >> mail_par.txt ) )
)

if %G30% == Y (
CAll xxx_mail_ReadF.exe
type mail_par_WK.txt > mail_par.txt )
echo check %PREVD%.txt result= %G30% --
rem pause ---job end --
:EOF
raw-image

--------------recorded by linct----------------

avatar-img
62會員
154內容數
樂趣體驗紀錄,沙龍房間有歌唱,生活,科技
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
linct的沙龍 的其他內容
資料庫之備份工作大都是自動執行,但是執行結果是否成功,需要安排人員去檢查,有時疏忽忘記確認作業,致備份工作失敗仍不知道,等到有一天需要回復舊有資料的場合時,才發現找不到過去某段期間的備份資料,造成無法彌補之後果。   2.    改善: 2.1 設計一執行檔,功能為打開備
新系統建構時,可考慮採購建置VM機器,DB機器,備份機器以及網路設備等硬體機器。
設計程式來讀取欲傳送訊息之參數txt檔案,再利用程式自動傳出訊息至LINE群組。能簡易使用於任何場合。
欲傳送之內容,由使用者輸入於文字檔內,執行本執行檔後,指定之LINE群組全員,將會收到推播訊息
上回說明的手動下指令,傳出訊息。為了節省手動輸入之動作,將欲執行的curl指令內容,事先作成執行檔。當需要傳送訊息時,只要按兩下執行檔,便可立刻傳出訊息至LINE群組內之全員 2. 說明 2.1 因每次要傳送內容不同,將這些會變動的訊息資料,輸入後保存 於bat執行檔內
如何將LINE訊息自動傳出,利用curl工具
資料庫之備份工作大都是自動執行,但是執行結果是否成功,需要安排人員去檢查,有時疏忽忘記確認作業,致備份工作失敗仍不知道,等到有一天需要回復舊有資料的場合時,才發現找不到過去某段期間的備份資料,造成無法彌補之後果。   2.    改善: 2.1 設計一執行檔,功能為打開備
新系統建構時,可考慮採購建置VM機器,DB機器,備份機器以及網路設備等硬體機器。
設計程式來讀取欲傳送訊息之參數txt檔案,再利用程式自動傳出訊息至LINE群組。能簡易使用於任何場合。
欲傳送之內容,由使用者輸入於文字檔內,執行本執行檔後,指定之LINE群組全員,將會收到推播訊息
上回說明的手動下指令,傳出訊息。為了節省手動輸入之動作,將欲執行的curl指令內容,事先作成執行檔。當需要傳送訊息時,只要按兩下執行檔,便可立刻傳出訊息至LINE群組內之全員 2. 說明 2.1 因每次要傳送內容不同,將這些會變動的訊息資料,輸入後保存 於bat執行檔內
如何將LINE訊息自動傳出,利用curl工具
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
#幫我找找我的手機 假日、放假盡量 #減少滑手機的時間,
最近結束了一個走失溝通的案子,忍不住上來紀錄一下。 其實原本是不開放接這類型的案子,一方面通常都又急又快很常在深夜發生(精神渙散時段),另一方面是溝通師以擔任溝通聯繫的角色進行協助搜尋,而非能直接影響結果,若是搜尋不如人意的時候,我會比主人更加難受。
Thumbnail
像是手機的提醒、電子郵件通知、他人的催促...比方說什麼東西很急要趕快給他(但實際上根本不急),這樣的時常在回應別人需求,很容易讓自己應該完成的任務被耽擱;或者是被會議將每天可運用的時間切割得很零碎。
Thumbnail
在網路速度有限的情況下,依序記錄不斷產生的資訊,能統計使用者在頁面上操作了哪些功能。
像我這種會打了又刪、刪了再改、改了再重打的人.... 很容易把轉過頭說一句話的時間,硬生生拉長為十分鐘。
Thumbnail
題目敘述 題目會給我們一個定義好的類別和function介面,要求我們實作建構子和ping() function來滿足指定的需求。 RecentCounter類別的建構子 建構子應該初始化來電紀錄,內容為空(零筆資料) int ping(int t) t代表來電時刻,單位是毫秒m
Thumbnail
在這篇文章中,描述了遭受到連續的咆哮、騷擾事件,並已經尋求專業人士協助。文章中透過時間點經過的整理,清楚呈現了事件的詳細情況。
今日到機關辦理事務,輪到我時,我的櫃檯服務人員A被隔壁人員的cue去協助處理她客戶C的手機內資訊,然後一陣子回來繼續服務我。 幾分鐘後,聽見……(稍稍省字 C小姐:我要找妳們主管,剛才那個誰怎麼可以說,手機不會用叫我回去問小孩? B櫃台:安撫C小姐 A櫃台:立刻站起去道歉,說:對不起,我錯了
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
#幫我找找我的手機 假日、放假盡量 #減少滑手機的時間,
最近結束了一個走失溝通的案子,忍不住上來紀錄一下。 其實原本是不開放接這類型的案子,一方面通常都又急又快很常在深夜發生(精神渙散時段),另一方面是溝通師以擔任溝通聯繫的角色進行協助搜尋,而非能直接影響結果,若是搜尋不如人意的時候,我會比主人更加難受。
Thumbnail
像是手機的提醒、電子郵件通知、他人的催促...比方說什麼東西很急要趕快給他(但實際上根本不急),這樣的時常在回應別人需求,很容易讓自己應該完成的任務被耽擱;或者是被會議將每天可運用的時間切割得很零碎。
Thumbnail
在網路速度有限的情況下,依序記錄不斷產生的資訊,能統計使用者在頁面上操作了哪些功能。
像我這種會打了又刪、刪了再改、改了再重打的人.... 很容易把轉過頭說一句話的時間,硬生生拉長為十分鐘。
Thumbnail
題目敘述 題目會給我們一個定義好的類別和function介面,要求我們實作建構子和ping() function來滿足指定的需求。 RecentCounter類別的建構子 建構子應該初始化來電紀錄,內容為空(零筆資料) int ping(int t) t代表來電時刻,單位是毫秒m
Thumbnail
在這篇文章中,描述了遭受到連續的咆哮、騷擾事件,並已經尋求專業人士協助。文章中透過時間點經過的整理,清楚呈現了事件的詳細情況。
今日到機關辦理事務,輪到我時,我的櫃檯服務人員A被隔壁人員的cue去協助處理她客戶C的手機內資訊,然後一陣子回來繼續服務我。 幾分鐘後,聽見……(稍稍省字 C小姐:我要找妳們主管,剛才那個誰怎麼可以說,手機不會用叫我回去問小孩? B櫃台:安撫C小姐 A櫃台:立刻站起去道歉,說:對不起,我錯了