Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
en:possible_integration_options_3_in_biostar_2 [2020/04/14 14:12]
yjjung
en:possible_integration_options_3_in_biostar_2 [2020/04/16 13:52]
yjjung [How G-SDK works?]
Line 1: Line 1:
-==== G-SDK download link & Manual ​==== +==== Possible Integration Option 3 : G-SDK ==== 
-Download : https://​github.com/​biostar-dev/​g-sdk/​ \\ +
-Manual : https://​biostar-dev.github.io/​g-sdk/​+
 \\ \\
 +In addition to the integration method using BioStar2 SW API or BioStar2 Device SDK, G-SDK is recennly released as a new integration option for device management, user management, and log management. \\
 +
 +==== What is G-SDK? ====
 +G-SDK is one of the integration options for communicating with BioStar 2 devices. It is a lightweight,​ scalable, and cross-platform solution which will expedite your development. \\ 
 +\\
 +
 +==== How G-SDK works? ====
 +{{:​en:​gsdk_gsdkarchitecture.png?​400|}} \\
 +** [Figure 1. G-SDK architecture] ** \\ 
 \\ \\
-==== G-SDK Overview ==== +G-SDK consists ​of Device Gateway in gRPC Server ​and gRPC Client Libraries. \\ 
-G-SDK is one of integration options for communicating with BioStar 2 devices. It is a lightweight,​ scalable, ​and cross-platform solution which will expedite your development. \\  +Based on gRPC, it supports many programming languages such as Java, C#, Python, Node.js, Go, etc.\\ 
-Based on gRPC, it supports many programming languages such as Java, C#, Python, Node.js, Go, etc. \\+(gRPC (gRPC Remote Procedure Calls) is an open source remote procedure call (RPC) system initially developed at Google in 2015.) ​\\
 \\ \\
 ** Multi-language support ** ** Multi-language support **
   * Language-neutral IDL   * Language-neutral IDL
   * Native client libraries   * Native client libraries
 +\\
 +** Device Gateway ** that communicates with BioStar 2 device can be run on a server or cloud. ** Core modules ** use BioStar 2 protocols and written by GO language.\\
 +{{:​en:​gsdk_structure.png?​400|}} \\
 +** [Figure 2. Device Gateway Structure] ** \\ 
  
-** Mobile/​cloud ready ** 
-  * Easily deployable on Cloud 
-  * Accessible from mobile devices directly 
 \\ \\
  
 +==== What is different from BioStar 2 Device SDK? ====
 +Existing BioStar 2 Device SDK provides C++ library with C#. G-SDK is released to provide flexible development for those who would like to meet the requirements below. ​
 +
 +Let's take a look for an easy comparison between BioStar 2 Device SDK and G-SDK. \\
 +{{:​en:​gsdk_comparison.png?​600|}} \\
 +** [Figure 3. BioStar 2 Device SDK vs G-SDK] ** \\ 
 +\\
 +\\
 +One of the biggest advantages of G-SDK compare to Device SDK is that it supports various languages. For the last years, Device SDK users have had difficulty using development language other than C++ or C# which is in the sample code. \\
 +Since BioStar 2 Device SDK can communicate with C++ library, you have to use C++ language or need to marshall all the APIs and structures in the library into other languages. Currently BioStar 2 Device SDK provides only C# marshalling sample. \\
 +This is a limitation of BioStar 2 Device SDK due to the structure. \\
 +{{:​en:​gsdk_devicesdkstructure.png?​900|}} \\
 +** [Figure 4. BioStar 2 Device SDK structure] ** \\ 
 +
 +\\
 +
 +\\
 ''​How G-SDK can support so many languages?'' ​ \\ ''​How G-SDK can support so many languages?'' ​ \\
 It is because G-SDK is based on gRPC. gRPC is an open RPC framework that supports many languages developed by Google. \\ It is because G-SDK is based on gRPC. gRPC is an open RPC framework that supports many languages developed by Google. \\
 Basically, the device gateway is the one that communicates with BioStar 2 device. Your client applications can connect to it using gRPC client libraries.\\ Basically, the device gateway is the one that communicates with BioStar 2 device. Your client applications can connect to it using gRPC client libraries.\\
 \\ \\
 +
 +{{:​en:​gsdk_gsdkstructure.png?​900|}} \\
 +** [Figure 5. G-SDK structure] ** \\ 
 \\ \\
 +
 +==== What are the next features? ====
 \\ \\
-{{:en:gsdk_structure.png|}} \\ + 
-** [Figure ​1G-SDK Structure] ** \\ +** 1. Master Gateway ** \\ 
 +G-SDK can support up to 1000 device connections with a Device gateway. \\ 
 +Currently, Master gateway that will support up to 100,000 device connections is under development. \\ 
 +Master Gateway helps you handle multiple Device gateways and it can be deployed on a cloud server or provide mobile direct accessibility too. \\ 
 +{{:en:gsdk_mastergateway.png?600|}}\\ 
 +** [Figure ​6Device Gateway vs Master Gateway] ** \\ 
 \\ \\
-The device Gateway that communicates with BioStar 2 device can be run on a server or cloud. The core modules use BioStar 2 protocols and written by GO language.\\ 
- 
- 
  
 +** 2. Advanced AC API ** \\
 +G-SDK doesn'​t support advanced AC such as Zone, Wiegand or RS485 but it supports only simple configurations & features. \\
 +In the future, G-SDK will support all the APIs that are supported in the BioStar 2 Device SDK : Zone, Wiegand, RS485, etc. \\
 +\\
 +  ​
 +** 3. More language support samples ** \\
 +G-SDK provides C#, Java, Python, Go and Node samples. Furthermore,​ G-SDK is planning to support Android, iOS, Ruby samples. \\
 +\\
  
- +==== Summary of G-SDK ==== 
-==== What is different from BioStar 2 Device ​SDK==== +** Supported OS ** \\ 
-Existing BioStar 2 Device SDK provides C++ library with C#. G-SDK is released to provide flexible development for those who would like to meet the requirements below.  +Windows, x86/Arm Linux, Mac OS \\
- +
-Let's take a look for an easy comparison between BioStar 2 Device SDK and G-SDK. \\ +
-{{:​en:​gsdk_comparison.png?​600|}} \\ +
-** [Figure 2. BioStar 2 Device SDK vs G-SDK] ​** \\ +
 \\ \\
 +** Maximum number of devices ** \\
 +Up to 1,000 \\
 +\\
 +** Supported Language ** \\
 +C++, Java, Python, Go, Ruby, C#, Node.js, Android Java, Objective-C,​ PHP, Web \\
 +\\
 +** Supported API ** \\
 +The basic AC APIs(Access control, User management, Event log etc) except advanced features such as Zone, Wiegand, RS485 features. \\
 +\\
 +** Supported Device ** \\
 +All BioStar 2 devices \\
 +\\
 +** Not Supported Device ** \\
 +All BioStar 1 Devices \\
 +(BioEntry Plus v2, BioEntry W v2, XPass v2, XPS2 v2, and BLN v2 are not supported.Gen 1 devices are not supported) ​ \\
 +\\
 +** Download ** \\
 +https://​github.com/​biostar-dev/​g-sdk/​ \\
 +\\
 +** Manual ** \\
 +https://​biostar-dev.github.io/​g-sdk/​\\
 \\ \\
-One of the biggest advantages of G-SDK compare to Device SDK is that it supports various languages. For the last years, Device SDK users have had difficulty using development language other than C++ or C# which is in the sample code. \\ 
 \\ \\
-