Android Plug-In – Our Latest Development

Android Plug-In

Our OrbitSoft team has started the New Year off by working on developing an Android plug-in. The purpose of this plug-in is to offer the ability to look through a catalog of video files and to watch the actual video files.

In the process of developing catalogs for video files, we worked to fulfill various requests, such as:

  • Receiving the list of videos with the ability to sort and filter by category
  • Searching by key words

The list of video files is presented as an endless list. In order to create this list, we used the RecyclerView widget, which is a more advanced and flexible version of ListView. It’s a container for displaying large data sets that can be scrolled very efficiently by maintaining a limited number of views. The RecyclerView widget is a great tool when you have data collections whose elements change at runtime based on user action or network events.

For the purposes of personalizing the user’s data, we set up a PIN code. If the user sets up a PIN in the settings, then the plug-in will ask for the PIN when the plug-in is turned on. Security is paramount!

In order to view video files in the plug-in, we integrated ExoPlayer, which is an application level medial player for Android. It provides an alternative to Android’s MediaPlayer API for playing audio and video, both locally and over the Internet. ExoPlayer is a cutting-edge tool which supports features not currently supported by Android’s MediaPlayer API, including DASH and SmoothStreaming adaptive playbacks. ExoPlayer is easy to customize and extend, and can be updated through the Play Store application updates.

We used a video controller for monitoring the videos and their quality, based on the user’s preferences. As a user, you can take a range of actions with the videos, including:

  • Add a video to selected
  • Mark a video as liked or not liked
  • Download a video
  • View a list of similar videos

You may be wondering how to view a video when not online. The answer is simple – the plug-in uses a service for downloading video files. You have the option of downloading the file into your phone’s internal memory or onto an SD card. User’s activity on the plug-in can be tracked through the Flurry Analytics service, which we have integrated for this purpose.

Finally, as could be expected, the Android plug-in displays advertising from the Orbit Ad Server platform. The plug-in will feature banner ads, as well as interstitial ads on the pages of the video player.

As you can see, we’ve had a busy start to the year. We will continue working hard to bring more technological advantages to our clients throughout 2017 and beyond!

Comments (0)

ClickHouse – A New Tool with Great Potential


Just like many other software companies, we frequently run into the issue of collecting, storing and analyzing statistics. As our clients know, our products are capable of registering a large number of occurrences every second. For this very reason, we were very interested in the new ClickHouse product that has recently entered the market.

ClickHouse is a tool developed by the Russian IT company called Yandex to meet the challenges of Yandex.Metrica, the second-largest web analytics service in the world. ClickHouse allows analysis of data that is updated in real time. It manages extremely large volumes of data in a stable and sustainable manner. Since becoming publically available, the product has been actively expanding its capacities based on users’ requests.

So what are the main advantages of ClickHouse? Well, it allows users to…

  • Run more queries in the same amount of time
  • Test more hypotheses
  • Slice and dice your data in many more new ways
  • Look at your data from new angles
  • Discover new dimensions

ClickHouse permits companies to add servers to their clusters when necessary, without investing additional time or money. This easily adaptable tool scales well both vertically and horizontally.

You may be wondering what sort of a solution ClickHouse would offer if it needed to add a new dimension or metric to its aggregated structure. Well, the dimension can be added easily enough, but what will happen to the previous periods, since you will most likely not have the original data for recounts?

ClickHouse has answered these questions and shared their philosophy about the necessity of keeping all data. For this purpose, they are offering great compression technology, as well as incredible speeds for processing requests. Their site has benchmarks, which allow the users to compare ClickHouse’s performance with that of its competitors:

All in all, ClickHouse seems to be a one-stop answer for many common issues – the volume of data collecting, speed of processing requests, the renewal and accessibility of data, and so on.

Some users may be turned off by the fact that ClickHouse does not permit users to delete or change data. Yes, data can be deleted through partitions, but they are made up of a month’s worth of data – and that’s a huge stratum of data for large systems. Furthermore, ClickHouse does not offer transactions. When fulfilling a request, during aggregation, it’s imperative that the results fit into the working memory on a single server. So be prepared for hardware with large working memory.

ClickHouse also has a fantastic mechanism of working with outside dictionaries, using different sources (example: CSV file, MySQL database, MongoDB or any other ODBC source). However, be careful! For example, the dictionary identifier should be a number that fits into Ulnt64.

All in all, this new product is showing a lot of promise. Even though its community is only just developing, it already offers great capabilities for storing and analyzing statistics. If you have lots of stats – definitely give this tool a try!

External links:

Comments (0)

Native Ads – What’s All the Fuss About?

Native Ads

Native ads – materials in an online publication that resemble the publication’s editorial content, but are paid for by an advertiser and intended to promote a product or service – are certainly not new on the market. However, native ads have lately generated much interest, whether they are located on YouTube or Vine or show up in blog articles.

Native ads take into account the specifics of the platform and users’ behaviors on it. Brands and advertisers love native ads, mainly because the click-through rates tend to be much higher than typical advertisements and engagement is usually much stronger. The ads await the users in a space where users normally seek information and/or news, instead of on the sidelines of the site, where there are already at least a dozen ads.

With all that, native ads are typically not irritating to the user. The term “native ads” can apply to branded content (promotional videos, sponsored content, listings, etc.) and even search ads. The format of native ads has been adapted by social media (Facebook, Twitter, YouTube), and lately begun to noticeably pop up on various news platforms. In the United States, media giants such as Time, Inc., Forbes, Wall Street Journal and New York Times are already using native ads formats.

In 2015, with the release of the OpenRTB standard 2.3, native ads became accessible in RTB. We immediately began working on integrating this format into our own SSP. Now we are delighted to offer our clients the opportunity to place native ads.

Native ads API allow us to describe any placement in terms of assets, the summation of which permits us to understand the possibilities for specific ad placement. For example, Publisher can create a placement which consists of:

  • Title
  • An image of a certain size
  • Display URL, which allows the advertiser to customize the link

The full list of available attributes can be viewed in the specs. That way we can describe almost any placement, from an Instagram post to a block of sponsored links in a blog.

During the initial SSP planning, we went in with the understanding that there will be a necessity to expand and add new formats. This allowed us to adapt quickly to new specs and support native ads API with minimal code changes. Our protocol for native ads in Orbit Ad Server allows us to place the ads into any space, from html content to in-app advertising. We are thrilled to provide our clients this latest offering in the digital advertising space.

External links:

, ,
Comments (0)

Attendance of Affiliate Summit West

The OrbitSoft team attended the Affiliate Summit West 2017 in Las Vegas in January 2017. Held in the Paris hotel, the Affiliate Summit West offered attendees three tradeshow areas packed with affiliates, merchants, vendors, networks, technology providers, digital agencies, traffic sources; multiple tracks of relevant educational sessions delivered by industry experts; and a variety of networking events.

This was the first time our team attended this event, although we plan on participating in more of these in the future. The goal of our attendance was to connect with current and potential clients and supporting our clients who were exhibiting their products. Our team spent a lot of time on the exhibit floor, as well as viewed several product demonstrations.

It is crucial for technology companies to take part in industry events such as Affiliate Summit West in order to stay current with what is happening in our field. At OrbitSoft, we make it a priority to stay on top of the latest trends in digital advertising software, so that we can offer our clients the most cutting-edge solutions. We enjoyed attending Affiliate Summit West and look forward to many more similar events in the future!

Comments (0)

Development of SDK for SSP

SDK (software development kit) is a library that is given to the developer by the system and integrated into the application.

In mobile application, SDK is used for:

  • Sending queries to the ad system
  • Getting ads
  • Showing Ads

When sending the query to the platform, SDK passes along several parameters:

  • Application ID
  • Ad ID (IDFA, Google Advertising Id)
  • SDK version, that the app is built
  • Geographical data (allows to do country targeting)
  • Type of connection
  • Width and height of the screen
  • Device maker and model
  • OS device version
  • User agent

Thanks to all passed parameters, it’s possible to “track” the user on different platforms and to target advertising to an interested audience, which is an important advantage of the SDK versus WEB. SDK supports the following ad formats – banner (text, image, rich media), fullscreen, video, appwall, icon, dialog, and tray. These ad formats can be divided into two types: advertising within and outside an applications.

Advertising in applications includes banners (text, image, rich media), fullscreen, video, and appwall. Advertising of these types is displayed in the application during its use. Banner displays a small “ram” on top of the main application window (displays one ad at a time). Fullscreen is displayed over the entire screen. Video can be displayed on the basis of banner, fullscreen, or loaded in the player before viewing the main video. Appwall is displayed in a new window and can show multiple ads from multiple campaigns in a single display.

Advertising outside the app includes icon, dialog, and tray. These types of ads are displayed when the application is closed. Icon installs an icon on your desktop (clicking on the icon leads to the desired effect in the campaign: download application/ Open link/ call/send SMS). Dialog means a dialog box appears on top of the desktop, with two buttons “Yes” and “No” (clicking on the “Yes” button leads to the desired effect in the campaign). Tray is when an application is on the taskbar, and you receive a notification from this application, clicking on which leads to the desired effect in the campaign.

In recent years, developers and advertisers have tried to get away from the use of advertising outside of the application. Advertising outside an app is very intrusive application, resulting in a large number of non-target clicks, which in turn increases costs and reduces the quality of the advertising campaign. By virtue of these factors, some stores do not allow you to download applications that support external advertising. Thus, now the most popular types of advertising are banner (text, image, rich media), fullscreen, video, and appwall.


Comments (0)

Optimization Techniques for Ad Impressions Using Mobile Advertising Network


The main objective of an ad server is to offer choice and delivery of advertisements. However, when the user went through all the ins and outs of targeting and can receive multiple advertisements from different advertising campaigns, the question arises: which ad to choose? Our product has a standard solution – with each request, ads are ranked based on bids, while also adding the element of probability. In other words, the probability of an ad being shown depends on the bid. On one occasion, a customer offered to perform the customization of the ad server where the ads are chosen from a list prepared in advance, with major changes in the algorithm of choosing the ad.

Despite the simplicity of implementation, the standard algorithm for random ad selection has one drawback – it does not control the display process. That is, we load the available ad in an arbitrary manner, not worrying about the interests of partners and advertisers. However, in order to improve the competitiveness of the entire system, it is necessary to come up with some advantage that separates us from other systems. The point of the new algorithm is to find the balance of benefits for advertisers and partners. So how do we do that? First, you need to define the objectives of both parties. For the partner, the goal is obviously to get as much money from an advertising platform as possible. However for the advertiser, on the contrary, the goal is to spend less money, but spend it most effectively.

As universal metrics, we selected CPA and CTR for display server to rank ads. CPA is the cost of the action for the advertiser, the user’s actions, which will bring profit to the advertiser. Such actions can be assumed to be a purchase in an online store, order of services, etc. The main difference in the updated system is that when you create a campaign, the advertiser cannot set the rate for an ad; the advertiser only indicates the CPA and achieving it is one of the main tasks of server hits.

It is necessary to elaborate on the data architecture. For each advertising partner location, or the source, we create their own individual list of ads. The system administrator manages the process. He, at his discretion, adds to the source of campaign ads that need to be rotated in this source. In addition, ads for each source have their own bid and rating. Bid is the amount of money that the advertiser will pay for showing 1,000 ads/CPA/CPC. Nothing changes here, except for the fact that the bid for each source will be different, calculated by the system. Rating is a measure of how often your ad appears in the source. The higher the rating, the higher the probability of an impression. The calculation of each parameter corresponds to a module. Let’s look in more detail at each module.

The objective of the AdRater is to recount ad rank for a particular source. Rating of each ad will be increased or decreased based on the algorithm using the values ??of CTR and CPA. The main task of the algorithm is to increase the rating of ads on the list that have a higher CTR and lower CPA. In other words, at each iteration of the algorithm, the ad rating refreshes depending on the CTR and CPA. The essence of the work is as follows: we consider a specific ad group (the same one that was created as a result of the selection by the administrator) for the appropriate source. All calculations are carried out for this group, which is closed and is not associated with other groups of ads for other sources. Since the goal is a higher CTR and lower CPA, then ads with higher CTR and lower CPA should be shown more often in this group. This raises the problem of how to determine the ranking in these specified limits? The most obvious way is to calculate the structure of the index. Take, for example, the following ad group:

ID CTR Target CPA Real CPA
1 0.1 0.5$ 1$
2 0.25 1.5$ 2.5$
3 0.2 1$ 0.5$

In a series of three ads, for example, the first has a CTR 0.1, the second has a CTR 0.25 and the third has a CTR 0.2. All of these values ??for the ad are just for that source, and for no other. As a total, we’ll take the sum of CTR for these ads to be 0.55. The first ad has a weight of 0.1 / 0.55 = 0.18; the second ad has a weight of 0.25 / 0.55 = 0.46, and the third ad has a weight of 0.2 / 0.55 = 0.36. Therefore, all things being equal, the probability of the first ad being displayed is 18%, the second ad – 46%, and the third ad – 36%. This is the calculation of the CTR rating.

CTR rating is beneficial for the partner, but we must also take into account the interests of advertisers. To do this, we need to calculate, for each ad, the reverse relative CPA rating (reverse – as the smaller CPA, the better). Reverse rating is calculated as 1/(RealCPA/TargetCPA).

For the above example:

For the first ad, the reverse weight proportion of 1/($ 1 / $ 0.5) = 0.5, for the second ad 1/($ 2.5 / $ 1.5) = 0.6, for the third ad 1/($ 0.5 / $ 1) = 2.

We normalize the values ??(with new parameters) and get the rating for the first ad of 0.5/3.1 = 0.16, the second ad of 0.6/3.1 = 0.19, the third ad 2/3.1 = 0.65.

The goal of the algorithm is to find the balance of benefits for advertiser and partners. In order to achieve this, the proposed value of each rating is multiplied and normalized for easy perception. Multiplication will avoid high ranking distortions (when an ad is very beneficial for the partner, but is unprofitable for the advertiser), and give a high rating to the ads that are most beneficial for both parties. Normalization will facilitate the perception of ratings. For the described example: the rating of the first ad 0.18 x 0.16 = 0.029, ranking of the second ad 0.46 x 0.19 = 0.087, and ranking of the third ad 0.36 x 0.65 = 0.234. After normalization (also calculated by weight and interest), we get the ranking of the first ad = 8%, ranking of second ad = 25%, ranking of the third ad 67%. The ads will be displayed in the source with these probabilities.

If we remove the dry numbers and try to simplify: the higher rating will be for the ad which has the highest CTR and CPA.

The objective of the Bid Optimizer is to recalculate the ad bids for each source. Bids can be increased or decreased using RealCPA values ??and TargetCPA. The essence of the algorithm is as follows. For each source and ad, we calculate the percentage difference between RealCPA and TargetCPA. If the value of RealCPA is higher than that of TargetCPA, we downgrade the bid by the percentage difference. A similar situation occurs if the RealCPA is less than TargetCPA – we increase the bid and give your partner a chance to make more money.

The result of these two modules is the following – for each ad in the source, there will be just such a bid, which will help make the maximum amount of money for the partner, but without departing from the advertiser restrictions. At the same time, the ad will be rated, allowing it to show more often, depending on the effectiveness for the advertiser. As a result, the top of the list will be the ads which will have a balance for both sides – advertisers and partners.

Comments (0)

New Features in TrafficForce


TrafficForce implements the sales of targeted web and mobile traffic, based on data for CPM. Clear and simple TrafficForce user interface makes it easy to manage online advertising, and calculate and predict the success of the advertising campaign, allowing users to get a return on their investment.

The following new features were added to TrafficForce in order to improve the user experience:

  • A more detailed selection for targeting. Now, within the TrafficForce system, it has become possible to use better tools to assign specific targeting settings for advertising campaigns. This includes specific location information, keywords, browsers used, and more, all of which are available in order to track and maximize the return on advertising streams.
  • “Managers.” Adding a new category of users. We added a new role for users in the system. Its primary purpose is to support and problem-solve for existing roles of the partners and advertisers in TrafficForce. Among other things, by makeing the aforementioned improvements in TrafficForce, the customer support page has become more dynamic and modifiable for the system administrator.
  • Creating a news portal in TrafficForce. We implemented a new system for managing global news notifications in TrafficForce, with the possibility of selecting one or a group of recipients. Each user with rights for the news site management now has access to this section.
  • Withdrawal of funds from the publishers. Now, users in this role can not only input, but also withdraw the funds in the TrafficForce system with a new, intuitive mechanism for management of funds in the wallet of your account.
Comments (0)

New System Features in the Mobile Network


A distinctive feature of this platform is that the platform allows the agency to attract partners which place on their websites the advertising display code on a contractual basis for individual agreements, then selling ad space to advertisers in different campaigns.

Copying the code onto the page is the only thing a partner needs to do in order to start reaping benefits; that’s why it’s so easy and profitable for site owners with various themes. By placing the code of the display advertising on his page, the partner is indirectly attached to the advertising of goods and services and receives a financial benefit.

The advertiser, when advertising their goods and/or services, states what he will advertise and at what price, and which program. The system handles all remaining manipulations automatically.

It really is simple and profitable.

For competing enterprises, the platform provides the opportunity to advertise on the same sites using the “game” of betting advertisers and creating conditions of display ads of the advertiser ready to pay the highest possible price.

The functionality of the system so so high-speed that advertisers can display thousands of ads per second. This is certainly an important component of commercial success using the platform.

The system has a universal way of offering statistics and the ability to conduct a full accounting of funds received and spent, so that all participants can see their commercial success.

We continuously monitor and maintain our system, constantly adding new technical capabilities. Our goal is to offer the highest quality solution which takes into account the needs of our clients.

The latest enhancement to our system is the addition of topical forms of advertising, the addition of a functional system of calculation with partners at a predetermined rate, the addition of a choice of advertiser web sites to showcase ads, and various bug fixes.

Comments (0)

Working with Operators – Subscriptions

Global Tendencies of mobile internet development

The popularity of mobile Internet in the world is growing rapidly. If in 2012 the average amount of time users spent on the mobile Internet was 74.4 minutes per day, by 2014 this figure reached 108.6 minutes per day, and in the beginning of 2016 – 184.2 minutes. That is, the rate increased almost by half every two years, according

Cisco predicts similar growth of mobile data in the short term – average annual growth rate of information transmitted from mobile devices is 57% for 2014 – 2019.

If the numbers in the analysts’ studies can vary greatly depending on the measurement method, one fact is certain – every year mobile devices are having an increase impact on our habits and life in general.

Such a situation could not fail to attract attention of mobile devices marketers. The rapid growth of mobile users attracted the flow of e-commerce offerings and traditional services sold on the Internet. However, it very soon became clear that the mobile user is fundamentally different from the user of the desktop computer.

Features of the use of mobile devices to make a profit:

  • Mobile users make more spontaneous purchases directly from their phone
  • Monetization of mobile applications through advertising
  • Monetization by payment application installation
  • Monetizing applications through integrated purchases
  • Paid subscriptions to exclusive content

However, for many users, payment for purchases from a mobile device continues to be a deterrent. Many are afraid of fraud related to the provision of information about your bank card or virtual electronic purses.

Thus was created the idea of ??payment directly from the account of a mobile phone operator.

In order to have successful development of a new payment instrument, we studied technologies available to the largest mobile operators. The proposals were sent to integrate operators and build the concept of development. In tandem with the tight integration with existing solutions of mobile operators, we created a unique user verification system.

The scenario of different services

In a mobile application or mobile device browser, the user is offered a subscription service for connecting directly from a mobile phone. The interested user clicks on a promotional offer and is redirected to the Landing page with detailed terms and conditions of subscription and the Connect button. After clicking on the button, the subscriber agrees to the terms of subscription and is automatically subscribed, receiving notice of withdrawal of funds for the provision of services from the network operator.

Working with Operators – Subscriptions

The main advantages of payment solutions:

  • Security of payment
  • The simplicity and convenience of making payments in one click
  • Availability for the majority of users
  • Payment by installments in the case of micro-purchases
  • Flexibility of payment implementation functions within the application, and for subscribing
  • Availability of in-depth information about the users making purchases
  • Increase customer loyalty by providing additional convenient service payments

Now the service is integrated with subscription platforms of two major European operators of cellular communication, and has already proven itself as a good solution to improve margins of subscriber services and expansion of the client base of suppliers of media services. In the future, we plan to integrate the platform with display advertising technology purchases through programmable online auctions (RTB-auction system), as well as offer enhanced support for custom scripts payment services provided by the operator’s billing system.

Comments (0)