R24FXX-EC Modular Trunk Question
I have a R24FXX-EC card with 3 FXO modules. I installed the rhino drivers fine, what I'm stuck on it how to access each of the channels individually? For instance we will have 6 lines, 3 of which are for one company and 3 of which are for another company. How do I specify that I want the phones for one company to use those lines and vise versa? Also we will have a receptionist phone that will need access to all 6 lines. I guess what I need is a good FXO trunk channel config tutorial, I've been searching but so far I haven't found one. Thanks!
-Alan
Alan,
I'll give you a couple of things to look at. Hang on because this is a whirlwind tour. (even though the post is a small novel :-) I assume you have your card setup in /etc/zaptel.conf for the proper signalling so we'll just skip over that.
The money section is in /etc/asterisk/zapata.conf. You can get there through the config edit selection on the asterisk menu in Trixbox. If you followed the Rhino instructions, the section you need will actually be in zapata-auto.conf. Look for something like this:
; Span 3: Rhino RCB8FXX/1 "Rhino RCB8FXX/1"
;;; line="49 FXO/1/0"
signalling=fxs_ks
callerid=asreceived
group=3
context=from-zaptel
channel => 49
context=default
The two important parameters for your setup are the 'group' and 'context'. It is important to note that the lines before 'channel => ' are the only ones that count. The channel parameter makes the setting stick to the assigned channel.
In your case, with 6 lines that you want to divide in half, you will want to put the first three channels all in one group (just assign all three the same group number) and the second three in a different group. (maybe 0 and 1) This is how you will access them in trunk config. More on that in a bit.
The context line is important as well because you have a choice to make. If you want to handle just the two groups when you setup inbound routing then you should set the context as 'from-pstn'. If you want to handle each line as its own DID, then you must set the context to 'from-zaptel'. I'm guessing that in your case that you probably have hunt setup on the lines so inbound calls hit lines in ascending order (1, 2, 3) and you want outbound calls to go in descending order. If so, you probably want to treat all three as 1 group and assign the context as 'from-pstn'.
Now, in freePBX you need to setup the trunks and the inbound/outbound routes. Again, I'm assuming that you want all the phones in company 'A' to ring with an inbound call in group 0 and all the phones in company 'B' to ring on an inbound to group 1. In this case you need to setup two Zap trunks. The important part of the trunk setup is getting the Zap identifier correct. This matches the trunk to the groups that you defined in Zapata.conf. So, assuming you use groups 0 and 1, you would setup two trunks with the zap identifier 'g0' and 'g1' respectively. Note that the "g" means group but it also defines the dial-out channel selection order. A lower-case g means dial lines in descending channel order (what you probably want) while an upper-case G means dial them in ascending order. (I could have this backwards... I'm going from memory).
For your inbound routes you will probably want to use the Zap DID feature in freePBX. Assign a DID number to each channel number in zapata.conf and then you can use the DIDs to build inbound routes. So you may take the channels in group 0 and assign them DID 1001, 1002, 1003 and then repeat for the other three but set them to 2001, 2002, 2003. In this way you can create an inbound route for each DID (or use pattern matching) to selectively route the calls. I would create two inbound routes and set the DID to '100[1-3]' and '200[1-3]' respectively. Set the destination for each to a seperate ring group for each company that includes only their phones. You can also include the receptionists phone into both ring groups and that phone will always ring.
That ought to be enough to get you close.
J.
Hey J.
Thanks for the response, it makes sense now for the most part. I am a little stuck though on assigning the DID numbers in the zapata.conf. I'm also having a bit of trouble getting the outbound dialing to work, 99.9% sure its because of my dial plans, what I'm confused on in those is the outbound routes have a dial plan and the trunks themseleves have a dial plan. I really appreciate your help!
-Alan
Apparently I'm blind, and I missed a big section for assigning DIDs to channels. So I have that all straight. What I need to know how is how to get some sort of identifier to be passed on with the caller ID so that the receptionist knows what trunk the call came from. And I've still made almost no progress getting outbound to work, all I get is all circuits are busy or call cannot be completed as dialed. Thanks!
-Alan
Alan,
Sorry for the delay getting back with you. I had some things going on in the real world that kept me away from the forums... anyway, back to your problem.
Inbound... the best way to address that is on the inbound route. When you setup your inbound route in Trixbox there is a 'CID Name Prefix' field. You can put a trunk name in there and it will be pre-pended to the CID Name that is passed to the phones. So you could put "A1", "A2", "A3" for the A-company trunks and the same for the B company trunks. Then your receptionist (or whomever) would see something like "A2:UNKNOWN" as the calling party name when a call comes in.
Now, outbound routes... The tough part here is that you've got two companies and you probably don't want to mix up the CID info. You've got two options... the easy way or the hard way ;-)
The easy way would be to setup different outbound codes for the two companies. For example, company A may outbound dial with a '9' and company B may outbound dial with an '8'. You can do this by setting up two outbound routes. In one route the dial pattern would be:
411
911
9|.
and the other would be:
8|.
With this setup anyone that dialed 9
The way to avoid that requires the hard way... The hard way would allow both companies to dial '9' to get their "own" trunk group for outbound dialing but that involves putting each company's extensions into their own context and you would have to get your hands very dirty in the actual config files. Unless this is an absolute, drop-dead requirement, I would avoid it. And, although I can accomplish the task, this is where we would have to take it off-line and the free assistance would respectfully end.
One last thing... I STRONGLY recommend you hit your local bookseller and pick up a copy of "Asterisk: The future of telephony". It's available on-line as a PDF in a couple of places but it is hard to read a PDF in the bathroom ;-) The book is a great introduction and a great reference after you get comfortable. It should be required that people read it before they are allowed to download ISOs for Asterisk/Trixbox... but that is another thread.
Hope that helps get you going!
Jason
Hi evereybody, im just new on this, so any help from you will be great. I installed trixbox 2.6.1 , i 've a multitech voip gateway (8 fxo/fxs) and i want use it with all fxo to pstn. The point is i made sip accounts. my outbound and inbound calls are ok, i configured an ivr, and the basic is fine. But i want to distinguish the extensions for the offices , i mean, i want to give to the main office an outbound route (for 2 fxo channel), and only one to the others offices. So , how i create the system to make that the extension range (100-1xx) can use one outbound route, and the extension range (200-2xx) only can use its unique outbound route? (something like "this two phone number are for this office and this is for this one , nobody who call from "this" phone number can reach "that" extension range but they can reach only this.)
I start with the outbound firts, it would be nice for both (the outgoing and inbound).
any idea will be just great, thanks, landylan


Member Since:
2008-07-03