Difference between revisions of "EIS Service SDK"
Eric.liang (talk | contribs) |
Eric.liang (talk | contribs) |
||
Line 224: | Line 224: | ||
*'''History''': 06/26/2017 Modified | *'''History''': 06/26/2017 Modified | ||
+ | <pre>{ | ||
+ | "susiCommData":{ | ||
+ | "requestID":1001, | ||
+ | "catalogID": 4, | ||
+ | "commCmd": 2053, //general_start_auto_upload_req | ||
+ | “handlerName”:”general”, | ||
+ | "requestItems":{"All":{}} | ||
+ | "autoUploadIntervalSec": 30 | ||
+ | } | ||
+ | }</pre> | ||
Line 245: | Line 255: | ||
*'''History''': 06/26/2017 Modified | *'''History''': 06/26/2017 Modified | ||
+ | *'''Example''': | ||
+ | '''ServiceName''' : HDD_PMQ | ||
+ | ''' inData ''': | ||
+ | <pre> { | ||
+ | "susiCommData": { | ||
+ | "requestID":1001, | ||
+ | "catalogID": 4, | ||
+ | "commCmd": 2056, //general_stop_auto_upload_req | ||
+ | “handlerName”:”general” | ||
+ | "requestItems":{"All":{}} | ||
+ | } | ||
+ | }</pre> | ||
+ | |||
+ | |||
+ | |||
+ | <span style="color:#FF0000;">'''<span style="font-size:larger;"></span>'''</span> | ||
<span style="color:#FF0000;">'''<span style="font-size:larger;">SV_CODE SV_Action( const char *ServiceName , char *szAction, void *pUserData );</span>'''</span> | <span style="color:#FF0000;">'''<span style="font-size:larger;">SV_CODE SV_Action( const char *ServiceName , char *szAction, void *pUserData );</span>'''</span> | ||
Line 264: | Line 290: | ||
*'''History''': 06/26/2017 Modified | *'''History''': 06/26/2017 Modified | ||
+ | *'''Example''': | ||
+ | |||
+ | '''ServiceName''' : HDD_PMQ | ||
+ | |||
+ | ''' szAction''': | ||
+ | <pre>{ | ||
+ | "susiCommData":{ | ||
+ | "sessionID":"2746E3B65BAB115338B9668CDC5C35C4", | ||
+ | "sensorIDList":{ | ||
+ | "e":[ | ||
+ | { | ||
+ | "n":"SenHub/Info/sw" | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | "commCmd":523, | ||
+ | "requestID":0, | ||
+ | "agentID":"", | ||
+ | "handlerName":"SenHub", | ||
+ | "sendTS":1466057267 | ||
+ | } | ||
+ | }</pre> | ||
+ | |||
+ | |||
[[Category:Editor]] | [[Category:Editor]] |
Revision as of 04:45, 3 July 2017
Contents
Definition
Service Return Code
typedef enum { SV_ER_NOT_IMPLEMENT = -13, /* Does Not Support this command (501) */ SV_ER_TIMEOUT = -12, /* Request Timeout (408) */ SV_ER_SYS_BUSY = -11, /* System is busy (503) */ SV_ER_VALUE_OUT_OF_RNAGE = -10, /* Value is out of range (416) */ SV_ER_SYNTAX_ERROR = -9, /* Format is correct but syntax error (422) */ SV_ER_FORMAT_ERROR = -8, /* Format error (415) */ SV_ER_REQUEST_ERROR = -7, /* Request error (400) */ SV_ER_RESOURCE_LOSE = -6, /* SenHub disconnect (410) */ SV_ER_RESOURCE_LOCKED = -5, /* Resource is in setting (426) */ SV_ER_NOT_FOUND = -4, /* Resource Not Found (404) */ SV_ER_WRITE_ONLY = -3, /* Read Only (405) */ SV_ER_READ_ONLY = -2, /* Write Only (405) */ SV_ER_FAILED = -1, /* Failed (500) */ SV_OK = 0, /* Success (200) */ SV_INITILIZED = 1, /* Library had initilized */ } SV_CODE;
Service Status
typedef enum { SV_UNINIT = 0, SV_INIT = 1, SV_JOINED = 2, SV_LEAVED = 3, }SV_STATUS;
Service Event Callback Function
typedef SV_CODE (SVCALL *Service_Cb) ( SV_EVENT e, char *ServiceName, void *inData, int dataLen, void *UserData )
Service Event Type
typedef enum { SV_E_JoinServiceSystem, // Connected to the Service System SV_E_LeaveServiceSystem, // Disconnected from the Service System SV_E_RegisterService, // Registed a new Service ( ex: HDD_PMQ Plugin ) SV_E_DeregisterService, // Deregisted a Service SV_E_UpdateServiceCapability, // Update Service's Capability SV_E_UpdateData, // Update Service's data value SV_E_ActionResult, // Get / Set Reply SV_E_EventNotify, // EventNotify }SV_EVENT;
Functions
Summary
Item | Function Name | Description |
1 | SV_Initialize | Initialize the Service SDK |
2 | SV_Uninitialize |
UnInitialize the Service SDK |
3 | SV_GetVersion |
Get version of Service SDK |
4 | SV_GetServiceStatus |
Get status of Service System |
5 | SV_Query_Service |
Query All of Service Name |
6 | SV_GetCapability |
Get Service's Capability |
7 | SV_AutoReportStart |
Start Auto Report |
8 | SV_AutoReportStop |
Stop Auto Report |
9 | SV_Action |
Function for Get / Set Command |
Initial & Uninitial
SV_CODE SV_Initialize( Service_Cb fn, void *pInUserData )
- Description:Initialize the Service SDK
- Parameter:
Service_Cb fn: point of callback function
void* pInUserData: user data will pass when callback
- Return value:
SV_CODE - SV_OK : Successful
SV_ER_FAILED : Failed to call
- History: 06/26/2017 Modified
SV_CODE SV_Uninitialize( );
- Description: UnInitialize the Service SDK
- Parameter: NONE
- Return value:
SV_CODE - SV_OK : Successful
SV_ER_FAILED : Failed to call
- History: 06/26/2017 Modified
Information
SV_CODE SV_GetVersion(char *outVersion, int bufSize );
- Description: Get version of Service SDK
- Parameter:
- char * outVersion (out): point of result buffer size ( recomd: 128 bytes ) =>v1.0.1
- int bufsize (in): max size of buffer
- Return value:
SV_CODE - SV_OK : Successful
- SV_ER_FAILED: Failed to call
- History: 06/26/2017 Modified
- Example:
outVersion: "v1.0.1"
SV_STATUS SV_GetServiceStatus( );
- Description: Get status of Service System
- Parameter:
NONE
- Return value:
SERVICE_STATUS - SV_UNINIT: SDK NOT Initilize
- SV_INIT : Init Status
- SV_JOINED: Joined to Service System
- SV_LEAVED: Leaved from Service System
- History: 06/26/2017 Modified
SV_CODE SV_Query_Service( char *outBuf, int bufSize );
- Description: Query All of Service Name
- Parameter:
- char * outBuf (out): point of result buffer size ( recomd: 1024 bytes ) => { "Service":{"e":[{"n":"HDD_PMQ},{"n":"Modebus"}] }
- int bufsize (in): max size of buffer
- Return value:
SV_CODE - SV_OK : Successful
- SV_ER_FAILED: Failed to call
- History: 06/26/2017 Modified
- Example:
outBuf=> {"Service":{"e":[ ] }} or {"Service":{"e":[{"n":"HDD_PMQ},{"n":"Modebus"}]}}
Function for Service
SV_CODE SV_GetCapability( const char *ServiceName, char *outBuffer, int bufSize )
- Description: Get Service's Capability
- Parameter:
- const char * ServiceName (in): Service Name => HDD_PMQ
- char * outBuffer (out): buffer point for Service's Info Spec ( Recommend:4096 characters )
- int bufSize (in): Max buffer size ( Recommend: 4096 )
- Return value:
SV_CODE - SV_OK : Successful
- SV_ER_FAILED: Failed to call
- History: 06/26/2017 Modified
- Example:
ServiceName : HDD_PMQ
outBuffer : Capability of Serice refer to InfoSpec of SenHub
SV_CODE SV_AutoReportStart( const char *ServiceName , char *inData, int inDataLen );
- Description: Start Auto Report
- Parameter:
- const char * ServiceName (in): Service Name => HDD_PMQ
- char * inData (in): Start JSON Data
- int inDataLen (in): Data Length
- Return value:
SV_CODE - SV_OK : Successful
- SV_ER_FAILED: Failed to call
- History: 06/26/2017 Modified
{ "susiCommData":{ "requestID":1001, "catalogID": 4, "commCmd": 2053, //general_start_auto_upload_req “handlerName”:”general”, "requestItems":{"All":{}} "autoUploadIntervalSec": 30 } }
SV_CODE SV_AutoReportStop( const char *ServiceName, char *inData, int inDataLen );
- Description: Stop Auto Report
- Parameter:
- const char * ServiceName (in): Service Name => HDD_PMQ
- char * inData (in): Start JSON Data
- int inDataLen (in): Data Length
- Return value:
SV_CODE - SV_OK : Successful
- SV_ER_FAILED: Failed to call
- History: 06/26/2017 Modified
- Example:
ServiceName : HDD_PMQ
inData :
{ "susiCommData": { "requestID":1001, "catalogID": 4, "commCmd": 2056, //general_stop_auto_upload_req “handlerName”:”general” "requestItems":{"All":{}} } }
SV_CODE SV_Action( const char *ServiceName , char *szAction, void *pUserData );
- Description: Action function for Get / Set Command
- Parameter:
- const char * ServiceName (in) : Service Name => HDD_PMQ
- char * szAction (in) : Action Command with JSON
- void * pUserData ( in): User data will return when result is callbacked
- Return value:
SV_CODE - SV_OK : Successful
- SV_ER_FAILED: Failed to call
- History: 06/26/2017 Modified
- Example:
ServiceName : HDD_PMQ
szAction:
{ "susiCommData":{ "sessionID":"2746E3B65BAB115338B9668CDC5C35C4", "sensorIDList":{ "e":[ { "n":"SenHub/Info/sw" } ] }, "commCmd":523, "requestID":0, "agentID":"", "handlerName":"SenHub", "sendTS":1466057267 } }