ARC: Testing with 1.1.5
Steps to test 1.1.5:
To perform machine creation, we have to perform an authentication step before creating the machine in swagger.
With the help of following URL’s, we can complete the authentication and the machine creation.
Authenticate User:
https://qa3.mosip.net/v1/authmanager/swagger-ui.html#/authmanager/authenticateUseridPwdUsingPOST
Once click on this this link we can see authmanager à POST/authenticate/useridOTP.
In request body use the username, password, and appID as given below:
{
"id": "string",
"metadata": {},
"request": {
"appId": "string",
"password": "string",
"userName": "string"
},
"requesttime": "2018-12-10T06:12:52.994Z",
"version": "string"
}
To complete the authentication, click on the execute button.
Machine Creation:
https://qa3.mosip.net/v1/masterdata/swagger-ui.html#/Machine/createMachineUsingPOST
Once click on the link find Machine use request body to complete the machine creation.
Inside request body pass the json as below:
{
"id": "string",
"metadata": {},
"request": {
"id": "30092",
"ipAddress": "191.132.8.492",
"isActive": true,
"langCode": "eng",
"macAddress": "6F-BA-2A-7B-DD-9E",
"machineSpecId": "1001",
"name": "iLLUmXopo0gF",
"publicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkl8Wq22VYsw8tQGEY-K1zAG2NhH4A_wl8ykMIpQ0QouevG16F0rM-WPp83a5_Kvpt4rdkrx9dA2O3bT84219j0h5OaDCKPl1olmjA3YEqRida1LF5n-nHnRw5gnCe7pjEzsoldZMLIVqSKAF-sOTtxiCsQSfCsUv7pPg1gQtGgupNIWQudYqm0Te0Gx95R9mBB2rdNzMG19gB1eqt-k5s3EP42T2AMad1t80UOagtPzh5WKa9lQ8i7KMceb-SB2GgYH_cYR3zMWTGIt1kMooLUbHQq484Dipws3C6u4jeNiXS_qUQRUt8f1q8eoEmunRWJW7XLQxCdy_pBeIpaoCgwIDAQAB",
"regCenterId": "10002",
"serialNum": "GD5962918684",
"signPublicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1DIMsaxbttbZIU2EnshIAo4DBQ_C2qyC3_ezdE4mTkQBxE_dveVi49g1vZOwTIzvzBfJxW8Jng-ejfSGID7dqj9Kl_6dcpu9Yzsxl2YkJSuwT4DOzG-qYe1uVIGI-lgE3Mi8Mg4aeLIbIZ2RC8C0PJH1Phr4vo88QudBLDloONKVtDW3GfnOpg4rdURi5cSJKsiAmUZ2bl-JqxQMdxPFNEpYiprxK4b2xVLpCATIos1HQAEMF2jH7PLDzVzigTRyWD1sOl0DcS3_vgF17-RjAtE1Xi0rMc6EcChCLL8VcLWiToHbWjSyhE-7ZYyA-dXnUqYSdUbD3ewtu3kHAOIpyQIDAQAB",
"validityDateTime": "2023-12-31T06:22:48.52Z",
"zoneCode": "PHIL"
},
"requesttime": "2023-10-13T06:22:48.52Z",
"version": "string"
}
Here we have to consider few params:
machineSpecId | Need to specify the MachineSpecID. |
name | Name of the registering device/Tab/Mobile. |
publicKey | Generated public key of device/Tab/Mobile. |
regCenterId | Registration center ID |
signPublicKey | Generated public key of device/Tab/Mobile. |
zoneCode | Zone code for that device/Tab/Mobile. |
Once done passing this data click on execute button to send a response. Once the request is executed, we can see the response of created machine in the response section with status code, message and other helping text params.
Status Code | Message | Example Value Model |
200 | OK | { "errors": [ { "errorCode": "string", "message": "string" } ], "id": "string", "metadata": {}, "response": { "createdBy": "string", "id": "string", "ipAddress": "string", "isActive": true, "isDeleted": true, "langCode": "string", "macAddress": "string", "machineSpecId": "string", "name": "string", "serialNum": "string", "updatedBy": "string", "validityDateTime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" }, "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", "version": "string" } |
201 | When Machine successfully created | {"errors": [ { "errorCode": "string", "message": "string" } ], "id": "string", "metadata": {}, "response": { "createdBy": "string", "id": "string", "ipAddress": "string", "isActive": true, "isDeleted": true, "langCode": "string", "macAddress": "string", "machineSpecId": "string", "name": "string", "serialNum": "string", "updatedBy": "string", "validityDateTime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" }, "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", "version": "string" } |
400 | When Request body passed is null or invalid | - |
401 | Unauthorized | - |
403 | Forbidden | - |
404 | When No Machine found | - |
500 | While creating Machine any error occurred | - |
These are the response status we will be getting while creating the machines.
This is how we authenticate and create machine, once machine creation is done, we can start testing the app (Android-Registration-Client) as usual.
Changes to do in Android Studio:
Inside App add/update the server URL pointing to respective environment (Whichever environment you want to target).
Path is: android-registration-client\android\build.gradle
Add the server url: (This is pointing to qa3 environment)
serverBaseURL = "\"https://qa3.mosip.net/\ ""
If any additional changes required from the config can change and run the app and continue and create the packet, sync and upload.
Once packet upload is done need to verify (Check the status) the packet.
Check the packet status:
To check the packet status will use respective environment admin portal and go to section called packet status field and with the RID of packet will check the status.
Example:
· PACKET RECEIVER
·
· Packet has reached Packet Receiver, Jan 3, 2024, 6:11:09 PM
· PACKET RECEIVER
·
· Packet is Uploaded to Landing Zone, Jan 3, 2024, 6:11:18 PM
· SECUREZONE NOTIFICATION
·
· Notification received to securezone, Jan 3, 2024, 6:11:20 PM
· UPLOAD PACKET
·
· Packet Uploaded to Packet Store, Jan 3, 2024, 6:11:37 PM
· VALIDATE PACKET
·
· Packet Validation Successful, Jan 3, 2024, 6:12:10 PM
· PACKET CLASSIFICATION
·
· , Jan 3, 2024, 6:12:18 PM
· CMD VALIDATION
·
· , Jan 3, 2024, 6:12:29 PM
· OPERATOR VALIDATION
·
· , Jan 3, 2024, 6:12:32 PM
· SUPERVISOR VALIDATION
·
· , Jan 3, 2024, 6:12:33 PM
· INTRODUCER VALIDATION
·
· Reprocess, System Exception Occurred - Unable To Process Packet , Jan 3, 2024, 6:12:51 PM
· INTERNAL WORKFLOW_ACTION
·
· Reprocess , , Jan 3, 2024, 6:12:57 PM
This is how we can see step by step status of each packet using RID.