powered by Jive Software

Trixbox can work, openfire can register to, but can not make call

Hi, U all,

a tribox 2.0 server has been configured with 2 accounts 0991/0992, and modified the manager.conf file as following:

;
; Asterisk Call Management support
; enabled = yes
port = 5038
bindaddr = 0.0.0.0

secret = amp111
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.0
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user

secret=cstnet
allow=159.226.58.87/255.255.255.128
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user

#include manager_additional.conf
#include manager_custom.conf

with the X-lite, the 2 accounts on trixbox looks running well.

so i installed openfire 3.3.0 and asterisk-im 1.3.0beta. after adding the server, the server shows me Green status.

and i made 2 accounts in openfire, and make phone mappings to them.

Username: test1 test2

Device: SIP/0991 SIP/0992

Extension: 0991 0992

Caller ID:

but when i try to use Spark phone call from 0991 to 0992, nothing run, so i find the log following:

undefined-condition(500) Unabled to dial extention 0992

at org.jivesoftware.phone.client.PhoneClient.dialByExtension(PhoneClient.java:121)

at org.jivesoftware.sparkimpl.plugin.phone.PhonePlugin$5.run(PhonePlugin.java:267)

at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

how i find out where caused this problem? Thanks!

Message was edited by: darshan

when i try to dial 0991 from 0993(x-lite), the x-lite can not make the call.

You should enable the debug log in openfire and paste the log from the server.

I am having the same problem. Here is my debug log.

2007.04.14 21:01:02

org.jivesoftware.phone.PhoneException: Unabled to dial extention 1651

at org.jivesoftware.phone.asterisk.CustomAsteriskServer.dial(CustomAsteriskServer. java:164)

at org.jivesoftware.phone.asterisk.AsteriskPhoneManager.dial(AsteriskPhoneManager. java:202)

at org.jivesoftware.phone.BasePhoneManager.originate(BasePhoneManager.java:186)

at org.jivesoftware.phone.xmpp.PacketHandler.handleDial(PacketHandler.java:84)

at org.jivesoftware.phone.xmpp.PacketHandler.processPacket(PacketHandler.java:52)

at org.jivesoftware.phone.PhonePlugin.processPacket(PhonePlugin.java:206)

at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponent. process(InternalComponentManager.java:490)

at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:250)

at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:104)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:67)

at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:289)

at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler .java:79)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:254)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)

at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:132)

at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:703)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:62)

at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:200)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:362)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:54)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:800)

at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :266)

at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:326)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Caused by: org.asteriskjava.live.NoSuchChannelException: Channel ‘‘SIP/1677’’ is not available

at org.asteriskjava.live.internal.AsteriskServerImpl.originate(AsteriskServerImpl. java:346)

at org.asteriskjava.live.internal.AsteriskServerImpl.originateToExtension(Asterisk ServerImpl.java:286)

at org.asteriskjava.live.DefaultAsteriskServer.originateToExtension(DefaultAsteris kServer.java:141)

at org.jivesoftware.phone.asterisk.CustomAsteriskServer.dial(CustomAsteriskServer. java:160)

… 28 more

Make sure you have the correct context configured for your Asterisk server (“Asterisk Context:” in General Settings) and if that doesn’'t help look at the Asterisk console, enable verbosity (set verbose 9) and paste what you see there.

I am some what new with Asterisk, Where would I find the right context?

I found it but still no go.

That depends on how you set up your dialplan in extensions.conf. Usually a good start is to try “default”.

I don’‘t use Trixbox so I can’'t tell you exactly where to find that in the user interface.

If it still doesnt work run “asterisk -r” on the Asterisk server, execute “set verbose 9” and post what you get there while trying to place the call.

Verbose is set to 9. I am looking in the full log and I don’'t see anything new.

Apr 14 14:47:31 NOTICE[9008] channel.c: Unable to request channel SIP/1677

Then you dont have your sip phone registered/configured as SIP/1677.

What does “sip show users” show?

Username Secret Accountcode Def.Context ACL NAT

1677 1677 from-internal No Always

1651 1651 from-internal No Always

in phone mappings i just used the drop down for devices

Hmm strange… and you can probably call the phone from another device?

“sip show peers” lists the phone wit Status “OK” ?

Name/username Host Dyn Nat ACL Port Status

1677 (Unspecified) D N 0 UNKNOWN

1651/1651 xxxxxx D N 60956 OK (96 ms)

1677 is the spark client and 1651 is a computer running X-lite. Does this only work between 2 spark clients?

Asterisk-IM is intended to originat calls between to hardphone (or softphones like Xlite). The output of your sip peers shows that there is only one phone registered at 1651.

At least If you are not running the Enterprise Edition you can’'t use Spark as a SIP softphone.

Maybe that’'s caused some confusion.

Ohhh so the Asterisk-IM plugin is suppose to be used in conjunction with the Enterprise plugin?

No it is supposed to be used with SIP hardphones (like ciscos, polycoms, snoms, …) connected to an Asterisk server.

Ok I get it now. It when you dial a number through spark, it will actually make the hardphone dial the number. To bad I can’'t get it to control a soft phone. When using a soft phone it just dials back.

of course you can also use it with a softphone. when dial in spark the softphone is called, you answer the call the the callee is dialed and connected to you as soon as he answers his phone.

Yup, I figured that out right after I posted that last message.

Thanks for all the help.