{"id":394,"date":"2021-06-23T10:32:30","date_gmt":"2021-06-23T14:32:30","guid":{"rendered":"https:\/\/www.tks-designs.com\/blog\/?p=394"},"modified":"2021-06-23T10:34:19","modified_gmt":"2021-06-23T14:34:19","slug":"shotgun-action-menu-item-ami-server","status":"publish","type":"post","link":"https:\/\/www.tks-designs.com\/blog\/?p=394","title":{"rendered":"Shotgun Action Menu Item (AMI) Server"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.tks-designs.com\/blog\/wp-content\/uploads\/2021\/06\/ami.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"450\" src=\"https:\/\/www.tks-designs.com\/blog\/wp-content\/uploads\/2021\/06\/ami-1024x450.jpg\" alt=\"\" class=\"wp-image-396\" srcset=\"https:\/\/www.tks-designs.com\/blog\/wp-content\/uploads\/2021\/06\/ami-1024x450.jpg 1024w, https:\/\/www.tks-designs.com\/blog\/wp-content\/uploads\/2021\/06\/ami-300x132.jpg 300w, https:\/\/www.tks-designs.com\/blog\/wp-content\/uploads\/2021\/06\/ami-768x337.jpg 768w, https:\/\/www.tks-designs.com\/blog\/wp-content\/uploads\/2021\/06\/ami.jpg 1134w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>The #1 request every studio wants is the ability to run actions on their pipeline through the Shotgun web interface. Luckily SG allows this through the use of <strong>Action Menu Items<\/strong> (AMIs). The jist is: choose an Entity type in the web interface (ie <strong>Version<\/strong>), name your new Item (say <em>Render Slates&#8230;<\/em>), and setup an IP address to receive this information. SG then encapsulates the users&#8217; selection of that entity type (either one or multiple entities) and sends the data to the receving machine, re-directing the users&#8217; web browser in the process. With that data &amp; connection, the machine at the other end can perform any action (say, submit all selected shots to the farm) and provide the end user with visual feedback (success, failure).<\/p>\n\n\n\n<p>I developed a plugin-based AMI Server (philosophically similar to the <a href=\"https:\/\/github.com\/shotgunsoftware\/shotgunEvents\" data-type=\"URL\" data-id=\"https:\/\/github.com\/shotgunsoftware\/shotgunEvents\" target=\"_blank\" rel=\"noreferrer noopener\">Shotgun Event Server<\/a>) for just this purpose, and I&#8217;m very happy with the result. The key is not only to perform the action, but to provide feedback to the user in a friendly and readable way; the user should be able to tell clearly whether the action has succeeded or failed. I even had a friend in CSS design whip me up a nice-looking CRT-style output because, why not \ud83d\ude09<\/p>\n\n\n\n<p>Check out the video below to see it in action!<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-vimeo wp-block-embed-vimeo\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"amiServer\" src=\"https:\/\/player.vimeo.com\/video\/451947946?dnt=1&amp;app_id=122963\" width=\"580\" height=\"326\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write\"><\/iframe>\n<\/div><figcaption>AMI Server operating at <a href=\"https:\/\/www.phosphenefx.com\/\" data-type=\"URL\" data-id=\"https:\/\/www.phosphenefx.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Phosphene LLC<\/a><\/figcaption><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The #1 request every studio wants is the ability to run actions on their pipeline through the Shotgun web interface. Luckily SG allows this through the use of Action Menu Items (AMIs). The jist is: choose an Entity type in the web interface (ie Version), name your new Item (say Render Slates&#8230;), and setup an <span class=\"ellipsis\">&hellip;<\/span> <span class=\"more-link-wrap\"><a href=\"https:\/\/www.tks-designs.com\/blog\/?p=394\" class=\"more-link\"><span>Continue Reading &rarr;<\/span><\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"kia_subtitle":"","footnotes":""},"categories":[4,21,20,10],"tags":[],"class_list":["post-394","post","type-post","status-publish","format-standard","hentry","category-python","category-sgtk","category-shotgun","category-vfx"],"_links":{"self":[{"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/394","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=394"}],"version-history":[{"count":3,"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/394\/revisions"}],"predecessor-version":[{"id":398,"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/394\/revisions\/398"}],"wp:attachment":[{"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=394"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=394"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tks-designs.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=394"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}