<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tridens &#187; Oracle BRM</title>
	<atom:link href="http://www.tridens.si/category/oraclebrm/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tridens.si</link>
	<description>Soa development, soa consulting and oracle BRM</description>
	<lastBuildDate>Thu, 19 Jan 2012 17:50:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	

<!-- Debugging help, do not remove -->
<meta name="Framework" content="Kpress" />
<meta name="Theme Version" content="1.2" />
<meta name="Framework Version" content="1.2" />


		<item>
		<title>Oracle has released OBRM 7.5</title>
		<link>http://www.tridens.si/2011/11/oracle-has-released-obrm-7-5/</link>
		<comments>http://www.tridens.si/2011/11/oracle-has-released-obrm-7-5/#comments</comments>
		<pubDate>Sun, 13 Nov 2011 12:29:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[BRM 7.5]]></category>
		<category><![CDATA[OBRM]]></category>
		<category><![CDATA[OCBRM]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1415</guid>
		<description><![CDATA[Oracle Corporation has released a new version of Oracle Communications Billing and Revenue Management 7.5 (Oracle BRM 7.5.) The following modules are included in this release: Balance Management Balance Monitoring Billing Convergent Subscriber Management Financial Management Order Inventory Framework In-memory data management capabilities that integrate Oracle Communications Billing and Revenue Management with Oracle In-Memory Database Cache Invoicing [...]]]></description>
			<content:encoded><![CDATA[<p>Oracle Corporation has released a new version of Oracle Communications Billing and Revenue Management 7.5 (Oracle BRM 7.5.)</p>
<p>The following modules are included in this release:</p>
<ul>
<li>Balance Management</li>
<li>Balance Monitoring</li>
<li>Billing</li>
<li>Convergent Subscriber Management</li>
<li>Financial Management</li>
<li>Order Inventory Framework</li>
<li>In-memory data management capabilities that integrate Oracle Communications Billing and Revenue Management with Oracle In-Memory Database Cache</li>
<li>Invoicing</li>
<li>Partner Relationship Management</li>
<li>Pricing Configuration</li>
<li>Real-time Rating</li>
<li>Reporting</li>
<li>Subscriber &amp; Hierarchy Management</li>
<li>Subscriber Groups Management</li>
<li>Self-Care Manager</li>
</ul>
<p>Some of the new features are as follows:</p>
<ul>
<li>Enhanced Invoice Document</li>
<li>Enhancements to Oracle In-Memory DB (IMDB, formerly TimesTen)</li>
<li>JCA Enhanced Transaction Management - JCA Multiple OBRM Accounts in One Transaction</li>
<li>Limits to Shared Memory Size for &#8220;Big&#8221; Shared Memory Structures</li>
<li>Support for Rebilling and Corrective Invoices</li>
</ul>
<p>The following BRM components are no longer supported in OBRM 7.5:</p>
<ul>
<li>AAA Gateway Manager, replaced by Oracle Mediation Controller</li>
<li>RADIUS Manager, replaced by Oracle Mediation Controller</li>
<li>TIMOS Manager, replaced by Oracle IMDB</li>
</ul>
<p>Tridens, an Oracle Gold Partner, offers consulting services, such as initial OBRM implementations, proof of concept, enhancements, upgrading, etc. To read more about our Oracle BRM services please click <a href="http://www.tridens.si/expertise/oracle-brm/" target="_self">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2011/11/oracle-has-released-obrm-7-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Advanced Queuing and Oracle BRM</title>
		<link>http://www.tridens.si/2011/05/oracle-advanced-queuing-and-oracle-brm/</link>
		<comments>http://www.tridens.si/2011/05/oracle-advanced-queuing-and-oracle-brm/#comments</comments>
		<pubDate>Mon, 30 May 2011 09:22:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[EAI Manager]]></category>
		<category><![CDATA[Oracle Advanced Queuing]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1350</guid>
		<description><![CDATA[In our last article, Integrating Oracle BRM with enterprise applications, we explained one way of implementing a BRM-to-CRM integration. The suggested solution was to build a connector on the BRM side and have it connect to a third-party application. However, it is also possible to take a different approach by using Oracle Advanced Queuing, which [...]]]></description>
			<content:encoded><![CDATA[<p>In our last article, <a href="http://www.tridens.si/2010/11/integrating-oracle-brm-with-enterprise-applications/">Integrating Oracle BRM with enterprise applications</a>, we explained one way of implementing a BRM-to-CRM integration. The suggested solution was to build a connector on the BRM side and have it connect to a third-party application. However, it is also possible to take a different approach by using <strong>Oracle Advanced Queuing</strong>, which will be the subject of this article.</p>
<p>Recently, we’ve been involved in a project where the customer wanted a “safe” integration without the need of being real-time; a near real-time solution would suffice, they said. What we mean by safe integration is having a solution that will not affect any action performed, such as purchasing a product or bill creation, by a failing communication link (or any other error) between Oracle BRM and third-party software. When implementing a custom dm connector for data integration, any unsuccessfully completed operation will rollback the entire action. While this can be a desired behavior, in this case it wasn’t; therefore, we decided to go with Oracle Advanced Queuing. We’ve identified that our worst case scenario here would be database issues, but there would also  be numerous other problems as well; to begin with, the BRM system would not function properly.<br />
Other advantages we’ve identified were data persistency (events are stored in the database until the consumer application is ready to process queued messages) and an already proven Oracle AQ technology.</p>
<p>We’ve successfully deployed these changes to Oracle BRM version 7.3 and 7.3.1 with Oracle Database 10g (10.2.0.1.0 64bit) and 11g (11.2.0.1.0 64bit) with the Oracle Advanced Queuing (AQ) component.</p>
<p>The process of publishing Oracle BRM business events using Oracle Advanced Queuing works can be seen on the figure below:</p>
<div id="attachment_1353" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/05/Oracle_Advanced_Queuing_and_Oracle_BRM.gif"><img class="size-full wp-image-1353" title="Oracle Advanced Queuing and Oracle_BRM" src="http://www.tridens.si/wp-content/uploads/2011/05/Oracle_Advanced_Queuing_and_Oracle_BRM.gif" alt="" width="610" height="402" /></a><p class="wp-caption-text">Picture 1: The data synchronization process using Oracle Advanced Queuing.</p></div>
<p style="text-align: center;">
<p>To develop such a synchronization process, it is necessary to take some preliminary steps. These include:<br />
1.	EAI Manager Installation.<br />
        o	EAI Connection Manager (CM) module (includes op-codes required by EAI),<br />
        o	EAI Data Manager,<br />
        o	Payload Generator External Module (EM) – also called EAI Java Server or eai_js.<br />
2.	After completing the EAI Manager installation, configure values in the CM and EAI DM configuration files (pin.conf), as well as the Payload Generator properties file (Infranet.properties).<br />
3.	Configure the event notification list you wish to publish by editing the configuration files for event notification ($BRM_HOME/sys/data/config/pin_notify* files) and merge them before running the load_pin_notify utility.<br />
4.	Define business events in the Payload Generator EM configuration file (payloadconfig.xml).</p>
<p>After the preliminary steps have been completed, it’s time to create and configure the Oracle Advanced Queue. Here are the steps (the third step may vary, as it depends on your setup):<br />
1.	Create queue:<br />
pin_ifw_sync_oracle.pl create -l $USER/$PASS@$DB -q TEST_QUEUE -t TEST_QUEUE<br />
2.	Test queue (optional step):<br />
pin_ifw_sync_oracle.pl test -l $USER/$PASS@$DB -q TEST_QUEUE<br />
3.	Log in to your database as SYSTEM user and set appropriate grant privileges for your ‘t_user’:<br />
exec dbms_aqadm.grant_queue_privilege(&#8216;ALL&#8217;, &#8216;PUSER.TEST_QUEUE&#8217;, &#8216;t_user&#8217;);<br />
grant execute on puser.pin_event_ty to t_user;<br />
grant execute on sys.dbms_aqin to t_user;</p>
<p>Next, we need a queue producer, an application which is going to enqueue the business events defined earlier. Developing a producer module is similar to building your custom connector application (see here.) It is necessary to implement a custom module (library) and define it in the  dm_eai configuration file under the “plugin_name” entry.<br />
There’s also a simpler way to go about this task. If you’ve already installed “Account Synchronization DM,” then you will find an implementation of a queue producer module under dm_ifw_sync data manager. However, if you choose this option, some additional entries are required in the dm_eai configuration file.</p>
<p>After you have a working queue producer. go ahead and invoke some of your business events to see if they get queued. Queues can be queried in the table defined on queue creation.</p>
<p>Finally, you will need a queue consumer, an application that will read and dequeue your queued messages. There are several programmatic interfaces available for accessing Oracle Streams AQ in the following programming languages: Java (JMS), PL/SQL, C (OCI), Visual Basic (OO4O), AQ XML Servlet (IDAP).<br />
With your custom client implementation, you will have full control at how fast, when, and how many messages are going to be processed. For instance, during off-peak hours, you can process more data than during peak hours.</p>
<p>Hopefully, we’ve given you some valid pointers on how to go about the process of integration/synchronization between Oracle BRM and third-party systems and/or applications.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2011/05/oracle-advanced-queuing-and-oracle-brm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Real-time rating with Oracle BRM</title>
		<link>http://www.tridens.si/2011/04/real-time-rating-with-oracle-brm/</link>
		<comments>http://www.tridens.si/2011/04/real-time-rating-with-oracle-brm/#comments</comments>
		<pubDate>Thu, 21 Apr 2011 08:08:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[real-time rating]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1301</guid>
		<description><![CDATA[Nowdays, more and more companies would like to employ AAA GW real-time rating, yet they are faced with many questions. In this article, some of these will be answered, conventional batch rating will be contrasted with realtime rating, and some benefits of the latter will be shown. In conventional batch rating, all event data are [...]]]></description>
			<content:encoded><![CDATA[<p>Nowdays, more and more companies would like to employ AAA GW real-time rating, yet they are faced with many questions. In this article, some of these will be answered, conventional batch rating will be contrasted with realtime rating, and some benefits of the latter will be shown.</p>
<p>In conventional batch rating, all event data are read from CDR/EDR files after events are already finished. Event data are processed, rated, and charged.</p>
<div id="attachment_1331" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/04/batch_rating.jpg"><img src="http://www.tridens.si/wp-content/uploads/2011/04/batch_rating-e1303373049970.jpg" alt="" title="Batch rating" width="610" height="107" class="size-full wp-image-1331" /></a><p class="wp-caption-text">Picture 1: Conventional batch rating</p></div><br />
In realtime rating, data are processed when events are attempted or even in progress. Events are authorized, reauthorized, and, at the end, charged.<br />
<div id="attachment_1346" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/04/realtime_rating.jpg"><img src="http://www.tridens.si/wp-content/uploads/2011/04/realtime_rating-e1303470410235.jpg" alt="" title="Real-time traffic" width="610" height="108" class="size-full wp-image-1346" /></a><p class="wp-caption-text">Picture 2: Real-time rating</p></div>
<p>When planning a realtime system, it needs to be designed in a way that minimizes the posibility of interrupting services or incurring any revenue losses. To minimize those, latency, high availability architecture, cm/dm separation per service for easier production maintainance, and efficient monitoring all have to be taken into consideration.<br />
<div id="attachment_1345" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/04/ESM_realtime.jpg"><img src="http://www.tridens.si/wp-content/uploads/2011/04/ESM_realtime-e1303470360537.jpg" alt="" title="Monitoring of real-time traffic with Enterprise Service Manager" width="610" height="471" class="size-full wp-image-1345" /></a><p class="wp-caption-text">Picture 3: Monitoring of real-time traffic with Enterprise Service Manager.</p></div></p>
<p>With realtime rating, prepaid and postpaid users can be accommodated in one system &#8211; such a system is called convergent billing. Realtime billing offers even more benefits, such as postpaid credit limits, and realtime feedback after customer usage.<br />
<div id="attachment_1305" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/04/credit_limits-e1303371426335.jpg"><img src="http://www.tridens.si/wp-content/uploads/2011/04/credit_limits-e1303371426335.jpg" alt="" title="Credit limits" width="610" height="159" class="size-full wp-image-1305" /></a><p class="wp-caption-text">Picture 4: Postpaid accounts can get credit limits - 32 Mbytes transferred in EU countries, 32 Mbytes transferred outside EU, 30 EUR prepaid account top-ups - and a threshold for notifications can be set.</p></div></p>
<div id="attachment_1307" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/04/realtime_usage-e1303371464561.jpg"><img src="http://www.tridens.si/wp-content/uploads/2011/04/realtime_usage-e1303371464561.jpg" alt="" title="Realtime usage" width="610" height="320" class="size-full wp-image-1307" /></a><p class="wp-caption-text">Picture 5: Realtime feedback after customer usage on Android application, WAP portal, and USSD.</p></div>
<p>In one of the next articles, more details will be presented regarding AAA GW, interaction workflow for calls (mbi,) and gprs/mms/sms (diameter.) Follow us on Twitter, and stay tuned.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2011/04/real-time-rating-with-oracle-brm/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Our Entry into the Oracle Openworld Call for Papers 2011</title>
		<link>http://www.tridens.si/2011/03/our-entry-into-the-oracle-openworld-call-for-papers/</link>
		<comments>http://www.tridens.si/2011/03/our-entry-into-the-oracle-openworld-call-for-papers/#comments</comments>
		<pubDate>Sun, 27 Mar 2011 17:39:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[Oracle OpenWorld]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1292</guid>
		<description><![CDATA[We&#8217;ve applied to the Oracle OpenWorld call for papers with the following: Lessons Learned Over 4 Years of Realtime Convergence with Oracle BRM Tusmobil, the third largest mobile operator in Slovenia, has used Oracle BRM 7.3 since 2007 for realtime convergent charging of voice, video telephony, SMS, MMS, GPRS, and other VAS services for both [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve applied to the Oracle OpenWorld call for papers with the following:</p>
<p><strong>Lessons Learned Over 4 Years of Realtime Convergence with Oracle BRM</strong></p>
<p>Tusmobil, the third largest mobile operator in Slovenia, has used Oracle BRM 7.3 since 2007 for realtime convergent charging of voice, video telephony, SMS, MMS, GPRS, and other VAS services for both prepaid and postpaid users. Lessons learned during the design, development, and four years of operations will be presented, including how we&#8217;ve dealt with performance and system optimizations. To achieve flexibility, we&#8217;ve used agile software development, a type of software engineering based on an iterative and incremental process, coupled with release management. The end result gives Tusmobil a major competitive edge by enhancing customer experience, generating new revenue, improving productivity, curtailing time to market, and cutting costs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2011/03/our-entry-into-the-oracle-openworld-call-for-papers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle BRM 7.3 database</title>
		<link>http://www.tridens.si/2011/02/oracle-brm-7-3-database/</link>
		<comments>http://www.tridens.si/2011/02/oracle-brm-7-3-database/#comments</comments>
		<pubDate>Mon, 21 Feb 2011 13:22:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1260</guid>
		<description><![CDATA[The Oracle BRM database consists of many tables. In this article, the most important ones are presented and described. Underneath, a picture of the Oracle BRM 7.3. data model has been added. In the database, account/customer related data such as names, addresses, profiles, current account balances, group charge sharing, and account hierarchy are stored. Deals [...]]]></description>
			<content:encoded><![CDATA[<p>The Oracle BRM database consists of many tables. In this article, the most important ones are presented and described. Underneath, a picture of the Oracle BRM 7.3. data model has been added.</p>
<div id="attachment_1259" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2011/02/Oracle_BRM_73_database.jpg"><img class="size-full wp-image-1259" title="Oracle BRM 7.3 database" src="http://www.tridens.si/wp-content/uploads/2011/02/Oracle_BRM_73_database-e1298294505618.jpg" alt="" width="610" height="406" /></a><p class="wp-caption-text">Oracle BRM 7.3 database</p></div>
<p>In the database, account/customer related data such as names, addresses, profiles, current account balances, group charge sharing, and account hierarchy are stored. Deals can be purchased by the customer and associated with every account. Each customer can purchase more services. To know more, please examine the text underneath.</p>
<p>ACCOUNT_T<br />
Stores information about the customer, including contact names, address, status, and customer segment information.</p>
<p>ACTIVE_SESSION_T<br />
Stores data about an ongoing session.</p>
<p>BAL_GRP_T<br />
Stores the balance information such as dollars, free minutes, bytes, and frequent flyer miles for various resources in an account . A balance group includes one or more sub-balances for each resource. The sub-balance contains the current amount, resource type, validity dates for the resource, rollover data, and sub-balance contributors.</p>
<p>BILL_T<br />
Stores billing information, such as the amount due, amount adjusted, currency, and bill number. A /bill object is created at the beginning of a billing cycle.</p>
<p>BILLINFO_T<br />
Stores all billing, payment method, accounting cycle, and hierarchy information necessary to bill an account. A /billinfo object is created for every account. If the billinfo is subordinate, the /billinfo object points to the parent account and the parent account’s /billinfo object.</p>
<p>CONFIG_T<br />
Base table for configuration objects. Subclasses hold specific configuration information for various features, for example, /config/beid defines currency and non-currency resources.</p>
<p>DEAL_T<br />
Stores information about a deal.When you use Pricing Center and connect to the database, all /deal objects in the database are shown in Pricing Center.</p>
<p>DEVICE_T<br />
Stores information about devices. There is a separate /device object for every device managed by BRM. Generic data applicable to all devices is stored in the parent /device object. Subclasses such as /device/num store information specific to a particular device type.</p>
<p>EVENT_T<br />
Abstract class to record system-initiated and user-initiated events. Event objects are related to a specific service or to an account. An event includes generic information such as start and end times as well the balance impacts that are incurred by the account due to this event. The /event object points to the account balance group that is impacted.</p>
<p>EVENT_BAL_IMPACTS_T<br />
Stores event data.</p>
<p>INVOICE_T<br />
Stores a customer invoice and information about the invoice, such as the bill it is associated with. Each /bill object can have a corresponding /invoice object.</p>
<p>ITEM_T<br />
Created to bundle events, this table summarizes billable item activity by type. Rows in this table are added for each row in the BILL_T table.</p>
<p>PAYINFO_T<br />
Stores generic payment method information for an account.</p>
<p>PRODUCT_T<br />
Stores the information for a single product.</p>
<p>PROFILE_T<br />
Abstract class to support custom account information. To use a /profile object, always create a subclass. You can link an account to any number of /profile objects.</p>
<p>PURCHASED_DISCOUNT_T<br />
Contains an entry for each discount owned by an account at the time of conversion.</p>
<p>PURCHASED_PRODUCT_T<br />
Contains an entry for each product owned by an account at the time of conversion.</p>
<p>RESERVATION_T<br />
Tracks resources reserved for multi-service prepaid systems. Stores information about the account, balance group, and the service for which the resource reservation is created, the resource amount, and the expiration time for when the reserved resource expires.</p>
<p>SERVICE_T<br />
Stores generic service type information for accounts. There is one row in this table for each applicable service for each entry in ACCOUNT_T. In addition to a row in this table, a row must be created in the service type table, such as IP service or email.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2011/02/oracle-brm-7-3-database/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Employing JBoss SOA Platform to Integrate Oracle BRM with Third Party Systems</title>
		<link>http://www.tridens.si/2010/12/employing-jboss-soa-platform-to-integrate-oracle-brm-with-third-party-systems/</link>
		<comments>http://www.tridens.si/2010/12/employing-jboss-soa-platform-to-integrate-oracle-brm-with-third-party-systems/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 08:49:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JBoss]]></category>
		<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[ESB]]></category>
		<category><![CDATA[JBoss Enterprise SOA]]></category>
		<category><![CDATA[JBoss Enterprise SOA Platform]]></category>
		<category><![CDATA[JBoss ESB]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1160</guid>
		<description><![CDATA[To continue the story about the notification events integration of Oracle BRM, we will present the integration of Oracle BRM with the JBoss 5.0.2GA Enterprise SOA Platform, which is being used as middleware in a mid-sized mobile operator company. Prior to this notification events integration, we had also used JBoss Enterprise SOA Platform to integrate [...]]]></description>
			<content:encoded><![CDATA[<p>To continue  <a title="Integrating Oracle BRM with enterprise applications" href="http://www.tridens.si/2010/11/integrating-oracle-brm-with-enterprise-applications/" target="_self">the story</a> about the notification events integration of Oracle BRM, we will present the integration of Oracle BRM with the  JBoss 5.0.2GA Enterprise SOA Platform, which is being used as middleware in a mid-sized mobile operator company. Prior to this notification events integration, we had also used JBoss Enterprise SOA Platform to integrate Oracle BRM with some other third party systems (ERP, CRM, WEB and WAP portal, USSD…,) so it was a logical step to implement this notification event integration in the same way.</p>
<p>As mentioned in the previous article, Oracle BRM is capable of publishing events in the  database, through http requests or in some other way, by implementing custom connectors. After some investigation and prototyping, we decided that an http requests approach would be the most suitable in our case. We dismissed a database approach because of the very frequent requests to the DB (it was requested that some specific notification events  be provided to third party systems in a matter of seconds.) So, we  used the ESB functionality of JBoss and exposed the http interface through an  http_gateway.<br />
<a href="http://www.tridens.si/wp-content/uploads/2010/12/diagram_Oracle_BRM_eai_jboss.jpg"><img class="aligncenter size-full wp-image-1169" title="Integrate Oracle BRM with Third Party Systems through JBoss Enterprise SOA Platform" src="http://www.tridens.si/wp-content/uploads/2010/12/diagram_Oracle_BRM_eai_jboss.jpg" alt="" width="610" height="630" /></a> This configuration allows us to handle a huge number of notification events without any performance dropdowns on the Oracle BRM side. All notification events are stored in a  queue through the http_gateway and then handled appropriately using a rule engine. With defining rules in the rule engine, events are properly categorized and sent to specified services for further processing and further third party notifying.</p>
<p>One quite complex task was configuring rules for proper event handling. Our approach was to uniquely create messages according to event types, system ids, and other specific parameters. In this way, we were able to define priorities and specific routes for the messages. Also, we had to use several channels for sending notification events to third party systems. As is the case in many other companies,  this mobile operator utilizes some legacy systems which do not have interfaces used in most modern systems. Notification events for those legacy systems are routed to special services, which communicate with them in specified way. For other systems, (SMS Gateway, CRM, ERP, WEB and WAP portal…) we used standard communication methods, such as web services and http interfaces.</p>
<p>In the  current configuration, we are able to handle several hundred events per second from Oracle BRM to JBoss middleware. However, because all unwanted events have already been removed by the Oracle BRM Payload Generator EM, up to now there have been no such high loads on the  production systems.  On the other hand, we have noticed performance issues when communicating with some of the third party systems. For example, ERP is very problematic during the processing of payments, and, during this time, there should be no interference from other systems. So, for handling such bottlenecks, we are also using queues for outbound messages. All messages for those systems are put in a queue and sent out at an appropriate rate (in some cases, only one message every 5 seconds).</p>
<p>Such a  design allows us to add new notification events or to extend notification event service to another third party system with a very limited number of changes and without affecting currently running services. In most cases, it requires only changes in  the  configuration files. For example, sending  an additional notification event would require a change in the Oracle BRM payloadconfig.xml file and adding a rule for routing this new message in the JBoss Rule engine.</p>
<p>With the  successful implementation of this solution in a  production environment, we have proved that the integration of Oracle BRM with third party systems is very efficient and reliable, using Oracle BRM EAI on the billing side and Red Hat JBoss Enterprise SOA Platform with ESB on the middleware side.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2010/12/employing-jboss-soa-platform-to-integrate-oracle-brm-with-third-party-systems/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Integrating Oracle BRM with enterprise applications</title>
		<link>http://www.tridens.si/2010/11/integrating-oracle-brm-with-enterprise-applications/</link>
		<comments>http://www.tridens.si/2010/11/integrating-oracle-brm-with-enterprise-applications/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 08:26:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[EAI]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=1026</guid>
		<description><![CDATA[In this post, we will talk about the enterprise application integration (EAI) framework manager, which provides a way to integrate Oracle BRM with other enterprise applications. The EAI manager ensures data synchronization across applications in your enterprise and avoids data duplication among applications. In short, it works like the Telco Framework Manager provisioning process: A [...]]]></description>
			<content:encoded><![CDATA[<p>In this post, we will talk about the enterprise application integration (EAI) framework manager, which provides a way to integrate Oracle BRM with other enterprise applications. The EAI manager ensures data synchronization across applications in your enterprise and avoids data duplication among applications. In short, it works like the Telco Framework Manager provisioning process:</p>
<ol>
<li> A change occurs, which generates an event object.</li>
<li>Data is generated in the Connection Manager and sent to the Data Manager.</li>
<li>The Data Manager publishes the payload object.</li>
</ol>
<p>The figure below illustrates an outlined EAI framework manager architecture and data flow:<br />
<a href="http://www.tridens.si/wp-content/uploads/2010/11/diagram-brm-integration.jpg"><img class="aligncenter size-full wp-image-1028" title="Oracle BRM inetgration" src="http://www.tridens.si/wp-content/uploads/2010/11/diagram-brm-integration.jpg" alt="" width="610" height="500" /></a><br />
To get the ball rolling, the EAI Manager first needs to be installed. This includes three EAI features:</p>
<ul>
<li>EAI Connection Manager (CM) module (includes the opcodes required by EAI)</li>
<li>EAI Data Manager</li>
<li>Payload Generator External Module (EM) – also called EAI Java Server or eai_js</li>
</ul>
<p>Once the EAI framework manager has been installed, it’s time for the configuration step. The installation program assigns default values in the CM and EAI DM configuration (pin.conf) files, as well as the Payload Generator properties (Infranet.properties) file.</p>
<p>Next, make sure that:</p>
<ol>
<li>the dm_pointer in the CM pin.conf points to the same port as the dm_port configured in the EAI DM pin.conf;</li>
<li>the em_pointer in the CM pin.conf points to the same port as the infranet.server.portNr in the eai_js Infranet.properties;</li>
<li>the startup and shutdown scripts are changed appropriately for the new processes to start/stop accordingly.</li>
</ol>
<p>In addition to this basic configuration, the event notification feature, which calls the opcode (name: PCM_OP_PUBLISH_GEN_PAYLOAD; number: 1301) that caches the Oracle BRM event in the Payload Generator, will need to be configured. To enable event notification, run the load_pin_notify utility to load the configuration file containing the event notification list into the Oracle BRM database. Before running the utility, however, the configuration files for event notification in the $BRM_HOME/sys/data/config/pin_notify_eai file must first be merged. Optionally, add, modify, or delete entries in the final event notification list.</p>
<p>Should there be custom fields in the notification events, ensure they are included in the eai_js Infranet.properties and that the compiled custom java classes are in the classpath when starting eai_js. Otherwise, the result will be opcode numbers in the FLISTs instead of opcode names.</p>
<p>The last configuration task is defining Oracle BRM business events. A business event is an operation so defined in the Payload Generator EM configuration file (payloadconfig.xml). For example, one such business event is ProductPurchase, which is created when a customer buys a product. The configuration file  can be edited to do the following:</p>
<ul>
<li>Add events to be published;</li>
<li>Remove unwanted events from the list</li>
<li>Specify whether the events are  to be published in XML or FLIST format.</li>
</ul>
<p>After configuring everything, it’s time to provide access to BRM event data for enterprise applications by building a module connector application that handles transaction management and transformation schemes specific to your environment. The directory $BRM_HOME/sys/dm_eai already contains sample implementations of the EAI functions in flist and XML format. Optionally, the EAI Manager can be used to publish information from the Oracle BRM database to an HTTP port for use by a third-party application such as CRM (customer relationship manager). To publish to an HTTP port, use the dm_http module.</p>
<p>Once a working connector application is in place, the successful integration of Oracle BRM with a third-party application is complete.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2010/11/integrating-oracle-brm-with-enterprise-applications/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Oracle BRM billing process</title>
		<link>http://www.tridens.si/2010/06/oracle-brm-billing-process/</link>
		<comments>http://www.tridens.si/2010/06/oracle-brm-billing-process/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 08:13:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[billing]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=835</guid>
		<description><![CDATA[First, let’s take a look at an overall picture of what the Oracle BRM billing process does: Compiles the total amount of balance impacts that have occurred in the past month. This can include usage fees and subscription fees. Changes the status of all the bill items associated with the bill from pending to open [...]]]></description>
			<content:encoded><![CDATA[<p>First, let’s take a look at an <strong>overall picture</strong> of what the <strong>Oracle BRM billing</strong> process does:</p>
<ol>
<li> Compiles the total amount of balance impacts that have occurred in the past month. This can include usage fees and subscription fees.</li>
<li>Changes the status of all the bill items associated with the bill from pending to open so that they stop accumulating charges, and payments can be applied to them. In addition, a payment due date is added to the bill.</li>
<li>Automatically requests payments from a credit card processor or requests payments by sending invoices.</li>
<li>Automatically updates a customer’s account balance when a payment is recorded in the BRM database.</li>
</ol>
<div id="attachment_855" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2010/06/billing_process.jpg"><img class="size-full wp-image-855" title="Oracle BRM billing process" src="http://www.tridens.si/wp-content/uploads/2010/06/billing_process.jpg" alt="" width="610" height="250" /></a><p class="wp-caption-text">Picture 1: Oracle BRM billing process</p></div>
<p><strong>So, how is all this done in practice?</strong></p>
<p>Before running a billing on production, it is necessary that all the prerequisite steps be executed. The first step is to prepare a copy of the production environment – this can either be a preproduction or some testing environment. This step includes the installation of the latest production release onto this environment and the copying of the production database. Next, the environment configurations have to reflect those of production. Here are the main configurations, which should be set appropriately:</p>
<p>•	<strong>cm</strong> configuration ($HOME/pin/sys/cm/pin.conf),</p>
<p><em>o	Verify loglevel entry is set to 1</em></p>
<p><em>o Change the entry for agent_return parameter to 0</em></p>
<p><em>o	Change the entry for simulate_agent parameter to 1</em></p>
<p><em>These two last changes are done so as not to involve any provisioning action during the bill-run.</em></p>
<p>•	<strong>dm_oracle</strong> configuration ($HOME/pin/sys/dm_oracle/pin.conf),</p>
<p><em>o	Set dm_bigsize parameter to 8388608 or higher</em></p>
<p><em>o	Set dm_shmsize parameter to 33554432 or higher</em></p>
<p><em>o	Set dm_n_fe to 8</em></p>
<p><em>o	Set dm_max_per_fe to 16</em></p>
<p><em>o	Set dm_n_be to 24</em></p>
<p><em>o	Set dm_trans_be_max to 22</em></p>
<p>•	<strong>pin_bill_accts</strong> configuration ($HOME/pin/apps/pin_billd/pin.conf),</p>
<p><em>o	Verify loglevel. Change it to the appropriate value depending on what needs to be checked during the bill test, either 1 or 3.</em></p>
<p><em>o	Change children parameter for pin_billd and pin_mta to 5</em></p>
<p><em>o	Change per_batch parameter for pin_billd and pin_mta to 20000</em></p>
<p><em>o	Change fetch_size parameter for pin_billd and pin_mta to 150000</em></p>
<p>•	<strong>pin_inv_accts </strong>configuration ($HOME/pin/apps/pin_inv/pin.conf),</p>
<p><em>o	Verify loglevel. Change it to the appropriate value depending on what needs to be checked during the bill test, either 1 or 3.</em></p>
<p><em>o	Change children parameter for pin_billd and pin_mta to 5</em></p>
<p><em>o	Change per_batch parameter for pin_billd and pin_mta to 2000</em></p>
<p><em>o	Change fetch_size parameter for pin_billd and pin_mta to 15000</em></p>
<p>To get the best possible simulation of production, the billrun pin_virtual_time has to be set to the date when the real billrun on production will be executed. Once that’s done, the billrun can be started.</p>
<p>We run billing monthly with pin_bill_day script which creates about 100.000 bills per hour. The script creates bills for accounts where the billing date is any day before midnight of the day we run billing. So what does pin_billd_day script actually do? It runs the following billing utilities:</p>
<ul>
<li>pin_deferred_act: Executes deferred actions; for example if an  account should become inactive, this utility performs the status change on the scheduled date.</li>
<li>pin_bill_accts: Calculates the balance due for accounts and creates a bill for the balance due.</li>
<li>pin_collect: Collects the balance due for accounts that use credit cards and directs debit payment methods.</li>
<li>pin_refund: Finds accounts  that have refund items and makes online refund transactions.</li>
<li>pin_inv_accts: Creates an invoice for each account that is billed.</li>
<li>pin_cycle_fees: Applies the cycle forward fee balance impact to the customer’s account and cancels products that have an expired pending cancellation date.</li>
</ul>
<p>To verify the progress and performance of the pin_bill_day script, we run queries against the database to get information on how many bills are done, how many are yet to be done, if there are any bills with errors, etc.</p>
<p>After the billing part is over and all the bills are created, invoicing starts. After the invoices are created, they are exported to XML documents, which are then converted into PDF format.</p>
<p>Besides the queries mentioned earlier, there are also other queries that need to be executed once billing and invoicing has finished, in order to verify the accuracy of the data generated by this process. We execute batch of queries; here are some of them:</p>
<p>•	<strong>Has billing failed?</strong></p>
<p><em>select * from billinfo_t where billing_state = 4 and bill_info_id&lt;&gt;&#8217;Bill Unit(1)&#8217;;</em></p>
<p>&#8211;Expected results: No rows found</p>
<p>•	<strong>Are there any unbilled accounts?</strong></p>
<p><em>select poid_id0, first_name,last_name,a.status from account_t a, account_nameinfo_t an where </em></p>
<p><em>a.poid_id0=an.obj_id0 and </em></p>
<p><em>created_t&lt;&lt;bill_cycle_end_date&gt; and </em></p>
<p><em>not exists (select b.account_obj_id0 from bill_t b</em></p>
<p><em>where end_t=&lt;bill_cycle_end_date&gt; and </em></p>
<p><em>b.account_obj_id0=a.poid_id0);</em></p>
<p>&#8211;Expected results: No rows found</p>
<p>•	<strong>Are there any bills without a bill number?</strong></p>
<p><em>select * from bill_t where end_t=&lt;bill_cycle_end_date&gt; and bill_no is null;</em></p>
<p>&#8211; Expected: No rows found</p>
<p>Any problems found are then investigated and fixed through the versioning control system, where fixes are later included in the next release version.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2010/06/oracle-brm-billing-process/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Closed User Groups (CUG) in Oracle BRM</title>
		<link>http://www.tridens.si/2010/04/closed-user-groups-cug-in-oracle-brm/</link>
		<comments>http://www.tridens.si/2010/04/closed-user-groups-cug-in-oracle-brm/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 05:47:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>
		<category><![CDATA[CUG]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=787</guid>
		<description><![CDATA[So, what is a closed user group? It is a virtual group of accounts/subscribers connected to each other by sharing the same profile attribute or by having something else in common. Members of this group can have calls among them rated differently from other calls &#8211; for example, by their being given a special discount. [...]]]></description>
			<content:encoded><![CDATA[<p>So, what is a closed user group? It is a virtual group of accounts/subscribers connected to each other by sharing the same profile attribute or by having something else in common. Members of this group can have calls among them rated differently from other calls &#8211; for example, by their being given a special discount.</p>
<p>The introduction of rating differentiation for specific accounts can be configured using <strong>Promotions</strong>. Promotions in <strong>Oracle BRM</strong> provide a way to give customers special rates or discounts based on a specific attribute of a service or account, such as a telephone number. Promotions are called <strong>extended rating attributes (ERAs)</strong> in the Pricing Center and elsewhere in <strong>Oracle BRM</strong>. Adding a closed user group promotion is achieved by opening the Customer Center and selecting the Promotion tab. There, select <strong>Closed User Group</strong> from the account-level <strong>Promotion Type</strong> list, enter the phone number or account login ID in the Name column, enter the name of the closed user group in the Value column, and optionally select Valid From and Valid To dates. Note that while you can assign multiple closed user groups to an account, each number can be assigned to only one closed user group at any time.</p>
<p>For our customers, however, we have designed and implemented <strong>CUG</strong> functionality in a different way. In the first phase, the idea was to allow cheaper outgoing voice calls among accounts in the same hierarchy. For the hierarchy to be <strong>CUG</strong>-compliant, the parent has to have an account-level product called CUG1. Now, when a voice call is made between child accounts in this hierarchy, a pre-rating opcode checks whether or not both A subscriber and B subscriber belong to the same hierarchy. If they do, a flag is set for the rating engine to charge this event at a lower rate.</p>
<div id="attachment_790" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2010/04/hierarchy-1.jpg"><img class="size-full wp-image-790  " title="Hierarchy (with CUG 1)" src="http://www.tridens.si/wp-content/uploads/2010/04/hierarchy-1.jpg" alt="" width="610" height="400" /></a><p class="wp-caption-text">Picture 1: Calls between any two accounts in this hierarchy are discounted</p></div>
<p>The second phase introduces an extension to the original functionality by allowing subscribers to belong to the same CUG group without being in the same hierarchy. As long as A subscriber and B subscriber belong to the same CUG2 group (having a corresponding CUG2 product with the same description – group name) and do not belong to CUG1 hierarchy, the call is rated according to the CUG2 product rate. Note, CUG1 always has the higher priority, so if it exists for both A and B subscribers, only the CUG1 charge can be applied.</p>
<div id="attachment_791" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.tridens.si/wp-content/uploads/2010/04/hierarchy-2.jpg"><img class="size-full wp-image-791 " title="Hierarchy CUG 2" src="http://www.tridens.si/wp-content/uploads/2010/04/hierarchy-2.jpg" alt="" width="610" height="350" /></a><p class="wp-caption-text">Picture 2: Calls between accounts having CUG 2 products with the same description are discounted (regardless of hierarchy membership)</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2010/04/closed-user-groups-cug-in-oracle-brm/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Troubleshooting the BRM Pipeline Start Up</title>
		<link>http://www.tridens.si/2010/04/troubleshooting-the-brm-pipeline-start-up/</link>
		<comments>http://www.tridens.si/2010/04/troubleshooting-the-brm-pipeline-start-up/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 08:07:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Oracle BRM]]></category>

		<guid isPermaLink="false">http://www.tridens.si/?p=743</guid>
		<description><![CDATA[Issue 1 To see if all the pipelines are up, use this command: »pss &#124; grep ifw«. The output should look like this: $ pss &#124; grep ifw pin 18601 18486 0 10:48:02 pts/0 00:00 /opt/portal/pin/bin/dm_ifw_sync pin 24721 1 0 11:53:28 pts/0 01:00 bin/ifw -r ./custom/conf/dia_1_P.reg pin 18603 18486 0 10:48:02 pts/0 00:00 /opt/portal/pin/bin/dm_ifw_sync pin [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Issue 1</strong><br />
To see if all the pipelines are up, use this command: »pss | grep ifw«. The output should look like this:<br />
$ pss | grep ifw<br />
pin      18601 18486  0 10:48:02 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      24721     1  0 11:53:28 pts/0       01:00 bin/ifw -r ./custom/conf/dia_1_P.reg<br />
pin      18603 18486  0 10:48:02 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18613 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18607 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18612 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18605 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18600 18486  0 10:48:02 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18618 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18616 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18611 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18614 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18486     1  0 10:48:00 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18610 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18608 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      19123     1  0 10:50:47 pts/0       00:18 bin/ifw -r ./custom/conf/rt_1_P.reg<br />
pin      18490 18486  0 10:48:00 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18609 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18602 18486  0 10:48:02 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18617 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18615 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      19130     1  0 10:50:59 pts/0       01:29 bin/ifw -r ./custom/conf/mbi_1_P.reg<br />
pin      18606 18486  0 10:48:03 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      18604 18486  0 10:48:02 pts/0       00:00 /opt/portal/pin/bin/dm_ifw_sync<br />
pin      21975     1  0 11:23:18 pts/0       01:01 bin/ifw -r ./custom/conf/dcn_1_P.reg<br />
pin      19126     1  0 10:50:53 pts/0       00:17 bin/ifw -r ./custom/conf/rt_1_S.reg</p>
<p><strong> Issue 2</strong><br />
If you can&#8217;t start the pipeline and you get this error message: »Error: Could not start event handler, cannot proceed.», then you need to kill the event handler process. See the example that follows:<br />
/opt/portal/pre_dia/log/process/ $ tail -f dia_1_P.out<br />
;<br />
Pipeline Server / Version 7.3 10095 started at 06.01.2009 16:23:11.<br />
Copyright (c) 1998 &#8211; 2007 Oracle Corporation. All rights reserved.</p>
<p>Too many failed attempts at starting event handler daemon.<br />
Error: Could not start event handler, cannot proceed.</p>
<p>Pipeline Server / Version 7.3 10095 finished at 06.01.2009 16:23:11.</p>
<p><strong>Resolution</strong>:<br />
$ pss | grep dia<br />
pin      27727     1  0 15:50:21 pts/3       00:00 /opt/portal/pre_dia/bin/ifw_eventhandler64<br />
pin       3055  4463  1 16:24:18 pts/3       00:00 grep dia<br />
$ kill -9 27727</p>
<p><strong>Issue 3</strong><br />
To rebalance the MBI pipeline,  run the following command:<br />
cd /opt/portal/pre_mbi/bin/<br />
./pin_ctl snmpset rebalanceAaaGw aaa</p>
<p>To rebalance the DIAMETER pipeline, run the following command:<br />
cd /opt/portal/pre_dia/bin/<br />
./pin_ctl snmpset rebalanceAaaGw aaa</p>
<p><strong>Issue 4</strong><br />
If  you get this error message: »ERR_TAM_INIT_FAILED,« then you need to delete files in the tam directory.</p>
<p>bin/ifw: An error occurred during creation.<br />
Originator : ifw.Pipelines.ExceptionPipeline.TransactionManager<br />
Destination :<br />
Message : ERR_TAM_INIT_FAILED<br />
Arguments : ifw.Pipelines.ExceptionPipeline.TransactionManager<br />
State : false<br />
Severity : CRITICAL<br />
Thread : 1</p>
<p><strong>Resolution</strong>:<br />
cd /opt/portal/<br />
/tam<br />
Backup the files to other location<br />
rm TamTrans*.dat<br />
rm ExceptionBinaryLogFile.dat</p>
<p><strong>Issue 5</strong><br />
If  you get this error message:  »ERR_REG_LOCK_FILE_EXISTS,« then you need to delete the lock file.</p>
<p>*** Log not initialised.<br />
*** Tried to write message &#8216;[T:1] ERR_REG_LOCK_FILE_EXISTS&#8217;<br />
*** argument (0): ./custom/conf/rt_1_P.reg.lock</p>
<p>bin/ifw: An error occurred during creation.<br />
Originator      : ifw<br />
Destination     :<br />
Message         : ERR_REG_LOCK_FILE_EXISTS<br />
Arguments       : ./custom/conf/rt_1_P.reg.lock</p>
<p>State           : false<br />
Severity        : CRITICAL<br />
Thread  : 1</p>
<p><strong>Resolution</strong>:<br />
cd /opt/portal/<br />
/custom/conf<br />
rm rt_1_P.reg.lock</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tridens.si/2010/04/troubleshooting-the-brm-pipeline-start-up/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
	</channel>
</rss>

