Skip to content
DataMiner DoJo

More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search in posts
Search in pages
Search in posts
Search in pages
Log in
Menu
  • Blog
  • Questions
  • Learning
    • E-learning Courses
    • Open Classroom Training
    • Certification
      • DataMiner Fundamentals
      • DataMiner Configurator
      • DataMiner Automation
      • Scripts & Connectors Developer: HTTP Basics
      • Scripts & Connectors Developer: SNMP Basics
      • Visual Overview – Level 1
      • Verify a certificate
    • Tutorials
    • Video Library
    • Books We Like
    • >> Go to DataMiner Docs
  • Expert Center
    • Solutions & Use Cases
      • Solutions
      • Use Case Library
    • Markets & Industries
      • Media production
      • Government & defense
      • Content distribution
      • Service providers
      • Partners
      • OSS/BSS
    • DataMiner Insights
      • Security
      • Integration Studio
      • System Architecture
      • DataMiner Releases & Updates
      • DataMiner Apps
    • Agile
      • Agile Webspace
      • Everything Agile
        • The Agile Manifesto
        • Best Practices
        • Retro Recipes
      • Methodologies
        • The Scrum Framework
        • Kanban
        • Extreme Programming
      • Roles
        • The Product Owner
        • The Agile Coach
        • The Quality & UX Coach (QX)
    • DataMiner DevOps Professional Program
  • Downloads
  • More
    • Feature Suggestions
    • Climb the leaderboard!
    • Swag Shop
    • Contact
      • General Inquiries
      • DataMiner DevOps Support
      • Commercial Requests
    • Global Feedback Survey
  • PARTNERS
    • All Partners
    • Technology Partners
    • Strategic Partner Program
    • Deal Registration
  • >> Go to dataminer.services

Protocol package builder

Solved1.61K views28th August 2023assembly file DMProtocol
1
Pawel Bochenek [DevOps Enabler]700 24th August 2023 0 Comments

Hello,

My question is regarding the .dmprotocol package and references an earlier post: https://community.dataminer.services/question/is-there-any-documentation-explaining-how-we-can-create-dmprotocol-package/

Where is the required <assemblyFilePath> located in the solution folder?

*************

var protocolBuilder = new AppPackageProtocol.AppPackageProtocolBuilder("<name>", "<version>", "<protocolXmlFilePath"))
.WithAssembly("<assemblyFilePath>", "<destinationFolder>");

*************

I have tried using the QAction_Helper.dll and was able to create a .dmprotocol package file, however it only contained the xml information (i.e. parameters, triggers, groups, timers, etc) but no C# code in the QActions nor any other references.

Marieke Goethals [SLC] [DevOps Catalyst] Selected answer as best 28th August 2023

2 Answers

  • Active
  • Voted
  • Newest
  • Oldest
2
Michiel Oda [SLC] [DevOps Enabler]3.58K Posted 24th August 2023 3 Comments

Hi Pawel

With Protocol as a Solution, the XML doesn't contain the C# code directly anymore. These are now in the QAction projects. You'll first need to extract the C# code, insert it in the XML and then continue with the package creation.

The method 'WithAssembly' is for custom DLLs or NuGet packages that are being used (Excluding the Skyline.DataMiner.Dev.*) and that need to be part of the dmprotocol. The QAction_Helper is not allowed as that will be generated by DataMiner upon uploading the dmprotocol package.

For Automation scripts we already have a nice easy method that does all that for you (Skyline.DataMiner.CICD.DMApp.Automation), but we don't have that available yet for protocols. This is currently on our backlog, which I'll check if it can be prioritized.

Michiel Oda [SLC] [DevOps Enabler] Posted new comment 29th September 2023
Pawel Bochenek [DevOps Enabler] commented 24th August 2023

Thanks Michiel. I will keep an eye out for it.

Pawel Bochenek [DevOps Enabler] commented 8th September 2023

Hi Michiel,

In the meantime, I built this class library (.dll), which provides methods for inserting the C# code into the protocol.xml without making changes to the solution folder.

https://github.com/dataminerCreator/DmCicdHelperClass.git

Michiel Oda [SLC] [DevOps Enabler] commented 29th September 2023

In the meantime we have developed a NuGet package where it can build a dmprotocol package based on a connector solution: https://www.nuget.org/packages/Skyline.DataMiner.CICD.DMProtocol

You can use this very simply with this line:
var package = await ProtocolPackageCreator.Factory.FromRepositoryAsync(new LogCollector(), solutionDirectory);

1
Ive Herreman [SLC] [DevOps Enabler]13.50K Posted 24th August 2023 1 Comment

Hi Pawel,

While this is not a direct answer to your question, have you considered generating the .dmprotocol package through DIS?

In Visual Studio, you can easily save a protocol as a .dmprotocol file.

This will take care of everything for you.

Pawel Bochenek [DevOps Enabler] Posted new comment 24th August 2023
Pawel Bochenek [DevOps Enabler] commented 24th August 2023

Hi Ive, yes, I have been using the “Save Compiled Protocol As” feature in VS, but looking at improving the current CI/CD pipeline.

Please login to be able to comment or post an answer.

My DevOps rank

DevOps Members get more insights on their profile page.

My user earnings

0 Dojo credits

Spend your credits in our swag shop.

0 Reputation points

Boost your reputation, climb the leaderboard.

Promo banner DataMiner DevOps Professiona Program
DataMiner Integration Studio (DIS)
Empower Katas

Recent questions

DOM Definition relations returned in Definition query 0 Answers | 0 Votes
Alarm Dashboard PDF/CSV Export 1 Answer | 0 Votes
Is the Microsoft SharePoint Connector Still Usable 0 Answers | 0 Votes

Question Tags

adl2099 (115) alarm (62) Alarm Console (82) alarms (100) alarm template (83) Automation (223) automation scipt (111) Automation script (167) backup (71) Cassandra (180) Connector (108) Correlation (68) Cube (150) Dashboard (194) Dashboards (188) database (83) DataMiner Cube (57) DIS (81) DMS (71) DOM (140) driver (65) DVE (55) Elastic (83) Elasticsearch (115) elements (80) Failover (104) GQI (159) HTTP (76) IDP (74) LCA (152) low code app (166) low code apps (93) lowcodeapps (75) MySQL (53) protocol (203) QAction (83) security (88) services (51) SNMP (86) SRM (337) table (54) trending (87) upgrade (62) Visio (539) Visual Overview (345)
Privacy Policy • Terms & Conditions • Contact

© 2025 Skyline Communications. All rights reserved.

DOJO Q&A widget

Can't find what you need?

? Explore the Q&A DataMiner Docs

[ Placeholder content for popup link ] WordPress Download Manager - Best Download Management Plugin