TW201545099A - System and method of mobile check-in and a cloud system thereof - Google Patents

System and method of mobile check-in and a cloud system thereof Download PDF

Info

Publication number
TW201545099A
TW201545099A TW104125907A TW104125907A TW201545099A TW 201545099 A TW201545099 A TW 201545099A TW 104125907 A TW104125907 A TW 104125907A TW 104125907 A TW104125907 A TW 104125907A TW 201545099 A TW201545099 A TW 201545099A
Authority
TW
Taiwan
Prior art keywords
punching
information
punch
communication device
server
Prior art date
Application number
TW104125907A
Other languages
Chinese (zh)
Other versions
TWI541750B (en
Inventor
Hung-Che Chiu
Original Assignee
Mitake Information Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitake Information Corp filed Critical Mitake Information Corp
Priority to TW104125907A priority Critical patent/TWI541750B/en
Publication of TW201545099A publication Critical patent/TW201545099A/en
Application granted granted Critical
Publication of TWI541750B publication Critical patent/TWI541750B/en

Links

Landscapes

  • Time Recorders, Dirve Recorders, Access Control (AREA)

Abstract

System and method of mobile check-in, includes a database, a server, and a push gateway. A cloud is composed of the database, the server and the push gateway. The server generates a check-in request, which is delivered as a push notification through the push gateway and an outside push server to the mobile communication device. All the functions of the mobile communication device enabled by an organization code are locked except a check-in function until the check-in process is completed.

Description

行動打卡系統與方法及其雲端系統 Action card punching system and method and cloud system thereof

本發明是關於一種運用行動通訊裝置的雲端技術,特別是關於一種行動打卡系統與方法。 The present invention relates to a cloud technology using a mobile communication device, and more particularly to an action punching system and method.

現今員工出勤管理及考核系統已由傳統固定式打卡鐘漸漸進化到利用智慧型行動電話或掌上型電腦,使員工的出勤管理及考核不再受限於固定場所,然而,先前技術仍存有許多技術方面的缺失,以致無法滿足企業組織對行動出勤管理及考核之需求。 Nowadays, the employee attendance management and assessment system has gradually evolved from the traditional fixed time clock to the use of smart mobile phones or palm-sized computers, so that the staff's attendance management and assessment is no longer limited to fixed places. However, there are still many prior technologies. The lack of technology has made it impossible to meet the needs of corporate organizations for operational attendance management and assessment.

中華民國發明專利公告第I327297號,發明名稱為「人員出勤考核的方法」,揭露一種人員出勤考核的方法,主要使用一定位伺服器與一行動定位考勤機以提供定位資料給一考勤裝置產出一考勤資料。定位伺服器與行動定位考勤機間經由一無線通訊網路通連,定位伺服器並取得行動定位考勤機(由受考勤人員握持)定位資料(如經緯度等),再由考勤裝置依據定位資料產生考勤資料。此先前技術一實際解決的技術問題是“現有的考勤方式存在以下缺點:1、營運成本比較高,且考勤記錄設備通常設於固定的位置。2、員工的考勤行為不一定會被考勤設備認可。3、無法即時提供考勤數據資料。”(見其說明書第[0004]~[0007]段)。而此先前技術一所產 生的技術效果則為“提供一種利用無線通訊裝置定位以進行人員出勤考核的方法,用以提供具有便利性以及即時性資料的考勤方法”。 The Republic of China Invention Patent Notice No. I327297, the invention titled "Method of Personnel Attendance Assessment", discloses a method for personnel attendance assessment, mainly using a positioning server and an action positioning attendance machine to provide positioning data to an attendance device. Attendance information. The positioning server communicates with the mobile positioning attendance machine via a wireless communication network, locates the server and obtains the mobile positioning attendance machine (held by the attendance personnel) to locate the data (such as latitude and longitude, etc.), and then the attendance device generates the positioning data according to the positioning data. Attendance information. The technical problem solved by this prior art is that "the existing attendance method has the following disadvantages: 1. The operating cost is relatively high, and the attendance recording equipment is usually set in a fixed position. 2. The attendance behavior of the employee is not necessarily recognized by the attendance equipment. 3. It is not possible to provide attendance data immediately." (See paragraphs [0004]~[0007] of the manual). And this prior art is produced The technical effect of the student is "providing a method of using wireless communication devices to locate personnel attendance assessments to provide an attendance method with convenient and instant information."

中華民國發明專利公開第200841277號,發明名稱為「無線簽到之方法」,揭露一種無線簽到之方法,係應用在一無線簽到裝置,該無線簽到裝置係發送一廣播封包,以取得一無線通訊裝置傳送的連線確認封包,並與該無線通訊裝置建立連結,當確認該連線確認封包內的一身份資訊係已被記錄於該無線簽到裝置的一簽到資料庫內,將該無線簽到裝置取得該連線確認封包的時間與該身份資訊相匹配的儲存在該簽到資料庫內,以記錄為上班時間,如此,即可達到自動簽到之目的,藉以減少人力及成本的支出。此先前技術二實際解決的技術問題是“習見紙卡與磁卡在實際施用時具有諸多缺點”(見其說明書第[0002]~[0003]段)。而此先前技術二所產生的技術效果則為“提供一種無線簽到之方法,係由一無線簽到裝置週期地發送一廣播封包,取得一無線通訊裝置傳送的連線確認封包,並與該無線通訊裝置建立連結,在確認該連線確認封包內的一身份資訊已被記錄於該無線簽到裝置的一簽到資料庫後,再週期性的確認該無線簽到裝置與該無線通訊裝置間之連結狀態,當該無線簽到裝置與該無線通訊裝置失去連結時,即可得到該無線簽到裝置與該無線通訊裝置最後的連結時間”。 The Republic of China Invention Patent Publication No. 200841277, the invention entitled "Wireless Sign-Off Method", discloses a wireless sign-in method, which is applied to a wireless sign-in device, which sends a broadcast packet to obtain a wireless communication device. Transmitting the connection confirmation packet and establishing a connection with the wireless communication device, and confirming that an identity information in the connection confirmation packet has been recorded in a sign-in database of the wireless sign-in device, and obtaining the wireless sign-in device The connection confirms that the time of the packet matches the identity information and stores it in the check-in database to record the working time, so that the automatic check-in can be achieved, thereby reducing labor and cost expenditure. The technical problem actually solved by the prior art 2 is that "the paper card and the magnetic card have many disadvantages in actual application" (see paragraphs [0002] to [0003] of the specification). The technical effect produced by the prior art 2 is "providing a wireless sign-in method, which is to periodically send a broadcast packet by a wireless sign-on device, obtain a connection confirmation packet transmitted by a wireless communication device, and communicate with the wireless communication device. The device establishes a connection, and after confirming that the identity information in the connection confirmation packet has been recorded in a sign-in database of the wireless sign-in device, periodically confirming the connection state between the wireless sign-in device and the wireless communication device, When the wireless sign-in device loses connection with the wireless communication device, the last connection time of the wireless sign-in device and the wireless communication device can be obtained.

中華民國發明專利公開第201033942號,發明名稱為「行動式出勤記錄線上簽到處理方法及系統」,揭露一種行動式出勤記錄線上簽到處理方法及系統,其可應用於搭配至一行動式電子裝置,例如為智慧型行動電話或掌上型電腦,用以讓使用者(特別是公司員工)可於外出工作時,例如為至外地出差或拜訪客戶時,可透過線上方式來進行簽到及工作報告。 此行動式出勤記錄線上簽到處理方法及系統的優點在於可讓公司員工因業務需要而至公司外面出差時,仍可於外地以線上方式進行上班簽到程序;並可讓公司主管更為易於及方便地掌握及了解員工的出勤狀況。此先前技術三實際解決的技術問題是“習見打卡鐘係設置於一個固定位置,對在外出差的員工並不方便”(見其說明書第[0002]~[0003]段)。而此先前技術三所產生的技術效果則為“提供一種行動式出勤記錄線上簽到處理方法及系統,其可讓員工因業務需要而至公司外面出差時,仍可於外地以線上方式進行上班簽到程序”。 The Republic of China Invention Patent Publication No. 201033942, the invention titled "Mobile Attendance Record Online Sign-in Processing Method and System", discloses a mobile attendance record online check-in processing method and system, which can be applied to a mobile electronic device, For example, it is a smart mobile phone or a palmtop computer, which allows users (especially company employees) to conduct check-in and work reports online when they go out to work, for example, when traveling to a business or visiting a customer. The advantage of this mobile attendance record online check-in processing method and system is that the company employees can still go online to check-in procedures in the field when they travel outside the company due to business needs; and make the company supervisor easier and convenient. Master and understand the attendance of employees. The technical problem that this prior art 3 actually solves is that "the check-in clock system is set at a fixed position, which is inconvenient for employees who are on a business trip" (see paragraphs [0002] to [0003] of the manual). The technical effect produced by the prior art 3 is to provide a mobile attendance record online check-in processing method and system, which allows employees to go online to work in the field when they are traveling outside the company due to business needs. program".

上述該些先前技術中,先前技術一的定位伺服器、先前技術二的無線簽到裝置與先前技術三的伺服主機均無組織管理模組以因應“企業組織需要彈性的多層級結構,並針對特定層級發出打卡請求”與“利用單一個雲端系統服務眾多企業組織”之問題,例如:具有多層級結構的企業,當旗下一單位之員工集體赴外出差時,該些先前技術無法針對特定的該單位發出打卡請求(Request),或於一企業組織中架設一套打卡系統,無法使眾多企業組織共用同一套打卡系統;該些先前技術在無線用戶端與雲端伺服器之間有無法建立“利用單一個應用程式與單一個接口存取混合式雲端系統”之問題,因為該些先前技術僅係針對一特定企業組織的打卡系統開發一套專屬的應用程式,所以各企業組織的打卡系統建立各自的接口;該些先前技術的無線用戶端不具有“強制性打卡技術”與“任意指定一打卡/集合位置”等問題。此外,該些先前技術利用之技術手段以及產生之技術效果亦與利用“雲端技術”之行動打卡系統無關。故,實有必要提出一種適合企業組織管理員工出勤與考核的行動雲端系統,以便彌 補先前技術不足之處。 In the foregoing prior art, the positioning server of the prior art, the wireless sign-in device of the prior art 2, and the servo host of the prior art 3 have no organization management module to respond to the "multiple-level structure that the enterprise organization needs to be flexible, and is specific to The problem of issuing a punch request at the level and "using a single cloud system to serve many enterprise organizations", for example, a company with a multi-level structure, when the employees of one unit collectively go on a business trip, the prior technologies cannot be targeted to specific The unit sends out a request, or sets up a card punching system in an enterprise organization, which cannot make many enterprise organizations share the same card punching system; these prior technologies cannot be established between the wireless client and the cloud server. The problem of a single application accessing a hybrid cloud system with a single interface, because these prior technologies only develop a proprietary application for a specific enterprise organization's punching system, so the enterprise organization's punching system establishes its own Interface; these prior art wireless clients do not have "mandatory Card technology "and" a punch arbitrarily assigned / set position "and so on. In addition, the technical means utilized by the prior art and the resulting technical effects are also independent of the action punching system utilizing "cloud technology." Therefore, it is necessary to propose an action cloud system suitable for the organization and management of employee attendance and assessment. Complement the shortcomings of the prior art.

有鑑於此,本發明提出一種利用雲端技術之行動打卡系統與方法以及一種具有混合雲模式之雲端系統,可提供單一應用程式(App)連接單一接口技術、強制性打卡請求技術、任意指定打卡位置,以供複數個企業組織共用一套系統管理員工的出勤與考核,並在具有混合雲模式之雲端系統中由行動通訊裝置執行單一應用程式(App)建立網路連線,而由各企業組織自行管理該行動通訊裝置所上傳的資訊。 In view of this, the present invention provides an action punching system and method using cloud technology and a cloud system with a hybrid cloud mode, which can provide a single application (App) connection single interface technology, mandatory punch request technology, and any specified punch location. For a number of enterprise organizations to share the attendance and assessment of a system management staff, and in a cloud system with a hybrid cloud model, a mobile device is used to execute a single application (App) to establish an Internet connection, and each enterprise organization Manage the information uploaded by the mobile communication device by yourself.

本發明提出一種行動打卡系統,包含:一資料庫,儲存有複數個成員資訊,每個該成員資訊包含至少一組織識別碼以及一打卡資訊,每個該組織識別碼對應一組織;一伺服器,存取該資料庫並與具有該些成員資訊之一的至少一行動通訊裝置建立一網路連線,該伺服器依據一電子地圖位置座標、一指定時間及一接收端清單產生一打卡請求,其中該接收端清單包含對應該些成員資訊之一之至少一推播識別碼;以及一推播閘道器,依據該打卡請求產生一推播通知,並透過一推播主機發送該推播通知至該行動通訊裝置;其中,該伺服器經由該網路連線接收該行動通訊裝置所上傳之該組織識別碼與該打卡資訊,其中該組織識別碼用以進行驗證,該打卡資訊儲存至該資料庫中,該伺服器並彙整該成員資訊中一特定時期之該些打卡資訊成為一出勤資訊;其中,由該資料庫、該伺服器及該推播閘道器組合成一雲端。 The present invention provides a mobile card punching system, comprising: a database storing a plurality of member information, each of the member information comprising at least one organization identification code and a punch card information, each of the organization identification codes corresponding to an organization; a server Accessing the database and establishing a network connection with at least one mobile communication device having one of the member information, the server generating a punch request according to an electronic map location coordinate, a specified time, and a receiving list The receiving end list includes at least one push identification code corresponding to one of the member information; and a push gateway device, generating a push notification according to the punch request, and sending the push broadcast through a push host Notifying the mobile communication device; wherein the server receives the organization identification code and the punching information uploaded by the mobile communication device via the network connection, wherein the organization identification code is used for verification, and the punch information is stored to In the database, the server aggregates the punch information of the member information for a specific period of time into an attendance information; Database servers and the gateways of the push composition into a cloud.

本發明行動打卡系統進一步包含一用戶端之該行動通訊裝置,該行動通訊裝置包含一定位模組並執行一應用程式,該定位模組依據 當下該行動通訊裝置所在位置產生一當下位置座標,該行動通訊裝置執行該應用程式而與該伺服器建立一網路連線。該行動通訊裝置執行該應用程式可登入該伺服器並接收所輸入之該組織識別碼,經由該網路連線上傳該組織識別碼至該伺服器。該行動通訊裝置執行該應用程式可接收該推播通知後鎖定該應用程式以該組織識別碼登入之所有執行功能,直到該應用程式執行一打卡作業後解除鎖定,其中該打卡作業係依據該打卡請求之該指定時間位於該電子地圖位置座標或該電子地圖位置座標之一距離範圍內,該應用程式接收或自動產生一打卡指令以產生該打卡資訊,並經由該網路連線上傳該打卡資訊至該伺服器,該打卡資訊至少包含一打卡時間戳記以及該當下位置座標。該行動通訊裝置執行該應用程式可依據該打卡請求之該電子地圖位置座標及該指定時間產生一提醒警示。本發明系統由該資料庫、該伺服器及該推播閘道器組合成該雲端,而該伺服器所包含執行各項技術手段之模組係屬於一伺服模組群,該伺服模組群係採模組化以及分散式設計,可分拆並設置於不同機房之中。 The action punching system of the present invention further includes a mobile communication device of the user end, the mobile communication device includes a positioning module and executes an application, and the positioning module is based on When the location of the mobile communication device generates a current position coordinate, the mobile communication device executes the application to establish a network connection with the server. The mobile communication device executes the application to log in to the server and receive the input organization identification code, and upload the organization identification code to the server via the network connection. The mobile communication device executes the application to receive the push notification and locks all execution functions of the application to log in with the organization identifier, until the application performs a punch operation, and the lock is released according to the punch card operation. The designated time of the request is within a distance range of the electronic map location coordinates or the electronic map location coordinates, and the application receives or automatically generates a punch command to generate the punch information, and uploads the punch information via the network connection. To the server, the punch information includes at least one dozen time stamps and the current position coordinates. The mobile communication device executes the application to generate a reminder alert according to the electronic map location coordinates of the punch request and the specified time. The system of the present invention is composed of the database, the server and the push gateway to form the cloud, and the module including the technical means for the server belongs to a servo module group, and the servo module group It is modular and decentralized, and can be separated and placed in different machine rooms.

本發明提出一種行動打卡方法,應用於由一資料庫、一伺服器與一推播閘道器所組合的雲端,包含:儲存複數個成員資訊於該資料庫,每個該成員資訊包含至少一組織識別碼以及一打卡資訊,每個該組織識別碼對應一組織,該組織可為一單一層級組織或複數層級組織;建立該伺服器與具有該些成員資訊之一的至少一行動通訊裝置之間的一網路連線;經由該網路連線,由該伺服器接收該行動通訊裝置所上傳之該組織識別碼與該打卡資訊以進行驗證;由該伺服器依據一電子地圖位置座標、一指定時間及一接收端清單產生一打卡請求,其中該接收端清單包含對應該 些成員資訊之一的至少一推播識別碼;經由該網路連線,由該伺服器接收該行動通訊裝置所上傳之該打卡資訊以儲存該打卡資訊至該資料庫中,並彙整該成員資訊中一特定時期之該些打卡資訊成為一出勤資訊;以及,由該推播閘道器依據該打卡請求產生一推播通知,並透過一推播主機發送該推播通知至該行動通訊裝置。 The present invention provides a mobile punching method, which is applied to a cloud combined by a database, a server and a push gateway, and includes: storing a plurality of member information in the database, each of the member information including at least one The organization identification code and a punch card information, each of the organization identification codes corresponding to an organization, the organization may be a single hierarchical organization or a plurality of hierarchical organizations; establishing the server and at least one mobile communication device having one of the member information An internet connection between the network, the server identifier and the punch information uploaded by the mobile communication device are received by the server for verification; and the server is based on an electronic map location coordinate, Generating a punch request at a specified time and a receiving list, wherein the receiving list contains corresponding At least one push identification code of one of the member information; receiving, by the server, the punch information uploaded by the mobile communication device to store the punch information into the database, and collecting the member The punching information of the information in a certain period of time becomes an attendance information; and the push gateway generates a push notification according to the punch request, and sends the push notification to the mobile communication device through a push broadcast host .

本發明再提出一種行動打卡方法,應用於存取(Access)一雲端之一行動通訊裝置,該雲端由一資料庫、一伺服器與一推播閘道器所組合,其中該資料庫儲存有複數個成員資訊,每個該成員資訊包含至少一組織識別碼以及一打卡資訊,該方法包含:建立該伺服器與具有該些成員資訊之一的該行動通訊裝置之間的一網路連線;經由該行動通訊裝置的一輸入介面接收所輸入之該組織識別碼,經由該網路連線上傳該組織識別碼至該伺服器;接收一有關打卡請求之推播通知後,鎖定以該組織識別碼賦能(enable)的所有執行功能,直到該行動通訊裝置執行一打卡作業後解除鎖定,其中該打卡請求包含一電子地圖位置座標與一指定時間,該打卡作業係依據該打卡請求之該指定時間於該電子地圖位置座標或該電子地圖位置座標之一距離範圍內,產生該打卡資訊,並經由該網路連線上傳該打卡資訊至該伺服器,該打卡資訊至少包含一打卡時間戳記以及一當下位置座標。本發明行動打卡方法進一步包含:依據該打卡請求之該電子地圖位置座標及該指定時間產生一提醒警示。 The invention further provides a mobile punching method, which is applied to an access mobile communication device, wherein the cloud is combined by a database, a server and a push gateway, wherein the database is stored a plurality of member information, each of the member information including at least one organization identification code and one punch card information, the method comprising: establishing an internet connection between the server and the mobile communication device having one of the member information Receiving the input organization identification code through an input interface of the mobile communication device, uploading the organization identification code to the server via the network connection; receiving a push notification about the punch request, locking the organization All execution functions of the identifier enable until the mobile communication device performs a punching operation, wherein the punch request includes an electronic map location coordinate and a specified time, the punching operation is based on the punch request The specified time is within a distance range of the electronic map location coordinates or the electronic map location coordinates, and the punch information is generated and The network connection uploads the punch information to the server, and the punch information includes at least one dozen time stamps and one current position coordinate. The action punching method of the present invention further comprises: generating a reminder alert according to the electronic map location coordinates of the punch request and the specified time.

本發明復提出一種雲端系統,包含:一公有雲系統與至少一私有雲系統,其中該公有雲系統包含:一第一資料庫,儲存有複數個成員資訊,每個該成員資訊包含至少一組織識別碼,每個該組織識別碼對應 一組織;以及一第一伺服器,存取該第一資料庫並接受至少一具有該成員資訊的行動通訊裝置所上傳的該組織識別碼以進行登入驗證;其中該私有雲系統包含:一第二伺服器,接收該行動通訊裝置所上傳的資訊,以及一第二資料庫,儲存該第二伺服器接收該行動通訊裝置所上傳的資訊;其中該第一伺服器依據一伺服模組所在位置資訊將對應至該私有雲系統之該行動通訊裝置轉向至該第二伺服器;其中該行動通訊裝置執行一應用程式以接收所輸入之至少一該組織識別碼,並上傳該組織識別碼至該公有雲系統的該第一伺服器,以及依據儲存於該第一伺服器之該伺服模組所在位置資訊進行轉向至該私有雲系統之該第二伺服器。 The present invention further provides a cloud system, comprising: a public cloud system and at least one private cloud system, wherein the public cloud system comprises: a first database storing a plurality of member information, each of the member information including at least one organization Identification code, corresponding to each organization identification code An organization; and a first server accessing the first database and accepting the organization identification code uploaded by at least one mobile communication device having the member information for login verification; wherein the private cloud system comprises: a first The second server receives the information uploaded by the mobile communication device and a second database, and stores the second server to receive the information uploaded by the mobile communication device; wherein the first server is based on a location of the servo module Transmitting, to the second server, the mobile communication device corresponding to the private cloud system; wherein the mobile communication device executes an application to receive the input at least one organization identification code, and uploads the organization identification code to the The first server of the public cloud system and the second server that is steered to the private cloud system according to the location information of the servo module stored in the first server.

以下在實施方式中詳細敘述本發明之詳細特徵以及優點,其內容足以使任何熟習相關技藝者瞭解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之目的及優點。 The detailed features and advantages of the present invention are set forth in the Detailed Description of the Detailed Description of the <RTIgt; </ RTI> <RTIgt; </ RTI> </ RTI> </ RTI> <RTIgt; The objects and advantages associated with the present invention can be readily understood by those skilled in the art.

10、10a、10b‧‧‧伺服器 10, 10a, 10b‧‧‧ server

12‧‧‧第一網路通訊模組 12‧‧‧First network communication module

14‧‧‧登入驗證模組 14‧‧‧ Login verification module

16‧‧‧打卡請求產生模組 16‧‧‧ punch request generation module

18‧‧‧出勤考核模組 18‧‧‧Attendance assessment module

20、20a、20b‧‧‧資料庫 20, 20a, 20b‧‧‧ database

22‧‧‧推播閘道器 22‧‧‧Pushing the gateway

24‧‧‧推播主機 24‧‧‧Push host

26、26a、26b‧‧‧行動通訊裝置 26, 26a, 26b‧‧‧ mobile communication devices

28‧‧‧應用程式 28‧‧‧Application

30‧‧‧定位模組 30‧‧‧ Positioning Module

32‧‧‧第二網路通訊模組 32‧‧‧Second network communication module

34‧‧‧登入模組 34‧‧‧ Login Module

36‧‧‧功能鎖定模組 36‧‧‧Function Locking Module

38‧‧‧打卡模組 38‧‧‧ Punch Module

40‧‧‧打卡提醒模組 40‧‧‧ Punch reminder module

42‧‧‧雲端 42‧‧‧Cloud

44‧‧‧公有雲 44‧‧‧public cloud

46、46a、46b‧‧‧私有雲 46, 46a, 46b‧‧‧ private cloud

第1圖為本發明實施例之系統架構圖;第2圖為本發明實施例雲端之組織與層級示意圖;第3A圖為本發明實施例雲端部署模式之示意圖一;第3B圖為本發明實施例雲端部署模式之示意圖二;第4圖為本發明實施例之操作流程圖;及第5圖為本發明另一實施例之操作子流程圖。 1 is a system architecture diagram of an embodiment of the present invention; FIG. 2 is a schematic diagram of a cloud organization and hierarchy according to an embodiment of the present invention; FIG. 3A is a schematic diagram 1 of a cloud deployment mode according to an embodiment of the present invention; FIG. 4 is a flowchart of an operation of an embodiment of the present invention; and FIG. 5 is a flowchart of an operation sub-process according to another embodiment of the present invention.

參閱第1圖,本發明一較佳實施例之系統架構圖,其系統包含有:伺服器端(即本發明之雲端42)之資料庫20、伺服器10與推播閘道器22,以及用戶端之行動通訊裝置26。資料庫20定義有複數個組織,所謂的“組織”即公司企業或是社團,每一個組織皆由一個不重複(Unique)的組織識別碼(Organization ID)所定義;換言之,對本發明的系統而言,每個新設立的組織皆由本發明的系統設定一個不重複的組織識別碼,組織與組織識別碼係一對一的對應關係並儲存於組織的資料表(即“Table”)。就本發明的一個實施例而言,本發明採用一種階層狀的Namespace(命名空間)資料結構用以定義組織(設定組織識別碼),一旦組織識別碼被設定後,組織即完全獨立於外部(意即組織外部之人員無法檢索組織內部之資訊),甚至連組織名稱亦無法檢索,外部人員完全無法得知某一組織是否存在於此系統中,使組織獲得足夠的隱密性,組織識別碼即Root Namespace(根命名空間),組織由單一層級或複數層級所組成並包含至少一個成員(Member),所謂的“層級”(Level)係指組織中的結構,單一層級的組織例如:小型社團(如桌球社、單車社)或是員工人數在十人以內的小型公司,由於其組成的成員人數較少可以不必再細分成員的層級,而多層級的組織例如一間大型公司旗下的層級可能依職務單位分為“事業群”、“部門”、“課”、“組”四個層級,或是依照成員職等從“一職等”、“二職等”…到“十五職等”分成十五個層級。在本發明的系統中,單一個成員可同時加入兩個以上的組織,並同時擁有對應於所隸屬組織之組織識別碼,例如某一成員同時加入了一個運動愛好社團、一個公益慈善社團以及一間企業共三個組織,故,此成員即擁有三個不同的組織識別碼以各自對應於其所隸屬之組織。在資料庫20中, 以成員為主的成員資訊,包含對應於其所隸屬之組織之組織識別碼、帳號、密碼以及打卡資訊。 Referring to FIG. 1 , a system architecture diagram of a preferred embodiment of the present invention includes a database 20 (ie, a cloud 42 of the present invention), a server 10, a server 10 and a push gateway 22, and User-side mobile communication device 26. The database 20 defines a plurality of organizations, the so-called "organizations", ie, company companies or communities, each of which is defined by a unique Organization ID; in other words, for the system of the present invention. In other words, each newly established organization sets a non-repeating organization identification code by the system of the present invention, and the organization and the organization identification code are in a one-to-one correspondence and are stored in the organization's data table (ie, "Table"). In one embodiment of the invention, the present invention employs a hierarchical Namespace data structure for defining an organization (setting an organization identification code), and once the organization identification code is set, the organization is completely independent of the outside ( This means that people outside the organization cannot retrieve information within the organization. Even the name of the organization cannot be retrieved. It is completely impossible for outsiders to know whether an organization exists in the system, so that the organization obtains sufficient confidentiality and organizes the identification code. That is, the Root Namespace, the organization consists of a single level or a plurality of levels and contains at least one member. The so-called "level" refers to the structure in the organization, and the organization of a single level, for example, a small community. (such as billiard clubs, bicycle clubs) or small companies with fewer than ten employees. Because of the small number of members, it is not necessary to subdivide the level of members, and the level of multi-level organizations such as a large company may According to the position unit, it is divided into four levels: “business group”, “department”, “class” and “group”, or according to the membership level. OL "," two levels "..." 15 level "is divided into fifteen levels. In the system of the present invention, a single member can join more than two organizations at the same time, and at the same time have an organization identification code corresponding to the affiliated organization, for example, a member joins a sports hobby society, a charity community, and a There are three organizations in the enterprise, so this member has three different organization identifiers to correspond to the organizations to which they belong. In the database 20, Member-based member information, including the organization ID, account number, password, and punch information corresponding to the organization to which it belongs.

伺服器10包含以下伺服模組(群):第一網路通訊模組12、登入驗證模組14、打卡請求產生模組16以及出勤考核模組18。第一網路通訊模組12用以與用戶端之行動通訊裝置26之第二網路通訊模組32建立TCP協定(包含Socket及WebSocket連線)、HTTP協定或HTTPS協定之網路連線。登入驗證模組14接收某成員透過行動通訊裝置26所上傳之組織識別碼、帳號及密碼,然後將組織識別碼、帳號及密碼與資料庫20中所儲存該成員資訊之組織識別碼、帳號及密碼進行驗證。打卡請求產生模組16接收具權限者(如單位主管或系統管理者)所上傳的電子地圖位置座標、打卡之指定時間及至少一個接收端(即要求打卡的對象,通常係以勾選的方式選取組織通訊錄中的成員),打卡請求產生模組16再將接收端(即“組織通訊錄中被選取的成員”)進行對照工作(Mapping)以產生接收端清單(即被選取成員的“推播識別碼”),最後打卡請求產生模組16再依據上傳的電子地圖位置座標、指定時間與接收端清單產生打卡請求(Check-In Request),接收端清單包含至少一個推播識別碼(Push ID),一個推播識別碼係對應至一位成員的接收裝置(即行動通訊裝置26)。出勤考核模組18接收打卡資訊並儲存至資料庫20之成員資訊中,以及彙整該成員資訊中於一特定時期之所有打卡資訊成為出勤資訊。 The server 10 includes the following servo modules (groups): a first network communication module 12, a login verification module 14, a punch request generation module 16, and an attendance assessment module 18. The first network communication module 12 is configured to establish a TCP protocol (including Socket and WebSocket connection), an HTTP protocol, or an HTTPS protocol network connection with the second network communication module 32 of the mobile communication device 26 of the client. The login verification module 14 receives the organization identification code, account number and password uploaded by a member through the mobile communication device 26, and then organizes the identification code, the account number and the password, and the organization identification code and account number of the member information stored in the database 20. The password is verified. The punch request generation module 16 receives the electronic map location coordinates uploaded by the authorized person (such as the unit supervisor or the system administrator), the designated time of the punching, and at least one receiving end (that is, the object required to punch the card, usually by checking the manner Selecting the member in the organization address book, the punch request generation module 16 then performs the mapping operation on the receiving end (ie, the selected member in the organization address book) to generate the receiving list (ie, the selected member's "" Pushing the identification code "), and finally the punch request generating module 16 generates a check-in request (Check-In Request) according to the uploaded electronic map position coordinates, the specified time and the receiving list, and the receiving list includes at least one push-recognition code ( Push ID), a push identification code corresponds to a receiving device of one member (ie, mobile communication device 26). The attendance assessment module 18 receives the punch information and stores it in the member information of the database 20, and aggregates all the punch information in the member information for a certain period of time into the attendance information.

上述伺服器10與資料庫20並未限定部署於特定數量之設備上,例如:兩者可部署於同一台設備之上,又或者,兩者可各自部署於叢集(Cluster)結構之設備上,或者異地的叢集設備上。 The server 10 and the database 20 are not limited to be deployed on a specific number of devices, for example, the two may be deployed on the same device, or both may be deployed on a cluster device. Or on a different cluster device.

所謂的“電子地圖位置座標”係由具權限者在電子地圖上 標記單一個點的位置座標,或是以複數個位置座標所圈限成的範圍,在一實施例中,另可額外設定一“允許誤差距離值”,例如:“允許誤差距離50公尺”代表所設定的位置座標向外擴展50公尺亦包含在允許打卡位置範圍內。至於所謂的“打卡之指定時間”係包含一次性的時間以及週期性的時間,一次性的時間例如“某年某月某日的早上9點至中午12點”,而週期性的時間則例如“每個星期一至星期五,早上9點至中午12點”。本發明一實施例僅允許在指定時間內之打卡資訊上傳至伺服器10,意即成員超過指定時間無法打卡,換句話說,資料庫20並無記錄“無效之打卡”(Invalid Check-In),而在本發明另一實例則允許指定時間外之打卡資訊上傳至伺服器10,具權限者可於事後由人工判讀或以軟體篩選該些指定時間外之打卡記錄是否列入成員之出勤資訊(例如在指定時間外之打卡列為“遲到”)。設定接收端之方法係由組織通訊錄中選取特定成員、特定組織之層級、特定群組清單或組織內之全部成員,所謂的“組織通訊錄”係由具權限者(例如系統管理者)所編輯,其他成員僅能查看或使用但無法編輯組織通訊錄,所謂的“特定群組清單”亦由具權限者所編輯,例如:“組織內各單位/層級之一級主管”、“組織內各單位/層級之二級主管”、“組織內各單位/層級之基層人員”…等等,因此類接收端原本係散佈於各個單位/層級之中,故需以人工方式編成特定群組清單以供利用。 The so-called "electronic map location coordinates" is on the electronic map by the licensor Marking the position coordinates of a single point, or a range limited by a plurality of position coordinates. In an embodiment, an additional "allowable error distance value" may be additionally set, for example: "allowable error distance 50 meters" The outward expansion of the position coordinates on behalf of the set position is also included in the range of allowed punch positions. As for the so-called "specified time of punching", it includes a one-time time and a periodic time, such as "the morning of a certain month of the year, from 9:00 am to 12 noon", and the periodic time is, for example, "Every Monday to Friday, 9 am to 12 noon." An embodiment of the present invention only allows card punching information to be uploaded to the server 10 within a specified time, meaning that the member cannot be punched for more than a specified time. In other words, the database 20 does not record "Invalid Check-In". In another example of the present invention, the punching information outside the specified time is allowed to be uploaded to the server 10, and the authorized person can manually interpret or manually filter the punching records outside the specified time to be included in the attendance information of the member. (For example, the punch card outside the specified time is listed as "late"). The method of setting the receiving end is to select a specific member, a specific organization level, a specific group list or all members in the organization from the organization address book. The so-called "organization address book" is controlled by a competent person (such as a system administrator). Edit, other members can only view or use but can't edit the organization address book. The so-called "specific group list" is also edited by the authorized person, for example: "one unit/level level supervisor in the organization", "in the organization The second-level supervisor at the unit/level, the “level-level personnel at each unit/level in the organization”, etc., so the class-receiving end is originally dispersed in each unit/hierarchy, so it is necessary to manually compile a specific group list. For use.

推播閘道器22依據打卡請求產生推播通知(Push Notification),並透過外部推播主機24(例如:MPNS、GCM以及APNS)發送推播通知。當資料庫20中記載某一接收端裝置係iOS裝置(如iPhone與iPad)時,推播閘道器22依據APNS所要求之格式產生推播通知,並於產生後透過APNS 發送推播通知,其他平台以此類推。 The push gateway 22 generates a push notification according to the punch request, and transmits a push notification through the external push host 24 (for example, MPNS, GCM, and APNS). When the database 20 records that a certain receiving device is an iOS device (such as an iPhone and an iPad), the push gateway 22 generates a push notification according to the format required by the APNS, and transmits it through the APNS after being generated. Send push notifications, and so on for other platforms.

行動通訊裝置26(例如運行iOS、Android或Windows Phone作業系統之智慧手機與平板電腦)包含定位模組30並執行應用程式28(即Application,又稱App),定位模組30依據當下行動通訊裝置26所在位置產生當下位置座標,應用程式28包含:第二網路通訊模組32、登入模組34、功能鎖定模組36、打卡模組38以及打卡提醒模組40。第二網路通訊模組32用以與伺服器10之第一網路通訊模組12建立TCP協定、HTTP協定或HTTPS協定之網路連線。登入模組34接收使用者(即成員)之組織識別碼、帳號及密碼之輸入,並上傳至伺服器10。功能鎖定模組36於接收打卡請求的推播通知後鎖定應用程式28以該組織識別碼登入之所有執行功能,僅允許應用程式28執行打卡作業,待打卡作業完成後解除鎖定,意即成員在接到打卡請求後,本發明之應用程式28以強制性之技術手段迫使成員無法操作應用程式28以該組織識別碼登入可執行的任何其他功能(例如其他有聊天功能、貼圖功能、公佈欄功能、語音功能、檔案傳輸功能…等等),直到成員完成打卡作業後才能操作其他功能,此係本發明之主要技術特徵之一。打卡模組38執行打卡作業,打卡作業係依據打卡請求之指定時間內於電子地圖位置座標或電子地圖位置座標之一距離範圍內,接收打卡指令以上傳打卡資訊至伺服器1(),打卡資訊至少包含打卡時間戳記(Check-In Timestamp)以及當下位置座標。打卡提醒模組40依據打卡請求之電子地圖位置座標及指定時間產生提醒警示,例如:在一實施例中當成員當下位置接近或已到達電子地圖位置座標時即產生提醒警示“接近打卡位置”或“已到達打卡位置”,在一實施例中當將屆或已達指定時間時即產生提醒警示“將屆打卡指定時間”或 “已達打卡指定時間”,在一實施例中當成員於指定時間內到達電子地圖位置座標時即產生提醒警示“已可進行打卡作業”,在一實施例中當指定時間即將截止而成員尚未打卡時即產生提醒警示“打卡指定時間即將截止”,在一實施例中當指定時間即將截止而成員尚未打卡且仍未到達電子地圖位置座標時即產生提醒警示“打卡指定時間即將截止,尚距離打卡位置XX公尺”,在一實施例中當成員於指定時間內到達電子地圖位置座標時即自動產生打卡指令,並產生提醒警示“已完成打卡作業”。 The mobile communication device 26 (for example, a smart phone and a tablet running an iOS, Android or Windows Phone operating system) includes a positioning module 30 and executes an application 28 (ie, an application, also called an App), and the positioning module 30 is based on the current mobile communication device. The location 28 generates the current location coordinates, and the application 28 includes: a second network communication module 32, a login module 34, a function locking module 36, a punching module 38, and a punching reminder module 40. The second network communication module 32 is configured to establish a TCP protocol, an HTTP protocol, or an HTTPS protocol network connection with the first network communication module 12 of the server 10. The login module 34 receives the input of the organization identifier, account number and password of the user (ie member) and uploads it to the server 10. After receiving the push notification of the punch request, the function lock module 36 locks the application 28 with all the execution functions of the organization identifier, and only allows the application 28 to perform the punching operation, and the lock is released after the punching operation is completed, that is, the member is Upon receipt of the punch request, the application 28 of the present invention enforces the technical means to force the member to be unable to operate the application 28 to log in to any other functions executable (eg, other chat functions, texture functions, bulletin bars functions). , voice function, file transfer function, etc.), until the member completes the punching operation to operate other functions, which is one of the main technical features of the present invention. The punching module 38 performs a punching operation, and the punching operation receives the punching instruction to upload the punching information to the server 1 () in the specified time range of the electronic map position coordinate or the electronic map position coordinate according to the punching request. At least the check-in timestamp and the current position coordinates are included. The card reminding module 40 generates a reminder alert according to the electronic map location coordinates of the punch request and the specified time. For example, in an embodiment, when the member is in the current position or has reached the electronic map position coordinate, a reminder alert “close to the punch position” is generated or "After the punching position has been reached", in an embodiment, when the specified time has elapsed or has reached the specified time, a reminder warning "Specify the time of the punch card" or "After the specified time of punching card", in one embodiment, when the member arrives at the coordinate position coordinate of the electronic map within a specified time, a reminder warning "the punching operation is available" is generated. In an embodiment, when the designated time is about to expire and the member has not yet When the card is punched, a reminder warning is generated that "the designated time for punching is about to expire". In an embodiment, when the designated time is about to expire and the member has not punched the card and the electronic map position coordinates have not been reached, a reminder warning is generated, "the designated time for punching is about to expire, and the distance is still The punching position is XX meters. In an embodiment, when the member reaches the coordinates of the electronic map position within the specified time, the punching instruction is automatically generated, and a reminder warning "the punching operation has been completed" is generated.

打卡作業係指從“接收打卡指令”到“上傳打卡資訊至伺服器10”,然而,有諸多因素可能導致無法在當下立即上傳打卡資訊,例如行動通訊裝置26當下無法建立網路連線,為因應此一情況之發生,本發明一實施例之打卡作業在無法建立網路連線或網路臨時斷線時,將打卡資訊暫存於行動通訊裝置26之記憶體之中,待建立網路連線後再將打卡資訊上傳至伺服器10,不管於何時上傳打卡資訊,該打卡資訊絕不失真(打卡時間戳記仍為原本打卡當下之時間,而與上傳時間無關),並且,之後由出勤考核模組18彙整打卡資訊以產生出勤資訊時,該打卡資訊(指延後上傳的打卡資訊)仍判為有效(Valid)資訊。 The punching operation refers to "receiving punching instructions" to "uploading punching information to the server 10". However, there are many factors that may cause the punching information to be immediately uploaded at the moment, for example, the mobile communication device 26 cannot establish the network connection at the moment, In response to the occurrence of this situation, the card punching operation of the embodiment of the present invention temporarily stores the punching information in the memory of the mobile communication device 26 when the network connection cannot be established or the network is temporarily disconnected, and the network is to be established. After the connection, the card information is uploaded to the server 10, no matter when the card information is uploaded, the card information is never distorted (the time stamp is still the current time of the card, but not related to the upload time), and then by the attendance When the assessment module 18 collects the punching information to generate the attendance information, the punching information (referring to the delayed punching information) is still determined as valid information.

本發明之功能鎖定模組36所謂的“鎖定應用程式以該組織識別碼登入之所有執行功能”(鎖定以該組織識別碼所賦能的應用程式所有執行功能)係指“除了打卡功能及其相關必要程序(Process)之外,應用程式28的其他功能皆暫時鎖定、無法執行”,當某成員加入多個不同組織而其中之一組織發送打卡請求時,僅有以“發送打卡請求的組織”之組織識別碼登入其應用程式28之功能被鎖定而不得被執行,倘若該成員以其他組織識 別碼登入其他組機,則所有功能執行不受影響(即以其他組織識別碼登入時,所有執行功能皆為賦能),承前述例子:某成員同時加入了一個運動社團、一個公益社團以及一間企業共三個組織,假設該企業發送打卡請求給旗下所有員工,若該成員未依請求執行打卡作業,當該成員以該企業之組織識別碼登入後則無法執行任何打卡以外的功能,倘若該成員以該運動社團或該公益社團之組織識別碼登入,則所有功能執行皆不受影響。在本發明一實施例中,應用程式28利用至少兩層以上的視圖(View)分別顯示不同功能的圖形使用者介面,而打卡功能(即打卡模組38相關之圖形使用者介面)單獨佔用其中一層視圖,並將打卡功能之視圖設為“最上層”(Always-On-Top),在鎖定期間內其他下層之視圖無法被執行,例如以一彈出視窗(Pop-Up Window)呈現打卡功能,直到打卡作業完成之後,才關閉最上層的打卡功能之視圖,並允許其他視圖被執行。 The function locking module 36 of the present invention refers to "all the execution functions of the application locked by the organization identification code" (locking all execution functions of the application enabled by the organization identification code) means "except the punch function and its In addition to the related procedures, other functions of the application 28 are temporarily locked and cannot be executed. When a member joins a plurality of different organizations and one of the organizations sends a punch request, only the organization that sends the punch request is sent. The function of the organization ID to log in to its application 28 is locked and cannot be executed if the member is identified by another organization If you log in to another group machine, all function execution will not be affected (that is, when you log in with other organization IDs, all execution functions are enabled). In the above example: a member joins a sports club, a public interest group, and A company has three organizations, assuming that the company sends a punch request to all its employees. If the member does not perform the punching operation as requested, the member cannot perform any functions other than punching after logging in with the organization ID of the enterprise. If the member logs in with the organization logo of the sports club or the charity, all function execution is not affected. In an embodiment of the present invention, the application 28 displays the graphical user interfaces of different functions by using at least two or more views, and the punching function (ie, the graphical user interface associated with the punching module 38) is separately occupied. A layer view, and the view of the punch function is set to "Always-On-Top", other lower-level views cannot be executed during the lock period, for example, a pop-up window (Pop-Up Window) is presented. Until the punching operation is completed, the view of the uppermost punching function is closed and other views are allowed to be executed.

在本發明另一實施例中,應用程式28之所有程序(或稱“行程”,即Function/Process)皆設有代表執行優先權(Executing Priority)的數值,並將打卡功能相關程序之優先權設定為高於其他功能,當功能鎖定模組36執行鎖定時僅允許具有高優先權數值之程序被執行(例如打卡功能及其相關必要程序),而其他具有低優先權數值之程序須待打卡作業完成之後才能被執行。在本發明又一實施例中,應用程式28之所有功能的程序皆設有一執行旗標(Executing Flag),當應用程式28接受一組織識別碼登入,並在收到打卡請求的推播通知後,功能鎖定模組36執行以該組織識別碼來鎖定鎖定功能的程序時,打卡功能及其相關必要程序之執行旗標皆設為“賦能”(Enable,即“可執行”),而其他功能之執行旗標則設為“去 能”(Disable,“不可執行”),當功能鎖定模組36執行解鎖後,則將所有程序之執行旗標重置為“賦能”,本發明之應用程式28於執行程序前檢查其執行旗標,僅具有“賦能”旗標之程序可被執行。此外,當行動通訊裝置26執行應用程式28接收一打卡請求的推播通知而鎖定以一組織識別碼登入之所有執行功能時,該應用程式28並不會鎖定以其它組織識別碼登入之所有執行功能。 In another embodiment of the present invention, all programs (or "strokes", that is, Function/Process) of the application 28 are provided with values representing Executing Priority, and priority is given to the program related to the punch function. Set to be higher than other functions, when the function lockout module 36 performs the lock, only the program with the high priority value is allowed to be executed (for example, the punch function and its related necessary programs), while other programs with low priority values are required to be punched. The job can only be executed after it has been completed. In still another embodiment of the present invention, the program for all functions of the application 28 is provided with an execution flag (Executing Flag), when the application 28 accepts an organization identification code to log in, and after receiving the push notification of the punch request, When the function locking module 36 executes the program for locking the locking function with the organization identification code, the execution flag of the punching function and its related necessary programs are all set to "Enable" ("executable"), while others The function execution flag is set to "go "Disable", when the function locking module 36 performs unlocking, resets the execution flag of all programs to "enable", and the application 28 of the present invention checks its execution before executing the program. The flag, only the program with the "Enable" flag can be executed. Further, when the mobile communication device 26 executes the application 28 to receive a push notification of a punch request and locks all execution functions registered with an organization identification code, The application 28 does not lock all execution functions that are logged in with other organization IDs.

參閱第2圖,本發明一較佳實施例雲端42之組織與層級示意圖,其說明了本發明之雲端42結構具備支援複數個組織,各組織可由單一個層級至複數個層級所組成,層級之下另有零至複數個成員(未標示於圖例中)。圖例中的“A組織”的層級結構為垂直型(或稱高樓型、高塔型)適合以成員之職等做為層級區分之組織,例如:第1層級為“十五職等”、第2層級為“十四職等”、第3層級為“十三職等”…以此類推,而“十三職等以上為高階主管”,本發明之打卡請求產生模組16可指定打卡之層級,例如一場在外地舉辦的高階主管研習會,組織中之所有高階主管包含第1層級至第3層級皆須參與,則打卡請求的接收端即選取“第1層級至第3層級”。圖例中的“B組識”的層級結構僅有單一層級,適合成員數量較少或採扁平化結構之組織,例如:社團、小型公司、因共同興趣所結合的小型團體…等等。圖例中的“C組識”的層級結構為金字塔型,適合各種中、大型之企業與團體,本發明之打卡請求可發送至組織中之一特定層級,例如“某事業群下某部門之某小組”(假設屬於第三層級之採購組)將至一大賣場進行採買,於大賣場集合的打卡請求即可針對該小組發送。上述可彈性設定複數個層級之組織結構即為本發明之主要技術特徵之一,而可針對特定組織之 層級發送打卡請求亦為本發明之技術特徵之一。 Referring to FIG. 2, a schematic diagram of the organization and hierarchy of the cloud 42 according to a preferred embodiment of the present invention illustrates that the cloud 42 structure of the present invention supports a plurality of organizations, and each organization can be composed of a single level to a plurality of levels. There are zero to multiple members (not shown in the legend). The hierarchical structure of the "A organization" in the legend is a vertical type (or high-rise type, high-tower type), which is suitable for the division of members as a hierarchy. For example, the first level is "fifteenth grade," The second level is "fourteen grades", the third level is "thirteen grades", and so on, and "the thirteenth grade or above is a high-level supervisor", the punch request generation module 16 of the present invention can specify punching The level, such as a high-level executive seminar held in the field, all high-level supervisors in the organization, including the first level to the third level, must participate, then the receiving end of the punch request selects "level 1 to level 3." The hierarchical structure of "Group B" in the legend has only a single level, and is suitable for organizations with a small number of members or a flat structure, such as a society, a small company, a small group combined by common interests, and the like. The hierarchical structure of "C group knowledge" in the legend is pyramid type, which is suitable for various medium and large enterprises and groups. The punch request of the present invention can be sent to a specific level in the organization, for example, "a certain department under a certain business group. The group (assuming that the third-level procurement group) will go to a large store to buy, and the punch request collected in the hypermarket can be sent to the group. The above-mentioned elastically setting a plurality of hierarchical organizational structures is one of the main technical features of the present invention, and can be targeted to a specific organization. The hierarchical transmission of the punch request is also one of the technical features of the present invention.

在具有複數個層級的組織中(例如:“A組織”與“C組識”),各個層級皆有一位具設定權限的管理者(Administrator),在企業組織中通常最頂層之總管理者為公司的MIS人員,而各個層級之管理者則為單位主管(例如:事業群主管、部門主管、課長、組長…等等),而管理者之權限通常在新增組織及該管理者的帳號時即授于,但亦可於帳號新增之後再另行授于。由於本發明運用Namespace資料結構技術,各個組織之所有資料皆完全獨立於外部,各組織旗下之帳號(即成員之帳號)即使採用相同的編碼(例如員工編號“0001”、“0002”、“0003”…等)亦無帳號相同之衝突問題,故,各組織為旗下成員設定帳號編碼時更為彈性,不需擔心同樣帳號已被其他組織之成員佔用的問題。另外,即使有多個不同組織同時利用成員之行動電話號碼或Email做為帳號(或是填在“聯絡資訊”之中),只要跨組織即無法檢索其他組織旗下成員之行動電話號碼或Email,以避免外部人員之干擾,至於組織內部則可以行動電話號碼、Email或關鍵字檢索任何組織內之所有成員,組織內部之檢索係屬習見技術,故不贅述。以組織識別碼以及Name Space資料結構區隔不同組織,使組織外部人員無法檢索組織內成員,係本發明之另一主要技術特徵。 In organizations with multiple levels (for example, "A organization" and "C group knowledge"), each level has an administrator with set permissions. In the enterprise organization, usually the top-level manager is The company's MIS staff, and the managers at each level are the unit supervisors (for example: business group supervisor, department head, department head, team leader, etc.), and the administrator's authority is usually when the organization and the manager's account are added. It is granted, but it can be given separately after the account is added. Since the present invention uses the Namespace data structure technology, all the data of each organization is completely independent of the outside, and the account numbers of the organizations (ie, the member's account number) use the same code (for example, employee numbers "0001", "0002", "0003" "...etc." There is no conflict with the same account number. Therefore, organizations are more flexible when setting account codes for their members. There is no need to worry about the same account being occupied by members of other organizations. In addition, even if there are multiple different organizations using the member's mobile phone number or email as an account (or in the "contact information"), as long as the cross-organization can not retrieve the mobile phone number or email of members of other organizations, In order to avoid interference from outsiders, as long as the organization can use mobile phone numbers, emails or keywords to search all members of any organization, the internal search system is a technology, so it will not go into details. It is another major technical feature of the present invention that the organization identification code and the Name Space data structure are separated from different organizations, so that members of the organization cannot retrieve members within the organization.

參閱第3A圖及第3B圖,本發明實施例雲端42部署模式之示意圖,其僅用以說明雲端42之部署模式以及行動通訊裝置26與雲端42建立網路連線及轉向之情況,未包含推播通知,故圖示未描繪推播主機24。第3A圖說明了本發明之雲端42提供兩種部署模式:公有雲模式與混合雲模式。公有雲模式係指伺服器端之伺服器10(或第一伺服器10a)、資料庫20(或第一 資料庫20a)以及推播閘道器22完全皆由服務商(Service Provider)所提供,一般公司或社團對資安管控並無特別嚴格之要求者其服務存取完全在公有雲44中;而混合雲模式係指部份之伺服模組與設備設置於公有雲44,同時另一部份設置於私有雲46,並將各伺服模組之設置位置儲存至一“伺服模組所在位置資訊”中,其中記載有設置於私有雲46之伺服模組群以及其所在之IP位置,對資安管控非常嚴謹者即設置第二伺服器10b及第二資料庫20b於私有雲46中,其服務存取部份在公有雲44、部份在私有雲46,而決定行動通訊裝置26之應用程式28去存取公有雲44或私有雲46的關鍵即在於伺服模組所在位置資訊。不論公司/社團所採用之雲端部署模式為何,應用程式28於登入之時皆是向位於公有雲44之第一伺服器10a之登入驗證模組14進行驗證。由於本發明之伺服模組群係採模組化以及分散式(Distributed)設計,故,可依企業客戶之需求任意將伺服模組群及推播閘道器22分拆並設置於不同機房之中(即公有雲44與私有雲46),此係本發明之再一主要技術特徵。當伺服模組群分拆並設置於公有雲44與私有雲46中,而登入驗證模組14仍設置於公有雲44時,且運用伺服模組所在位置資訊進行轉向,此種部署模式即本發明之混合雲模式。 Referring to FIG. 3A and FIG. 3B , a schematic diagram of a deployment mode of the cloud 42 in the embodiment of the present invention is only used to describe the deployment mode of the cloud 42 and the network connection and steering of the mobile communication device 26 and the cloud 42 . The push notification is pushed, so the push host 24 is not depicted in the illustration. Figure 3A illustrates that the cloud 42 of the present invention provides two deployment modes: a public cloud mode and a hybrid cloud mode. The public cloud mode refers to the server 10 (or the first server 10a) of the server side, and the database 20 (or the first The database 20a) and the push gateway 22 are all provided by the Service Provider. Generally, the company or the community does not have strict requirements for the security control, and the service access is completely in the public cloud 44; The hybrid cloud mode means that some of the servo modules and devices are installed in the public cloud 44, and the other part is set in the private cloud 46, and the setting positions of the servo modules are stored to a "location information of the servo module". The server module set in the private cloud 46 and the IP location where it is located are described. The strict management of the security management is to set the second server 10b and the second database 20b in the private cloud 46, and the service thereof is provided. The access part is in the public cloud 44 and partly in the private cloud 46, and the key to determining the application 28 of the mobile communication device 26 to access the public cloud 44 or the private cloud 46 lies in the location information of the servo module. Regardless of the cloud deployment mode adopted by the company/social, the application 28 authenticates to the login verification module 14 of the first server 10a of the public cloud 44 at the time of login. Since the servo module group of the present invention is modularized and distributed, the servo module group and the push gate device 22 can be arbitrarily separated and disposed in different machine rooms according to the needs of the enterprise customer. Medium (ie, public cloud 44 and private cloud 46), which is another major technical feature of the present invention. When the servo module group is split and disposed in the public cloud 44 and the private cloud 46, and the login verification module 14 is still set in the public cloud 44, and the location information of the servo module is used for steering, the deployment mode is Invented hybrid cloud mode.

第3B圖包含兩種設置不同伺服模組群之私有雲46(46a與46b,其各自代表不同企業之機房),其說明了不論公司/社團所採用之雲端部署模式為何,都是利用同一應用程式28存取服務,假設“A組識”係一般公司或社團對資安管控並無特別嚴格之要求,其存取之伺服模組群(即第一網路通訊模組12、登入驗證模組14、打卡請求產生模組16、出勤考核模組18…等)與設備皆設置於公有雲44,意即其所有記錄包含出勤資訊亦留存於公有 雲44之資料庫20之中,由服務商負責保管;假設“C組識”係一金融企業其對資安管控非常嚴謹,對於所有與個資有關之伺服模組以及出勤資訊必須設置與留存於自建機房(或是租賃之虛擬主機、代管機房)內,故,除了本發明之登入驗證模組14(即登入之接口)仍設置於公有雲44,其餘設備與伺服模組係設置於私有雲46a(即“C組識”其自建機房中)並記載於伺服模組所在位置資訊中,當“C組識”之成員以本發明之應用程式28存取本發明之雲端42時,首先登入之接口仍在公有雲44(即登入驗證模組14),登入驗證完畢後,當應用程式28接收到對應於伺服模組群之指令時,系統即依據伺服模組所在位置資訊進行轉向(Redirection,圖中以單向箭頭之虛線繪製代表網路連線轉向),例如使用者於應用程式28中選取打卡功能,即係對應至出勤考核模組18,此時系統即依據記載於伺服模組所在位置資訊中“出勤考核模組18設於私有雲46a之IP位置”進行轉向,之後應用程式28即直接存取私有雲46a之伺服器10之出勤考核模組18,“C組識”之敏感性資料(如出勤資訊)因而得以完全留存於私有雲46a之資料庫20中;假設“D組識”係同樣對資安管控非常嚴謹之企業,亦將部份與個資相關之設備與伺服模組係設置於另一私有雲46b,其敏感性資料亦得以完全留存於私有雲46b之資料庫20中。 Figure 3B contains two private clouds 46 (46a and 46b, each representing a different enterprise's computer room) that set up different servo module groups, which illustrate the same application regardless of the cloud deployment model adopted by the company/association. The program 28 accesses the service, assuming that the "A group identification" is a general company or a community that does not have a particularly strict requirement for the security management, and the access to the servo module group (ie, the first network communication module 12, the login verification mode) Group 14, punch request generation module 16, attendance assessment module 18, etc.) and equipment are set in the public cloud 44, meaning that all records including attendance information are also retained in the public In the database of cloud 44, the service provider is responsible for the custody; assuming that “C group knowledge” is a financial enterprise, its financial management and control is very strict, and all the servo modules and attendance information related to the individual must be set and retained. In the self-built machine room (or the leased virtual host, the escrow machine room), in addition, the login verification module 14 (ie, the login interface) of the present invention is still set in the public cloud 44, and the remaining devices and the servo module are set. In the private cloud 46a (ie, "C group" in its self-built machine room) and recorded in the location information of the servo module, when the member of the "C group knowledge" accesses the cloud 42 of the present invention by the application 28 of the present invention When the first login interface is still in the public cloud 44 (ie, the login verification module 14), after the login verification is completed, when the application 28 receives the instruction corresponding to the servo module group, the system is based on the location information of the servo module. Turning (Redirection, the dotted line of the one-way arrow is used to represent the network connection steering), for example, the user selects the punching function in the application 28, that is, corresponds to the attendance assessment module 18, and the system is based on the record. Serve In the location information of the service module, the attendance assessment module 18 is set at the IP address of the private cloud 46a, and then the application 28 directly accesses the attendance assessment module 18 of the server 10 of the private cloud 46a, "Group C" Sensitive data (such as attendance information) can thus be completely retained in the database 20 of the private cloud 46a; assuming that the “D group knowledge” is also a company that is very strict with the security management, it will also be partially related to the individual capital. The device and the servo module are disposed in another private cloud 46b, and the sensitive data is completely retained in the database 20 of the private cloud 46b.

雖然,上述混合雲模式之部署因企業客戶之需求而有些許客製化之作業(即分拆與設置伺服模組),但是其在用戶端並不需要以專屬應用程式存取私有雲46,本發明之混合雲模式仍是以同樣的應用程式28存取私有雲46,原因已如前述一登入之接口仍在公有雲44(即登入驗證模組14),換句話說,服務商不必再為不同的企業客戶去客製化專屬應用程式,以上述例子來說,“A組識”、“C組識”與“D組識”雖然採用不同的雲端42部 署模式,但是對用戶端的使用者來說,在行動通訊裝置26上都是執行同樣版本的應用程式28,不必三間不同組織就採用三個不同版本的應用程式28,運用單一應用程式28服務所有企業客戶可大幅節省App上架時間、流程與人力(舉例來說,要在蘋果的AppStore上架必需經由一嚴格之審核流程)。此單一接口、單一應用程式(即App)存取公有雲與混合雲模式即本發明之又一主要技術特徵。 Although the above-mentioned hybrid cloud mode deployment has some customization operations (ie, splitting and setting the servo module) due to the needs of the enterprise customers, it does not need to access the private cloud 46 by the dedicated application on the user side. The hybrid cloud mode of the present invention still accesses the private cloud 46 by the same application 28 for the reason that the aforementioned login interface is still in the public cloud 44 (ie, the login verification module 14). In other words, the service provider does not have to To customize the exclusive application for different enterprise customers, in the above example, "A group knowledge", "C group knowledge" and "D group knowledge" use 42 different clouds. In the mode, but for the user of the client, the same version of the application 28 is executed on the mobile communication device 26, and three different versions of the application 28 are used without three different organizations, and the single application 28 is used to serve all Enterprise customers can save a significant amount of time, process, and manpower on the app (for example, a strict review process is required to be available on Apple's AppStore). This single interface, single application (ie, App) access to the public cloud and hybrid cloud mode is another major technical feature of the present invention.

本發明另一實施例,在進行轉向至私有雲46之前須經過數位憑證(又稱電子憑證)之認證步驟,以確認私有雲46之身份、避免假冒的伺服器藉機竊取資料。此實施例在私有雲46之管理者於設定私有雲46之初(即,向公有雲44註冊私有雲46),即需輸入由憑證授權單位所發出之數位憑證其儲存路徑(數位憑證儲存於私有雲46中),並經由憑證認證中心進行有效性認證(由於“向憑證授權單位申請數位憑證”,以及“利用憑證認證中心之API進行有效性認證”屬於習見技術範疇,故不贅述),有效性認證無誤後才可將私有雲46之IP位置以及其數位憑證記載至伺服模組所在位置資訊。當某使用者於登入驗證後進行轉向至私有雲46之前,公有雲44之登入驗證模組14即依據伺服模組所在位置資訊所記載之IP位置以及數位憑證資訊進行核對驗證。此實施例亦可採用令牌(Token)技術,在令牌的有效期內(例如首次認證後的24小時內)直接以令牌取代驗證步驟。 In another embodiment of the present invention, an authentication step of a digital certificate (also known as an electronic credential) is required before the transfer to the private cloud 46 to confirm the identity of the private cloud 46 and to prevent the counterfeit server from taking the opportunity to steal the data. In this embodiment, the administrator of the private cloud 46 registers the private cloud 46 at the beginning of the private cloud 46 (ie, registers the private cloud 46 with the public cloud 44), that is, the storage path of the digital certificate issued by the certificate authority is required (the digital certificate is stored in Private cloud 46), and the validity of the certificate through the certificate authority (due to "application for digital certificate to the certificate authority", and "use the certificate of the certificate authority to verify the validity" is a technical category, so I will not repeat it) After the validity certification is correct, the IP address of the private cloud 46 and its digital certificate can be recorded to the location information of the servo module. Before a user logs to the private cloud 46 after login verification, the login verification module 14 of the public cloud 44 verifies the verification according to the IP location and the digital certificate information recorded by the location information of the servo module. This embodiment can also use a token technology to directly replace the verification step with a token during the validity period of the token (eg, within 24 hours after the first authentication).

參閱第4圖,本發明實施例之操作流程圖,由第一行動通訊裝置26a或個人電腦設定打卡請求,第二行動通訊裝置26b接收打卡請求後進行打卡作業之流程,請同時參閱第1圖、第2圖與第3A圖,係包含: Referring to FIG. 4, in the operation flowchart of the embodiment of the present invention, the first mobile communication device 26a or the personal computer sets the punch request, and the second mobile communication device 26b receives the punch request and then performs the punching operation. Please refer to FIG. 1 at the same time. , Figure 2 and Figure 3A, including:

步驟S101:於第一行動通訊裝置26a或個人電腦上執行本發明之應用程式28。假設具權限者(單位主管或系統管理員)係“A組織”之第一成員利用個人電腦或第一行動通訊裝置26a(即本發明行動通訊裝置26,例如蘋果之iPhone5S智慧手機)執行應用程式28。 Step S101: The application 28 of the present invention is executed on the first mobile communication device 26a or a personal computer. Assume that the licensor (unit supervisor or system administrator) is the first member of the "A organization" to execute the application using the personal computer or the first mobile communication device 26a (ie, the mobile communication device 26 of the present invention, such as Apple's iPhone 5S smart phone) 28.

步驟S102:應用程式28與公有雲44之伺服器10建立網路連線。執行應用程式28後,應用程式28之第二網路通訊模組32與公有雲44之伺服器10之第一網路通訊模組12建立TCP協定(包含Socket及WebSocket連線)、HTTP協定或HTTPS(即HTTP over SSL)協定之網路連線。 Step S102: The application 28 establishes a network connection with the server 10 of the public cloud 44. After executing the application 28, the second network communication module 32 of the application 28 establishes a TCP protocol (including Socket and WebSocket connection), HTTP protocol or the first network communication module 12 of the server 10 of the public cloud 44. HTTPS (ie HTTP over SSL) protocol network connection.

步驟S103:上傳組織識別碼、第一帳號及第一密碼以進行登入驗證。第一成員利用應用程式28輸入組織識別碼、第一帳號及第一密碼,組織識別碼係代表第一成員所隸屬的“A組織”,接著,將組織識別碼、第一帳號及第一密碼上傳至公有雲44之伺服器10,並由公有雲44之登入驗證模組14進行登入驗證。 Step S103: upload the organization identification code, the first account number and the first password to perform login verification. The first member uses the application 28 to input the organization identification code, the first account number and the first password, and the organization identification code represents the "A organization" to which the first member belongs, and then the organization identification code, the first account number and the first password. The server 10 is uploaded to the public cloud 44, and the login verification module 14 of the public cloud 44 performs login verification.

步驟S104:接收對應於伺服模組群之一指令,依據伺服模組所在位置資訊進行轉向。當第一行動通訊裝置26a之應用程式28接收到與伺服模組群對應之指令時,系統即依據儲存於公有雲44之伺服模組所在位置資訊將第一行動通訊裝置26a之應用程式28進行轉向。例如第一成員於應用程式28中選取設定打卡請求功能(此選取指令對應之伺服模組即打卡請求產生模組16),此時系統即依據記載於伺服模組所在位置資訊中“打卡請求產生模組16設於私有雲46之IP位置”將應用程式28進行轉向,之後應用程式28即直接存取私有雲46之伺服器10之打卡請求產生模組16。 Step S104: Receive an instruction corresponding to one of the servo module groups, and perform steering according to the location information of the servo module. When the application 28 of the first mobile communication device 26a receives the command corresponding to the servo module group, the system performs the application 28 of the first mobile communication device 26a according to the location information of the servo module stored in the public cloud 44. Turn. For example, the first member selects a set punch request function in the application 28 (the call module corresponding to the selected command is the punch request generation module 16), and the system is based on the location information recorded in the servo module. The module 16 is located at the IP location of the private cloud 46. The application 28 is steered, and then the application 28 directly accesses the punch request generation module 16 of the server 10 of the private cloud 46.

步驟S105:輸入電子地圖位置座標、指定時間,並指定接 收端。第一成員利用應用程式28之輸入電子地圖位置座標(即打卡位置)、指定時間(即打卡時間),並指定至少一接收端,接收端之指定方法係自組織通訊錄中選取特定成員、特定組織之層級、特定群組清單或組織內之全部成員。此例假設第一成員自組織通訊錄中選取之接收端包含第二成員。 Step S105: input an electronic map position coordinate, specify a time, and specify the connection Received. The first member utilizes the input electronic map location coordinates (ie, the punch location) of the application 28, the specified time (ie, the punch time), and specifies at least one receiving end. The specified method of the receiving end is to select a specific member from the organization address book, specific The hierarchy of the organization, the list of specific groups, or all members of the organization. This example assumes that the receiving end selected by the first member in the self-organizing address book contains the second member.

步驟S106:將電子地圖位置座標、指定時間以及接收端上傳至伺服器10。當步驟S102第二網路通訊模組32與第一網路通訊模組12建立之網路連線為TCP協定時,此步驟即可直接將電子地圖位置座標、指定時間以及接收端上傳至打卡請求產生模組16。當步驟S102建立之網路連線為HTTP協定或HTTPS協定時,此步驟第二網路通訊模組32須先與第一網路通訊模組12重新建立HTTP協定或HTTPS協定之網路連線,然後再將電子地圖位置座標、指定時間以及接收端上傳至打卡請求產生模組16。 Step S106: Upload the electronic map location coordinates, the specified time, and the receiving end to the server 10. When the network connection established between the second network communication module 32 and the first network communication module 12 in step S102 is a TCP protocol, this step can directly upload the electronic map location coordinates, the specified time, and the receiving end to the punch card. Request generation module 16. When the network connection established in step S102 is an HTTP protocol or an HTTPS protocol, the second network communication module 32 must first re-establish an HTTP protocol or an HTTPS protocol network connection with the first network communication module 12. Then, the electronic map location coordinates, the specified time, and the receiving end are uploaded to the punch request generation module 16.

步驟S107:打卡請求產生模組16產生接收端清單及打卡請求。伺服器10之打卡請求產生模組16先依據接收端進行對照工作以產生一接收端清單,接收端清單係由至少一個推播識別碼所組成,然後再依據電子地圖位置座標、指定時間及接收端清單產生打卡請求。 Step S107: The punch request generation module 16 generates a receiving list and a punch request. The punch request generating module 16 of the server 10 first performs a comparison operation according to the receiving end to generate a receiving end list, and the receiving end list is composed of at least one push broadcast identification code, and then according to the electronic map position coordinates, the specified time and the receiving. The side list generates a punch request.

步驟S108:伺服器10將打卡請求傳送至推播閘道器22。 Step S108: The server 10 transmits a punch request to the push gateway 22.

步驟S109:推播閘道器22產生推播通知。推播閘道器22依據打卡請求產生推播通知。 Step S109: The push gateway 22 generates a push notification. The push gateway 22 generates a push notification in accordance with the punch request.

步驟S110:透過外部推播主機24發送該推播通知,外部推播主機24例如:MPNS、GCM以及APNS。 Step S110: The push notification is sent by the external push host 24, and the external push host 24 is, for example, MPNS, GCM, and APNS.

步驟S111:第二行動通訊裝置26b接收推播通知。第二行動通訊裝置26b即本發明行動通訊裝置26,例如HTC OneX智慧手機,並 假設第二行動通訊裝置26b之使用者係“A組織”之第二成員。 Step S111: The second mobile communication device 26b receives the push notification. The second mobile communication device 26b is the mobile communication device 26 of the present invention, such as an HTC OneX smart phone, and It is assumed that the user of the second mobile communication device 26b is the second member of the "A organization".

步驟S112:於第二行動通訊裝置26b上執行本發明之應用程式28。 Step S112: The application 28 of the present invention is executed on the second mobile communication device 26b.

步驟S113:第二行動通訊裝置26b與公有雲44之伺服器10建立網路連線。執行應用程式28後,應用程式28之第二網路通訊模組32與公有雲44之伺服器10之第一網路通訊模組12建立TCP協定、HTTP協定或HTTPS協定之網路連線。 Step S113: The second mobile communication device 26b establishes a network connection with the server 10 of the public cloud 44. After executing the application 28, the second network communication module 32 of the application 28 establishes a TCP protocol, an HTTP protocol, or an HTTPS protocol network connection with the first network communication module 12 of the server 10 of the public cloud 44.

步驟S114:上傳組織識別碼、第二帳號及第二密碼以進行登入驗證。第二成員利用第二行動通訊裝置26b之應用程式28輸入組織識別碼、第二帳號及第二密碼,組織識別碼係代表第二成員所隸屬的“A組織”,接著,將組織識別碼、第二帳號及第二密碼上傳至公有雲44之伺服器10,並由公有雲44之登入驗證模組14進行登入驗證。 Step S114: uploading the organization identification code, the second account number and the second password for login verification. The second member inputs the organization identification code, the second account number and the second password by using the application 28 of the second mobile communication device 26b. The organization identification code represents the "A organization" to which the second member belongs, and then the organization identification code, The second account and the second password are uploaded to the server 10 of the public cloud 44, and the login verification module 14 of the public cloud 44 performs login verification.

步驟S115:鎖定應用程式28以該組織識別碼登入之所有執行功能,僅允許應用程式28執行打卡作業。當第二行動通訊裝置26b之應用程式28接收到打卡請求之推播通知後,功能鎖定模組36即檢查第二成員是否已完成打卡作業(即成功上傳打卡資訊),若未完成打卡作業則由功能鎖定模組36強制鎖定應用程式28以該組織識別碼登入之所有其他功能之執行,限制第二成員僅能執行打卡作業。 Step S115: The locking application 28 logs in all the execution functions of the organization identification code, and only allows the application 28 to perform the punching operation. After the application 28 of the second mobile communication device 26b receives the push notification of the punch request, the function lock module 36 checks whether the second member has completed the punch operation (ie, successfully uploads the punch information), and if the punch operation is not completed, The function locking module 36 forcibly locks the execution of the application 28 with all other functions of the organization identification code entry, restricting the second member to only perform the punching operation.

步驟S116:執行打卡作業,並依據伺服模組所在位置資訊進行轉向。由於功能鎖定模組36已鎖定應用程式28以該組織識別碼登入之所有執行功能,第二成員僅能執行打卡作業,當執行打卡作業時應用程式28接收到與伺服模組(出勤考核模組18)對應之指令(即打卡指令),系統即依 據儲存於公有雲44之伺服模組所在位置資訊將第二行動通訊裝置26b之應用程式28進行轉向,此例之伺服模組所在位置資訊係將出勤考核模組18(伺服模組之一)設置於私有雲46,故,所謂轉向係指連線轉至私有雲46之伺服器10。打卡作業係依據打卡請求之指定時間內於電子地圖位置座標或電子地圖位置座標之一距離範圍內,接收打卡指令(第二成員執行打卡模組38)以產生打卡資訊,並上傳打卡資訊至伺服器10,打卡資訊至少包含打卡時間戳記以及當下位置座標。 Step S116: Perform a punching operation, and perform steering according to the location information of the servo module. Since the function locking module 36 has locked the application 28 with all the execution functions of the organization identification code, the second member can only perform the punching operation, and when the punching operation is performed, the application 28 receives the servo module (the attendance assessment module). 18) Corresponding instructions (ie punching instructions), the system is The application 28 of the second mobile communication device 26b is steered according to the location information of the servo module stored in the public cloud 44. The location information of the servo module in this example is the attendance assessment module 18 (one of the servo modules). Set in the private cloud 46, the so-called steering refers to the connection to the server 10 of the private cloud 46. The punching operation receives the punching instruction (the second member executes the punching module 38) to generate the punching information and upload the punching information to the servo within a specified time range of the electronic map position coordinate or the electronic map position coordinate within the specified time of the punch request. The punch card information includes at least a punch time stamp and a current position coordinate.

步驟S117:打卡作業完成後解除鎖定。當第二成員上傳打卡資訊至伺服器10之出勤考核模組18後,即完成打卡作業,功能鎖定模組36解除應用程式28之鎖定,意即第二成員可以任意執行應用程式28之其他功能。 Step S117: The lock is released after the punching operation is completed. After the second member uploads the punch information to the attendance assessment module 18 of the server 10, the card punching operation is completed, and the function locking module 36 unlocks the application 28, that is, the second member can arbitrarily execute other functions of the application 28. .

步驟S118:伺服器10之出勤考核模組18接收打卡資訊並儲存至資料庫20之成員資訊中。 Step S118: The attendance assessment module 18 of the server 10 receives the punch information and stores it in the member information of the database 20.

參閱第5圖,本發明另一實施例之操作子流程圖,此係一子流程圖介於第4圖步驟S115與步驟S116之間,其說明在本發明另一實施例中,當第二成員接到打卡請求之後,首先回傳一“出發地點之打卡資訊”至伺服器10之出勤考核模組18以做為用戶端的“確認回條”(Confirmation of Receipt,亦稱“讀取回條”),此打卡資訊中的打卡時間戳記可視為“讀取打卡請求的時間”,而此打卡資訊中的當下位置座標即視為“出發地點”(或“接收打卡請求之原始地點”),若第二成員未執行打卡模組38(即第二成員未手動執行確認回條打卡作業),則於第二成員移動若干距離之後自動回傳“出發地點之打卡資訊”。步驟S115-1「記錄第二行動通訊裝置 26b之當下位置座標。第二行動通訊裝置26b之打卡模組38存取定位模組30以取得第二行動通訊裝置26b之當下位置座標,此當下位置座標係視為“出發地點”」;步驟S115-2「是否接收打卡指令?第二行動通訊裝置26b之應用程式28於一特定時間(例如“五分鐘”)內判斷是否接收打卡指令,若“是”則跳至步驟S115-3,若“否”則跳至步驟S115-4」;步驟S115-3「手動執行確認回條打卡作業,並依據伺服模組所在位置資訊進行轉向,接收打卡指令(第二成員執行打卡模組38)以產生打卡資訊,再上傳打卡資訊至伺服器10,打卡資訊至少包含打卡時間戳記以及當下位置座標」;步驟S115-4「自動執行確認回條打卡作業,並依據伺服模組所在位置資訊進行轉向,產生打卡指令以產生打卡資訊,並上傳打卡資訊至伺服器10。若第二成員未於一特定時間內手動執行確認回條打卡作業,且第二行動通訊裝置26b移動一特定距離後(例如“移動後距離當下位置座標五百公尺以上”),打卡模組38自動執行以產生打卡資訊,並上傳打卡資訊至伺服器10」。此實施例所產生的“出發地點之打卡資訊”可做為一對照組資訊供人為判讀,用以對比步驟S116所產生之打卡資訊其真實性,例如“由出發地至目的地所花費之時間是否合理”,此實施例之目的在於解決“習見技術缺乏一對照組資訊以做為判斷打卡資訊其真實性”之技術問題。 Referring to FIG. 5, an operation sub-flowchart according to another embodiment of the present invention is a sub-flowchart between step S115 and step S116 of FIG. 4, which illustrates that in another embodiment of the present invention, when After receiving the punch request, the member first returns a "punch information of the departure place" to the attendance assessment module 18 of the server 10 as the "confirmation receipt" of the user terminal (Confirmation of Receipt, also known as "reading the reply slip" "), the time stamp of the punch in the punch information can be regarded as "the time to read the punch request", and the current position coordinate in the punch information is regarded as the "departure place" (or "original place to receive the punch request"), If the second member does not execute the punching module 38 (ie, the second member does not manually perform the confirmation of the return punching operation), the "member of the departure location is automatically returned" after the second member moves a certain distance. Step S115-1 "recording the second mobile communication device 26b's current position coordinates. The punching module 38 of the second mobile communication device 26b accesses the positioning module 30 to obtain the current position coordinate of the second mobile communication device 26b, and the current position coordinate is regarded as the "departure location"; and step S115-2 "receives whether to receive The punching instruction? The application 28 of the second mobile communication device 26b determines whether to receive the punching instruction within a certain time (for example, "five minutes"), if yes, then skips to step S115-3, and if "no", jumps to Step S115-4"; Step S115-3 "Manually perform confirmation of the check-back punching operation, and perform steering according to the location information of the servo module, receive the punching instruction (the second member executes the punching module 38) to generate the punching information, and then upload The punching information is sent to the server 10, and the punching information includes at least the punching time stamp and the current position coordinate; step S115-4 "automatically performing the confirmation of the returning punching operation, and performing steering according to the position information of the servo module, generating a punching instruction to generate the punching card. Information, and upload punch information to the server 10. If the second member does not manually perform the confirmation slip call operation within a certain time, and the second mobile communication device After the 26b is moved by a certain distance (for example, "the distance from the current position is more than 500 meters" after the movement), the punching module 38 is automatically executed to generate the punching information, and the punching information is uploaded to the server 10". The "punch information of the departure place" generated by this embodiment can be used as a control information for human interpretation, which is used to compare the authenticity of the punch information generated in step S116, for example, "the time taken from the place of departure to the destination" Whether it is reasonable or not, the purpose of this embodiment is to solve the technical problem that "the technology lacks a control group to judge the authenticity of the punch information".

綜上所述,本發明所揭露的一種行動打卡系統與方法,解決了先前技術的技術問題,“企業組織可有彈性的多層級結構,並可針對特定層級發出打卡請求”、“利用單一個雲端系統服務眾多企業組織”、“利用單一個應用程式與單一個接口存取混合式雲端系統”、“利用強制性打卡技術鎖定其他功能”以及“允許任意指定打卡位置”。 In summary, the mobile carding system and method disclosed in the present invention solves the technical problem of the prior art, "the enterprise organization can have a flexible multi-level structure, and can issue a punch request for a specific level" and "use a single one. The cloud system services a number of enterprise organizations, "using a single application to access a hybrid cloud system with a single interface", "using a mandatory punch card technology to lock other functions" and "allowing arbitrary designated punch locations."

雖然本發明的技術內容已經以較佳實施例揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神所作些許之更動與潤飾,皆應涵蓋於本發明的範疇內,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。 Although the technical content of the present invention has been disclosed in the above preferred embodiments, it is not intended to limit the present invention, and any modifications and refinements made by those skilled in the art without departing from the spirit of the present invention are encompassed by the present invention. The scope of protection of the present invention is therefore defined by the scope of the appended claims.

10‧‧‧伺服器 10‧‧‧Server

12‧‧‧第一網路通訊模組 12‧‧‧First network communication module

14‧‧‧登入驗證模組 14‧‧‧ Login verification module

16‧‧‧打卡請求產生模組 16‧‧‧ punch request generation module

18‧‧‧出勤考核模組 18‧‧‧Attendance assessment module

20‧‧‧資料庫 20‧‧‧Database

22‧‧‧推播閘道器 22‧‧‧Pushing the gateway

24‧‧‧推播主機 24‧‧‧Push host

26‧‧‧行動通訊裝置 26‧‧‧Mobile communication devices

28‧‧‧應用程式 28‧‧‧Application

30‧‧‧定位模組 30‧‧‧ Positioning Module

32‧‧‧第二網路通訊模組 32‧‧‧Second network communication module

34‧‧‧登入模組 34‧‧‧ Login Module

36‧‧‧功能鎖定模組 36‧‧‧Function Locking Module

38‧‧‧打卡模組 38‧‧‧ Punch Module

40‧‧‧打卡提醒模組 40‧‧‧ Punch reminder module

42‧‧‧雲端 42‧‧‧Cloud

Claims (21)

一種行動打卡系統,包含:一資料庫,儲存有複數個成員資訊,每個該成員資訊包含一打卡資訊;一伺服器,存取該資料庫並與具有該些成員資訊之一的至少一行動通訊裝置建立一網路連線,該伺服器依據一電子地圖位置座標、一指定時間及一接收端清單產生一打卡請求,其中該接收端清單包含對應該些成員資訊之一之至少一推播識別碼;以及一推播閘道器,依據該打卡請求產生一推播通知,並透過一推播主機發送該推播通知至該行動通訊裝置;其中,該伺服器經由該網路連線接收該行動通訊裝置所上傳之該打卡資訊,該打卡資訊儲存至該資料庫中;其中,由該資料庫、該伺服器及該推播閘道器組合成一雲端。 An action punching system comprising: a database storing a plurality of member information, each of the member information including a punch card information; a server accessing the database and at least one action having one of the member information The communication device establishes a network connection, and the server generates a card request according to an electronic map location coordinate, a specified time, and a receiver list, wherein the receiver list includes at least one push corresponding to one of the member information. An identification code; and a push gateway device, generating a push notification according to the punch request, and transmitting the push notification to the mobile communication device via a push broadcast host; wherein the server receives the network via the network connection The punching information uploaded by the mobile communication device is stored in the database; wherein the database, the server and the push gateway are combined into a cloud. 如請求項1所述的行動打卡系統,其中該伺服器彙整該成員資訊中一特定時期之該些打卡資訊成為一出勤資訊。 The action punching system of claim 1, wherein the server aggregates the punch information of the member information for a certain period of time into an attendance information. 如請求項1所述的行動打卡系統,其中該行動通訊裝置包含一定位模組,該定位模組依據當下該行動通訊裝置所在位置產生一當下位置座標,該行動通訊裝置執行一應用程式而與該伺服器建立一網路連線以登入該伺服器,並接收一打卡指令以產生該打卡資訊,經由該網路連線上傳該打卡資訊至該伺服器,其中該打卡資訊至少包含一打卡時間戳記以及該當下位置座標。 The action punching system of claim 1, wherein the mobile communication device comprises a positioning module, wherein the positioning module generates a current position coordinate according to a location of the mobile communication device, and the mobile communication device executes an application and The server establishes a network connection to log in to the server, and receives a punching instruction to generate the punching information, and uploads the punching information to the server via the network connection, wherein the punching information includes at least one punching time Stamp and the current position coordinates. 如請求項3所述的行動打卡系統,其中該行動通訊裝置與該伺服器無 法建立該網路連線時,該打卡資訊暫存在該行動通訊裝置之一記憶體,待該網路連線建立後上傳該打卡資訊至該伺服器。 The action punching system as claimed in claim 3, wherein the mobile communication device and the server have no When the network connection is established, the punch information is temporarily stored in the memory of the mobile communication device, and the punch information is uploaded to the server after the network connection is established. 如請求項3所述的行動打卡系統,其中該行動通訊裝置執行一應用程式以接收該推播通知後,鎖定該應用程式的所有執行功能,直到該應用程式執行一打卡作業後解除鎖定。 The action punching system of claim 3, wherein the mobile communication device executes an application to receive the push notification, and then locks all execution functions of the application until the application performs a punch operation and then unlocks. 如請求項5所述的行動打卡系統,其中該打卡作業係依據該打卡請求之該指定時間於該電子地圖位置座標或該電子地圖位置座標之一距離範圍內,該應用程式接收一打卡指令以產生該打卡資訊,並經由該網路連線上傳該打卡資訊至該伺服器,該打卡資訊至少包含一打卡時間戳記以及一當下位置座標。 The action punching system of claim 5, wherein the punching operation receives a punching instruction according to the specified time of the punching request within a distance of the electronic map location coordinates or the electronic map location coordinates. The punching information is generated, and the punching information is uploaded to the server via the network connection, and the punching information includes at least one dozen time stamp and one current position coordinate. 如請求項5所述的行動打卡系統,其中該行動通訊裝置產生該打卡資訊可解除鎖定該行動通訊裝置。 The action punching system of claim 5, wherein the mobile communication device generates the punch information to unlock the mobile communication device. 如請求項1所述的行動打卡系統,其中該行動通訊裝置執行的應用程式更包含:一打卡提醒模組,依據該打卡請求之該電子地圖位置座標及該指定時間產生一提醒警示。 The action carding system of claim 1, wherein the application executed by the mobile communication device further comprises: a punch reminder module, generating a reminder alert according to the electronic map location coordinates of the punch request and the specified time. 如請求項8所述的行動打卡系統,其中該打卡提醒模組依據該打卡請求之該電子地圖位置座標及該指定時間,於該指定時間到達該電子地圖位置座標或該電子地圖位置座標之一距離範圍內時自動產生該打卡指令。 The action punching system of claim 8, wherein the punch reminder module arrives at the electronic map location coordinates or one of the electronic map location coordinates at the designated time according to the electronic map location coordinates of the punch request and the specified time. The punching instruction is automatically generated when the distance is within the range. 如請求項1所述的行動打卡系統,其中該行動通訊裝置執行的應用程式更包含:一打卡模組,該打卡模組執行一確認回條打卡作業,該確認回條打卡作業係上傳該打卡資訊至該伺服器,該打卡資訊中之該打 卡時間戳記即“讀取打卡請求之時間”,而該打卡資訊中之該當下位置座標即“出發地點”。 The action carding system of claim 1, wherein the application program executed by the mobile communication device further comprises: a punching module, wherein the punching module performs a confirmation slip card punching operation, and the confirming the loopback punching operation uploads the punching card Information to the server, the hit in the punch information The card time stamp is "the time to read the punch request", and the current position coordinate in the punch information is the "departure place". 如請求項10所述的行動打卡系統,其中該確認回條打卡作業係當該行動通訊裝置移動一特定距離後自動執行。 The action carding system of claim 10, wherein the confirmation slip card punching operation is performed automatically when the mobile communication device moves a certain distance. 一種行動打卡方法,應用於由一資料庫、一伺服器與一推播閘道器所組合的一雲端,該方法包含:儲存複數個成員資訊於該資料庫,每個該成員資訊包含一打卡資訊;建立該伺服器與具有該些成員資訊之一的至少一行動通訊裝置之間的一網路連線;由該伺服器依據一電子地圖位置座標、一指定時間及一接收端清單產生一打卡請求,其中該接收端清單包含對應該些成員資訊之一的至少一推播識別碼;由該推播閘道器依據該打卡請求產生一推播通知,並透過一推播主機發送該推播通知至該行動通訊裝置;以及經由該網路連線,由該伺服器接收該行動通訊裝置所上傳之該打卡資訊以儲存該打卡資訊至該資料庫中。 An action punching method is applied to a cloud combined by a database, a server and a push gateway, the method comprising: storing a plurality of member information in the database, each member information comprising a dozen cards Information; establishing a network connection between the server and at least one mobile communication device having one of the member information; generating, by the server, an electronic map location coordinate, a specified time, and a receiving list a punch request, wherein the receiving list includes at least one push identification code corresponding to one of the member information; the push gateway generates a push notification according to the punch request, and sends the push through a push host Broadcasting to the mobile communication device; and receiving, via the network connection, the punching information uploaded by the mobile communication device by the server to store the punching information into the database. 如請求項12所述的行動打卡方法,其中該打卡請求包含該電子地圖位置座標與該指定時間。 The action punching method of claim 12, wherein the punch request includes the electronic map location coordinates and the specified time. 一種行動打卡方法,應用於存取一雲端之一行動通訊裝置,該雲端由一資料庫、一伺服器與一推播閘道器所組合,其中該資料庫儲存有複數個成員資訊,每個該成員資訊包含一打卡資訊,該方法包含: 建立該伺服器與具有該些成員資訊之一的該行動通訊裝置之間的一網路連線;接收一有關打卡請求之推播通知後,鎖定該行動通訊裝置的所有執行功能,直到該行動通訊裝置執行一打卡作業後解除鎖定,其中該打卡請求包含一電子地圖位置座標與一指定時間,該打卡作業係依據該打卡請求之該指定時間於該電子地圖位置座標或該電子地圖位置座標之一距離範圍內,產生該打卡資訊,並經由該網路連線上傳該打卡資訊至該伺服器。 An action punching method is applied to access a mobile communication device in a cloud, the cloud is combined by a database, a server and a push gateway, wherein the database stores a plurality of member information, each The member information includes a dozen card information, and the method includes: Establishing a network connection between the server and the mobile communication device having one of the member information; after receiving a push notification about the punch request, locking all execution functions of the mobile communication device until the action The communication device unlocks after performing a punching operation, wherein the punching request includes an electronic map location coordinate and a specified time, and the punching operation is based on the electronic map location coordinates or the electronic map location coordinates according to the designated time of the punching request. Within a distance range, the punch information is generated, and the punch information is uploaded to the server via the network connection. 如請求項14所述的行動打卡方法,更包含:依據該打卡請求之該電子地圖位置座標及該指定時間產生一提醒警示。 The action punching method as claimed in claim 14, further comprising: generating a reminder alert according to the electronic map location coordinates of the punch request and the specified time. 如請求項14所述的行動打卡方法,其中於該指定時間內到達該電子地圖位置座標時自動產生一打卡指令以產生該打卡資訊。 The action punching method as claimed in claim 14, wherein a punch instruction is automatically generated when the electronic map position coordinate is reached within the specified time to generate the punch information. 如請求項14所述的行動打卡方法,其中該行動通訊裝置包含一定位模組,該定位模組依據當下該行動通訊裝置所在位置產生一當下位置座標,該打卡資訊至少包含一打卡時間戳記以及該當下位置座標。 The action punching method of claim 14, wherein the mobile communication device comprises a positioning module, and the positioning module generates a current position coordinate according to the current location of the mobile communication device, the punching information includes at least one time stamp and The current position coordinates. 如請求項14所述的行動打卡方法,其中該行動通訊裝置與該伺服器無法建立該網路連線時,該打卡資訊暫存在該行動通訊裝置之一記憶體,待該網路連線建立後上傳該打卡資訊至該伺服器。 The action punching method of claim 14, wherein when the mobile communication device and the server are unable to establish the network connection, the punch information is temporarily stored in a memory of the mobile communication device, and the network connection is established. Then upload the punch information to the server. 如請求項15所述的行動打卡方法,其中更包含:記錄該當下位置座標;判斷是否於一特定時間內接收一打卡指令,若“是”則“手動執 行一確認回條打卡作業,並依據伺服模組所在位置資訊進行轉向”,若“否”則“自動執行該確認回條打卡作業,並依據伺服模組所在位置資訊進行轉向”。 The action punching method as claimed in claim 15, further comprising: recording the current position coordinate; determining whether to receive a punch command within a specific time, and if yes, "manually performing After confirming the check-back punching operation, and proceeding according to the location information of the servo module, if "No", then "automatically perform the confirmation and return punching operation, and turn according to the location information of the servo module." 如請求項19所述的行動打卡方法,其中該確認回條打卡作業係上傳該打卡資訊至該伺服器,該打卡資訊中之該打卡時間戳記即“讀取打卡請求之時間”,而該打卡資訊中之該當下位置座標即“出發地點”。 The action punching method according to claim 19, wherein the confirming the check-in punching operation uploads the punching information to the server, and the punching time stamp in the punching information is “the time of reading the punching request”, and the punching is performed. The current position coordinate in the information is the "departure location". 如請求項19所述的行動打卡方法,其中自動執行該確認回條打卡作業係當該行動通訊裝置移動一特定距離後自動執行。 The action punching method according to claim 19, wherein the automatic execution of the confirmation slip card punching operation is automatically performed when the mobile communication device moves a certain distance.
TW104125907A 2014-05-26 2015-03-05 System and method of mobile check-in and a cloud system thereof TWI541750B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW104125907A TWI541750B (en) 2014-05-26 2015-03-05 System and method of mobile check-in and a cloud system thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW103118222 2014-05-26
TW104125907A TWI541750B (en) 2014-05-26 2015-03-05 System and method of mobile check-in and a cloud system thereof

Publications (2)

Publication Number Publication Date
TW201545099A true TW201545099A (en) 2015-12-01
TWI541750B TWI541750B (en) 2016-07-11

Family

ID=55407137

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104125907A TWI541750B (en) 2014-05-26 2015-03-05 System and method of mobile check-in and a cloud system thereof

Country Status (1)

Country Link
TW (1) TWI541750B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI815484B (en) * 2021-06-21 2023-09-11 日商樂天集團股份有限公司 Authentication systems, authentication methods and program products

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI815484B (en) * 2021-06-21 2023-09-11 日商樂天集團股份有限公司 Authentication systems, authentication methods and program products

Also Published As

Publication number Publication date
TWI541750B (en) 2016-07-11

Similar Documents

Publication Publication Date Title
TW201545098A (en) System and method of mobile check-in and a cloud system thereof
CN108961475B (en) Access control deployment method and access control deployment server
EP3497951B1 (en) Secure private location based services
TWI522960B (en) System and method of a must-reply mobile questionnaire
CN104240342B (en) Access control method and device based on identity authentication
CN113360862A (en) Unified identity authentication system, method, electronic device and storage medium
CN108337677A (en) Network authentication method and device
CN104159225A (en) Wireless network based real-name registration system management method and system
CN104599086A (en) Online storage cabinet grid inventory management and grid resource reservation method
CN110930561B (en) Control method and device of intelligent lock
CN105184489A (en) Mobile card punching system and method and cloud system thereof
CN104240014A (en) Door access control method and door access control platform
CN103020505A (en) Information management system and information management method based on fingerprint identification
CN107749854A (en) Client-based single-point logging method and system
TWI541750B (en) System and method of mobile check-in and a cloud system thereof
CN113593094A (en) Apartment intelligent lock management method and system
CN112131544A (en) Shell script method for user management of springboard machine
CN109460647B (en) Multi-device secure login method
JP6368062B1 (en) Authentication device, authentication device control method, and program thereof
TWI522961B (en) System and method of a must-reply mobile questionnaire
Saad et al. A smart e-voting system using RFID authentication method for a campus electoral
TWI740328B (en) System for bluetooth positioning broadcasting, method thereof and bluetooth broadcasting equipment
CN106780158A (en) Photo localization method and system
JP5722271B2 (en) Attribute information acquisition method, attribute information acquisition system using the method, each device and program
KR20200043223A (en) System for providing virtual working space and method for authorizing virtual working space user

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees