Monday, February 23, 2015

Automated updates: Making work easier



Why should you choose cloud-based solutions over on-premises systems?

Not too long ago you had to run commands in PowerShell to convert an existing regular mailbox to a shared mailbox in the Office 365 Exchange admin console. This was necessary to migrate data into a shared mailbox, since it's currently not possible to migrate directly into a shared mailbox. The process was a little tedious, boring, and required some valuable time, especially if you have little to no experience with PowerShell.


First, you'd connect to Office 365 from an elevated PowerShell console...
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Then, convert the mailbox and set size quota. Note that shared and resource mailbox sizes increased from 5GB to 10GB in Q4 2013 and increased from 10GB to 50GB in Q4 2014.
Get-Mailbox -identity engineering@domainname.com | set-mailbox -type “Shared” Set-Mailbox engineering@domainname.com -ProhibitSendReceiveQuota 50GB -ProhibitSendQuota 49.75GB -IssueWarningQuota 49.5GB
Assign permissions to specific group to access shared mailbox…
Add-MailboxPermission engineering@domainname.com -User "Engineering Group" AccessRights FullAccess
Finally, remove the Office 365 license. Shared and resource mailboxes do not require a license in Office 365. To remove an Office 365 license from shared mailbox to prevent from being charged for usage, perform the following commands…
Connect-MsolService
$MSOLSKU = (Get-MSOLUser -UserPrincipalName engineering@domainname.com).Licenses[0].AccountSkuId
Set-MsolUserLicense -UserPrincipalName engineering@domainname.com -RemoveLicenses $MSOLSKU
This was the procedure to convert a regular mailbox into a shared mailbox. Now, thanks to automated updates through the cloud, you can have this process completed in a few clicks.

Login to your Office 365 account through the Office portal, and navigate to the Exchange Admin Centre. Once you are logged into your dashboard, click on the Recipients button in the menu on the left. You should now see a list of user mailboxes. Highlight the user mailbox you would like to convert to or from a shared mailbox and click on the convert button as shown in the screenshot below. (You should receive a prompt stating, "Are you sure you want to convert this regular mailbox into shared mailbox?" Click Yes.)

You can also convert a shared mailbox to a regular user mailbox following the same kind of steps. You would go into the shared menu at the top of your recipient list screen and "convert to regular mailbox".

There are many benefits of using a cloud-based solution, one of which is vitally important if you want to save yourself the hassle of setting up your own Exchange server and infrastructure, managing and maintaining desktop Office software, and installing patches and updates every month. The cloud allows you to be free of these restrictions and updates automatically as the example shown above in automating mailbox conversion. Microsoft takes care of all the dirty work so you don't have to. It's like having an IT department that maintains your cloud systems and continues to improve for your efficiency and ease.

On-premises systems will have you waiting and configuring things manually and more frequently. You must consider that implementing the same capabilities as cloud-based solutions requires servers, network infrastructure, IT personnel to install, manage, and update it all (not to mention you still have to buy the software). 

These are just a couple compelling reasons to switch your on-premise system to a cloud-based one. You can now see that cloud-computing is a highly attractive and intelligent proposition if you are looking to make the most of technology today at lower costs and lower risks.

If your current IT provider is still recommending on-premise server solutions, you're not getting good advice! Get in touch with our team at Interlock IT and we'll help make your work easier and more efficient.

Thursday, February 12, 2015

Go paperless! Lighten your business load

You may start off with bank statements, letters, receipts, business transactions, and inventories only to find that you've collected a stack of folders which eventually turn into a shelf full of boxed paperwork.

Well, what if you could evaporate all that weight up into a cloud and reference it at your fingertips, whenever, and wherever?




Thanks to technologies such as Google Drive, going paperless can really help your business. It not only helps clear cluttered workspace in the office, but also saves money and eases your business' environmental footprint. (Not to mention less trips to the printer too!)

Here are a few practical reasons why you should go paperless with Google Drive:

  • Security and Focus: You no longer have to worry about losing or misplacing your documents. No more distractions on your desk
  • Space: Enables you to save valuable office storage space. 
  • Mobility: Allows you to have access to all your documents in one place even outside the office. 
  • Time: Saves valuable time.
  • Money: Save costs ranging from printing paper, photocopying, and printer maintenance.
  • Recovery: Disaster recovery.
  • Peace of Mind: Ensures security and privacy.

Of course, all you need is Google Drive with an account and a scanner. You can also use Android/iOS smartphones or tablets to upload files as PDFs. Here are some Epson scanners that can scan directly to Google Drive with a couple of button clicks!

Google Drive uses OCR (Optical Character Recognition) for easier search results once documents are uploaded to the Drive. Essentially, Drive turns all your scanned documents into searchable text for easier future referencing. OCR also enables you to save time by dismissing you from specifically naming saved uploaded documents. Instead, all you have to do is search a key word or tag from the document you wish to find and its right there at your fingertips.

Additional storage is cheap at $1.99 per month for an extra 100 GB or $9.99/month for an extra 1 TB or switch your organization to Google Apps Unlimited with Unlimited storage for $10/user/month

Drive also allows you to create and collaborate with others like share documents, spreadsheets, and presentations on the fly with complementary Google Docs, Sheets, Slides and Forms. You can even make files available offline when you are not under cloud connectivity.

You may find Google Drive for Work as one of your most valuable investments once you have made the transition to go paperless. You can work without limits. It is safe, secure reliable, easy, powerful, and built to optimize your individual and team productivity.

We have advanced to communicate paperless with instant messaging and email. Why not do the same with organizing documents and files paperless too. It's still early 2015 and not too late to save time, money, and some trees while your at it.

Going paperless is a great idea and our team here at Interlock IT will help you make paper filing a thing of the past.

Monday, December 1, 2014

Fixing conflicts and errors with Active Directory synchronization to Office 365 and Azure

Sometimes user accounts (or objects) that have been deleted and then recreated on your Active Directory will become out of sync with Office 365 meaning changes to passwords and other attributes won't sync properly. Another cause is a change in the configuration of your Azure Active Director Sync utility, such as changing the SourceAnchor attribute.

DirSync is more common in the Office 365 user base because its replacement, Azure Active Directory Sync was recently released in September of 2014. For a comparison of the two tools visit Microsoft's Directory Integration Tools page.

If you have objects out of sync or conflicting you might receive an error message email every few hours when the AAD Sync utility is run.


You should also see the errors in the Event Viewer and Application Logs on the Windows Server running the utility.

In some cases, the Microsoft's own Office 365 IdFix tool can't find the problem, and thus can't fix it.

By reviewing the contents of userdetails.csv output by the PowerShell command:
get-msoluser | export-csv userdetails.csv
we were able to see that the ImmutableID was set incorrectly due to a prior sync configuration or that the on-premises Object ID shown in the error message above was already connected to another user.

Somewhere along the line, Microsoft removed the ability change or clear the ImmutableID attribute without first disabling Directory Sync for the organization so most internet postings we found while looking for a solution are no longer valid. Some postings showed that back in 2012 you could set the ImmutableID from PowerShell. Today you can only clear it to null if Directory Sync is deactivated.

Deleting (setting to null) the ImmutableID attribute on Office 365/Azure Active Directory solved the sync problem for us. You can no longer change it to match but the directory sync utility will re-populate it for you. Here's how to do it.

Start by disabling the Azure AD Sync Scheduler task in Task Scheduler on the Windows Server that runs AAD Sync:


Next Deactivate Directory Sync on your Office 365 Admin console:



In our experience, it actually takes a couple of hours during business weekdays and about 10 minutes on a Saturday night to deactivate, but it could theoretically take up to 72 hours to complete.

Copy the commands below into a new text file and save it as eraseimmutableid.ps1, change the $upn value accordingly and run it:
set-executionpolicy RemoteSigned
Import-Module MSOnline
Connect-MsolService
$upn = "sampleuser@domain.com
$oid = (Get-MsolUser -UserPrincipalName $upn).ObjectID
Write-Output "Before:"
Get-MsolUser -UserPrincipalName $upn | select userprincipalname,ImmutableID,ObjectID
Write-Output "`n`nAfter:"
set-msolUser -ObjectID $oid -immutableID "$null"
Get-MsolUser -UserPrincipalName $upn | select userprincipalname,ImmutableID,ObjectID
Now re-enable the sync service in Task Scheduler and run it manually.

If you still see errors keep looking at the results of userdetails.csv mentioned above. Search for the email addresses and Object IDs shown in the error message email.

Feel free to reach out to InterlockIT.com for assistance with your Office 365 Directory Synchronization configuration and fine tuning.

Thursday, November 20, 2014

Interlock IT earns two Microsoft Silver Competencies!

Cloud Computing is entering its second second stage of hypergrowth in enterprises. Forrester estimates the public services cloud market will grow to $191 billion by 2020, a huge leap from "just" $58 billion in 2013.

Businesses of all sizes are looking to roll out fully cloud-enabled productivity suites with a minimum of disruption to their business. We've seen a huge uptick in demand for cloud-based systems that remove the stress of administering your own email system or file server and let you focus on the things that matter—like finding new clients or executing on projects.
Early in his career as Microsoft's new CEO, Satya Nadella knew that the way forward both for Microsoft and other businesses was "mobile first, cloud first." Shouldn't your business be able to work from anywhere in the world, on any device, at any time?

Office 365 plans start at $5.10 per user per month and for $12.90 per month the desktop versions of the Office suite are included. At that price managing on-premises email servers or paying for hosted Exchange no longer makes sense.


As a Microsoft Partner with Silver-level Competencies in both Small and Midmarket Cloud Solutions and Cloud Productivity, the team at Interlock IT is well-positioned to help you move from your antiquated email system that doesn't work at the pace of modern business.

Wednesday, October 29, 2014

Automating Quickbooks from the Cloud

For all the benefits working in the cloud provides, sometimes migrating every aspect of your business operations to cloud services is not an option.  What do you do when your CRM and Project Management are cloud based, but you need to move data back to Quickbooks on the desktop?

One answer: get in touch with Interlock IT.

Our client had already switched their Contact and Project management to Norada's Solve CRM when they did just that:
I would like to integrate the Solve CRM API with Quickbooks to automate our workflow bidirectionally between Solve CRM and Quickbooks. We use Quickbooks Enterprise Construction Edition.
Our first response was to rule out other options, couldn't we move accounting into the Cloud? Specific features of the Quickbooks Contractor edition were mission critical; there was no direct cloud replacement. Xero, Quickbooks Online, and Freshbooks would not meet their needs at this time.

Enter the Quickbooks Web Connector, a legacy application released by Intuit, the makers of Quickbooks, designed to allow desktop editions of Quickbooks to communicate with web-applications, also known as the Cloud!

Armed with a method of communicating with Quickbooks on the desktop, we dug into the clients specific needs and developed the solution below.

Setting a Revenue Opportunity to "Won" in Solve CRM kicks off the process.
When a revenue opportunity is marked Won in Solve CRM, the following occurs automatically:
    • Instantly create a Customer and Job in Quickbooks with details from the Solve CRM Company record.
    • Add an Estimate to the Job and convert it to a Sales Order, using details from the revenue opportunity.
Details from Company record and Opportunity are synced into Quickbooks.
Now the accounts team can take over and work with the project in Quickbooks, tracking progress and financial details on the automatically created job in Quickbooks.

Finally, our system syncs financial report figures back into Solve CRM, allowing for reports on project finances to be generated entirely from data in the Cloud, avoiding a time consuming manual process of matching Quickbooks reports with Solve CRM Opportunities.

Later, Quickbooks report values are synced back into Solve CRM automatically, simplifying project based reporting.
The technology stack used to implement this solution consists of Google Apps Script and Python on the Google App Engine.  Webhooks triggered from within Solve CRM call out to a Google Apps Script living on Google Drive.  The Apps Script processes the Webhook and determines the required action. If Quickbooks related actions are required, the Apps Script passes the request onto the Google App Engine application, which handles SOAP based communication with Quickbooks, using QBXML.

The Quickbooks Web Connector polls the App Engine application and consumes any new actions that have been passed from Apps Script, returning results to the App Engine. The App Engine then feeds data back into Solve when necessary.

The end result is an integrated solution that saves time, reduces errors, and provides staff access to important financial data direct from Quickbooks!

Try Solve CRM for Free.

Wednesday, September 24, 2014

Updated guide to embedding an image in your Google Apps for Work signature

Earlier this year we posted a guide for using Google Drive to host images embedded in your email signature and it's been one of our most popular articles. However, Google recently changed the behaviour of Drive's image viewer, so this method no longer works. Instead, you now need to use Google+ Photos (formerly Picasa) to upload images and link to them directly. Here's how.

First, if you don't have one already, create a Google+ account with your Google Apps for Work email address by visiting http://plus.google.com. (You'll need to make sure your domain administrator has enabled Google+ for this to work.)


Next, either head directly to Google+ Photos or hover over the Home icon in the top-left corner of the page and click Photos, then click the Upload photos link along the top of the page. Upload the image you'd like to use as your signature, and click Done.


In the Share album dialogue box that appears, type "Public" in the To: box and click Share.


The image should now open in an album view; click the image to open it on its own. Right-click on the image and select Copy image URL (assuming you're using Google Chrome; in Firefox this is "Copy Image Location"). The resulting URL will look something like this when you paste it:
https://lh6.googleusercontent.com/-LDvF-aANinE/VCMjrpWet7I/AAAAAAAAA0U/eE1oYgtVrKo/w150-h70-no/Interlockit_Logo%2B150x70.png
Copy this entire URL into the Add an image dialogue box of the signature editor, and you should see a preview of the image you're about to insert.



If you see the preview correctly, click OK and you're all done! The image you uploaded will now be linked in (rather than attached to) your signature, won't make your messages larger than they need to be, and shouldn't trigger spam filters.

If you're a regular Google+ user, then uploading the image(s) you use in your signature will show up in your Google+ stream and other users will be able to see the posts. If you'd rather not have the uploads clog up your stream, head over to your profile, hover over the photo you want to remove from your stream, click the down arrow in the top-right corner and click Delete post. This will not remove the photo attached to the post, but will stop the upload from showing up in your own or others' streams.