Quantcast
Channel: Ivanti User Community: Message List
Viewing all 12704 articles
Browse latest View live

Re: Web API

$
0
0

First of all, I definitely recommend you to take a look at Ivanti SM Web Services Guide v2017.2.

It's a good documentation to start with.

 

A task always needs a parent object, here's a simple example when using Incident# as the parent object.

   class Program    {        private static FRSHEATIntegration frSvc = new FRSHEATIntegration();        private static string _apiUserName = "HEATAdmin";        private static string _apiPassword = "p@ssw0rd";        private static string _apiTenantId = "yourtenant.contoso.com";        private static string _apiRole = "Admin";        private static string _authSessionKey = String.Empty;                static void Main(string[] args)        {            // Connect to obtain API key            var connectResponse = frSvc.Connect(_apiUserName, _apiPassword, _apiTenantId, _apiRole);            if (connectResponse.connectionStatus == "Success")            {                _authSessionKey = connectResponse.sessionKey;            }            // create Incident object            ObjectCommandData dataIncident = new ObjectCommandData();            dataIncident.ObjectType = "Incident#";            List<ObjectCommandDataFieldValue> dataFieldsIncident = new List<ObjectCommandDataFieldValue>();            Dictionary<string, object> fieldsIncident = new Dictionary<string, object>            {                ["ProfileLink"] = "3734B48625D043B0939456EBF5B07F43", // InternalServices, change as needed                ["Subject"] = "Need to swap out the hard disk",                ["Service"] = "Desktop-Service",                ["Category"] = "Hardware",                ["Urgency"] = "Low",                ["Impact"] = "Low",                ["OwnerTeam"] = "IT",                ["Owner"] = "fdeutsch",                ["Symptom"] = @"Description"            };            foreach (string key in fieldsIncident.Keys)            {                dataFieldsIncident.Add(new ObjectCommandDataFieldValue()                {                    Name = key,                    Value = fieldsIncident[key].ToString()                });            }            dataIncident.Fields = dataFieldsIncident.ToArray();            FRSHEATIntegrationCreateBOResponse result = frSvc.CreateObject(_authSessionKey, _apiTenantId, dataIncident);            // create task object            var parentObjectRecId = result.recId;            var parentObjectType = result.obj.TableRef;            ObjectCommandData dataTask = new ObjectCommandData();            dataTask.ObjectType = "Task#Assignment";            List<ObjectCommandDataFieldValue> dataFieldsTask = new List<ObjectCommandDataFieldValue>();            Dictionary<string, object> fieldsTask = new Dictionary<string, object>            {                ["Subject"] = "Need to swap out the hard disk",                ["Details"] = "Task Details",                ["OwnerTeam"] = "IT"            };            foreach (string key in fieldsTask.Keys)            {                dataFieldsTask.Add(new ObjectCommandDataFieldValue()                {                    Name = key,                    Value = fieldsTask[key].ToString()                });            }            dataTask.Fields = dataFieldsTask.ToArray();            dataTask.LinkToExistent = new LinkEntry[]            {                // link to the Incident we just created                new LinkEntry()                {                    Action = "Link",                    Relation = "IncidentContainsTask",                    RelatedObjectType = parentObjectType,                    RelatedObjectId = parentObjectRecId                }            };            FRSHEATIntegrationCreateBOResponse taskResult = frSvc.CreateObject(_authSessionKey, _apiTenantId, dataTask);            // add attachment            ObjectAttachmentCommandData taskAttachmentData = new ObjectAttachmentCommandData() {                ObjectId = taskResult.recId,                ObjectType = taskResult.obj.TableRef,                fileName = "testfile.txt",                fileData = File.ReadAllBytes(@"c:\temp\testfile.txt"),            };            FRSHEATIntegrationAddAttachmentResponse attachmentResponse = frSvc.AddAttachment(_authSessionKey, _apiTenantId, taskAttachmentData);            Console.ReadLine();        }    }

Re: Multiple LDAV.exe Processes Running

$
0
0

Thanks for all the help folks! I opened a case with ivanti and they ended up issuing me a SU that corrected the issue. Unfortunately, the support agent I was working with did not tell me the root cause and of course, they couldn't reproduce the issue. He happen to stumble across the release notes for this SU and saw that it corrected the issue- low and behold, it did! It was 2017.3 SU2 if I recall correctly if you are curious.

Can a service offering form have hidden fields that are editable to later approvers in the approval chain?

$
0
0

I am setting up a facilities request service, my first service. I need to have the service offering form filled out by the customer, and then later in the approval process additional fields on the form filled out by the approvers. My idea was to have all the fields on the original field but hidden by roles until later. Then when the person of the appropriate role gets it they can change the fields that now became visible. Is this the correct way to do this? My first attempt at a service is a very complex one.

Core Server Service Pack Upgrade

$
0
0

Hello,

I'm planning on doing a Service Pack Upgrade to fix some issues that are addressed in SP3 (the software distribution failing due to pending reboots, and not being able to add newer .inf files to the WinPE image)

 

I will be following the steps in this how to https://community.ivanti.com/docs/DOC-61649 

 

I want to make sure that I am installing the correct update for the current core version.

I'm asking if the version I have highlighted is the correct one to download?

 

Thanks in advance!

 

Screen Shot 2018-03-12 at 3.09.59 PM.png

Re: Windows 10 LTSB?

$
0
0

Hi Alex,

 

nachdem HP gerne für jeden Win10 Release andere Treiber bereitstellt, könnte ich mich vorstellen, dass du tatsächlich einfach das falsche Paket erwischt hast.

Driver Packs (64-bit) | HP Client Management Solutions

Das 1607er Paket sollte eigentlich tun.

Kannst ja mal prüfen...

 

Die Aussicht bei jedem Feature Update auch eine größere Menge Treiberpakete neu erstellen zu müssen ist m.E. ein weiterer Grund, der FÜR LTSB spricht (oder gegen HP ).

 

Ciao

  Klaus

Re: Ivanti Insight - no longer returning data

$
0
0

Hi Lee.  You may experience this if the Insight appliance is under too much load.  The max number of clients recommended for Insight is 15,000.  However, this is only achievable if you bump up the RAM on the appliance, and tweak some client settings.

 

Refer to this document for client changes necessary: How to Increase Supported Clients and Improve Network Utilization in Insight

 

For the appliance, bump it up to 16GB RAM and 8 vCPUs.

 

I've also had a couple of customers running the appliance on HyperV that couldn't get anywhere near 15,000 endpoints, so there's another potential caveat.

RETURNING VALUE FROM AN INTERNAL WEB SERVICE

$
0
0

I have a need to make an internal web service return a value.

 

 

FIND RECID OR OTHER VALUES FROM A BUSINESS OBJECT USING VALUE FROM ANOTHER FIELD

 

 

From the blog link above, I succeeded in creating internal web service that are capable of targeting a specific record in a table, updating fields such record, read fields from the record, and writing to console.

 

 

I tried the simple JavaScript return statement:

 

 

 

var thisIncident = Get('Incident#', '$(CurrentUserRecId())');

var rtnVal = thisIncident.Fields.LogInID;

return rtnVal;

 

 

 

This threw the following exception:

 

 

 

 

 

 

 

How do I make internal web services return a value?

Re: how do you make a window fit in the (Web Desk) browser and when the browser is rendered you can still see the whole window?

$
0
0

If that solved your issue, Please mark my previous reply as a correct answer


Dynamic Window Question

$
0
0

Hey ServiceDesk Pals,

 

I'm trying to wrap my mind around Dynamic windows and I have to be missing something silly.

 

I created an attruibute in Incident Management called DynamicWindow - String - -1 - with the window calculation of:

 

import System

static def GetAttributeValue(Incident):

     MAsset = true

     if Incident._LabelRequested == true:

          MAsset = false

     return String.Format(":SetMandatory(ConfigurationItem,{0});", MAsset)

 

With the dependencies of _LabelRequested.

 

My goal is to Set the Mandatory of placing an ConfigurationItem field as False when Label Requested checkbox is selected.

 

Test Syntax and Test Calculation comes back without any error.

 

In Window Manager, I have set both attrubutes _Label Requested and ConfigurationItem as True for "Is calculate on change". However when I create a new incident or test the window the ConfigurationItem field is still showing as mandatory. What could I be doing wrong?

Re: RETURNING VALUE FROM AN INTERNAL WEB SERVICE

$
0
0

You're never going to find an incident using the Recid of a user.

autofix patches for specific scope

$
0
0

Hello,

 

I have created a scope called "OS reinstall" and I setup certain updates to be autofixed for all devices in this scope (global patch settings - do not autofix). This scope selects systems based on device group called "OS reinstall". Another words - I move my systems manually to group "OS reinstall" and I expect these systems to autofix all patches for "OS reinstall" scope. Problem is that for some reason after I move system to group this system is still not able to apply patches - it acts like these patches do not have "Autofix" enabled. Do I need to do something like "wake up agent" or "update agent settings" so agent knows it is inside "OS reinstall" scope?

Re: CALL INTERNAL WEB SERVICE DIRECTLY FROM BUSINESS RULE WITHOUT USING TRIGGER, OR QUICK ACTION

$
0
0

Nope.

 

You are pretty much restricted to four things to kick them off:

 

1. A scheduled call to the service - You can set this when you build the service

2. A Quick action

3. A workflow (by calling the quickaction)

4. A triggered business rule, but you need the RecID of the webservice you are using. You can use the "Clone from another Action" to get the ID after you make a quickaction for it.

Re: In Telnet CE FN F9 and F7 no funktion

Re: Web API

FusionLink - how do I get the recid from partner

$
0
0

I am trying to simplify the selfservice form for our users.

They should only choose a CI.System from a dropdown, and the
corresponding Service should be added.

 

I have made a relationship between CI.System (n) and CI (n) with a
fusion list

In the database it looks like this

Now I am trying to update the Incident.Service field from the CI.System over the link to the Service

 

Is this in the right direction? (does not work)

$([GetBOValue('[CI#System.LT_CISystemAssocCI]RecId', 'boRecID',
'CI#Service', 'RecId' )


Re: Web API

$
0
0

Of course, you are not limited to specific records.

The only hard coded RecId here refers to the employee record. Instead of hard coding this you can also use the Search() method and parse the Loginid as search parameter to get the employee's RecId.

 

If you create a task object,

FRSHEATIntegrationCreateBOResponse taskResult = frSvc.CreateObject(_authSessionKey, _apiTenantId, dataTask); 

you will receive the whole created object (with its RecId etc.) in the response.

 

So if you were to create 5 tasks you will receive 5 different RecIds:

Enumerable.Range(0, 5).ToList().ForEach(arg =>
{    // create 5 tasks..    ObjectCommandData dataTask = new ObjectCommandData();    dataTask.ObjectType = "Task#Assignment";    // [...]    FRSHEATIntegrationCreateBOResponse taskResult = frSvc.CreateObject(_authSessionKey, _apiTenantId, dataTask);    Console.WriteLine($"Created task #{arg.ToString()}: {taskResult.recId}");
});

 

You can also query existing Incidents with the Search() method and update these tasks' attachments.

Here's a Powershell example to use the Search function: Simplified API search using Powershell + JSON.

Explicit Value not displayed

$
0
0

Hi,

 

I have installed Version 6.1.5 of the process manager and I would like to connect to LDMS.

 

In the settings tab, I have add the core server under integration servers and the connection works fine.

 

But if I start to create a new workflow, the TAB explicit values e.q for Software Distribution -> delivery methode is not displayed - Core credentials are already set.

 

I am really sure that this has been displayed in other versions.

 

Thanks for help in advanced

Christian

Getting a General Exception error in the Email object for Incoming Email.

$
0
0

Would like to get more details on what this means. Does anyone have any ideas?

Re: How to filter Service Catalog items

$
0
0

We have similar approach to our Service Catalog where employees are flag base on an Active Directory Groups. From there we can filter them into different OUs, either All/IT/HR..etc and only people can view Request Offerings publish to their designated OUs.

Re: autofix patches for specific scope

$
0
0

No doubt you learn new things every day!

Thx (both) for the detailed explanation.

Viewing all 12704 articles
Browse latest View live