{"id":256,"date":"2011-10-13T11:59:04","date_gmt":"2011-10-13T16:59:04","guid":{"rendered":"http:\/\/www.exchangedefender.com\/blog\/2011\/10\/shockey-monkey-keeping-it-clean\/"},"modified":"2011-10-13T11:59:04","modified_gmt":"2011-10-13T16:59:04","slug":"shockey-monkey-keeping-it-clean","status":"publish","type":"post","link":"https:\/\/www.exchangedefender.com\/blog\/2011\/10\/shockey-monkey-keeping-it-clean\/","title":{"rendered":"Shockey Monkey &amp; Keeping It Clean"},"content":{"rendered":"<p>You\u2019ve asked for it \u2013 and it\u2019s my pleasure to say that we\u2019ve delivered. <a href=\"http:\/\/www.shockeymonkey.com\">Shockey Monkey<\/a> now chats, has a desktop client, mobile HTML5 app for your iPhone and Android and plays nicely with <a href=\"http:\/\/www.quotewerks.com\">Quotewerks<\/a>, <a href=\"http:\/\/www.kaseya.com\">Kaseya<\/a>, <a href=\"http:\/\/www.lpi.com\">LPI<\/a>, <a href=\"http:\/\/www.nable.com\">nAble<\/a>, GFI Max, Quickbooks and more. <\/p>\n<p>Over the past few months we\u2019ve been focusing on integration between our partners and even improving the network communication in our own software. One of the biggest challenges in the software industry is foresight and being able to determine what comes next. If you have ever written a piece of software and then had to make a change to that software (even something small), maybe 1, 3, 6, 12 months later. You can probably understand how important it is to think ahead. Sure, you can rush software and have to rewrite the same code everyday several times. If you\u2019re like me and don\u2019t like to create (unnecessary) extra work, you can think about what functions &amp; methods you may need for future revisions and implement at least a template that is extensible.<\/p>\n<p><strong>Truly Open API and Fat Client API Demo<\/strong><\/p>\n<p>That\u2019s the approach we\u2019ve been taking for that last year and it\u2019s really starting to show now. We are able to (design, code &amp; implement and actually sleep) software changes &amp; additions a lot quicker and a lot cleaner. One of the ways we achieved this was to take all of the code that we use all over the place and centralize it into a single location. This is how we got our first <a href=\"http:\/\/www.shockeymonkey.com\/api\">API<\/a> version and we started to build on top of that structure. <a href=\"http:\/\/www.shockeymonkey.com\/api\">Since we designed the API<\/a>, one of our biggest concerns was <strong>SECURITY SECURITY SECURITY<\/strong>. We thought: You know what, one day our clients\/partners will want to use this <a href=\"http:\/\/www.shockeymonkey.com\/api\">API<\/a>. So when that time came and we were ready to allow the API to become public, we literally flipped one switch and it was all lights go!<\/p>\n<p><a href=\"http:\/\/www.ownwebnow.com\/blog\/images\/7eda5bf28c46_A613\/sm1.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px\" title=\"sm1\" border=\"0\" alt=\"sm1\" src=\"http:\/\/www.ownwebnow.com\/blog\/images\/7eda5bf28c46_A613\/sm1_thumb.png\" width=\"244\" height=\"199\"><\/a><a href=\"http:\/\/www.ownwebnow.com\/blog\/images\/7eda5bf28c46_A613\/sm2.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px\" title=\"sm2\" border=\"0\" alt=\"sm2\" src=\"http:\/\/www.ownwebnow.com\/blog\/images\/7eda5bf28c46_A613\/sm2_thumb.png\" width=\"268\" height=\"199\"><\/a><\/p>\n<p>A lot of people want access to an API and access to it is usually the first request. However, not a lot of clients\/partners will utilize that API, until you show them what\u2019s possible! That\u2019s when it starts to get fun interesting! So, we released the <a href=\"http:\/\/www.shockeymonkey.com\/feature_fat_client.php\">Shockey Monkey Fat Client<\/a> BETA! It takes advantage of our API and demonstrates the possibilities. Yes, it really is possible to create something useful from these publicly available resources. It\u2019s the first release, so right now we kept it simple. It will allow you to view\/update (tickets, contacts &amp; companies). It even comes with a ticket dashboard, which shows you the status and urgency of all your open tickets.<\/p>\n<p><strong>Integrations<\/strong><\/p>\n<p>On the other side of the office our Shockey Monkey team has been working on integrations with other Software vendors and helping to bridge that gap in resources. They\u2019ve just finished integrations with (<a href=\"http:\/\/www.lpi.com\">Level Platforms<\/a>, <a href=\"http:\/\/www.nable.com\">N-able<\/a>, <a href=\"http:\/\/www.gfi.com\">GFI MAX<\/a>). There are still a few others they are trying to complete very soon. <\/p>\n<p>We literally completed these integrations within a week of actively working on them. What made it so simple was the initial template design we created when we made our first Integration point with <a href=\"http:\/\/www.gfi.com\">Kaseya<\/a>. It allowed all additional Integrations to be designed in a module structure allowing for easy design and implementation. We\u2019ve moved away from the model of <em>\u201cLet\u2019s just get it to work\u201d<\/em>, we created a few integrations like that in the past. They work great\u2026 until the method, you used to obtained information, has now been changed and no longer works.<\/p>\n<blockquote>\n<p>Our current integration portfolio:<\/p>\n<p>1. <strong>Email Gateway<\/strong> \u2013 Any device or service that can generate an email can automatically create a ticket in our system. Remember that this is free to you with <a href=\"http:\/\/www.exchangedefender.com\">ExchangeDefender<\/a> so use it!<\/p>\n<p>2. <strong>RMM<\/strong> \u2013 Kaseya, LPI, nAble, GFI Max (Labtech in development). We\u2019re currently working with a number of companies that are interested as well as Shockey Monkey\u2019s own built-in lightweight WMI\/VNC tool.<\/p>\n<p>3. <strong>Accounting<\/strong> \u2013 Quickbooks. Exports to xls, csv and data feeds for other ERP. We\u2019re exploring adding more integrations here as requested but we\u2019re spending even more effort into bringing the transaction processing and reporting capabilities into Shockey Monkey. We find that most partners don\u2019t have a very formal accounting backend, especially for tracking cloud subscriptions, and ShockeyMonkey already supports Authorize.net as a payment gateway so look for a development there.<\/p>\n<p>4. <strong>Business<\/strong> \u2013 <a href=\"http:\/\/www.quotewerks.com\">Quotewerks<\/a>. This is currently one of the best integrations out there because it was developed by Quotewrks and is tightly integrated in their software.<\/p>\n<\/blockquote>\n<p><a href=\"http:\/\/www.ownwebnow.com\/blog\/images\/7eda5bf28c46_A613\/bathmonkey.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px\" title=\"bathmonkey\" border=\"0\" alt=\"bathmonkey\" align=\"right\" src=\"http:\/\/www.ownwebnow.com\/blog\/images\/7eda5bf28c46_A613\/bathmonkey_thumb.png\" width=\"244\" height=\"174\"><\/a>We\u2019ve learned a lot from all of these integrations and have amazing ideas for future releases. One of the first things we want to implement is a SOAP version of our API. Currently, they are all written in XML\/RPC and that has served us rather well. However, in the future we are envisioning an even more rapid development environment for Shockey Monkey. It\u2019s always nice when most of the data translation is done for you. So we are thinking that SOAP and Shockey Monkey are going to get to know each other very well over the next few months!&nbsp;&nbsp; <\/p>\n<p>Finally, I manage all the development projects and products at ExchangeDefender, including all our integrations, PSA\/RMM and our automation infrastructure. I work with many partners but at the end of the day I\u2019m just one guy. So here is&nbsp; how to plug in with the whole team and make sure your requests are being taken care of:<\/p>\n<blockquote>\n<p>1. <strong>Use the portal bug\/feature tracking<\/strong>. Located at <a href=\"https:\/\/support.ownwebnow.com\">https:\/\/support.ownwebnow.com<\/a> under the Development tab there are Features and Bugs. We use this as the central storage for all our features and requests. You can see public stuff that was reported by our clients and even some stuff that our internal teams are tracking. <\/p>\n<p>2. <strong>Get in touch with someone<\/strong>. Our support team is fantastic and they often bring the issues you are facing to me directly. Sometimes in the office but mostly at meetings and our weekly staff bar crawl where we do our best to complain about everything that isn\u2019t perfect. If you can get someone to hear you out, you can rest assured it will get taken care of faster.<\/p>\n<p>3. <strong>Make a compelling, detailed case<\/strong>. There are lots of great ideas. Unfortunately, time is very limited to build them all. If there is a problem that affects a lot of people or a feature that would benefit a lot of people, tell us about it in as many details as possible and recommend suggestions and ideas. You\u2019ve clearly spent more time dealing with it than we do so you have a unique opportunity to make a good argument over why we should work on problem #9881 instead of feature #810. The more perspective and benefits\/pitfalls the better.<\/p>\n<\/blockquote>\n<p>&nbsp;<\/p>\n<p>Hank Newman<br \/>VP Development, ExchangeDefender<br \/>hank@ownwebnow.com<\/p>\n","protected":false},"excerpt":{"rendered":"<p> [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-256","post","type-post","status-publish","format-standard","hentry","category-shockey-monkey"],"_links":{"self":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts\/256","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/comments?post=256"}],"version-history":[{"count":0,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/posts\/256\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/media?parent=256"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/categories?post=256"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.exchangedefender.com\/blog\/wp-json\/wp\/v2\/tags?post=256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}