作者:京東物流 盧旭
什么是RPA
RPA全稱是機器人流程自動化(Robotic Process Automation),是一種利用軟件機器人實現自動化業務過程的技術;RPA系統通過模仿用戶在電腦、手機等智能設備上的手動操作方式,在無需改變現有IT系統或應用程序代碼的情況下,提供了一種新的自動化業務流程的方法。
有什么優勢,解決什么問題
?降低成本:RPA可完成基于流程化的重復性工作,將人從每日的重復工作中解放出來,準確高效地實現業務流程自動化;同時,可無人值守,讓大家專注于價值更高和創造性的任務。也將提高員工滿意度;
?速度更快,效率更高:機器人的工作速度比人類更快,更靈活,可定時工作,可7*24工作;它們使您的業務流程更加高效;消除人為誤差;
?非侵入式技術:RPA 不需要大量資源來整合多個應用程序,它不需要更換現有的 IT 系統。它很容易適應公司不同部門的 IT 系統;
?改善客服服務:機器人全天候服務,能更快地解決客戶的疑問,從而提高服務質量和整體客戶滿意度;
?模擬人機交互:可完成獲取屏幕上的內容,理解屏幕上的內容,編輯屏幕上的內容,從而進行更智能的交互。
RPA不僅解決了人力成本、效率、準確性等問題,還為企業數字化轉型提供了有力支持。通過RPA的實施,公司可以更加專注于核心業務的發展,提升整體運營效率和競爭力。同時,RPA產品還具備強大的可擴展性和可定制性,能夠滿足不同的個性化需求。
常見RPA應用領域
?企微私域運營:獲取消息、發送消息、回復消息、群管理、建群、拉人、踢人、加好友、識別垃圾消息等等;
?人力資源:需要處理和管理大量數據,并詳細記錄組織內每位員工的情況。RPA 工具可以自動計算福利、存儲文件、審核工時表、管理入職等,從而提高人力資源部門員工的工作效率;
?數據分析:RPA 有收集和分析數據的能力。自動化工具可以收集有關問題、成本、效率、生產力等任何方面的數據。這是企業發現改進領域和監控績效的好方法。畢竟,數據是戰略決策的關鍵;
?采購業務:采購團隊通常要花費大量時間執行行政任務,這也是RPA可以應用的領域;它能夠簡化運營、降低人員成本并增加服務價值。發票處理和請購單審批只是使用自動化工具可以實現自動化的部分任務;
?電商領域應用場景:AI智能客服,評論回復,營銷推廣,商品訂單,物流倉儲,財務運營等;
?其它應用場景:財務、政務、銀行、保險、物流等領域應用也很廣泛。
私域業務場景
?2023年初,物流火種項目-私域啟動,對于如何運營私域是一個問題,如何通過私域支持快遞業務和其它業務;在業務發展中也有很多痛點;如何快速建群?如何給群發消息?如何運營這些群?如何保證ROI?如何達成結果目標?隨著群發展到數十萬,群粉絲規模達到數百萬,難以避免群內不產生非法消息和不合規消息,如何管理也是一個問題?基于業務需求和已知問題,我們調研了很多方案,最終決定主要依靠自研,才能更快更穩更好的滿足業務需求;隨著業務需求的增多,產品需求的完善,整體系統也逐漸成熟。后面將從業務架構和基本原理大致介紹我們的解決方案。
業務架構流程
?SCRM系統從業務架構上主要包括:SCRM后臺運營系統、后臺服務的指令服務和AI服務、機器人平臺、企微助手、微信小程序等,如下圖所求;運營同學在SCRM后臺進行日常運營,配置各種任務,通過后臺服務計算生成具體指令下達到企微小助手;企微小助手解析指令,不同指令執行不同操作,將消息發送到企微群里或個人,或將企微上獲取的數據上傳到后臺服務;C用戶打開鏈接到微信小程序,用戶在微信小程序也會觸發一些指令(如建群),此時調用后臺服務接口生成相關指令,然后再執行。
?經過不斷的發展,目前服務全國數十萬個社群,管理數百萬用戶粉絲,產生數十萬的訂單,每天處理數百萬條消息,消息準確觸達率99.6%以上;面向社群的RPA主要功能包括:微信群發消息、建群、改群名、獲取群碼、加好友、刪好友、群管理功能,其中消息類型包括:純文本、圖文、小程序卡片等,群管理功能包括拉人、踢人、群管理員、智能識別非法信息及警告回復等;覆蓋業務場景從拉新、裂變、入群、促活、交易下單、風險監測等整個生命周期,將粉絲沉淀到私域,從私域中獲取利益產生訂單。目前只需要3人左右就能滿足運營,簡單重復的工作都由RPA完成。
技術架構簡介
?業務APP:企微小助手,我們可以基于通用組件和基礎服務實現其它小助手的功能
?業務組件:企微監控服務包括定時服務、監控消息、解析消息、建群、獲取群碼、群管理、拉人踢人等,大部分服務與遠程指令服務功能一一對應,如發送消息、回復消息、群管理、拉人踢人、建群、獲取群碼;
?基礎服務:無障礙解析服務包括解析節點、解析登錄、解析窗口、執行點擊、進退頁面、解析滾動、權限處理等;網絡服務包括基礎庫封裝、日志攔截、版本管理等;日志服務包括日志打印,日志存儲,日志分析,日志上傳等。對于安卓無障礙服務基本原理,將在后面介紹。
無障礙服務基本原理
?安卓無障礙功能實現的主要構成 , 可以分為以下三個部分:輔助的小助手APP、被輔助的企微APP和系統服務AccessibilityManagerService,三者關系如下圖所示,小助手APP不需要直接跟被輔助的APP通信,而是通過SystemService中轉通信,如下圖所示:
?無障礙事件執行流程,主要分為以下幾個關鍵步驟:
?獲取操作節點AccessibilityNodeInfo
?執行操作事件:通過AccessibilityNodeInfo.performAction執行,通過無障礙服務(AccessibilityService)中的方法如 getRootInActiveWindow() 獲取當前界面布局,然后使用 findAccessibilityNodeInfosByText 或 findAccessibilityNodeInfosByViewId 等方法進行過濾和定位。事件傳遞給到對應的Activity。
?事件傳遞分發給給具體View:事件到達Activity,Activity會進一步進行事件分發到PhoneWindow,再分發到具體的View;與普通模式下的事件分發類似,無障礙事件分發也依賴于三個重要方法:
?dispatchHoverEvent(MotionEvent event):用來進行事件的分發,返回值取決于當前View的onHoverEvent()方法和子View的dispatchHoverEvent()方法的影響。
?onInterceptHoverEvent(MotionEvent event):僅ViewGroup擁有的方法,用來判斷是否攔截某個事件。
?onHoverEvent(MotionEvent event):在dispatchHoverEvent()方法中進行調用,用來處理hover事件。
?最終無障礙事件的執行:經過上述分發過程后,最終的無障礙事件會被傳遞給具體的View進行處理;performAction 方法返回一個布爾值,表示操作是否成功執行。成功執行通常返回 true,否則返回 false;
總體來說,無障礙事件執行流程主要包括獲取操作節點、執行操作事件、事件傳遞分發給給具體View以及最終執行和結果等步驟。這一流程確保了無障礙服務能夠準確地捕獲和處理用戶的輸入事件,從而提供有效的輔助功能。主要流程圖如下:
?安卓輔助功能服務Accessibility Service的基本原理流程:AccessibilityService是Android系統提供給的一種服務,繼承系統Service類;運行在后臺并監聽系統發出的事件;大致系統原理如下:
?服務啟動與注冊:
?當Android系統啟動時,會啟動大量系統服務,其中就包括AccessibilityManagerService(AMS)。
?AMS在創建時會注冊一些系統廣播,如應用狀態變化廣播PackageMonitor。當有應用安裝、卸載或更新時,PackageMonitor會收到廣播。
?AMS會獲取對應應用中注冊的AccessibilityService,并保存該服務的信息。如果設置中開啟了該服務,AMS會啟動該服務,并返回服務的代理AccessibilityService.IAccessibilityServiceClientWrapper。
?事件傳遞與通信:
?應用進程的UI變化、獲取焦點、點擊按鈕等事件都會通過AccessibilityManager發送給AMS。
?AccessibilityManager是AMS的代理,它負責將這些事件通過IAccessibilityServiceClientWrapper(模擬點擊服務在AMS中的代理)的onAccessibilityEvent()方法發送給AccessibilityService。
?事件處理:
?AccessibilityService接收到UI信息后,會根據開發者的實現進行判斷與處理。這通常包括解析事件類型、查找對應的UI元素(如按鈕、文本框等),并執行相應的操作(如模擬點擊、獲取文本等)。
?部分代碼:
public class MyAccessibilityService extends AccessibilityService { @Override public void onCreate() { super.onCreate(); // 初始化代碼 } @Override public void onAccessibilityEvent(AccessibilityEvent event) { int eventType = event.getEventType(); switch (eventType) { case AccessibilityEvent.TYPE_VIEW_CLICKED: // 處理點擊事件 break; // 其他事件類型... default: break; } } @Override public void onInterrupt() { // 當服務被中斷時調用 } // 可能還有其他輔助方法,如查找UI元素、模擬點擊等 }
同時,還需要在應用的res/xml/目錄下配置一個accessibility_service_config.xml文件,來聲明AccessibilityService的相關屬性,如監聽的事件類型、反饋方式等。
?安全性與進程間通信:
?由于不同的應用運行在各自的進程中,Android使用AIDL(Android Interface Definition Language)來實現進程間通信(IPC)。這確保了AccessibilityService能夠安全地與AMS和其他系統組件通信。
總結來說,Android AccessibilityService通過監聽系統事件、與AMS進行通信,并允許開發人員自定義事件處理邏輯,為那些有操作障礙的用戶提供了更好的設備使用體驗。
未來展望規劃
經過一年多的發展,不管從產品體驗上還是技術架構上存在著一些不足,需要面向用戶優化用戶體驗,優化技術架構和性能,不斷提升用戶體驗,滿足業務運營需求。將借助AI提升RPA軟件機器人的自主學習和決策能力,提升機器人的工作效率,使其能夠處理更深層次的業務流程;與AI技術等深度融合,實現更深度的自動化和智能化,提供更智能的私域運營服務。
審核編輯 黃宇
-
機器人
+關注
關注
211文章
28379瀏覽量
206913 -
AI
+關注
關注
87文章
30728瀏覽量
268886 -
AMS
+關注
關注
10文章
212瀏覽量
87019
發布評論請先 登錄
相關推薦
評論