Author Message
wengsen
Joined: Apr 13, 2011
Messages: 8
Offline
the call flow is as follows

Station(1001)-->CM->SM->Breeze->Cisco Media Gateway
I defined a routepattern 6009 to route the call to Cisco MediaGateway,I want to change the Calling's DisplayName before call is send to Cisco Media Gateway , and I make a snap-in which is used to change Calling's DisplayName,and installed in the

breeze. when I use station 1001 call 6009, the call is successfully send to Cisco Media Gateway, but I find that the Calling's

DisplayName dont' changed. it means it don't trigger the Breeze snap-in , I want to know how

to configure the SM and Breeze to trigger this snap-in?

btw: the snap-in can be triggered between the two session manager endpoints(sip

endpoints) ,the breeze log can see the attach.
  • [Thumb - 3.png]
[Disk] Download
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Hi. In order for Session Manager to send the call to Breeze, you need to configure an implicit user application sequence. In this case, you probably would want to configure a Termination Application Sequence for an implicit user range that includes 6009. See page 50 in our administration guide for details on this process. https://www.devconnectprogram.com/fileMedia/download/7abfdc07-5daa-4abc-9c0d-44cf0ea8c17d
wengsen
Joined: Apr 13, 2011
Messages: 8
Offline
I have already configure the "implicit user application sequence"

when I use cm extension 1001 call 6609(which is routed to cisco media gateway), the breeze log is as follows.

14:59:52.694 ???INVITE???? ? ? (1) T:6609 F:anonymous U:6609 P:imsterm
14:59:52.698 ????Trying??? ? ? (1) 100 Trying
14:59:52.715 ????INVITE??? ? ? (2) T:6609 F:anonymous U:6609 P:termdone
14:59:52.717 ???Trying???? ? ? (2) 100 Trying
14:59:52.724 ???INVITE???? ? ? (2) T:6609 F:anonymous U:6609 P:terminating
14:59:52.727 ????Trying??? ? ? (2) 100 Trying
14:59:52.729 ????ERR104 ?? ? ? (2) 404 ERR104 No callable service was found for 6609
14:59:52.768 ?????ACK????? ? ? (2) sip:6609@sunintech.com.cn
14:59:52.774 ???INVITE???? ? ? (2) T:6609 F:anonymous U:6609 P:terminating
14:59:52.810 ????Trying??? ? ? (2) 100 Trying
14:59:52.811 ????ERR104 ?? ? ? (2) 404 ERR104 No callable service was found for 6609
14:59:52.852 ?????ACK????? ? ? (2) sip:6609@sunintech.com.cn
14:59:52.857 ???INVITE???? ? ? (2) T:6609 F:anonymous U:6609 P:terminating
14:59:52.895 ????Trying??? ? ? (2) 100 Trying
14:59:52.897 ????ERR104 ?? ? ? (2) 404 ERR104 No callable service was found for 6609
14:59:52.938 ?????ACK????? ? ? (2) sip:6609@sunintech.com.cn
14:59:52.941 ???ERR104 ??? ? ? (2) 404 ERR104 No callable service was found for 6609
14:59:52.944 ??????ACK???? ? ? (2) sip:6609@sunintech.com.cn
14:59:52.955 ????ERR104 ?? ? ? (1) 404 ERR104 No callable service was found for 6609
14:59:52.958 ?????ACK????? ? ? (1) sip:6609@sunintech.com.cn

my snap-in code is as follows. I don't know what's the "No callable service" mean

public class MyCallListener extends CallListenerAbstract
{
private static Logger logger = Logger.getLogger(MyCallListener.class);

public MyCallListener()
{
}

@Override
public final void callIntercepted(final Call call)
{


Participant CallingParty = call.getCallingParty();
CallingParty.setPresentedHandle("8228");
CallingParty.setPresentedDisplayName("8228");
call.divertTo("76609");
}

}
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Do you have your service (snap-in) in a Service Profile that has been associated with a Breeze Implicit User range that includes 6609? You've successfully told SM to send the call to Breeze, but you also have to tell Breeze to invoke your snap-in when it receives an INVITE. You also need to ensure that your properties.xml has the term_order, term_group elements as described on page 50 of our developer guide: https://www.devconnectprogram.com/fileMedia/download/9eb298aa-8a1e-4ee9-a98b-5fdf2f5cd1db

There's something else strange here. The INVITE appears to be visiting Breeze in both the imsterm and terminating phases. This would seem to indicate that in addition to an implicit sequence being configured for Breeze, you have a Route configured to route the call to Breeze after sequencing concludes. I would expect that you'd instead have a Route that would route the call to the Cisco Media Gateway. Can you please check that configuration?
wengsen
Joined: Apr 13, 2011
Messages: 8
Offline
Dear JoelEzell

now the call is ok ,the problem is that I mistake the Implict User Profiles with Implict User configure, thanks, and I have another questions
1?can the eclipse(snap-in program ) support read and write external DB through JDBC, not through JPA.if can, how to configure?
2?can the eclipse(snap-in program ) support http post method to fetch the external data,do you have any example code?
3?the snap-in build only "svar" format, and loaded it to the breeze platform,can the breeze platform more customer jar files?if can, how to deploy these jar files to breeze platform?
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
1) Yes, you can use JDBC for database access. See the "JDBC resource providers and data source" section of https://www.devconnectprogram.com/site/global/products_resources/avaya_breeze/releases/3_4/docs/administering/index.html

2) I think you mean that you want to invoke an external web service from your snap-in rather than allow something else to invoke a web service on your snap-in. Is that right? If so, see the OutboundHttpsSample snap-in in the SDK.

3) Let me ask some members of my team to respond to this one. You can bundle third-party jar files in your snap-in's SVAR file, but I can't tell you specifics on how to do so.
wengsen
Joined: Apr 13, 2011
Messages: 8
Offline
Dear Sir

I just add an JDBC provider resource and JDBC data source from the breeze platform. and click "test connection" , it works ok. I want to know how to use this configure in the eclipse develop platform ?
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Regarding your question about including a jar file in your SVAR, the way to do this would be to add a Maven dependency with a scope "compile". Provide the path to the jar file on the machine that you are building on, and Maven will bundle it up in your war/ear/svar file.

I'll ask somebody else to respond to the question about using the JDBC data source. Am I correct in assuming that you are looking for how exactly to structure the JDBC API invocation such that your configured JDBC data source is used?
prasanna.kulkarni
Joined: Jun 1, 2015
Messages: 18
Offline
Hello,

Regarding -
"I just add an JDBC provider resource and JDBC data source from the breeze platform. and click "test connection" , it works ok. I want to know how to use this configure in the eclipse develop platform ?"

You can use defined JDBC data source just like regular JDBC data source to acquire JDBC connection, connect the DB and do DML operations on the external database.

Please see example code below -

javax.naming.Context ctx = new javax.naming.InitialContext();
Object obj = ctx.lookup(jdniName); //This jndiName is the JNDI name that you mentioned on UI when defining the data source.
javax.sql.DataSource dataSource = (javax.sql.DataSource) obj;
java.sql.Connection con = dataSource.getConnection();

This is how you can acquire JDBC connection using the data source that you defined. You can put similar code in one of your classes inside the snap-in code.

Thanks,
Prasanna
wengsen
Joined: Apr 13, 2011
Messages: 8
Offline
Dear JoelEzell & prasanna.kulkarni

Thank you for your help, I think I can go next step now.
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Great, thanks for letting me know.
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
Hi, I realized that I neglected to mention an important point about including external jar files. For various reasons, Breeze uses "Parent First" classloading. This means that if the Breeze platform has any classes that conflict with your jar file, the platform classes will be used instead of your jar. This can interfere with some libraries such as Axis. Which jar are you planning to use?
wengsen
Joined: Apr 13, 2011
Messages: 8
Offline
I will use ojdbc6.jar and httpclient.jar
JoelEzell
Joined: Nov 15, 2013
Messages: 780
Offline
For Apache HTTP Client, you shouldn't need to include the httpclient.jar. If you check the OutboundHttpsSample from our SDK, you'll see that the pom.xml file in the war directory has the following:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<scope>provided</scope>
<version>4.4</version>
</dependency>

That will allow you to use the HTTP Client that is included with the platform. I don't think you should have to include the ojdbc jar file either, given that you installed the driver on the EM. I'm not sure if you need to include a "provided" dependency though. Prasanna, do you know?
Go to:   
Mobile view