I want to integrate IRIS with Keycloak OAuth2 provider to use delegated authentication everywhere and to secure everything - sys*/Portal applications, REST services, FHIR server and so on. If an unathenticated user tries to access any IRIS URL - he or she should be redirected to Keycloak. After the user has successfully authenticated, i would like to access his requistes (username, email, roles, scopes) extracted from the JWT token, programmatically. What should be done to achieve that?

1 1
0 41
Question
· Nov 26
HL7 Encoding issue

Dear All,

I have been sent an HL7 message as a file with the MSH segment as follows....

MSH|^~\&|SendingApp|pms3medd|HealthLink|cribrumt|20241121050000|PKI|ORU^R01|01_ASCIItest_2|P|2.3.1||||||UNICODE

I try picking up the file with a "EnsLib.HL7.Service.FileService" business service using a EnsLib.File.InboundAdapter adaptor. The Character set is set to "Native" and the Default Char Encoding to latin 1.

I am seeing the following error:

0 3
1 68

Since .Net has a unified package manager system (Nuget.org) why doesn't Intersystems create and add a nuget package (.nupkg) containing the InterSystems.Data.IRISClient.dll file.

This would make it easier for external .net developers to obtain the package for creating tools and/or applications that utilize Iris/Iris4Health

Can Intersystems create a nuget package?

1 3
0 63

Hello,

I want to upload a "custom" metric in prometheus (queue).

For now, in version 2022, I have the impression that we cannot add multiple labels and yet the basic metrics know how to do it.

ex: standard metric

iris_interop_messages_per_sec{cluster="1", host="xxxx", id="API", instance="xxxx:80", job="SAM", production="xxxx"}

my current example: I would like to be able to at least add the production, just to have the source of the measurement.

my_iris_queue{cluster="1", id="xxxx", instance="xxx", job="SAM"}

0 2
0 41

To transfer data between production components I actively use messages of type Ens.StreamContainer class and its descendants. In many cases the content of the message content is not visualised (the 'Body' tab contains a table with a list of selected message properties but the 'Contents' tab is empty). Response messages are never visualised, and request messages are visualised with a fifty-fifty probability. What do I need to do to ensure that messages are always visualised?

0 3
0 67

If both fields are numeric and the result of subtraction of field1-field2 is positive, only then put the result is a data field.

I am doing this within an Iris DTL.

I don't find any functions like IsNumeric(). Once I get that, I can test if field1>0 and field2>0, do the subtraction, and test if diff>0.

I just need a function to determine if they are numeric, rather than some cumbersome way like a regex where the only characters are 0-9.

I see functions in documentation but don't see them used at tests, only in WRITE statements.

Thanks,

0 10
0 114

We have a scenario where we use the best practice article of a BP and DTL to split up HL7 messages mainly ORUS

https://community.intersystems.com/post/splitting-oru-messages-using-obj...

It is really useful but we have this code in many places that we are trying to consolidate it in one place.

0 1
0 68

Hello Experts ,

Could you help to search message details based on MRN in intersytems iris.

We have created 100+ interfaces and currenly in live (interystems cloud) . Now I try to search message details based on MRN using below query. it is working fine in DEV. but in prod it is taking ages.

0 2
0 92

json file failing in conversion to SDA

  • DO^zToQuickXML+11^HS.SDA3.NVPair.1 +2
  • DO^zToQuickXML+34^HS.SDA3.CustomObject.1 +1
  • DO^zToQuickXML+8^HS.Local.SDA3.CodeTableDetail.HealthCareFacilityExtension.1 +1
  • DO^zToQuickXML+28^HS.SDA3.CodeTableDetail.HealthCareFacility.1 +1
  • DO^zToQuickXML+6^HS.SDA3.Location.1 +1
  • DO^zToQuickXML+12^HS.Local.SDA3.ProcedureExtension.1 +1
  • DO^zToQuickXML+29^HS.SDA3.Procedure.1 +1
  • DO^zToQuickXML+155^HS.SDA3.Container.1 +1
  • $$^zToQuickXMLStream+5^HS.SDA3.QuickXML.1 +1
0 1
0 46

Hello,

First of all: thanks for your help, and thank you for your time.

Thanks for your time.

We have the following situation:

We are in a BPL, and we have defined 4 <call> asynchronous as follows:

First one name: "Enviar a Proceso NEGRIN"

The second one, named as: "Enviar a Proceso HUNSC"

0 9
0 100

Hello,

I'm trying to create a custom IRIS4Health docker container utilizing CPF Merge but getting an error below. The merge file has been copied to the container within the docker file. Anybody know what would cause this error?

ERROR: failed to solve: process "/bin/sh -c iris start IRIS && iris merge IRIS mergefile.cpf" did not complete successfully: exit code: 133

0 1
0 44

docker login -u=<username> -p=<password> containers.intersystems.com
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Login Succeeded

$ docker pull containers.intersystems.com/intersystems/irishealth:2024.1
Error response from daemon: unauthorized: The client does not have permission for manifest: Download request for repo:path 'docker-customer-remote-cache:intersystems/irishealth/2024.1/list.manifest.json' is forbidden for user: 'anonymous'.

why the download is not working.

0 2
0 105

I have some Services using EnsLib.File.InboundAdapter to go directly to respective operations using EnsLib.File.OutboundAdapter which has a 'File Path' specified.

Using this File Path as a root directory, I'd like to instead pass this through a Router where I could somehow inject a subdirectory to place the file into on the outbound side based off the source service it is coming from. There will likely be several inbound services writing to each outbound operation and I'd like to be able to sort the output into subfolders.

1 1
0 68