window.jimo.push([ "set","user:attributes", [object, object /* { refetchBoosted: boolean, removeUnspecified: boolean } */] ])// Example 1 : set the attribute foo and barwindow.jimo.push([ "set","user:attributes", [ { foo :"hello", bar:"world" } ] ])// Example 2 : set the attribute foo and refetch boosted postswindow.jimo.push([ "set","user:attributes", [ { foo :"hello" }, { refetchBoosted:true } ]])// Example 3 : set the attribute foo and delete all unspecified onewindow.jimo.push([ "set","user:attributes", [ { foo :"hello" }, { removeUnspecified:true } ]])
Force language
window.jimo.push(['set','core:language', [string /* language */]])// Example : Force language to frwindow.jimo.push([ "set","core:language", [ "fr" ] ])
We expect the passed languages to be one of those :
en, fr, es, pt, it, de, jp, zh, se, nl, fi, ru, cs, hu, pl, da, sv, no, ro
GET
User attributes
window.jimo.push([ 'get','jimer:attributes' ]) // { foo : "bar" }// this method will always return an empty object if attributes is undefined
// Open the widgetwindow.jimo.push([ "do","widget:open" ])// Open the widget to a specific page// - page values : eedbackwindow.jimo.push(['do','widget:open', [{ page:'feedback' }]])// Open the widget to a specific experience(formerly poke)window.jimo.push(['do','widget:open', [{ evolutionId :'uuid_of_evolution' }]])
Trigger an experience (formerly poke)
// Trigger/open a specific experiencewindow.jimo.push(['do','boosted:trigger', [{ evolutionId :'uuid_of_evolution' }]])// Trigger an experience and bypass the recurrences ruleswindow.jimo.push(['do','boosted:trigger', [{ evolutionId :'uuid_of_evolution' },true]])
Close widget
// Close the widget (if opened)window.jimo.push([ "do","widget:close" ])
Reset widget last open date
// Reset the date of the last time the user opened the widgetwindow.jimo.push([ "do","widget:resetOpenDate" ])
Boosted refresh
// Refresh the list of boosted pusheswindow.jimo.push([ "do","boosted:refresh" ])
Trigger badge find
// Find badge's triggers (require widget trigger mode to be "badge")window.jimo.push([ "do","trigger-badge:find" ])
Show trigger
// Show the Jimo triggerwindow.jimo.push([ "do","trigger:show" ])
Hide Trigger
// Hide the Jimo triggerwindow.jimo.push([ "do","trigger:hide" ])
By default, the trigger is set to show. You can set the trigger to hide by default, using window.jimo["JIMO_DEFAULT_TRIGGER_HIDDEN"] = true; when the script is loaded, see example bellow.
// Example <script> window.jimo = []; (function (j, i, m, o) { var s =document.createElement("script");s.type ="text/javascript";s.async =true;s.src ="https://undercity.usejimo.com/jimo-invader.js"; j["JIMO_PROJECT_ID"] ="your-project-id"; j["JIMO_DEFAULT_TRIGGER_HIDDEN"] =true; // add thisdocument.getElementsByTagName("head")[0].appendChild(s); })(window); </script>
Reset storage
We recommend clearing the storage at logout if you are using the Jimo identify.
// Clear localstorage data related to Jimowindow.jimo.push([ "do","storage:reset" ])
ON
To remove a listener, simply replace on by off. For example, window.jimo.push(["off", "widget:opened"]) to remove the listener on widget:opened.
Widget opened
// Event triggered when widget is openedwindow.jimo.push([ "on","widget:opened" ])
Widget closed
// Event triggered when widget is closedwindow.jimo.push([ "on","widget:closed" ])
Boosted closed
// Event triggered when a boosted push is closedwindow.jimo.push([ "on","boosted:closed" ])