0 && arguments[0] !== undefined ? arguments[0] : '[data-cmp]';\n var attr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'data-cmp';\n document.querySelectorAll(selector).forEach(function (source) {\n var tag = document.createElement('script');\n var src = source.dataset.src || '';\n source.getAttributeNames().filter(function (prop) {\n return attr !== prop && 'data-src' !== prop && 'data-async' !== prop;\n }).forEach(function (prop) {\n tag.setAttribute(prop, source.getAttribute(prop));\n });\n if (src) {\n tag.src = src;\n tag.async = source.dataset.async !== 'false';\n }\n tag.innerHTML = source.innerHTML;\n source.parentNode.insertBefore(tag, source);\n source.remove();\n });\n}\n\n//# sourceURL=webpack:///./lazy-script-loader.js?\n}")},"./loader-after-init.js"(__unused_webpack_module,__webpack_exports__,__webpack_require__){eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lazy_script_loader__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lazy-script-loader */ \"./lazy-script-loader.js\");\n/* harmony import */ var _lazy_image_loader__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lazy-image-loader */ \"./lazy-image-loader.js\");\n\n\ndocument.addEventListener('DOMContentLoaded', function () {\n var api = window.__tcfapi || null;\n if (!api) {\n return;\n }\n api('addEventListener', 2, function (tcData, success) {\n if (success && tcData && ('tcloaded' === tcData.eventStatus || 'useractioncomplete' === tcData.eventStatus)) {\n (0,_lazy_script_loader__WEBPACK_IMPORTED_MODULE_0__.loadAsyncScripts)('[data-cmp=after-init]');\n (0,_lazy_image_loader__WEBPACK_IMPORTED_MODULE_1__.loadLazyImages)('[data-cmp-lazy-image=after-init]');\n if (tcData.listenerId) {\n api('removeEventListener', 2, function () {}, tcData.listenerId);\n }\n }\n });\n});\n\n//# sourceURL=webpack:///./loader-after-init.js?\n}")}},__webpack_module_cache__={};function __webpack_require__(e){var a=__webpack_module_cache__[e];if(void 0!==a)return a.exports;var r=__webpack_module_cache__[e]={exports:{}};if(!(e in __webpack_modules__)){delete __webpack_module_cache__[e];var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return __webpack_modules__[e](r,r.exports,__webpack_require__),r.exports}__webpack_require__.d=(e,a)=>{for(var r in a)__webpack_require__.o(a,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:a[r]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__=__webpack_require__("./loader-after-init.js")})();
0 && arguments[0] !== undefined ? arguments[0] : '[data-cmp]';\n var attr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'data-cmp';\n document.querySelectorAll(selector).forEach(function (source) {\n var tag = document.createElement('script');\n var src = source.dataset.src || '';\n source.getAttributeNames().filter(function (prop) {\n return attr !== prop && 'data-src' !== prop && 'data-async' !== prop;\n }).forEach(function (prop) {\n tag.setAttribute(prop, source.getAttribute(prop));\n });\n if (src) {\n tag.src = src;\n tag.async = source.dataset.async !== 'false';\n }\n tag.innerHTML = source.innerHTML;\n source.parentNode.insertBefore(tag, source);\n source.remove();\n });\n}\n\n//# sourceURL=webpack:///./lazy-script-loader.js?\n}")},"./loader-not-pur.js"(__unused_webpack_module,__webpack_exports__,__webpack_require__){eval('{__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lazy_script_loader__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lazy-script-loader */ "./lazy-script-loader.js");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "./utils.js");\nfunction _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\n/**\n * @see https://gist.github.com/0x7f/62211125638af90d84fe8d9b0d660761\n * @see https://docs.contentpass.net/docs/3rdparty\n * @see https://docs.contentpass.net/docs/web-sdk#cpauthenticate-options-callback\n */\n\n\n(function () {\n var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \'[data-cmp=not-pur]\';\n if ((0,_utils__WEBPACK_IMPORTED_MODULE_1__.isPur)()) {\n return;\n }\n\n // Execute now\n (0,_lazy_script_loader__WEBPACK_IMPORTED_MODULE_0__.loadAsyncScripts)(selector);\n\n // Execute until dom content is loaded\n var observer = new MutationObserver(function (mutationsList) {\n var _iterator = _createForOfIteratorHelper(mutationsList),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var mutation = _step.value;\n if (\'childList\' === mutation.type) {\n (0,_lazy_script_loader__WEBPACK_IMPORTED_MODULE_0__.loadAsyncScripts)(selector);\n return;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n });\n observer.observe(document, {\n childList: true,\n subtree: true\n });\n document.addEventListener(\'DOMContentLoaded\', function () {\n observer.disconnect();\n });\n})();\n\n//# sourceURL=webpack:///./loader-not-pur.js?\n}')},"./utils.js"(__unused_webpack_module,__webpack_exports__,__webpack_require__){eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isPur: () => (/* binding */ isPur)\n/* harmony export */ });\nvar isPur = function isPur() {\n return document.cookie.includes('_cpauthhint=1') || !!localStorage.getItem('_cpuser');\n};\n\n//# sourceURL=webpack:///./utils.js?\n}")}},__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var t=__webpack_module_cache__[e]={exports:{}};if(!(e in __webpack_modules__)){delete __webpack_module_cache__[e];var n=new Error("Cannot find module '"+e+"'");throw n.code="MODULE_NOT_FOUND",n}return __webpack_modules__[e](t,t.exports,__webpack_require__),t.exports}__webpack_require__.d=(e,r)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__=__webpack_require__("./loader-not-pur.js")})();
Freenet startet echte Mobilfunk-Datenflatrate für unter 30 Euro
Zum Inhalt springen
TECHBOOK Redaktion
7. Mai 2019, 17:45 Uhr |
Lesezeit: 2 Minuten
Unbegrenztes Datenvolumen per LTE-Verbindung – das gibt es jetzt bei Freenet für rund 30 Euro. Wie können Kunden auf das Angebot zugreifen? Und was enthält das Paket außerdem?
Freenet bietet jetzt eine LTE-Mobilfunk-Flatrate ohne Drosselung der Geschwindigkeit bei der Datennutzung an. Sie heißt Freenet Funk, nutzt das Telefónica-Netz, ist nur per App buchbar und muss mit Paypal bezahlt werden, wie Freenet mitteilt.
Neben unbegrenztem Highspeed-Datenvolumen (bis zu 225 Megabit pro Sekunde (Mbit/s) im Download) sind auch Telefon- und SMS-Flatrates eingeschlossen. Die „Nutzung im und ins Ausland ist aktuell noch nicht möglich“, der Kundenservice läuft über WhatsApp .
Ungewöhnlich ist die tageweise Abrechnung: Es werden immer 99 Cent am Folgetag der Nutzung fällig. Freenet Funk ist den Angaben zufolge täglich kündbar und kann bei Bedarf tageweise pausiert werden, maximal aber 14 Tage lang. Dann ist wieder mindestens ein Nutzungstag nötig. Der Datenbestandteil des Tarifs kann flexibel von der Flatrate auf 1 Gigabyte (GB) Highspeed-Datenvolumen pro Tag geändert werden. Damit sinkt der Preis auf 69 Cent am Tag oder gut 20 Euro im Monat.
Auch interessant: Hier gibt es Internet ohne Festnetz
Vergleichbare Flatrate-Angebote – allerdings mit Zweijahresverträgen und voller Auslandsnutzung – hatten bislang nur die Netzbetreiber: Telefónica („O2 Free Unlimited“ mit bis zu 225 Mbit/s) für 60 Euro im Monat sowie die Telekom („Magenta Mobil XL“ mit bis zu 300 Mbit/s) und Vodafone („Red XL“ mit bis zu 500 Mbit/s) für jeweils 80 Euro.
Das Magazin für digitalen Lifestyle und Entertainment