voiceip/oreka

OSX development

Opened this issue · 12 comments

Hi there, I also use OSX for development, can you share with us how do you set up your Oreka development environment on OSX?

I use VirtualBox based Debian VM for the development process on MacOS. oreka/oreka-build repo has all the necessary files for getting your VM started.

But which IDE do you use, build system, your VM is installed with a desktop environment? I was thinking about moving the build system from Autotools to CMake but, I have to make some time. I can see you are using Vagrant; how do you debug?

I use mostly use VSCode or Intellij IDEA but it should work with any IDE. The source code is a shared folder with the VM, hence the VM doesn't need any desktop environment. I usually debug code issues based on the logs, but in some cases I use gdb.

I was thinking about moving the build system from Autotools to CMake but, I have to make some time.

This would be a really good contribution, looking forward to it!

We use a customized version of orkaudio (mostly with plugins); also, we don't use OrkTrack or OrkWeb. We try to keep it in sync with the upstream from Orecx, but they have ancient libraries (dependencies), making the development process harder; I am not fond of Autotools either (Autotools support in CLion is not that good). How often do you pull upstream changes, and how this version diverts from the original orkaudio?

This project was initially formed from their sourceforge svn, but about a year or two back they moved their opensource version to GitHub (Orecx/oreka), at that time I had rebased my changes on their git history, making it today very easy to merge in changes from their repo. Since then the dependencies have been updated a lot, and today we have cross builds including for Debian 10/Ubuntu 20.x

How often do you pull upstream changes,

Regarding pulling upstream changes, I don't need to do that often given that there are very rare commits on their repo, but incase I observe that there as been some core bux fixes on their repo, I do merge in those changes.

how this version diverts from the original orkaudio?

README (Improvements) section lists the major changes, but apart from that, there are quite some bug fixes that have been applied to the source code. This project doesn't divert from the original orkaudio, but instead has been build on it with a lot of improvements, and continues to merge in if any changes that happen in the original one.

We also have a plugin for g729, I noticed this version has it too. Regarding CallID Tracking, what do you mean by this?

That's great, what other plugins do you have?

CallID Tracking : orkaudio now reports the sip callId if available as a primary attribute of the call. This helps us to associate the recordings very easily with our cdr information.

But that is reported already in orkaudio.log and messages.log!
We have some proprietary plugins, and right now, we are developing a live stream plugin; I am looking at one of your branches, and I can see you guys have something like that.

True, but was not sent to orktrack, thus not allowing a programmatic access to the recordings. The changes now propagates the information till the tracking layer.

Live Streaming is something still work in progress. Though comments / suggestions / alternate design are welcome.

As soon as I have something working, I'll let you know, but for now, I am gonna take some time to move the build system to CMake. I want to develop natively on OSX, at least.

@jmrbcu were you able to make these changes and migrate to CMake?

jmrbcu commented

@jmrbcu, were you able to make these changes and migrate to CMake?

Still, I am merging my changes (VNTag and TZSP encapsulation ) into this fork and porting your VXLAN support into ours (a fork of the original, just like this one). My ultimate goal is to use this fork with our changes, but I have to ensure it compiles and runs in CentOS 6 like the original project. Once this is done, I will start porting to CMake.