Category: Blog

Revive Adserver (Formerly OpenX Source) lives on!

posted in Blog, OpenX Source, PHP, Revive Adserver and tagged , , by Ilya Ber.

We are genuinely pleased to announce that the best open source ad server (former OpenX Source) software is going to live on and continue being actively developed – meet the Revive Adserver project. As we are all so well aware, OpenX Corporation has been blatantly mistreating our favourite software for years – slowly degrading support and development. Even though fairly popular in the community, the project was stagnating, until finally, the company decided to drop it completely and concentrate on enterprise solutions. Thankfully, … read more

Make PDF exports writable in SugarCRM

posted in Blog, PHP, SugarCRM and tagged , , by Ilya Ber.

A brief tutorial on how to make PDF exports from SugarCRM On-Demand Edition writable/editable and generally disable the default password protection. This feature is yet to be implemented into the core functionality of SugarCRM and right now comes really handy, specially, when working with the Quotes module – when small changed have to be made to the already exported PDF files. This tutorial also cover basic module creation and installation procedures.

Revive AdServer (Formerly OpenX Source) RESTful API Wrapper

posted in Blog, OpenX Source, PHP and tagged , , , by Ilya Ber.

Finally, our development team at Black River got a chance to try out the newRevive AdServer (Formerly OpenX Source) RESTful API Wrapper made by openxsourcerestapi.com. The API wrapper comes in a form of an extremely clean and tight package – all you have to do is unzip it into the www/api/ folder of yourRevive AdServer (Formerly OpenX Source)  installation, where it will reside alongside the v1 and v2 versions of the default legacy XML-RPC wrapper. Code wise, the whole package looks very clean, professional … read more

Android Continuous Integration with ANT and Jenkins: Part 2

posted in Android, Blog and tagged , by Ilya Ber.

In my recent post I wrote about how to build and run unit tests on Android project from command line. These were first steps to setup Continuous Integration for your project, and now I’ll show you how to automate a build with Jenkins. First of all, you’ll need Jenkins CI server installed on your build server (in BlackRiver, we are using Windows Server virtual box for Jenkins main server). Since we are going to build Android project on CI server, we’ll need … read more

Android: annoying exception Unable to add window – is your activity running?

posted in Android, Blog by Ilya Ber.

After publishing one of our apps on Google Play market I started receiving strange exception on Play Console: android.view.WindowManager$BadTokenException: Unable to add window — token android.os.BinderProxy@40b47bd8 is not valid; is your activity running? at android.view.ViewRoot.setView(ViewRoot.java:452) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:283) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:193) at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:118) at android.view.Window$LocalWindowManager.addView(Window.java:532) at android.app.Dialog.show(Dialog.java:269) …android.view.WindowManager$BadTokenException: Unable to add window — token android.os.BinderProxy@40b47bd8 is not valid; is your activity running? at android.view.ViewRoot.setView(ViewRoot.java:452) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:283) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:193) at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:118) at android.view.Window$LocalWindowManager.addView(Window.java:532) at android.app.Dialog.show(Dialog.java:269) … This exception occurred while app was trying to notify user … read more

Android Continuous Integration with ANT and Jenkins: Part 1

posted in Android, Blog and tagged , , , by Ilya Ber.

Recently we’ve started a new Android project for one of our customers, and since we are using a proper development workflow, I’ve began with setting up Continuous Integration (CI)  as a part of the process. I’m going to tell you a little more than just the technical details about how to set up CI server and build an application there, what I’ll tell you is how we, at Black River, manage development and testing processes using Jenkins. In this article, I’ll … read more

Revive AdServer (Formerly OpenX Source) API – Campaigns and eCPM: Part 3

posted in Blog, OpenX Source, PHP by Ilya Ber.

Today we are going to talk about Revive AdServer (Formerly OpenX Source) Campaigns. First let us start with identifying that types of campaigns that are available in Revive AdServer (Formerly OpenX Source) . Contract – a campaign with a daily limit spread out evenly over time Contract Exclusive – the same daily limit as in a regular contract campaign, but has a weight parameter  which determines its placement ahead of other contract campaigns Remnant – can be constrained either by the start and … read more

Revive AdServer (Formerly OpenX Source) API – Advertisers: Part 2

posted in Blog, OpenX Source and tagged , , , , , by Ilya Ber.

Before we start looking into specific components of the Revive AdServer (Formerly OpenX Source) API, let us quickly overview the hierarchy the actual Revive AdServer (Formerly OpenX Source) entities. The following diagram is a gross oversimplification (it does not refer to many other crucial entities like Agency or Channel – those will be covered in later tutorials) but should be enough to quickly grasp the concepts for anyone who is new to Revive AdServer (Formerly OpenX Source) platform. On one side you have Advertisers, Campaigns … read more

Revive AdServer (Formerly OpenX Source) API – Introduction: Part 1

posted in Blog, OpenX Source, PHP and tagged , , , , , by Ilya Ber.

We use Revive AdServer (Formerly OpenX Source) frequently at BlackRiver as the most open and customizable ad serving platform both for many of our clients and our own internal projects. When it comes toRevive AdServer (Formerly OpenX Source)  API – there is almost nothing out there but a few blog posts and outdated code samples. We would really like to share our experiences (both positive and negative) withRevive AdServer (Formerly OpenX Source)  API as we strongly believe that theRevive AdServer (Formerly OpenX Source)  platform should remain easy accessible … read more

WordPress XML-RPC – MetaWeblog API

posted in Blog, PHP and tagged , , by Ilya Ber.

metaWeblog.newPost Function: Creates a new post on your blog. Parameters: Blog ID – For use in multisite installations, typically 0 for single sites Username – WordPress username Password – WordPress password Content – Your blog post defined as an associate array with the following fields ‘post_type’ – ‘post’ or ‘page’ ‘wp_slug’ – Post slug (optional) ‘wp_password’ – Post password (optional) ‘wp_page_parent_id’ – ID of the parent post (optional) ‘wp_page_order’ – Menu order (optional) ‘wp_author_id’ – Identify an author other than the … read more

Recent Revive AdServer (Formerly OpenX Source) Expandable Banners

Revive AdServer (Formerly OpenX Source)  Expandable Banners The following example demonstrates a 600px by 150px banner served by Revive AdServer (Formerly OpenX Source)  and expanded to 600px by 300px on rollover. The flash creative can be either uploaded to creatives directory directly (FTP) or just as an another Revive AdServer (Formerly OpenX Source)  banner (preferred). When uploading the SWF creative, you do not need to replace any hardcoded URLs or indicate a destination URL – that would be done in the HTML banner setup. Essentially, we are just using it as a storage container for our creative, all impressions and clicks will be … read more

 Twitter  LinkedIn  Google+  Skype RSS

Get in Touch

  • r Phone:
    (416) 877 2844 / (647) 258 4847
  • h Email:
    [email protected]
  • m Address:
    1454 Dundas St. East, Suite 124
    Mississauga, Ontario
    L4X1L4, Canada

Any Questions?

    Email

    Message