3rd party apps development for the OBi 110/100
bhasden:
Quote from: QBZappy on October 05, 2011, 08:23:00 am
Yes
Sent you a PM so we can take this out of the forum. Thanks for your help.
QBZappy:
I had previously mentioned a desktop application called HVoIPM (Hardware VoIP Monitor) which could be used to monitor the OBi device. The author has graciously offered the source code to the OBi community (and anyone else for that matter) who would like to continue the project. This might be of interest to any current or future 3rd party OBi app developers. You can find it here:
HVoIPM (Hardware VoIP Monitor)
https://github.com/afit/HVoIPM
Author:
Thanks for your email. I'm afraid I no longer have time to support the Hardware VoIP Monitor. I'm glad to read there's an attempt to make something similar. I took the step to publish the full source code of my application today, at https://github.com/afit/HVoIPM. It may be that the community can extend this or use it in building their application.
Best,
Aidan Fitzpatrick
http://www.reincubate.com/labs/hardware-voip-monitor-desktop-voip-and-pbx-monitoring/
QBZappy:
Here is a tool that might help OBi 3rd party apps developers integrate the OBi with GV calling.
xPLGVoice
http://www.doghouselabs.com/software/index.cgi?cat=xpl&app=xPLGVoice
Description: xPLGVoice gives you access to some features of Google Voice. It allows you to send SMS, enable and disable forwarding phones and initiate calls.
Usage: Edit the config.txt file with your gmail user name and password.
In the right hands this little utility can supplement the OBi feature set. I can see it being able to make outbound calls from Outlook doing a Google callback and then connecting you to the dialed number.
Stewart:
Here is a simple script, written in perl, that creates a file of custom auto-attendant prompts, suitable for uploading to your OBi. I'm running it on Windows under ActiveState's free perl. It does nothing exotic, so I'd expect it to work ok on a Mac or Linux system as well, using the perl that comes preinstalled. Let me know of your success or failure on other platforms.
The script looks in the current directory for files named user1.wav, user2.wav ... user10.wav and uses those found to create a combined file, useraa.dat that can be uploaded to the OBi. Each input file must be mono, 8kHz sampling rate, G.726-32 encoded, with length between 0.25 and 60 seconds.
Various tools I tried, including Audacity, an old copy of Audition, and several converters, would not produce a G.726-32 file of good quality. One solution is to to create the prompts in your favorite authoring tool, save as 16-bit PCM wav format, then convert with ffmpeg, which is free and readily available for Windows, Mac and Linux. The command is e.g.
ffmpeg -i original.wav -acodec g726 -ab 32000 user1.wav
Once you have all the user<n>.wav files, run the perl script and upload the useraa.dat to your OBi.
I'd appreciate feedback on any quality issues, better ways to create G.726-32 files, etc.
Before uploading, make backups of your config and current prompts. While developing this code, I had a bug that caused the OBi to endlessly reboot. I believe that is now very unlikely, but if it should happen to you, don't panic and see this thread: http://www.obitalk.com/forum/index.php?topic=1726.0 Just in case you don't have a backup, a copy of an empty prompts file, courtesy of Obihai support, is also attached.
This is open source free software and I'm imposing no restrictions on its use. However, if you fix bugs or add features, please post the improved code here. If you incorporate it in a larger project, please provide an acknowledgement.
Enjoy.
Stewart:
Quote from: user17600 on February 29, 2012, 05:07:36 pm
I don't get any of the intermediate messages that seem to be built into the script. I get a pause and them a "wrote file" message. So something's not right...
I'm not familiar with Strawberry and was using ActiveState perl to test.
The first 'open' statement should be trying to open user1.wav in the current directory (not necessarily the directory the script is in). At the command line, if you type "dir user1.wav" and press enter (just before or after running the script), does the file appear in the listing? If so, can you open it by other means, e.g. does "copy user1.wav testxxx.wav" give any errors?
Navigation
[0] Message Index
[#] Next page
[*] Previous page