WalkMe extension. Anyone ever dealt with it?

rpayne
Contributor II

Has anyone ever deployed the WalkMe extension?

10 REPLIES 10

mbezzo
Contributor III

Yeah, we pushed it a year or so ago. All machines continue to get it when they're deployed. I have two packages, one for Safari and one for Firefox. Used Macmule's Safari extension script: https://macmule.com/2014/10/15/deploying-installing-safari-extensions-on-safari-6-1-7-2/

Lemme know if ya have any specific questions!

dgreening
Valued Contributor II

Lets just say that the methods they provide (hacked up scripts based on MacMule scripts) do not work. It is pretty clear that they have not validated "their" methods in newer versions of Safari. They really need to host their plugin/extension on the vetted browser galleries and have the "Activate Now" button installed on the Salesforce back-end. I honestly gave up after re-writing the script a couple of times and just told people to download/install it manually. We were trying to deploy it automatically to non-admin users, and were not using Self Service.

mbezzo
Contributor III

haha, and YEP. @dgreening is right. Only a few of our users use it - just tried my package on a 10.12 system and it does absolutely nothing. Yay!

dgreening
Valued Contributor II

WalkMe is well aware of "their" method not working anymore, so hopefully we will see the extension available in the FF/Safari extension galleries at some point soon. If you are going into a new Salesforce WalkMe deployment, make sure to thoroughly investigate the "Activate Now" SFDC based method with your Salesforce/WalkMe team.

Installing the WalkMe SFDC Package
Adding the Activate Now Button

emiliadanzica
New Contributor

Hi Everyone,

My name is Emilia and I am part of the WalkMe Engagement team. We want to help with any challenges you may be experiencing. Please email me at emilia.d@walkme.com. Our team is ready to help!

-Emilia

wmateo
Contributor

@emiliadanzica @mbezzo Hello, I am trying to deploy your Extension to multiple users silently. Upon deployment, it prompts the user to take actrion. Is there a Silent method where user does not see this being installed?

mbezzo
Contributor III

@wmateo - Sorry, haven't touched this since initially working on it, so it's still broken. So far hasn't been an issue because so few people use it. I'd definitely email Emilia though!

Good Luck!

donmontalvo
Esteemed Contributor III

We got a request to deploy WalkMe, and it does require the Extension to be invoked, so the user can approve, no way around it.

Here is the script provided by the vendor, bonus points for anyone who sees the (several) problems:

#!/bin/bash
#
###########################################################
###         Function to install Cookie                  ###
###########################################################
function Cookie {
    open -a safari "https://account.walkme.com/ExtensionDownload/downloadPage.html?guid=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&customer=COMPANY&profile=default&massConfig=1"
}
###########################################################################
###     Function to download and install EXTZ file                      ###
###########################################################################
function EXTZ {
    ### Checking if extension is installed:
    if [ ! -f ~/Library/Safari/Extensions/Walkme Extension.safariextz ];
    then
        ### Opening the extz file and waiting for User to prompt.
        echo “Installing extension extz file”
        wait
        open /Library/Application Support/Walkme/walkme_extension.safariextz
        sleep 4s
    else
        echo “WalkMe extension is already installed.”
    fi
}
###########################################
###               Script                ###
###########################################
### delay for first script to finish installing PKG.
sleep 10s
### checking for Safari version :
output=$(osascript <<END
tell application "Safari"
set safariverion to version
end tell
END)
output=${output%%.*}
temp=$[temp+0]
if [ $output -le 9 ];
then
    ### first install extz then the cookie.
    echo “Safari version is lower then 10”
    EXTZ
    wait
    sleep 4s
    Cookie
else
    ### first install cookie then extz.
    echo “ Safari version is newer then 9”
    Cookie
    wait
    EXTZ
fi

List of WTFs include...

Opening a "safari" (lower case, no ".app", not opening as user):
open -a safari "https://account.walkme.com/ExtensionDownload/downloadPage.html?

Opening the file not as user? Escaping the "S"?:
open /Library/Application Support/Walkme/walkme_extension.safariextz

Tilde? Escaping the "E" Really?:
if [ ! -f ~/Library/Safari/Extensions/Walkme Extension.safariextz ];

Pretty sure using $currentUser can address the above, just wondered if anyone else is getting a similarly sloppy script from this developer?

On a side note, if you double-click the vendor's package in Finder, it installs fine. Wanted to check before editing their script, because as expected, their unaltered script is...well...

[STEP 1 of 6]
Executing Policy WalkMe Safari Extension 1.6.10
[STEP 2 of 6]
Downloading WalkMe_SafariExtension_1.6.10.pkg...
Downloading http://server.domain.com/CasperShare/Packages/WalkMe_SafariExtension_1.6.10.pkg...
Installing WalkMe Safari Extension 1.6.10...
Successfully installed WalkMe Safari Extension 1.6.10.
[STEP 3 of 6]
Running script installWalkMeSafariExtension.sh...
Script exit code: 0
Script result: “ Safari version is newer then 9”
LSOpenURLsWithRole() failed for the application /Applications/Safari.app with error -600 for the URL https://account.walkme.com/ExtensionDownload/downloadPage.html?guid=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&customer=COMPANY&profile=default&massConfig=1.
“Installing extension extz file”
LSOpenURLsWithRole() failed with error -600 for the file /Library/Application Support/Walkme/walkme_extension.safariextz.
[STEP 4 of 6]
[STEP 5 of 6]
Inventory will be updated when all queued actions in Self Service are complete.
[STEP 6 of 6]

Triple bonus points to how we can check the Extension version, seems the only way to see the version is in Safari at the moment the user is prompted to approve.

--
https://donmontalvo.com

donmontalvo
Esteemed Contributor III

Fixed...will share back with the WalkMe vendor:

#!/bin/bash
#

## ATOS
currentUser=$( python -c 'from SystemConfiguration import SCDynamicStoreCopyConsoleUser; import sys; username = (SCDynamicStoreCopyConsoleUser(None, None, None) or [None])[0]; username = [username,""][username in [u"loginwindow", None, u""]]; sys.stdout.write(username + "
");' )

###########################################################
###         Function to install Cookie                  ###
###########################################################
function Cookie {
    currentUser=$( python -c 'from SystemConfiguration import SCDynamicStoreCopyConsoleUser; import sys; username = (SCDynamicStoreCopyConsoleUser(None, None, None) or [None])[0]; username = [username,""][username in [u"loginwindow", None, u""]]; sys.stdout.write(username + "
");' )
    sudo -u "$currentUser" open -a Safari.app "https://account.walkme.com/ExtensionDownload/downloadPage.html?guid=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&customer=COMPANY&profile=default&massConfig=1"
}
###########################################################################
###     Function to download and install EXTZ file                      ###
###########################################################################
function EXTZ {
    ### Checking if extension is installed:
    currentUser=$( python -c 'from SystemConfiguration import SCDynamicStoreCopyConsoleUser; import sys; username = (SCDynamicStoreCopyConsoleUser(None, None, None) or [None])[0]; username = [username,""][username in [u"loginwindow", None, u""]]; sys.stdout.write(username + "
");' )
    if [ ! -f /Users/"$currentUser"/Library/Safari/Extensions/Walkme Extension.safariextz ];
    then
        ### Opening the extz file and waiting for User to prompt.
        echo "Installing extension extz file"
        wait
        sudo -u "$currentUser" open /Library/Application Support/Walkme/walkme_extension.safariextz
        sleep 4s
    else
        echo "WalkMe extension is already installed."
    fi
}
###########################################
###               Script                ###
###########################################
### delay for first script to finish installing PKG.
sleep 10s
### checking for Safari version :
output=$(osascript <<END
tell application "Safari"
set safariversion to version
end tell
END)
output=${output%%.*}
temp=$[temp+0]
if [ $output -le 9 ];
then
    ### first install extz then the cookie.
    echo "Safari version is lower then 10"
    EXTZ
    wait
    sleep 4s
    Cookie
else
    ### first install cookie then extz.
    echo "Safari version is newer then 9"
    Cookie
    wait
    EXTZ
fi
--
https://donmontalvo.com

bjones
New Contributor III

Question i was just tasked to deploy the walkme extension to all devices within our environment and was provided by Walkme with a universal installer for all browsers specific to our company i believe. I was thinking of using composer to deploy it wrapping as a .pkg and deploying. Has anyone dealt with the universal installer and have any best practices of deploying it?