I assume the libreoffice call needs to run in an X-Windows environment, not in that of a daemon. It will have no idea how to access the display, if you don’t have a DISPLAY environment variable set.
What is this actually doing? Because even if Asterisk could run this, you are running it first then dialing the peer. So what is the point of running a power point presentation before dialing the peer?
And how would you expect them to view this power point or hear the audio of it? First, they wouldn’t be able to see it. Second, you’re using the System() function that executes a system command that runs on the system. So it will execute the pps file but nothing will be feed back into Asterisk, it’s not going to play it back, stream it back or anything. It’s going to run the file and then continue on to Dial() the peer while the pps file is running on the system and not in Asterisk.
This will not work. You cannot execute a pps file and get it to play back on the channel or in Asterisk.
Maybe his audience is local and he just wants to show that he can call on his mobile, have it routed to his box, and have his box do something that is visible to his audience. Playing ‘demo-congrats’ may not be enough to ‘wow’ the bean-counters
There still may be significant environment differences between an SSH shell and an Asterisk sub-process as noted above that need to be addressed.
That makes absolutely no sense. It would mean this demo is being done with something that would never be applicable in a real production environment. Providing something that demos how VoIP (or Asterisk) works with more real world applications is always the better way to impress people properly. Otherwise, even if this did work and the person with a terminal on the PBX can see the presentation launched locally it is showing them something that will never be used or practical. What’s the point?