From: Michael Sweet
IPP operations
| IPP_OP_ALLOCATE_PRINTER_RESOURCES | Allocate-Printer-Resources: Use resources for a printer. |
|---|---|
| IPP_OP_CANCEL_CURRENT_JOB | Cancel-Current-Job: Cancel the current job |
| IPP_OP_CANCEL_JOB | Cancel-Job: Cancel a job |
| IPP_OP_CANCEL_JOBS | Cancel-Jobs: Cancel all jobs (administrative) |
| IPP_OP_CANCEL_MY_JOBS | Cancel-My-Jobs: Cancel a user's jobs |
| IPP_OP_CANCEL_RESOURCE | Cancel-Resource: Uninstall a resource. |
| IPP_OP_CANCEL_SUBSCRIPTION CUPS 1.2/macOS 10.5 | Cancel-Subscription: Cancel a subscription |
| IPP_OP_CLOSE_JOB | Close-Job: Close a job and start printing |
| IPP_OP_CREATE_JOB | Create-Job: Create an empty print job |
| IPP_OP_CREATE_JOB_SUBSCRIPTIONS CUPS 1.2/macOS 10.5 | Create-Job-Subscriptions: Create one of more job subscriptions |
| IPP_OP_CREATE_PRINTER | Create-Printer: Create a new service. |
| IPP_OP_CREATE_PRINTER_SUBSCRIPTIONS CUPS 1.2/macOS 10.5 | Create-Printer-Subscriptions: Create one or more printer subscriptions |
| IPP_OP_CREATE_RESOURCE | Create-Resource: Create a new (empty) resource. |
| IPP_OP_CREATE_RESOURCE_SUBSCRIPTIONS | Create-Resource-Subscriptions: Create event subscriptions for a resource. |
| IPP_OP_CREATE_SYSTEM_SUBSCRIPTIONS | Create-System-Subscriptions: Create event subscriptions for a system. |
| IPP_OP_CUPS_ADD_MODIFY_CLASS | CUPS-Add-Modify-Class: Add or modify a class |
| IPP_OP_CUPS_ADD_MODIFY_PRINTER | CUPS-Add-Modify-Printer: Add or modify a printer |
| IPP_OP_CUPS_AUTHENTICATE_JOB CUPS 1.2/macOS 10.5 | CUPS-Authenticate-Job: Authenticate a job |
| IPP_OP_CUPS_INVALID | Invalid operation name for ippOpValue |
| IPP_OP_CUPS_MOVE_JOB | CUPS-Move-Job: Move a job to a different printer |
| IPP_OP_CUPS_SET_DEFAULT | CUPS-Set-Default: Set the default printer |
| IPP_OP_DEALLOCATE_PRINTER_RESOURCES | Deallocate-Printer-Resources: Stop using resources for a printer. |
| IPP_OP_DELETE_PRINTER | Delete-Printer: Delete an existing service. |
| IPP_OP_DISABLE_ALL_PRINTERS | Disable-All-Printers: Stop accepting new jobs on all services. |
| IPP_OP_DISABLE_PRINTER | Disable-Printer: Reject new jobs for a printer |
| IPP_OP_ENABLE_ALL_PRINTERS | Enable-All-Printers: Start accepting new jobs on all services. |
| IPP_OP_ENABLE_PRINTER | Enable-Printer: Accept new jobs for a printer |
| IPP_OP_GET_JOBS | Get-Jobs: Get a list of jobs |
| IPP_OP_GET_JOB_ATTRIBUTES | Get-Job-Attribute: Get information about a job |
| IPP_OP_GET_NOTIFICATIONS CUPS 1.2/macOS 10.5 | Get-Notifications: Get notification events |
| IPP_OP_GET_PRINTERS | Get-Printers: Get a list of services. |
| IPP_OP_GET_PRINTER_ATTRIBUTES | Get-Printer-Attributes: Get information about a printer |
| IPP_OP_GET_PRINTER_SUPPORTED_VALUES | Get-Printer-Supported-Values: Get supported values |
| IPP_OP_GET_SUBSCRIPTIONS CUPS 1.2/macOS 10.5 | Get-Subscriptions: Get list of subscriptions |
| IPP_OP_GET_SUBSCRIPTION_ATTRIBUTES CUPS 1.2/macOS 10.5 | Get-Subscription-Attributes: Get subscription information |
| IPP_OP_GET_SYSTEM_ATTRIBUTES | Get-System-Attributes: Get system object attributes. |
| IPP_OP_GET_SYSTEM_SUPPORTED_VALUES | Get-System-Supported-Values: Get supported values for system object attributes. |
| IPP_OP_HOLD_JOB | Hold-Job: Hold a job for printing |
| IPP_OP_HOLD_NEW_JOBS | Hold-New-Jobs: Hold new jobs |
| IPP_OP_IDENTIFY_PRINTER | Identify-Printer: Make the printer beep, flash, or display a message for identification |
| IPP_OP_INSTALL_RESOURCE | Install-Resource: Install a resource. |
| IPP_OP_PAUSE_ALL_PRINTERS | Pause-All-Printers: Stop all services immediately. |
| IPP_OP_PAUSE_ALL_PRINTERS_AFTER_CURRENT_JOB | Pause-All-Printers-After-Current-Job: Stop all services after processing the current jobs. |
| IPP_OP_PAUSE_PRINTER | Pause-Printer: Stop a printer |
| IPP_OP_PAUSE_PRINTER_AFTER_CURRENT_JOB | Pause-Printer-After-Current-Job: Stop printer after the current job |
| IPP_OP_PRINT_JOB | Print-Job: Print a single file |
| IPP_OP_PROMOTE_JOB | Promote-Job: Promote a job to print sooner |
| IPP_OP_REGISTER_OUTPUT_DEVICE | Register-Output-Device: Register a remote service. |
| IPP_OP_RELEASE_HELD_NEW_JOBS | Release-Held-New-Jobs: Release new jobs that were previously held |
| IPP_OP_RELEASE_JOB | Release-Job: Release a job for printing |
| IPP_OP_RENEW_SUBSCRIPTION CUPS 1.2/macOS 10.5 | Renew-Subscription: Renew a printer subscription |
| IPP_OP_RESTART_JOB DEPRECATED | Restart-Job: Reprint a job |
| IPP_OP_RESTART_SYSTEM | Restart-System: Restart all services. |
| IPP_OP_RESUME_ALL_PRINTERS | Resume-All-Printers: Start job processing on all services. |
| IPP_OP_RESUME_JOB | Resume-Job: Resume the current job |
| IPP_OP_RESUME_PRINTER | Resume-Printer: Start a printer |
| IPP_OP_SCHEDULE_JOB_AFTER | Schedule-Job-After: Schedule a job to print after another |
| IPP_OP_SEND_DOCUMENT | Send-Document: Add a file to a job |
| IPP_OP_SEND_RESOURCE_DATA | Send-Resource-Data: Upload the data for a resource. |
| IPP_OP_SET_JOB_ATTRIBUTES | Set-Job-Attributes: Set job values |
| IPP_OP_SET_PRINTER_ATTRIBUTES | Set-Printer-Attributes: Set printer values |
| IPP_OP_SET_RESOURCE_ATTRIBUTES | Set-Resource-Attributes: Set resource object attributes. |
| IPP_OP_SET_SYSTEM_ATTRIBUTES | Set-System-Attributes: Set system object attributes. |
| IPP_OP_SHUTDOWN_ALL_PRINTERS | Shutdown-All-Printers: Shutdown all services. |
| IPP_OP_SHUTDOWN_ONE_PRINTER | Shutdown-One-Printer: Shutdown a service. |
| IPP_OP_STARTUP_ALL_PRINTERS | Startup-All-Printers: Startup all services. |
| IPP_OP_STARTUP_ONE_PRINTER | Startup-One-Printer: Start a service. |
| IPP_OP_SUSPEND_CURRENT_JOB | Suspend-Current-Job: Suspend the current job |
| IPP_OP_VALIDATE_JOB | Validate-Job: Validate job values prior to submission |
CUPS supports several methods of auto-configuration via PPD keywords.
+*APAutoSetupTool: "/LibraryPrinters/vendor/filename"
@@ -506,6 +508,7 @@ LINE-END = CR / LF / CR LF *APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool" +*?MainKeyword: "
@@ -535,6 +538,7 @@ LINE-END = CR / LF / CR LF
*CloseUI: OptionDuplex
+
*?OIDMainKeyword: ".n.n.n..."
@@ -566,6 +570,7 @@ LINE-END = CR / LF / CR LF
+
*cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"
@@ -642,6 +647,7 @@ f(x) = density * x gamma *cupsICCQualifier3: Resolution +*APSupportsCustomColorMatching: true
@@ -743,6 +749,7 @@ f(x) = density * x gamma
+
*cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."
@@ -773,6 +780,7 @@ f(x) = density * x gamma
*cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi"
+
*cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."
@@ -990,6 +998,7 @@ option value is "1234" then CUPS will output the string "@PJL SET PASSCODE=1234"The resulting dictionary sets the page device attributes that are sent to your raster driver in the page header.
+There are many possible implementations of the CustomPageSize code. For CUPS raster drivers, the following code is recommended:
@@ -1003,6 +1012,7 @@ option value is "1234" then CUPS will output the string "@PJL SET PASSCODE=1234" *CustomPageSize True: "pop pop pop <</PageSize[5 -2 roll]/ImagingBBox null>>setpagedevice" +CUPS supports the following PostScript operators in addition to the usual PostScript number, string (literal and hex-encoded), boolean, null, and name values:
@@ -1062,6 +1072,7 @@ PRE B { +Table 2 shows the supported page device attributes along with PostScript code examples.
@@ -1333,6 +1344,7 @@ PRE B {The CUPS media keywords allow drivers to specify alternate custom page size limits based on up to two options.
+*cupsMediaQualifier2: MainKeyword
@@ -1352,6 +1364,7 @@ custom page size limits. *cupsMinSize ..Photo: "300 300" +*cupsMediaQualifier3: MainKeyword
@@ -1371,6 +1384,7 @@ custom page size limits. *cupsMinSize ..Photo: "300 300" +*cupsMinSize .Qualifier2.Qualifier3: "width length"
@@ -1394,6 +1408,7 @@ are used to identify options to use for matching.
*cupsMaxSize .Qualifier2.Qualifier3: "width length"
@@ -1531,6 +1546,7 @@ will be ignored.
Also see the related APDuplexRequiresFlippedMargin keyword.
+*cupsCommands: "name name2 ... nameN"
@@ -1562,6 +1578,7 @@ printing is selected. The default value isfalse.
*cupsEvenDuplex: true
+
*cupsFax: boolean
@@ -1574,6 +1591,7 @@ printing is selected. The default value isfalse.
*cupsFax: true
+
*cupsFilter: "source/type cost program"
@@ -1596,6 +1614,7 @@ the special filter program "-" may be specified. *cupsFilter: "application/vnd.cups-postscript 0 -" +*cupsFilter2: "source/type destination/type cost program"
@@ -1621,6 +1640,26 @@ the special filter program "-" may be specified. *cupsFilter2: "application/vnd.cups-postscript application/postscript 0 -" + +*cupsFinishingTemplate name/text: ""
+ +This option keyword specifies a finishing template (preset) that applies zero or more finishing processes to a job. Unlike cupsIPPFinishings, only one template can be selected by the user. PPD files also generally apply a constraint between this option and other finishing options like Booklet, FoldType, PunchMedia, and StapleWhen.
+ +Examples:
+ ++*cupsFinishingTemplate none/None: "" +*cupsFinishingTemplate fold/Letter Fold: "" +*cupsFinishingTemplate punch/2/3-Hole Punch: "" +*cupsFinishingTemplate staple/Corner Staple: "" +*cupsFinishingTemplate staple-dual/Double Staple: "" +*cupsFinishingTemplate staple-and-fold/Corner Staple and Letter Fold: "" +*cupsFinishingTemplate staple-and-punch/Corner Staple and 2/3-Hole Punch: "" ++ +
*cupsFlipDuplex: boolean
@@ -1656,6 +1695,7 @@ Ghostscript can use: *cupsFlipDuplex: true +*cupsIPPFinishings number/text: "*Option Choice ..."
@@ -1672,6 +1712,7 @@ values to PPD options and choices. *cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape" +*cupsIPPReason reason/Reason Text: "optional URIs"
@@ -1712,6 +1753,7 @@ http://www.vendor.com/help" *End +*cupsIPPSupplies: boolean
@@ -1813,6 +1855,7 @@ hardware. The default value isfalse.
*cupsManualCopies: true
+
*cupsMarkerName/Name Text: ""
@@ -1827,6 +1870,7 @@ generated by the driver to human readable text. *cupsMarkerName cyanToner/Cyan Toner: "" +*cupsMarkerNotice: "disclaimer text"
@@ -1841,6 +1885,7 @@ are approximate". *cupsMarkerNotice: "Supply levels are approximate." +*cupsMaxCopies: integer
@@ -1854,6 +1899,7 @@ are approximate". *cupsMaxCopies: 99 +*cupsModelNumber: number
@@ -1885,6 +1931,7 @@ assumed. *cupsPJLCharset: "UTF-8" +*cupsPJLDisplay: "what"
@@ -1904,6 +1951,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job". *cupsPJLDisplay: "none" +*cupsPortMonitor urischeme/Descriptive Text: "port monitor"
@@ -1936,6 +1984,7 @@ to disable the port monitor for the given URI scheme. *cupsPortMonitor usb/USB Status Monitor: "epson-usb" +*cupsPreFilter: "source/type cost program"
@@ -1979,6 +2028,7 @@ before the filter that accepts the given MIME type. *CloseUI: *cupsPrintQuality +*cupsSingleFile: Boolean
@@ -1995,6 +2045,7 @@ before the filter that accepts the given MIME type. *cupsSingleFile: True +*cupsSNMPSupplies: boolean
@@ -2010,6 +2061,7 @@ the standard SNMP Printer MIB OIDs for supply levels. The default value is *cupsSNMPSupplies: False +*cupsVersion: major.minor
@@ -2068,6 +2120,7 @@ in order to be usable with all applications. *APDialogExtension: "/Library/Printers/vendor/options.plugin" +*APDuplexRequiresFlippedMargin: boolean
@@ -2150,6 +2203,7 @@ and the Tumble page attribute.Also see the related cupsBackSide keyword.
+*APHelpBook: "bundle URL"
@@ -2165,6 +2219,7 @@ looking up IPP reason codes for this printer driver. The *APHelpBook: "file:///Library/Printers/vendor/Help.bundle" +*APICADriver: boolean
@@ -2179,6 +2234,7 @@ Architecture (ICA) driver for scanning. The default is False. *APScanAppBundleID: "com.apple.ImageCaptureApp" +*APPrinterIconPath: "/Library/Printers/vendor/filename.icns"
@@ -2193,6 +2249,7 @@ displaying the printer. The file must be in the Apple icon format. *APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns" +*APPrinterLowInkTool: "/Library/Printers/vendor/program"
@@ -2210,6 +2267,7 @@ Technical Note TN2144 for more information. *APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool" +*APPrinterPreset name/text: "*Option Choice ..."
@@ -2280,6 +2338,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value *fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: "" +*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"
@@ -2295,6 +2354,7 @@ information. *APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app" +*APScannerOnly: boolean
@@ -2309,6 +2369,7 @@ capabilities. The default is False. *APScannerOnly: True +*APScanAppBundleID: "bundle ID"
@@ -2326,6 +2387,15 @@ the device.CUPS supports several methods of auto-configuration via PPD keywords.
+*APAutoSetupTool: "/LibraryPrinters/vendor/filename"
@@ -45,6 +46,7 @@ LINE-END = CR / LF / CR LF *APAutoSetupTool: "/Library/Printers/vendor/Tools/autosetuptool" +*?MainKeyword: "
@@ -74,6 +76,7 @@ LINE-END = CR / LF / CR LF
*CloseUI: OptionDuplex
+
*?OIDMainKeyword: ".n.n.n..."
@@ -105,6 +108,7 @@ LINE-END = CR / LF / CR LF
+
*cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"
@@ -181,6 +185,7 @@ f(x) = density * x gamma *cupsICCQualifier3: Resolution +*APSupportsCustomColorMatching: true
@@ -282,6 +287,7 @@ f(x) = density * x gamma
+
*cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."
@@ -312,6 +318,7 @@ f(x) = density * x gamma
*cupsUIConstraints photo: "*OutputMode Photo *MediaType Transparency *Resolution 1200dpi"
+
*cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."
@@ -529,6 +536,7 @@ option value is "1234" then CUPS will output the string "@PJL SET PASSCODE=1234"The resulting dictionary sets the page device attributes that are sent to your raster driver in the page header.
+There are many possible implementations of the CustomPageSize code. For CUPS raster drivers, the following code is recommended:
@@ -542,6 +550,7 @@ option value is "1234" then CUPS will output the string "@PJL SET PASSCODE=1234" *CustomPageSize True: "pop pop pop <</PageSize[5 -2 roll]/ImagingBBox null>>setpagedevice" +CUPS supports the following PostScript operators in addition to the usual PostScript number, string (literal and hex-encoded), boolean, null, and name values:
@@ -601,6 +610,7 @@ PRE B { +Table 2 shows the supported page device attributes along with PostScript code examples.
@@ -872,6 +882,7 @@ PRE B {The CUPS media keywords allow drivers to specify alternate custom page size limits based on up to two options.
+*cupsMediaQualifier2: MainKeyword
@@ -891,6 +902,7 @@ custom page size limits. *cupsMinSize ..Photo: "300 300" +*cupsMediaQualifier3: MainKeyword
@@ -910,6 +922,7 @@ custom page size limits. *cupsMinSize ..Photo: "300 300" +*cupsMinSize .Qualifier2.Qualifier3: "width length"
@@ -933,6 +946,7 @@ are used to identify options to use for matching.
*cupsMaxSize .Qualifier2.Qualifier3: "width length"
@@ -1070,6 +1084,7 @@ will be ignored.
Also see the related APDuplexRequiresFlippedMargin keyword.
+*cupsCommands: "name name2 ... nameN"
@@ -1101,6 +1116,7 @@ printing is selected. The default value isfalse.
*cupsEvenDuplex: true
+
*cupsFax: boolean
@@ -1113,6 +1129,7 @@ printing is selected. The default value isfalse.
*cupsFax: true
+
*cupsFilter: "source/type cost program"
@@ -1135,6 +1152,7 @@ the special filter program "-" may be specified. *cupsFilter: "application/vnd.cups-postscript 0 -" +*cupsFilter2: "source/type destination/type cost program"
@@ -1160,6 +1178,26 @@ the special filter program "-" may be specified. *cupsFilter2: "application/vnd.cups-postscript application/postscript 0 -" + +*cupsFinishingTemplate name/text: ""
+ +This option keyword specifies a finishing template (preset) that applies zero or more finishing processes to a job. Unlike cupsIPPFinishings, only one template can be selected by the user. PPD files also generally apply a constraint between this option and other finishing options like Booklet, FoldType, PunchMedia, and StapleWhen.
+ +Examples:
+ ++*cupsFinishingTemplate none/None: "" +*cupsFinishingTemplate fold/Letter Fold: "" +*cupsFinishingTemplate punch/2/3-Hole Punch: "" +*cupsFinishingTemplate staple/Corner Staple: "" +*cupsFinishingTemplate staple-dual/Double Staple: "" +*cupsFinishingTemplate staple-and-fold/Corner Staple and Letter Fold: "" +*cupsFinishingTemplate staple-and-punch/Corner Staple and 2/3-Hole Punch: "" ++ +
*cupsFlipDuplex: boolean
@@ -1195,6 +1233,7 @@ Ghostscript can use: *cupsFlipDuplex: true +*cupsIPPFinishings number/text: "*Option Choice ..."
@@ -1211,6 +1250,7 @@ values to PPD options and choices. *cupsIPPFinishings 21/staple-bottom-left: "*StapleLocation SingleLandscape" +*cupsIPPReason reason/Reason Text: "optional URIs"
@@ -1251,6 +1291,7 @@ http://www.vendor.com/help" *End +*cupsIPPSupplies: boolean
@@ -1352,6 +1393,7 @@ hardware. The default value isfalse.
*cupsManualCopies: true
+
*cupsMarkerName/Name Text: ""
@@ -1366,6 +1408,7 @@ generated by the driver to human readable text. *cupsMarkerName cyanToner/Cyan Toner: "" +*cupsMarkerNotice: "disclaimer text"
@@ -1380,6 +1423,7 @@ are approximate". *cupsMarkerNotice: "Supply levels are approximate." +*cupsMaxCopies: integer
@@ -1393,6 +1437,7 @@ are approximate". *cupsMaxCopies: 99 +*cupsModelNumber: number
@@ -1424,6 +1469,7 @@ assumed. *cupsPJLCharset: "UTF-8" +*cupsPJLDisplay: "what"
@@ -1443,6 +1489,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job". *cupsPJLDisplay: "none" +*cupsPortMonitor urischeme/Descriptive Text: "port monitor"
@@ -1475,6 +1522,7 @@ to disable the port monitor for the given URI scheme. *cupsPortMonitor usb/USB Status Monitor: "epson-usb" +*cupsPreFilter: "source/type cost program"
@@ -1518,6 +1566,7 @@ before the filter that accepts the given MIME type. *CloseUI: *cupsPrintQuality +*cupsSingleFile: Boolean
@@ -1534,6 +1583,7 @@ before the filter that accepts the given MIME type. *cupsSingleFile: True +*cupsSNMPSupplies: boolean
@@ -1549,6 +1599,7 @@ the standard SNMP Printer MIB OIDs for supply levels. The default value is *cupsSNMPSupplies: False +*cupsVersion: major.minor
@@ -1607,6 +1658,7 @@ in order to be usable with all applications. *APDialogExtension: "/Library/Printers/vendor/options.plugin" +*APDuplexRequiresFlippedMargin: boolean
@@ -1689,6 +1741,7 @@ and the Tumble page attribute.Also see the related cupsBackSide keyword.
+*APHelpBook: "bundle URL"
@@ -1704,6 +1757,7 @@ looking up IPP reason codes for this printer driver. The *APHelpBook: "file:///Library/Printers/vendor/Help.bundle" +*APICADriver: boolean
@@ -1718,6 +1772,7 @@ Architecture (ICA) driver for scanning. The default is False. *APScanAppBundleID: "com.apple.ImageCaptureApp" +*APPrinterIconPath: "/Library/Printers/vendor/filename.icns"
@@ -1732,6 +1787,7 @@ displaying the printer. The file must be in the Apple icon format. *APPrinterIconPath: "/Library/Printers/vendor/Icons/filename.icns" +*APPrinterLowInkTool: "/Library/Printers/vendor/program"
@@ -1749,6 +1805,7 @@ Technical Note TN2144 for more information. *APPrinterLowInkTool: "/Library/Printers/vendor/Tools/lowinktool" +*APPrinterPreset name/text: "*Option Choice ..."
@@ -1819,6 +1876,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value *fr.APPrinterPreset Photo_on_Photo_Paper/Photo sur papier photographique: "" +*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"
@@ -1834,6 +1892,7 @@ information. *APPrinterPrinterUtilityPath: "/Library/Printers/vendor/Tools/utility.app" +*APScannerOnly: boolean
@@ -1848,6 +1907,7 @@ capabilities. The default is False. *APScannerOnly: True +*APScanAppBundleID: "bundle ID"
@@ -1865,6 +1925,15 @@ the device.