Implementation of a IT-Kiosk with Walk-Up Experience on Service Portal

TC2201
Kilo Contributor

Hi. For an apprenticeship project, I try to add an IT Kiosk in a Service Portal in using Walk-Up Experience ServiceNow application and set-up the application according to requirements of the project.

To do this, I tried to clone the widget Online Check-In and after some issues, I have copied Angular ng-templates to the cloned widgets

find_real_file.png

, but what I don't still understand is when I try to access to my digital_centre page(the name of my IT Kiosk according to specification requirements) is I'm redirected directly to a location with an url containing a location id paramater, without passed through the page to select the "location" in dropdown list.

Moreover, the page is empty and the component proposing to join a waiting queue is not available.

find_real_file.png

When I use the original widget "Online check-in experience", I'm also redirected directly to a location without have in the first place a dropdown list to choose my location, but the widget to join a waiting queue is displayed on the page.

find_real_file.png

However, contary to this image found on another topic, the tab "Schedule an Appointment" doesn't appear, amond some other informations.

find_real_file.png

I would like to understand why I'm redirected directly to a location id without to be asked for the location I want in a dropdown list, why the component to join a queue and Schedule an appointment tab are not displayed on the page, even in the original widget. 

Thank You in advance to those who could bring me a helping hand.

17 REPLIES 17

Hi,

Can you share screenshot of your location, so that I can compare that with mine and look for difference.

Regards,

Deepankar Mathur

TC2201
Kilo Contributor

Thank You for your response. In the time, I achieved to solve the problem.
It seems I have forgotten something at the level of schedule definition, but apparently now, it displays correctly opening hours.

 

find_real_file.png

Requirements of the project are not still filled, but I have still to think on other features of the Kiosk.

Thank You for your help.

TC2201
Kilo Contributor

Hi. In my requirements for the kiosk, I have seen that the company would want the identity of employees to remain confidential and that little information is visible from screens that are visible from the outside.

find_real_file.png

How would you do to hide the keep the name of the logged in employee requiring assistance in Walkup confidential for other users ?

I would also like to know how to get the current number of persons waiting in the queue to send a notification to users when it stays only 5 persons waiting in the queue with a message "Thank You to bring your PC and your loader".

I understand there is probably a count type field to get from a ServiceNow table and I must create a notification in Walk Up Experience > , but which one ?

Thank You by advance.

Hi,

I guess the OOB way would be to make the default value of to 0. If you see the instance option, you can configure how much users you would like to display.

For the notification, It would be created on the interaction table with the type as walkup. I don't think there would be a count field but you can get the count of users by GlideRecord the Interaction table with the filter as type as walkup, active - true and state as new.

Let me know in case of any queries.
If you think my response is helpful for you? If yes, mark it as correct answer and close the loop so that it would help future readers as well.

Regards,
Deepankar Mathur

TC2201
Kilo Contributor

Hi. I'm a beginner on the community and I don't know how to do to close a topic. 

For the notification, from your explanations, the code would be something like that : 

try{

     sendNotification();

}

catch(e){

gs.log('Error : '+ e.message);

}

function sendNotification(){

var gr = new GlideRecord('interaction');
gr.addQuery('type', 'walkup');
gr.addQuery('state','new');
gr.addQuery('active', true);
gr.query();
var count = gr.getRowCount();

if(count < 5) {

while(gr.next()){

      gs.eventQueue('ims.notification');

}

}

}

What have I to put in the field "Send When".
The notification must be triggered when the count of people in the queue decrease beneath 5, but when I select "triggered" as a choice in send when field, the field "Advanced Condition" to write a code disappears.

I think you must use gs.eventQueue('ims.notification') to launch the event, but I don't see what I must put in argument.

Is there a mean to put in argument the content of "What will contain" tab ?

Moreover, the notification muse be triggered when the number of people decrease beneath 5 in a "particular" queue.

How can I precise the particular queue in GlideRecord ?

find_real_file.png