503 Service Unavailable when calling /rws/service/scanner/capability
Incident Properties
Question
Good morning!
Our SOP application crashed, and I am trying to determine why. This is a customer we have been having issue with their devices, we have asked them to get them serviced; however, their Ricoh supplier states the device does not need to be serviced.
I see where I can catch the exception, so our SPO application does not crash; however, I want to understand WHY the exception happened.
In the devices logs at line 551591, see the crash:
[[179442]]53'50"804 487 12-13 11:53:50.118 16663 16663 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.nqueue.embedded.ricoh.wrapper.rws.service.scanner.GetScannerStatusResponseBody.getScannerStatus()' on a null object reference
Just above the crash logging, I see at line 551572 a "503 Service Unavailable" was returned:
12-13 11:53:50.114 16663 16681 W nQ:ScanManager: Failed to start scan job
12-13 11:53:50.114 16663 16681 W nQ:ScanManager: com.nqueue.embedded.ricoh.wrapper.common.InvalidResponseException: 503 Service Unavailable
12-13 11:53:50.114 16663 16681 W nQ:ScanManager: at com.nqueue.embedded.ricoh.wrapper.common.Utils.createInvalidResponseException(Utils.java:48)
12-13 11:53:50.114 16663 16681 W nQ:ScanManager: at com.nqueue.embedded.ricoh.wrapper.rws.service.scanner.Scanner.getCapability(Scanner.java:61)
This is the code:
public Response<GetCapabilityResponseBody> getCapability(Request request) throws IOException, InvalidResponseException {
RestResponse restResponse = execute(
build(RestRequest.METHOD_GET, "/rws/service/scanner/capability", request));
Map<String, Object> body = GenericJsonDecoder.decodeToMap(restResponse.makeContentString("UTF-8"));
switch (restResponse.getStatusCode()) {
case 200:
return new Response<GetCapabilityResponseBody>(restResponse, new GetCapabilityResponseBody(body));
default:
throw Utils.createInvalidResponseException(restResponse, body);
}
}
private GetScannerStatusResponseBody _scannerStatus;
Scanner s = new Scanner();
// this is where the failure occurs - getCapability
_si = s.getCapability(new Request()).getBody();
_scannerStatus = s.getScannerStatus(new Request()).getBody();
Log.d(TAG, "Get scanner status: " + _scannerStatus.getScannerStatus());
An InvalidResponseException is thrown: 503 Service Unavailable. So, if a 503 response is returned to:
/rws/service/scanner/capability
That would mean the device is unavailable, correct?
I want to confirm the device caused the initial problem. I still need to update my code to handle the exception gracefully without a crash.
Thanks
Ricoh C4500 badging issue.
Incident Properties
Question
We have a customer that is attempting to use our application to log into the printer and release print jobs. They can log into the printer with username and password with our application as well as using a card reader. They have a mix of IM 8000 printers and IM C4500 printers. Badging works on all the IM8000 printers, and some of the C4500s, but they have 3 C4500s where it seems we can't get badging to work. We've tried plugging the card readers into a different printer and the card reader works, but putting it back on the 4500 fails. We've verified that they have the IC Card Reader settings configured correctly on the printer, and the correct vendor id and product id show up for the reader under the list of USB devices in the printer web portal. In checking the machine logs it seems in some cases we are capturing the badge data but the printer fails when opening an https connection to our authentication server to send it over, and in other cases the printer isn't even capturing the badge data. Are there any other settings or configurations we could be missing? I know on some printers it's recommended we have the Screen Device always-connection setting enabled, and the customer has it enabled on their IM8000s, but I wasn't able to find this setting on the C4500. Does that setting exist or is there a different setting we need to check on that model? I've attached the log files from one of the devices the customer sent over. These files have been processed with the Ricoh Logcat tool.
MGR:PTH:isConnected is false, do not request
Incident Properties
Question
I have an issue where our SOP app's scans are being canceled. I have not been able to pin point why, I have not found a trigger in our code. The pattern I see is we create the job with this code:
private static final String REST_PATH_JOBS = "/rws/service/scanner/jobs";
public Response<CreateJobResponseBody> createJob(Request request) throws IOException, InvalidResponseException {
RestResponse restResponse = execute(
build(RestRequest.METHOD_POST, REST_PATH_JOBS, request));
Map<String, Object> body = GenericJsonDecoder.decodeToMap(restResponse.makeContentString("UTF-8"));
switch (restResponse.getStatusCode()) {
case 200: // validateOnly=true
Log.d(TAG, "createJob status 200");
return new Response<CreateJobResponseBody>(restResponse, new CreateJobResponseBody(body));
case 201: // validateOnly=false, job created
Log.d(TAG, "createJob status 201");
return new Response<CreateJobResponseBody>(restResponse, new CreateJobResponseBody(body));
default:
// SmartSDK V1.xx
//throw Utils.createInvalidResponseException(restResponse, body);
// SmartSDK V2.00 or later
Log.d(TAG, "createJob status NOT 200 or 201 create job invalid response");
throw createCreateJobInvalidResponseException(restResponse, body);
}
}
We receive the response code 201.
However, the job never starts.
It looks to me that the job might be canceled, and I am not catching it somewhere.
The common denominator I see in the logs is for all jobs that appear to start, and immediately cancel have this in the logs during the scan process:
11-28-2023 07:52:22.198 1230 2618 SdkServ : SYS MGR:PTH:isConnected is false, do not request
What does this log mean? MGR:PTH:isConnected is false, do not request
Losing HDD access
Incident Properties
Question
We save device configs to the hard drive; however, there are times when the device cannot locate the config files. I am trying to understand why, and how to resolve this.
At 11-17 09:42:01.579, I can see in the logs, where the SmartSDK application starts to try to write to a config log:
11-17 09:42:01.579 1469 1492 D nQ:SimpleDataFiles: writeToDataFile: start hddAccessLogic.hddAccessCommonInitProcess.
Thread 1492 is the thread where the application will try to write the client token value to a config file - clientToken.json. It appears that there was some type of Network connectivity problem, during this process.
11-17 09:42:03.265 659 715 I EthernetNetworkFactory: Updating mNetworkAgent with: [ Transports: ETHERNET Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN LinkUpBandwidth>=100000Kbps LinkDnBandwidth>=100000Kbps], [type: Ethernet[], state: DISCONNECTED/DISCONNECTED, reason: (unspecified), extra: 00:26:73:0c:d6:10, roaming: false, failover: false, isAvailable: false], {LinkAddresses: [] Routes: [] DnsAddresses: [] Domains: null MTU: 0} [[27071]]44'32"086 347 11-17 09:42:04.346 659 703 D ConnectivityService: NetworkAgentInfo [Ethernet () - 113] got DISCONNECTED, was satisfying 3
At 11-17 it looks like the application was killed?
11-17 09:42:09.346 659 672 I ActivityManager: Killing 1469:com.nqueue.embedded.ricoh/u0a109 (adj -12): bg anr
After this, I see in the logs, the device loses the values of any variables stored in memory are deleted. (The client token is not stored in memory, anymore.) So, we have to re-load it form the config file.
11-17 09:44:09.120 3630 3630 D nQ:ConfigMan: [logclientToken] nQ:MachineState: checkUpdateToken: token is null
It looks like there are some more network connectivity issues, and the hard drive does not come available for read/write until 9:49 AM:
11-17 09:49:18.459 3630 3630 D nQ:MachineState: MachineStateReceiver hddAvailable: true
Are there any suggestions how to keep these values in memory?
In prior versions if our SmarkSDK Embedded Application, we used SQLite to store configuration values, and never had had issue with not being able to reference those values at any time. We moved to config files saved on the HDD, as per Common Information > Overview > Important Descriptions > 01. Functional Limitations and Notes > 02 Use of NAND (Flash memory) states: "Do not use SQLite."
Thank you. I am attaching the client Device logs for reference.
Serial numbers and model names question
Incident Properties
Question
Hi Ricoh support,
let me give you some context for my following questions:
We have a WebApp that works with different MFP Manufacturers(Ricoh, Sharp, HP, Epson...), We are using the SerialNumber and the Manufacturer name to identify the devices on our systems. One of the Manufacturers cannot guarantee that their serial number are unique between different models , they have different device models with the same SerialNumber. They suggested us to use a combination of SerialNumber combined with the model name.
We are considering that fix but I need to know the following from you:
Are the serial numbers from Ricoh devices unique?
Regarding model names, can the device model returned by the Ricoh SDK change?
Example: device "IMC300" changed to "IMC_300" after a SDK or FirmWare updade.
Thank you
Luís
Connection rest by peer
Incident Properties
Question
Hello,
We have an issue that has been ongoing for a few months now across several customers. The latest has occurred with SBD. When sending an HTTP request from the MFP to the server, it will sporadically get a "Connection reset by peer" exception.
I am attaching a device tracelog and our servlet log from a device at SBD.
We can't seem to pinpoint specific models, but we do know we have only observed the issue on MP* models and haven't yet seen an IM* device have the issue.
Since this is our third customer in the last 10 months or so, we are reasonably certain the issue isn't environmental. Also, when the exception is encountered, it occurs within the same millisecond the request is being created. This indicates to us the request isn't even leaving the MFP.
Any ideas on what could be causing this? We can't recreate this in our lab, but I can get more information from SBD if we need it.
Regards
Bryan
MAINTENANCE SIGNATURE REQUEST FOR PAPERCUT HIVE V1.1.13
Incident Properties
Question
Hi,
Please find attached version 1.1.13 of the PaperCut Hive application for a maintenance signature.
The changes are described as follows
-
To support PaperCut Hive in different language we have included translation to our login, reset access code and couple of other hive related pages
-
Fixed an issue that allowed users to select an invalid region during device setup.
Also we have made sure the provided package does not have any pre-attached dev signature, thanks.
(Please note that we need a SHA-1 signature only, as our app runs on some older devices that do not support SHA-256.)
Thanks,
PaperCut Team
MAINTENANCE SIGNATURE - NDDPRINT CLIENT 5.11.1
Incident Properties
Question
Hello,
I would like to get the maintenance signature of our NDD Print Client application.
The application is compatible with 11x and 12x devices that support the SmartOp panel.
Changes:
1- Removed android:hardwareAccelerated="false" to fix the issue on G3 multifunction printers where, when entering data in a text field, the data does not appear in the field.
2- Adjustment in the SNMP call to make it compatible with retrieving the MAC address of G3 multifunction printers.
Note: The package is unsigned and its passing all the tests in ssdkpkg_checker tool.
Best regards
Development access token
Incident Properties
Question
Hi I need a new dev access token since we are going to test in another device as well:
Item |
Description |
Product ID |
1979711548 |
Vendor Name |
Consensus Cloud Solutions, LLC |
Application Type |
Web Application |
Partner key (Public) |
(attached file) |
Expiration Date |
|
Serial number (When Ricoh request this) |
C94048889 |
Product name* (Only for Web Browser NX application) |
ECFax |
Location* (Only for Web Browser NX application) |
|
<REV-001-R1709> Function (Only for Web Browser NX application) |
- scanner - authentication |
Target Version |
2.00 |
Supportability of Secure Scan on Ricoh MP CW22021SP
Incident Properties
Question
Hello,
Could you please confirm if MP CW22021SP Wide Format Color Inject Multifunction Printer will support Pharos' Secure Scan? We know supporting Secure Print is unlikely, but we wanted to check if Scanning can be supported.
Thanks