Comments (7)
The script uses GCP's /jobs API for querying the existence of a job.
Furthermore, the script queries the API with the following parameters: printer id and job title, to filter down results.
Please use the simulation page's "Job List API" to see that your job is indeed listed. If not, please provide both console output to help debugging.
Thanks,
Kevin
from cloudprint_logocert.
Hi Kevin,
Thanks for your feedback.
Here is the logs on simulation pages:
{
"success": true,
"request": {
"time": "0",
"params": {
"owner": [
""
],
"q": [
""
],
"offset": [
""
],
"limit": [
""
],
"printerid": [
"00f57d55-de54-3294-d75c-592da0d4a522"
],
"sortorder": [
""
],
"status": [
""
]
},
"user": "[email protected]",
"users": [
"[email protected]"
]
},
"xsrf_token": "AIp06DhPa6jv_RaRgvOb05MvDj3IX1Bsrg:1505700940407",
"jobs": [
],
"range": {
"jobsTotal": "0",
"jobsCount": 0
}
}
Here is the console output while running scripts:
test_19_LocalPrintUpdateGcpServer (main.LocalPrinting)
======================================================================
Verify printer successfully updates GCP servers for local print.
...
Wait for idle state before starting a local print job
[Configurable timeout] PRINTER_STATUS:
Waiting up to 180 seconds for the printer to have status: idle
Device state observed to be: idle
Attempt to get a local job id for up to 30 seconds
Got a job id
Waiting up to 60 seconds for the local print job to be reported to GCP servers
LogoCert INFO: Test ID: 48d084f7-13fa-4a69-aa29-268e998f343c
LogoCert INFO: Result: Failed
LogoCert INFO: Name: LocalPrint.PrintJobStatusMgtPage
LogoCert INFO: Notes: Local Print job not found using GCP /jobs api.
FAIL
======================================================================
FAIL: test_19_LocalPrintUpdateGcpServer (main.LocalPrinting)
======================================================================
Verify printer successfully updates GCP servers for local print.
Traceback (most recent call last):
File "./testcert.py", line 3049, in test_19_LocalPrintUpdateGcpServer
self.assertTrue(job_exists)
AssertionError: False is not true
Ran 1 test in 98.482s
FAILED (failures=1)
Thanks,
Andy
from cloudprint_logocert.
Kevin,
Any update?
Jim
from cloudprint_logocert.
Hi Jim and Andy,
From looking at the output from the simulation page, it does not show any jobs. This is strange because Andy mentioned that https://www.google.com/cloudprint/#jobs shows the local print job correctly.
I suspect that local jobs are not being properly reported to the GCP server. If they are, you should be able to see the jobs in both:
- https://www.google.com/cloudprint/#jobs
- Simulation page
Thoughts?
Thanks,
Kevin
from cloudprint_logocert.
Hi Kevin,
It looks like that the scripts will send non local print job to us before this test, so we saw it on the GCP management page, i just tried to only run this test case, there is no print job shows on the GCP management pages, sorry for the confusion.
Here are some descriptions on the Cloud Print developer website.
https://developers.google.com/cloud-print/docs/privet#53-privetprinterjobstate-api
- Indicates if local printing functionality (/printer/createjob, /printer/submitdoc, /printer/jobstate) should be exposed on the local network. By default should be "true".
- Advanced printing - client should first create a print job on the printer by calling the /privet/printer/createjob API with a valid CJT job ticket in the request. The printer MUST store the print ticket in memory and return a job_id back to the client. Then the client will call the /printer/submitdoc API and specify the previously received job_id. At that time the printer will start printing. The client will poll the printer for print job status by calling the /privet/printer/jobstate API.
Here are some descriptions in spec "Google Cloud Print 2.0 Logo Certification Specification"
- Interaction with other devices that support Privet is possible. For example, Google Chrome enables interaction with devices that broadcast their availability with Privet, beginning with version 31 of Chrome. In version 33, Chrome also supports offline interactions such as local printing.
Test 8.2.7.1 | Advanced Local Print Test |
---|---|
Prerequisites | Printer is registered. |
Test Steps | Validation |
- Client sends POST request over local network to /createjob API with a valid CJT job ticket. | Printer must store the print ticket and return job_id.
- Client calls /submitdoc with job_id | Printer should print document.
3. Client polls /privet/printer/jobstate | Printer should return job state.
so is there any spec that required that local print job should be reported to GCP server? please let me know if i have any misunderstanding on these specs.
Thanks,
Andy
from cloudprint_logocert.
Hi Andy,
No problem, thanks for the clarification.
The specifications you provided are valid; moreover, there is an additional requirement that is likely to be missed. Please see the following specifications: https://developers.google.com/cloud-print/docs/privet#52-privetprintersubmitdoc-api
Printers are now required to update GCP servers even for local jobs. Please take a look and see if your team can implement this feature.
Thanks,
Kevin
from cloudprint_logocert.
Hi Kevin,
Thanks for your information, we will have firmware change to pass the test.
Andy
from cloudprint_logocert.
Related Issues (20)
- Can LocalPrint.PDFPageRange test check if page_range is supported in CDD HOT 1
- GCP Tool Questions, version 2 HOT 1
- fails testNoMediaInTray() and testOpenPaperTray() HOT 7
- Local API Creatjob HOT 3
- fails testJobStateMissingToner() HOT 2
- fails testJobStateWithPaperJam() HOT 5
- 1.6.34 NotInCDD.margins failed HOT 8
- PrivetRegistration.PrinterPanelCancel/PrivetAPI.RegistrationInvalidUserAuthToken failed HOT 2
- CDD.duplex failed HOT 2
- Error message for test Printer.RemoveMediafromTray doesn't match string search HOT 1
- testDeviceOffNoAdvertisePrivet issue HOT 1
- a special test file (85748k) cannot be printed through GCP HOT 1
- FitToPage option in device HOT 1
- “Could not convert to PDF” will pops up in manage GCP window when we select customized signal page of PPT to print. HOT 2
- Google converted the 1st, 2nd page of a special pdf file as blank if print on the printer which is not support PDF through GCP
- 1.13.9 & 1.13.10 have the same Test Case ID
- Google Cloud Print is not converting Excel sheet properly.
- if possible to add/support "Imaging Drum" in 1.10.8 Printer.RemoveTonerCartridg
- ZIJANG-8330 Thermal Receipt Printer is writing blank page
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cloudprint_logocert.