{"id":21638472,"url":"https://github.com/linx-software/ibmmq-client","last_synced_at":"2025-03-19T01:15:23.073Z","repository":{"id":194815602,"uuid":"691648541","full_name":"linx-software/ibmmq-client","owner":"linx-software","description":"Console app to read and write text content to IBM MQ queues","archived":false,"fork":false,"pushed_at":"2024-04-02T07:49:32.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-01T02:43:53.238Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/linx-software.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-09-14T15:42:01.000Z","updated_at":"2023-09-14T15:47:44.000Z","dependencies_parsed_at":"2024-03-04T12:57:22.835Z","dependency_job_id":null,"html_url":"https://github.com/linx-software/ibmmq-client","commit_stats":null,"previous_names":["linx-software/ibmmq-client"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linx-software%2Fibmmq-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linx-software%2Fibmmq-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linx-software%2Fibmmq-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linx-software%2Fibmmq-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/linx-software","download_url":"https://codeload.github.com/linx-software/ibmmq-client/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244333022,"owners_count":20436123,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-25T04:09:46.779Z","updated_at":"2025-03-19T01:15:23.031Z","avatar_url":"https://github.com/linx-software.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Background #\nThis is a console app to read and write text content to IBM MQ.\n\nWe require IBM MQ connectivity at a customer. At the time of writing, Linx 6 does not have an IBMMQ plugin. This project provides a way to use Linx 6 to access IBM MQ by using the CommandLine function.\n\n# Specification #\nThe app uploads and downloads text content to and from an IBM MQ queue. Browse acts like download but does not take the item off the queue.\n\nUsage: IBMMQClient upload|download|browse -h host -p port -c channel -m queueManager -n queueName -i inputDir -o outputDir -a archiveDir -l logDir -u userId -w password -r cipherSpec -s certStore\n- upload|download|browse: Required first argument. Any one of the three.\n- -h host: Like -h 127.0.0.1. Default is localhost.\n- -p port: Like -p 1234. Default is 1414.\n- -c channel: Like -c DEV.APP.SVRCONN\n- -m queueManager: Like -m QM1\n- -n queueName: Like -n DEV.QUEUE.1\n- -i inputDir: Like -i c:\\temp\\mq\\input. Directory where messages are read from.\n- -o outputDir: Like -o c:\\temp\\mq\\output. Directory where messages are written to.\n- -a archiveDir: Like -a c:\\temp\\mq\\archive. Directory where messages are archived.\n- -l logDir: Like -l c:\\temp\\mq\\log. Directory where log files are written to.\n- -u userID: Like -u appuser\n- -w password: Like -w verylongpassword\n- -r cipherSpec: Like -r TLS_RSA_WITH_AES_256_CBC_SHA256\n- -s certStore: Like -s *USER. Where to find the cert in the Windows certificate store. Can be *SYSTEM or *USER\n- -e sslPeerName: Like -e CN=peername\n\n## Upload ##\nUpload reads files from the input directory, puts a message containing the contents of the file on the queue, and moves the file to the archive directory prepending [messageid]_ to the filename.\n\nexamples:\n````\nIBMMQClient.exe upload -h 127.0.0.1 -p 1414 -c DEV.APP.SVRCONN -m QM1 -n DEV.QUEUE.1 -i c:\\temp\\mq\\input -a c:\\temp\\mq\\archive -l c:\\temp\\mq\\log -u app -w passw0rd\n````\n\n## Download ##\nDownload reads each message from the queue, writes the contents to a file named [messageid].txt in the output directory, and then removes the file from the queue.\n\nexample:\n````\nIBMMQClient.exe download -h 127.0.0.1 -p 1414 -c DEV.APP.SVRCONN -m QM1 -n DEV.QUEUE.1 -o c:\\temp\\mq\\output -l c:\\temp\\mq\\log -u app -w passw0rd\n````\n\n## Browse ##\nBrowse reads each message from the queue and writes the contents to a file named [messageid].txt in the output directory.\n\nexample:\n````\nIBMMQClient.exe browse -h 127.0.0.1 -p 1414 -c DEV.APP.SVRCONN -m QM1 -n DEV.QUEUE.1 -o c:\\temp\\mq\\output -l c:\\temp\\mq\\log -u app -w passw0rd\n````\n\n## Log ##\nLogs are written to a file called [date].log in the log directory.\n\n# Notes #\nDocumentation to get started\nhttps://www.ibm.com/docs/en/ibm-mq/9.3?topic=applications-developing-net\nhttps://www.ibm.com/docs/en/ibm-mq/9.3?topic=reference-mq-net-classes-interfaces\n\nUse TRANSPORT_MQSERIES_MANAGED mode. For other modes the MQSeries client install is required.\n\nI tested this by running IBM MQ in a container: https://developer.ibm.com/tutorials/mq-connect-app-queue-manager-containers/\n````\ndocker run --env LICENSE=accept --env MQ_QMGR_NAME=QM1 --publish 1414:1414 --publish 9443:9443 --detach --env MQ_APP_PASSWORD=passw0rd --name QM1 icr.io/ibm-messaging/mq:latest\n````\n\nI couldn't get the ibmmq console running in the container at https://localhost:9443/ibmmq/console to work, but the client and this app does work with the parameters shown in the examples above.\n\nThe app.config contains three settings that controls tracing the MQClient. This app uses the settings to set environment variables to configure tracing.  See https://www.ibm.com/docs/en/ibm-mq/9.3?topic=applications-tracing-mq-net-using-environment-variables. You can also use the mqclient.ini file for more control over the inner workings of the MQClient. See https://www.ibm.com/docs/en/ibm-mq/9.3?topic=applications-tracing-mq-net-mqclientini.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinx-software%2Fibmmq-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flinx-software%2Fibmmq-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinx-software%2Fibmmq-client/lists"}