[Commotion-dev] FYI: Serval & OpenBTS integration

Jeremy Lakeman Jeremy.Lakeman at gmail.com
Tue Nov 20 22:06:22 UTC 2012


On Wed, Nov 21, 2012 at 8:05 AM, Dan Staples
<danstaples at opentechinstitute.org> wrote:
> Indeed that was the problem. I originally compiled app_servaldna linking
> to the Asterisk 1.8 source, while the OpenBTS box was using v1.8.3.
> Recompiling against the 1.8.3 source gave me a working channel driver.

On our box I replaced the asterisk installation with a newly built one.

> Another thing I learned testing this out is that multiple identities
> mess things up. I had two identities in the OpenBTS box's serval keyring
> (one on a unique DID and the other DID set as the echo extension), and
> nothing worked. DNA lookups from another machine resolved, but lookups
> made from the OpenBTS box gave no results. Once I made a new keyring
> with only one identity (and set the DID to the echo extension),
> everything worked.

Yes, we're aware that multiple identities have not been tested. I'm
fairly certain that the routing engine doesn't really deal with them
properly.

> Hurrah! Thanks Jeremy for creating this functionality, it's very
> exciting progress!
>
> Dan
>
> On 11/19/2012 04:57 PM, Jeremy Lakeman wrote:
>> On Tue, Nov 20, 2012 at 5:47 AM, Dan Staples
>> <danstaples at opentechinstitute.org> wrote:
>>> That dnahelper debug flag helped me find what the problem was, though I
>>> had to look through the source code to find the config option I needed
>>> to set to fix it. I had to set
>>> dna.helper.argv.1=/home/openbts/app_servaldna/conf_adv/num2sip.ini.
>> Oops, could have sworn I'd checked that in.
>>
>>> Also, how can I specify a log file to use? I haven't been able to find
>>> the various config options besides the couple listed in
>>> doc/Servald-Configuration.md.
>> You can set a log file either with an environment variable
>> SERVALD_LOG_FILE, or by setting a log.file configuration value.
>>
>>> After setting this config option, I was able to successfully resolve
>>> DIDs in both directions. However, I still wasn't able to place calls
>>> from one to the other. When calling a serval number from OpenBTS, I got
>>> the following warnings:
>>>
>>> [Nov 19 11:00:56] WARNING[2392]: channel.c:5414 ast_request: No channel
>>> type registered for 'VOMP'
>>> [Nov 19 11:00:56] WARNING[2392]: app_dial.c:2039 dial_exec_full: Unable
>>> to create channel of type 'VOMP' (cause 66 - Channel not implemented)
>>> When calli
>>> This occurred even though I had added app_servaldna.so to
>>> /usr/lib/asterisk/modules/.
>> The vomp channel driver should log something to the asterisk log while
>> asterisk is starting. Asterisk should also log something if it failed
>> to load the module.
>> Is the module file readable by the user running asterisk?
>>
>> Once the channel driver has started, servald should also log that it
>> has a connected client.
>>
>>> I also had to add a new context to the
>>> sample extensions.conf provided by serval in order to get my
>>> openbts-registered phones to make calls:
>>>
>>> [phones]
>>> include => openbts
>>>
>>> In the other direction, when setting the number of a serval phone to the
>>> asterisk echo extension, and calling it from another phone's peer list,
>>> it just goes through as a regular serval voice call between the two
>>> phones instead of going to the echo service. Is this what you meant by
>>> "Remote call to local asterisk test number" in the documentation, or am
>>> I doing it wrong?
>> Not quite. If you set the phone number of the servald instance on the
>> bts box to the echo number in asterisk, then this is the extension
>> that the vomp channel driver will connect you to when dialling the
>> public key of the bts box.
>> eg;
>> servald keyring list
>> servald set did [sid] [did] [name]
>>
>> But you'll need to work out why the channel driver isn't registering
>> first. Hopefully that's the only remaining piece of the puzzle that
>> isn't working.
>>
>>> Dan
>
> --
> Dan Staples
> Open Technology Institute
>
> _______________________________________________
> Commotion-dev mailing list
> Commotion-dev at lists.chambana.net
> http://lists.chambana.net/mailman/listinfo/commotion-dev


More information about the Commotion-dev mailing list