How do I simulate keyboard events in Chromedriver/Selenium for Node.js?

I'm trying to automate uploading an image file to a server to which I don't have a better form of access (FTP, etc.). I'm using Node.js with Selenium and Chromedriver, and everything is going well until I need to simulate special keys. I've researched a bit, and have found nothing so far. Mac specific answers are ok for this.

I tried this from another answer somewhere, but it's not working for me:

driver.findElement(webdriver.By.name(uploadName))
        .click()
        .sendKeys(Keys.COMMAND + Keys.SHIFT + 'g')
        .sendKeys(imgPath)
        .sendKeys(Keys.RETURN);

It fails out because Keys is undefined, but I haven't run across any other ways to get at the commands.

After further research, it seems that this is the wrong way to do this. Selenium and Chromedriver don't really support OS level interaction, but there is an easier way.

driver.findElement(webdriver.By.name(uploadName)).sendKeys(imgPath);

This will target uploadName and then give it the file path passed into sendKeys. This bypasses the messy OS file dialogs.