
I have not ran accrossed this topic yet. Is there anyway to pipe data into and out of the ARC software? My goal is keep the ARC software as is and have a pipe to my own AI software. I realize I could use the SDK to encorporate function, but the ARC is just too pretty the way it is.
An example of what I want to do is, lets says I speak the command in the ARC to "track the ball"; I'd like the ARC to pipe out something like "track ball" where my own software can grab that command string and do what ever with it (like store it in a memory database). And likewise if my software issued the command "track ball" the the ARC should read "track ball" coming into the pipe and the ARC software would react to it as if I spoke to the command.
In the controls I'm not seeing a clear way to pipe data to/from ARC. Is there a way achive this? Any suggestions?
Yes. Telnet is one method, I am in the middle of changing all of mine to telnet. You can also use HTTPGet to get and send data. RSS feeds can be read from ARC also. Look in the examples, I also posted a news reading example.
For your example I would suggest using telnet and the server option, on running a command set a variable i.e. $activity = "track ball".
Using telnet you can then connect to ARC (via localhost:port - the options are in the connection settings) and send script commands, more importantly, have your software save $activity as it's own variable.
This is just one method. It's not very well documented so far as few have used it and less have discussed it from what I can see.
I'm running short on time so this is a bit brief, rough and vague but if you need more info I will post more when I get home.
I feel that is not a good enough response so I will add to it... with pictures
I will assume you know how to use Telnet with your software since to guess at it not knowing the language used to write it or the software itself etc. would be a pointless task.
On the ARC side of things you need to set up for the Server.
First click the icon to set up the connections.
Next click on the server tab at the top
Finally, check the Enable Server boxes as required, set the ports and passwords (if needed)
Now ARC is all set to send and receive script commands over Telnet on the port set.
Use your software to connect to the machine running ARC, i.e. localhost:6666 or 192.168.2.182:6789, whatever it's set up as.
ARC and your software are now connected. All ARC variables are available through EZ-Script. All connected devices are controllable through EZ-Script.
Last year there was mention from DJ that we would be able to use VBScript or C#script within ARC script window, but the only threads I can find on it now are people asking if it is working yet, so I am not sure of the current status.
That would allow developers to put virtually any capability into ARC as an add-on that they wanted and utilize 3rd party application SDK/API's.
Alan
Rich, thank you so much for the detailed directions! This is exciting!
"Goody, Goody, Goody!"
Now I can link my software with ARC. Thank you, thank you!
There are other ways also. ARC can execute programs, send HTTP commands etc. but really, telnet is the cleanest method IMO.
I'm literally going through this myself to link ARC with EventGhost through python scripts. EventGhost can control ARC which means anything in my house can control ARC, heck I could phone in commands now
Good luck with the project.
@Rich - How mad are you gonna be when you call your house and it puts you on hold until the next representative is available?
One more method of exchanging data with other apps. EZ-Script can do file IO, so you could have an app write a variable to a file and read it in ARC and Vis-Versa.
Rich's examples of using Telnet are probably best for event driven activities since you can essentially always listen for commands from the external app via Telent, but using HTTP Get or File I/O you could do periodic (even several times per second) look-ups.
Alan
@thetechguru File IO sounds interesting, is that an option under controls? I don't see a controlled named that?