Category: Blog
Revive Adserver (Formerly OpenX Source) lives on!
posted in Blog, OpenX Source, PHP, Revive Adserver and tagged openx source, php, revive 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 pdf, php, sugarcrm 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 openx source, openx source api, rest, restful 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 android, jenkins 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 android, ANT, jenkis, mobile 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 advertiser, api, openx source, openx source api, xml rpc, xmlrpc2 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 openx source, openx source api, rpc2, xml, xmlrpc, xml_rpc 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 metaweblog, wordpress, xmlrpc 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