List filaments for a printer
printer_materialsCheck which catalog and user filaments a given printer can use, grouped by ok, care, no, and unknown states with reasons for each mismatch.
Instructions
Which filaments can this printer print? Every current filament of the catalog and the user file, grouped by state, with the reasons (older sheets of a listed product are counted in note). It reads; it changes nothing.
printer: a printer as the user says it (a name or id; see find_printer). Without it, the printer of the preferences file (print.printer_model) is used; if there is none, the reply is {"ok": false, "error": ...} that says how to name one.
States (facts about the stated values, not a stop; no run is refused because of them): ok (every stated value fits), care (it can work, and the person has to do or know something: fit a hardened nozzle or a chamber heater, take the lower part of a temperature range), no (a stated need is above a stated limit of the printer as it ships, for example an enclosed printer, a nozzle temperature or a bed temperature; the user may have changed the printer), unknown (a value is missing on one side; the reason names it).
Returns: ok, printer (id, name, origin, from), catalog_version, counts, groups, available, user_file, note.
groups:
ok,care,no,unknown, each a list of {id, name, family, origin, available, source, reasons}.reasonslists the checks that are not ok (check, state, text); the text names both values that it compares.sourceis the data sheet of the filament; the source of the printer isprinter.from. The reply is long (about 70 filaments): read the groups that matter and name the few that the user asked for.available: the filaments of
filaments.availableof the preferences, each with its state; they are also marked in the groups. An id that is not found now is left out and named innot_used; an older sheet has its state and a note with the newer id. Say it as a fact with the reason ("PLA Basic: ok on a P1S", "ABS on an A1 mini: no, the maker asks for an enclosed printer"). The user decides. A filament that is not listed:find_material, thensave_material.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| printer | No |