$ionicPush.init is not a function

Trying to migrate to ionicPush but getting an error. When I put $ionicPush.init as per guide in the app.js or anywhere for that matter, getting:

Uncaught TypeError: $ionicPush.init is not a function

When I check $ionicPush it has 2 methods, register and unregister. So clearly it gets imported, but for whatever reason doesnt have .init

Top of app.js looks like this:

.run(function(AppRootService, $ionicPlatform, $ionicPush, $cordovaSplashscreen,$window, $timeout) {
    $ionicPlatform.ready(function() {
        $ionicPush.init({
"debug": true,
"onNotification": function(notification) {
var payload = notification.payload;
console.log(notification, payload);
  },
"onRegister": function(data) {
console.log(data.token);
  }
});

$ionicPush.register();

As depicted in the Migration guide https://github.com/driftyco/ionic-cloud/wiki/Migration-Guide I think you must use something similar to this:

// Register with the Ionic Push service. All parameters are optional. $ionicPush.register().then(function (token) { $log.info('Ionic Push: Got token ', token); return $ionicPush.saveToken(token); }); $ionicEventEmitter.on('push:notification', function (data) { console.log(data.message); alert(data.message); });

But there I get there Error
Uncaught TypeError: pushPlugin.init is not a function or with the minified ersion i.init is not a function.

Been stuck there now for two days. Any ideas or have you already solved it?