Cannot "run" high density robots

Hi @Allan_Zimmermann

I have watched and followed all the steps in your tutorial about high density robots but cannot get them to “run” or control them via openflow in the " HD Robots" menu.

I have created three users on a Windows 2012 R2 server via RDS, created the users and role in openflow and the service “OpenRPA” is running normally.

Is there a way to troubleshoot this or a different way to do this process?

PS: If you need more info please let me know. Thanks

what happens if you run it from the console as i show in the video ?
first make it work in the console, then try and make it work as a service. and remember to RE run the auth command to seed a new token, when trying to run as a service.

@Allan_ZimmermannThanks for the quick replay.

I ran the command “openrpa.rdservice” and it show this:

And after 10 second this message is displayed in the cmd
image

and three windows was opened at same time and I can control the user in the “HD Robots” menu:

so looks like it’s working ?

Seems this is working now, but I need to maintain the cmd with the command “openrpa.rdservice” always open? Because if I close it… the “HD Robots” menu stop working.

CMD Logs: openrpa.rdservice-cmd-output.json (9.8 KB)

make sure openrpa service is stopped.
Stop/kill openrpa.rdservice in the console.
rerun auth
then start the service

I follow your steps but didn’t work.
The HD robots works only if I keep the command running in cmd but not is giving me this Error.

C:\Windows\system32>openrpa.rdservice
main 1
GetParentProcessId
main 200
Check parentProcess
main 5
****** isService: False
DoWork
Do work!
BEGIN::Set ProjectsDirectory
Set UnhandledException
C:\Program Files\OpenRPA\settings.json
Check IsServiceInstalled
Create Tracing
Add Tracing
Override SetOut
[10:12:37.711][Output] Override SetError
[10:12:38.102][Output] ResetLogPath
[10:12:38.116][Output] ****** BEGIN
[10:12:38.251][Information] ******************************
[10:12:38.254][Information] * Done                       *
[10:12:38.257][Output] Connect to wss://openflow.codecenter.info/
[10:12:38.285][Information] ******************************
[10:12:38.798][Information] Connected to wss://openflow.codecenter.info/
[10:12:38.810][Information] WebSocketClient_OnOpen
[10:12:38.994][Error] System.Security.Cryptography.CryptographicException: Key not valid for use in specified state.

   at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionSco
pe scope)
   at OpenRPA.RDService.PluginConfig.UnprotectString(Byte[] data)
   at OpenRPA.RDService.Program.<WebSocketClient_OnOpen>d__19.MoveNext()

you need to run reauth to inject a new jwt token

i program files\openrpa there will be a log file with the output from the service.
i cannot remember the name, try ordering by last updated …

Yes, I run “openrpa.rdservice reauth” and command works.

Now “openrpa.rdservice” is showing this error:

[10:19:49.132][Error] System.Security.Cryptography.CryptographicException: Key not valid for use in specified state.

   at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope)
   at OpenRPA.RDService.PluginConfig.UnprotectString(Byte[] data)
   at OpenRPA.RDService.Program.<WebSocketClient_OnOpen>d__19.MoveNext()

log_rdservice.json (19.9 KB)
logfile.json (12.9 KB)

I don not support HD robots for free, sorry.

But like i said, you need to run AUTH every time to swap between running in the console or running as a service since the token gets encrypted ! …
Also, i see your missing watch support, you CANNOT use hd robots without running openflow with watch support ( mongodb needs to be installed in a replicaset ) with out this, the service will not detect when you enable/disable users.

No problem.

I will see this point " mongodb needs to be installed in a replicaset", and how to do this.
And will be back with feedback. Thanks!

@Allan_Zimmermann Can you give me some help in this? I’m using openflow on docker.

How to change docker-compose file to use replicaset and the supports_watch as true?

IT auto detects it, you cannot set supports_watches
here is an example with a replica set

Hi @Allan_Zimmermann
I have already installed openflow https on my ubuntu server. I try to “join” docker-compose-traefik.replicaset.yml and docker-compose-traefik-letsencrypt.yml, like this:

Can you help me in this?

version: "3.3"
services:
   mongodb:
      hostname: mongodb
      image: "mongo"
      # if you get MongoDB 5.0+ require a CPU with AVX support, then try using version 4 instead

      # image: "mongo:4.4.8"
      restart: always
      volumes:
         - mongodb_data:/data/db
      environment:
         - MONGO_REPLICA_SET_NAME=rs0
         # healthcheck:
         #   test: test $$(echo "if (rs.status().codeName == 'NotYetInitialized') { rs.initiate() }; if (rs.status().codeName == 'InvalidReplicaSetConfig') { cfg = rs.conf(); cfg.members[0].host = hostname() + ':27017'; rs.reconfig(cfg, {force:true}); };" | mongo --quiet) -eq 1
         #   interval: 10s
         #   start_period: 30s
         # healthcheck:
         #   test: test $$(echo "if (rs.status().codeName == 'NotYetInitialized') { rs.initiate() }; if (rs.status().codeName == 'InvalidReplicaSetConfig') { cfg = rs.conf(); cfg.members[0].host = 'mongodb:27017'; rs.reconfig(cfg, {force:true}); };" | mongo --quiet) -eq 1
         #   interval: 10s
         #   start_period: 30s
         # https://www.sohamkamani.com/docker/mongo-replica-set/#using-docker-compose
      command: "--bind_ip_all --replSet rs0"
      ports:
         - "27017:27017"
   mongosetup:
      image: "mongo"
      depends_on:
         - mongodb
      restart: "no"
      command: >
       mongo --host mongodb:27017 --eval 
       '
       db = (new Mongo("mongodb:27017")).getDB("openrpa");
       config = {
       "_id" : "rs0",
       "members" : [
         {
           "_id" : 0,
           "host" : "mongodb:27017"
         }
       ]
       };
       rs.initiate(config);
       '
   traefik:
      image: "traefik"
      container_name: "traefik"
      labels:
         - "traefik.enable=true"
         - "traefik.http.routers.traefik.rule=Host(`dashboard.openflow.codecenter.info`)"
         - "traefik.http.routers.traefik.entrypoints=websecure"
         - "traefik.http.services.traefik.loadbalancer.server.port=8080"
         - "traefik.http.routers.traefik.tls.certresolver=myresolver"
         - "traefik.http.routers.api.service=api@internal"
         - "traefik.http.routers.api.rule=PathPrefix(`/api`) ||
           PathPrefix(`/dashboard`)"
         # - "traefik.http.routers.traefik.middlewares=admin"
         # - "traefik.http.middlewares.admin.basicauth.users=admin:$$apr1$$iB.BZjJJ$$FmaZuX35eFCMe5t3a.OqR."
      command:
         #  - "--api.insecure=true" # enable with port 8080 to access dashboard, NEVER enable this for the public
         - "--providers.docker=true"
         - "--providers.docker.exposedbydefault=false"
         - "--entrypoints.websecure.address=:443"
         - "--entrypoints.web.address=:80"

         # - "--entrypoints.websecure.http.tls.certresolver=myresolver"
         - "--certificatesresolvers.myresolver.acme.tlschallenge=true"
         - "--certificatesresolvers.myresolver.acme.email=codecenter@codecenter.info"
         - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
         # middleware redirect
         - "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
         # global redirect to https
         - "traefik.http.routers.redirs.rule=hostregexp(`{host:.+}`)"
         - "traefik.http.routers.redirs.entrypoints=web"
         - "traefik.http.routers.redirs.middlewares=redirect-to-https"
      ports:
         - "80:80"
         - "443:443"
      restart: always
         # - "8080:8080" # enable with api.insecure=true to access dashboard, NEVER enable this for the public
      volumes:
      - "./letsencrypt:/letsencrypt"
      - "//var/run/docker.sock:/var/run/docker.sock:ro"
   rabbitmq:
      labels:
         - "traefik.enable=true"
         - "traefik.http.routers.rabbitmq.rule=Host(`mq.openflow.codecenter.info`)"
         - "traefik.http.routers.rabbitmq.entrypoints=websecure"
         - "traefik.http.routers.rabbitmq.tls.certresolver=myresolver"
         - "traefik.http.services.rabbitmq.loadbalancer.server.port=15672"
      image: "rabbitmq:3-management"
      container_name: "rabbitmq"
      restart: always
   web:
      labels:
         - "traefik.enable=true"
         - "traefik.http.routers.web.rule=Host(`openflow.codecenter.info`)"
         - "traefik.http.routers.web.entrypoints=websecure"
         - "traefik.http.routers.web.tls.certresolver=myresolver"
         - "traefik.http.services.web.loadbalancer.server.port=3000"
         - "traefik.frontend.passHostHeader=true"
      image: "openiap/openflow:edge"
      deploy:
         replicas: 1
      pull_policy: always
      restart: always
      depends_on:
         - rabbitmq
         - mongodb
      volumes:
         - "//var/run/docker.sock:/var/run/docker.sock"
      environment:
         - multi_tenant=false
         - auto_create_users=false
         - auto_create_domains=
         - allow_personal_nodered=true
         - auto_create_personal_nodered_group=false
         - tls_crt=
         - tls_key=
         - tls_ca=
         - tls_passphrase=
         - api_bypass_perm_check=false
         - websocket_package_size=25000
         - websocket_max_package_count=1048576
         - protocol=https
         - port=3000
         - nodered_docker_entrypoints=web,websecure
         - nodered_docker_certresolver=myresolver
         - domain=openflow.codecenter.info
         - log_with_colors=false

         - HTTP_PROXY=
         - HTTPS_PROXY=
         - NO_PROXY=

         - enable_openflow_amqp=false # enable this to use the openflow amqp, only usefull when you have more than one replicas
         - amqp_prefetch=25
         - socket_rate_limit=true
         - socket_rate_limit_points=1000
         - socket_rate_limit_points_disconnect=2500
         #- nodered_docker_use_project=true  # uncomment to add nodered to the same docker-compose project ( will breake running docker-compose up -d if any nodereds are running )

         - nodered_images=[{"name":"Latest Plain Nodered",
           "image":"openiap/nodered"},{"name":"Latest Puppeteer Nodered",
           "image":"openiap/nodered-puppeteer"},{"name":"Latest TagUI Nodered",
           "image":"openiap/nodered-tagui"}]
         - nodered_ws_url=ws://web:3000
         - saml_federation_metadata=http://web:3000/issue/FederationMetadata/2007-06/FederationMetadata.xml
         - nodered_saml_entrypoint=https://openflow.codecenter.info/issue
         - amqp_url=amqp://guest:guest@rabbitmq
         #- mongodb_url=mongodb://mongodb:27017
         - mongodb_url=mongodb://mongodb:27017/?replicaSet=rs0
         - mongodb_db=openrpa

         - skip_history_collections=audit,openrpa_instances,workflow_instances
         - allow_skiphistory=false

         - saml_issuer=uri:openflow.codecenter.info
         - aes_secret=7TXsxf7cn9EkUqm5h4MEWGjzkxkNCk2K
         - signing_crt=LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURZRENDQWtpZ0F3SUJBZ0lKQUsrSll6OGQ1bURxTUEwR0NTcUdTSWIzRFFFQkN3VUFNRVV4Q3pBSkJnTlYKQkFZVEFrRlZNUk13RVFZRFZRUUlEQXBUYjIxbExWTjBZWFJsTVNFd0h3WURWUVFLREJoSmJuUmxjbTVsZENCWAphV1JuYVhSeklGQjBlU0JNZEdRd0hoY05NVGt3TnpFd01UZ3dPVEl4V2hjTk1Ua3dPREE1TVRnd09USXhXakJGCk1Rc3dDUVlEVlFRR0V3SkJWVEVUTUJFR0ExVUVDQXdLVTI5dFpTMVRkR0YwWlRFaE1COEdBMVVFQ2d3WVNXNTAKWlhKdVpYUWdWMmxrWjJsMGN5QlFkSGtnVEhSa01JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQgpDZ0tDQVFFQTZrcEo4eHFUUU9pRzVmTUt4T1U5VzZDbVVSSWJnb2ZoSHZwVVZWVDBoMnRsakFsc2Z2cWRzSk5MClZBd3dySW55V2ZNYlVHZGE3M21MTG9XdEM0L3RYUlNEQktnK2J6MXhRSHNzcjVaMmVueDhYdGtRSDVHZ1crOVQKajdhbVNZL0l0SUFiME5qL1NRaVozK0JPN0tpeTJpMWFVdlJBeVp5UVpVcyt1aWlIRkNJekhBbXltV0ovNXdrdwptb2ZUYjUxWWlqZ2xiaGdZVllUcXdVdmpscEIvbWFnWjV3VENuOWpmbG16bGY1aSs5aTAxSHU1U1RXNW9JSnovCm9oQ25Mam4wM2c4NXA5dllFaTJLUkM2dW84Nnp5Y1pxL1lKQzVNTlVPTzZRanlZYXQ4RjBYWVVQNzhzS1l2OCsKYTF3WmlDNFZhSWt2OEFaOUJua0hFbllBRnhpZ2RRSURBUUFCbzFNd1VUQWRCZ05WSFE0RUZnUVVsenEzdDBOWQowckpwSmpIMXRoQitlV0M2SGJZd0h3WURWUjBqQkJnd0ZvQVVsenEzdDBOWTBySnBKakgxdGhCK2VXQzZIYll3CkR3WURWUjBUQVFIL0JBVXdBd0VCL3pBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQW8rOHJDVllXOFc5UzZxUDQKdzVoSEMyTk5WMGJIVmgyQ3FZbmp3RXVTTjM4NWgvUWd3TmlIZE5NQzJXUHd4VytwSmZ4Q0Y1ZGZOMzUrZ085YworOTg1UHYzYVoyZ3BmcWVaRTFKZ2JqUTFiTkVWT3BqRDV0dVlNRE55YWpraS9oWVdDaVBSams5ZG1nQVV4cHdpCkZuTUdlemk4K080dXQyRW1DaHhUYlZUQ1psRnJwRWpqSTF1WUVmQ2l5NmZaUXV2bnpCeU5QZ3FUQS9RWXhMZkIKRWE4cFpOMk5LNm5IdEF0clhyRkYveFh6OHJRYWlyVFYrVm9yQXQxdzYzZ1VTWGc1VU55R2JZaDErdFRzWTdoYQpNamkwSFNYQkxtL0dHb05XaHBDVVpDVDU0NWJ6SmdJNjJwd2hKcVlyWm5jYlBDRzRaWXhHZzIxTVZLdkJaL29pCkFYcStpQT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
         - singing_key=LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRRHFTa256R3BOQTZJYmwKOHdyRTVUMWJvS1pSRWh1Q2grRWUrbFJWVlBTSGEyV01DV3grK3Ayd2swdFVERENzaWZKWjh4dFFaMXJ2ZVlzdQpoYTBMaisxZEZJTUVxRDV2UFhGQWV5eXZsblo2Zkh4ZTJSQWZrYUJiNzFPUHRxWkpqOGkwZ0J2UTJQOUpDSm5mCjRFN3NxTExhTFZwUzlFREpuSkJsU3o2NktJY1VJak1jQ2JLWlluL25DVENhaDlOdm5WaUtPQ1Z1R0JoVmhPckIKUytPV2tIK1pxQm5uQk1LZjJOK1diT1YvbUw3MkxUVWU3bEpOYm1nZ25QK2lFS2N1T2ZUZUR6bW4yOWdTTFlwRQpMcTZqenJQSnhtcjlna0xrdzFRNDdwQ1BKaHEzd1hSZGhRL3Z5d3BpL3o1clhCbUlMaFZvaVMvd0JuMEdlUWNTCmRnQVhHS0IxQWdNQkFBRUNnZ0VBTXVEZkhrUHZKbkZZbWljbGQ0eXd2bTBzc1A1VnF3c0hBRXNzZFR0MXZ0SzcKd3FWcFFrbjZaSllZRGJCNEFZQVRlU1VxRVZQZ2s1QzVnT2pXbzJRbUQ4aWNpeTVlSUpvZk5mbUp3cmZTRXRkbAp5dE1vaFRLQ3VIUkltVFQ0OTVDWjdWakVzWjN1RWxZajFGSkowV3J4TENBZE5WYUZtMEs4dU1LV1pLYllicTUwCk40SkdBVVA4cXpzVGsxMFcwL1JsVkhjN3MxcVJMYmhUaHVmeWZqdkFsWlRDUStzNld2Z1FzNTljZis5ZkRpenEKeDlFYTRmclN4SkFzdmhEZ3lmd0FCSHVYcEl5ZGFJNEQ1UkZYRXBGQW1SYkZGRkFhNW9Zam5XT1BiQmVKUHJUUApMckxmcU03NkVaZ1pXclU5UmgwN2VXeVMwdlAyVEhmNGo4eTNYWEpFQVFLQmdRRDVyVTFnQlNLdXhxZVZkWFZRCkp1RXVIVnVFTEkzS0hITVRGb1R1cEFKU2R1b3VSMXNmYjZHc1RPQWFmamp6QlpHdFFFa3R4c3pEemFTTVh5OHYKYU5mT1QvcTlZYXFwdSt3cno5dXp4dnBhY1pQZHg3TGJUWGwwYmRKR2FPRHdNYWY3bHRDcmo1WVZ6Vk9GSGsvZgpCYndGV1ZQTUJORldCMEZMZzU1dGN6cjFGUUtCZ1FEd09UdEp2TXNtZVZFVU1aUnFnNjB0U2FyN0pjeHJKRklrCno5ZFdIUW1xS1dpNzFob3krbHBqM0FwRnhBQ3lPY2dmZE03VFQyb25rcXB1c0NUNlliZThXT3BrWWxIMGlpUmQKWkVISC9zakhySzNEaktJWEIvSEVyVEdrOVJNaTdiNUd4NGYweVVkM2hqd0E2Y2dGRDlyd0l6VyszMjM0Z2xlNwphdzlIRFpxVjRRS0JnQVBiOXVjMkRSd3dlK1NtaFNLeEJ5Z0VVaWJQM1gwelJXQVZLQWJjU0NEb0w2UjVlK0lYCmdxTThLUGFmM3RkNnpZNmxBTHlSWnhiYnRlQnBsRHdpWGJ1VnB1V0lmZS9UdE1uVWs2dkt0cEh4VVh6TEdtdWoKWGU0N3lGVklSN25PdXE3NzNNdmFFMUxROHFxTEZtYjNHcm5tY0pJbHZPcWNnQmpmdHZJd0pzZ2xBb0dBU1RtWQoyZlJEbEptOFhrUnlzamtySzdmZDk2cGc4blBpMmpmRXN3b3M3UUtzV3oxN1JQak5YczB2RUc4YnF6Z3p5V3JvCnRMN3JZOTZ3TndkWWJqNGxMTE9KMTBtbEk3Nk1NUytqWVp4SGhaNGNaWlJUd0dONmpmSWhST0F6a2gwWU9Da1EKUjB5bmpVYU11ZGFKVXdtdk9pM3hieHBhUWpzeEZQOGdiQTg0aE9FQ2dZRUExbXZjSStZeDZITW00WkVjMU9yaworNXJoUHJrdGNMT0JHR3pZZGZIZGRZMytVdFZydUpCRmt5R2pCU2t2YmVtcUZxRlluMHFZckpXZVlUS2hMbUlwClkyRk1Gd29abWxpSkpONTA1eStTemdPbUVxN2wzT1Z4R0NwTTd1ODNyWFBXRGRERnc5WVNYVU1ueFRDUGsyRW0KekEyUzVkWjlWRld2NlR6VHg3cTIyc2c9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K
volumes:
  mongodb_data:
    driver: local

You need to tell me what the issue is ?

I tried this combination and when I try to access my test env url this text is displayed: Bad Gateway
I just added some parts of the yml file “replicaset”.

Is there a way to debug this or know what’s wrong?

https://openflow.codecenter.info/

I sent you a private message.

1 Like

Thank you @Allan_Zimmermann

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.