When looking to build an integration with 3CX you need to ensure whatever approach you take will be supported for a reasonable time into the future. It is my opinion that 3CX has been trying to kill 3CX Phone for Windows for several years. With 3CX V18 they may have finally taken that step
3CX Blog. Whether the new "Native Desktop Client" will support the CallTriggerCmd.exe or the existing 3CX Phone for Windows plugin architecture is unknown to me, but this is definitely something you will want to research before you invest a lot of time building a client integration.
There may, however, be some good news in the V18 release. 3CX has announced a new REST API and Gateway service. While they have not provided any details yet about either tool yet, I'm hopeful that we will be able to subscribe to events (Gateway service?),
My advice, if possible, is to wait for a little before jumping into a new development effort and see what information 3CX provides on the new APIs. If you can't wait, then let's see what others say about the CallTriggerCmd. If I were going to write an integration today myself, I would use our VoIPTools Relay (which works with V18 now) to subscribe to real-time events.
The final question is whether you want to implement a server-side integration or a client-side integration. Generally, choosing the type of integration depends on what you are trying to achieve and the CRM capabilities (as an example). Naturally, a server-side integration would be preferable since nobody wants to support and maintain a client-based application installed on every PC. However, if you are trying to perform screen pops, your only option may be a client-side application. If your CRM (or whatever the application is) has the ability to push screen pops to the correct browser session, a server-side solution would be best.
3CX provides a server-side integration template that is easy to use but was designed to be simple and therefore has limited capabilities. If you want to do more involved integrations, handling the server events yourself may be required.