It’s that time of the year again:
MUT tends to undergo a major overhaul around this time of the year. I’ve begun work on v4, and I’m looking for input and suggestions/features you’d like to see included, and I’d like to begin implementing a major feature that people have been asking for since release: updating multiple attributes at once.
This is something I’ve wanted to include for some time, but I don’t really know the best way to lay out the UI for it—which is why I’m asking for your help.
I want to empower users to be able to make multiple updates at once. For example, Username, Full name, and Email could all be updated at once using a spreadsheet containing all of that data. This accomplishes a few different things: it saves admins lots of time, and it also eases the load on servers, as it cuts down the number of API calls needed significantly.
One of the biggest reasons I have not implemented this yet, is I cannot think of a good way to make it powerful yet foolproof. My biggest nightmare is that someone formats a spreadsheet incorrectly, or uses the wrong dropdown, and replaces all of their usernames with Asset Tag values, which then unscopes all of their apps and configuration profiles, causing all users to lose app data as well as drop off WiFi, causing a need for hands-on every device.
Granted, this scenario is entirely possible now—but it seems like the likelihood increases if we allow multiple updates at once.
How you can help:
The Nation is full of incredibly smart people. How would you lay out the UI? How would you make sure people have their sheet formatted correctly? I think that the pre-flight checks go a long ways in helping with this, but it doesn’t quite feel good enough. I’ve thought about perhaps a pop-up with an example device record after updates, but that seems cumbersome and will likely just get closed instantly by the end user.
Draw your ideas up on a napkin, describe them with words, doodle them using MS Paint, doesn't matter.. just let me know what you think.
In addition to that, if there are any major features you’d like to see included, let me know. I’m not promising I’ll get to them all, but I truly have no idea what you guys would like to see unless you let me know.
What I have so far:
Here’s a real quick mock-up of what I’m thinking for MUT v4. It allows for updates to 5 fields at once, columns B - F. This will certainly undergo tweaks, but I want to get it roughed in before I go much further. Let me know what you think!
I work with Mike but had this idea I wanted to contribute to hopefully help with any visual confusion. It would take some messing with overall layout to get this looking right but I think it makes more visual sense to lay out the columns as columns like they would be on the CSV. That way the data in the CSV file looks just like what we input into the MUT.
I would love to know what people think about this!
I like the idea of having it visually match a spreadsheet a bit better. That would definitely help with spot checking that everything is correct.
Someone else mentioned setting up a table view or something inside the view controller, so that folks aren't limited on the number of columns that they can add. I like the idea of that, just need to figure out the engineering side of it--but this is a learning project after all.
We use FreshService for our inventory and the CSV import is really nice. You choose the file and then it presents you with the screen below. It lists all the fields in your inventory, including those you've created, and you can either manually specify which fields match or if you have named the fields in the CSV to match the FreshService field name it will automatically match them. Once you match a field it shows you the next record in the field so you can confirm that the right info is being assigned to that field.
Once you have everything matched you could have the user click save and go back to the main MUT window where they choose what they want MUT to update saving you some space in the main UI.
Perhaps you could have a "Choose commands" button that pops up a window with all the things they can update with check boxes. They choose what actions they want done, click okay and go back to the main UI.
Then have the preflight summerize what will happen and then have the submit button.
*Disclaimer - I have no Swift scripting knowledge so I have no idea if this is even possible. Just spit balling ideas.
Here's my thinking, let me know what you all think:
In some discussions with folks in-person, in particular at JNUC during my MUT Presentation Q&A, it sounds like there are quite a few people who still appreciate the simplicity of MUT. I am currently in the middle of a UX update to make it even easier to use (don't worry, I'm avoiding the "childish" layout of 3.0) but I'm considering adding an "expert mode" button or something like that.
Expert Mode would essentially take you to a new view, which would have a different CSV upload, and the ability to select record type (user/iOS/macOS). From there, you could download a CSV template, which would have EVERY attribute in it. Columns that are left blank would not be updated, but any column that is populated would be updated. Expert Mode would check the header of the CSV to ensure that the columns are still in the proper order, and display an example record update, and then run the updates.
This allows folks to keep the simplicity of the current layout, but still be able to update multiple fields when needed, and to update any combination of fields that they want, and it allows me to be very strict with how Expert Mode operates, while still keeping the easy user experience for "standard" mode.
I would agree with mlev, with the idea of a standard and expert mode. I feel like an 'expert' mode would be safe for NEW imports for newer users, where a a standard mode may be safe for existing devices.
Possible new device enrollment: with multiple fields Existing devices: limited fields, more strict fields
Also, I would think they should be a feature that looks at the way that the devices are enrolled, and would not allow a break in connectivity. (thought that sounds like a tall order). I love the way it looks so far, but if the biggest fear is breaking connectivity, a check would have to built in.
Thanks for that. Good thoughts for sure. The problem (as always) is trying to make the tool powerful yet foolproof. Perhaps the end user WANTS to disassociate the usernames, even though it will cause apps to remove and stuff like that (this happens often in the education world when students graduate).
So then you go back to "well, maybe have a prompt?" but people just click past prompts, and they're cumbersome.
Unfortunately, the sad truth is that app building is a lot like planning a wedding: there's no way to make everyone happy. That said, I'm very much looking forward to v4, and I think the separate "expert" and "standard" modes will solve a lot of issues I've been struggling with in that regard.
@mlev, thanks for making this invaluable tool for us users, I too like the idea of columns rather than rows because it more closely resembles the layout most of us use. People are visual learners, so anything that can make it easier to understand with fewer mistakes is an awesome idea.
One item I would like to see, although not a killer, is the log files created include the entire process of devices: OK! or errors, saved in a log file. Is there an easy method to save it as a .xls spreadsheet? And an option to flag just the errors, so we don't need to parse through many many devices? What I have done in the past is changed the .log to .xls then opened the file. Once in I then selected 'Edit' and "Find and Replace" I then replace all the items with "* OK! - 401" to Z then sort and delete those ZZZZ's..... it's a roundabout way to filter out all the devices that went OK and updated.
Just my $0.02 worth. Other than these things that may be nice it is a great program and I hope JAMF paid you dearly for it.
Just a question here I have the new MUT version 4.0. Im trying to add users to a static group, i have my userID in the 1st column and the group ID in the 2nd column. Ive updated to the latest version of Microsoft Excel for Mac (2016). Unfortantley it doesn't have the Window CSV any longer. Ive tried all 3 versions of CSV files and MUT says its found more than 2 columns in my file. :( I am not sure how to fix this. Help. Thanks
PS I found on the site that the developer says to use MSDOS Comma Separated (.csv) .
I've been trying to update the Asset Tag field through Mut for a while now. Back in v3.6 it worked for a while and then overnight started failing. Now in v4 it's throwing a 409 error. I'm updating everything else without any issues, but somehow the Asset Tag field seems to be funny.
Any ideas on how to make it work?
Sorry for the delays here folks.
@christina_luis did you get your issue resolved? msdos comma separated should work properly. I'd really like to figure out the reasons this doesn't work right and get the encoding to work properly no matter the csv file format.
@zmerali if you are getting 409, you can turn on "advanced debugging" under settings at the top and get some more information as to what the issue might be. Are there special characters in the file or anything like that that may be causing problems? 409 is "conflict" and is usually an issue with xml formatting, or something about the way that the update is being submitted. Turning on advanced debugging will hopefully get you more verbose information as to what is going wrong.
I just tested asset tag updates for both macos and ios devices and got 201 success results on everything. This is on 10.3.1
@zmerali I apologize, I just realized I never responded here.. It's been a while and I'm guessing you don't need the assistance anymore one way or another, but figured I'd drop a line anyways.
If you're getting a permission type error like that, the best thing to do is to create a brand new user with full admin privs and a username/password with no special characters (some are fine, some are not, easiest to just not include them) and try that. You can always disable/delete the user after the upload for security if you'd like. If that full admin does not work, I would try the advanced debug and see what it spits out at you. Otherwise you can try a similar command in terminal using the API and see if it gives you anything more verbose (it likely won't).
If you continue having issues, create an "issue" on the github page and we can continue working through it there.
@christina_luis you'll be happy to know that in MUT 4.1 (latest) it can handle line breaks of any kind, so Windows/MSDOS comma separated is no longer required.
I'm still having the same issue (even with the update to 4.1). I created another admin user with a simple password, and using that account Mut just crashes when I try and update the asset field (it won't let me run debugging because the program just quits). The account works to update all the other fields (tested to make sure it wasn't a problem with the account).
I'll create an "issue" on the github page for your information, but I'm curious if this is something you're seeing often?